Abel Gómez

Massimo Tisi

Gerson Sunyé

Jordi Cabot

Map-Based Transparent Persistence for Very Large Models

Keywords: Model Driven Engineering, Model Persistence, Very Large Models, Key-Value Stores

come   L'archive ouverte pluridisciplinaire

Introduction

Part of the software industry is embracing the main concepts of Model-Driven Engineering, by putting models and code generation at the center of their software-engineering processes. Recent studies [START_REF] Ruscio | Guest editorial to the special issue on success stories in model driven engineering[END_REF], as well as the proliferation of tools related to MDE, testify the increase in popularity of these concepts, which are applied to different contexts and scales. These scales vary from manual modeling activities with hundreds of model elements to very large models, VLMs, with millions of elements. Very large models are especially popular in specific domains such as the automotive industry [START_REF] Bergmann | Incremental evaluation of model queries over emf models[END_REF], civil engineering [START_REF] Steel | Model interoperability in building information modelling[END_REF], or software product lines [START_REF] Pohjonen | Automated production of family members: Lessons learned[END_REF], or are automatically generated during software modernization of large code bases.

Modeling tools are built around so-called modeling frameworks, that provide basic model-management functionalities and interoperability to the modeling ecosystem. Among the frameworks currently available, the Eclipse Modeling Framework [START_REF]Eclipse Modeling Framework[END_REF] (EMF) has become the de facto standard for building modeling tools. The Eclipse marketplace attests the popularity of EMF, counting more than two hundred EMF-based tools [START_REF]Eclipse Marketplace -Modeling Tools[END_REF] coming from both industry and academia.

However, the technologies at the core of modeling frameworks were designed in the first place to support simple modeling activities and exhibit clear limits when applied to very large models. Problems in managing memory and persisting data while handling models of this size are under-studied and the current standard solution is to use a model/relational persistence layer (e.g., CDO for EMF [START_REF]CDO Model Repository[END_REF]) that translates runtime model-handling operations into relational database queries. Existing solutions have shown clear performance limits in related work [START_REF] Pagán | Morsa: A Scalable Approach for Persisting and Accessing Large Models[END_REF][START_REF] Pagán | Querying large models efficiently[END_REF][START_REF] Scheidgen | Automated and Transparent Model Fragmentation for Persisting Large Models[END_REF]. In this paper we propose a transparent persistence solution for very large models, that introduces the following innovations:

-The transparent persistence is designed to optimize runtime performance and memory occupancy of the atomic low-level operations on models. We argue that this strategy improves execution of model-driven tools on large models in real-world scenarios, without an ad hoc support from the tool (differently from similar proposals in related work [START_REF] Pagán | Morsa: A Scalable Approach for Persisting and Accessing Large Models[END_REF][START_REF] Pagán | Querying large models efficiently[END_REF]); -We propose a map-based persistence model for MDE tools, arguing that persisting model graphs directly as maps allows for faster runtime operation with respect to a more obvious graph-database persistence. In this sense this paper presents a novel and different approach completing our previous work [START_REF] Benelallam | Neo4EMF, A Scalable Persistence Layer for EMF Models[END_REF], in which we built a persistence layer for EMF based on a graph database. We compare the different approaches and discuss the distinct application scenarios for each one. -Persistence is built around a database engine, instead of interfacing with a full-fledged database, and directly manipulates low-level data structures. We argue that this approach (i) gives more flexibility when selecting the data structures that optimize model-specific operations, and (ii) reduces overhead by not requiring translation of model operations into a database query language.

Our persistence layer has been implemented as an open-source prototype1 . The layer can be plugged into EMF-based tools to immediately provide enhanced support for VLMs. Experimental validation shows that (i) our layer allows handling models that cannot be handled by the standard file-based EMF backendand even the CDO backend in configurations with little memory-and (ii) that queries perform (up to nine times) faster than the standard relational backend.

The paper is structured as follows: Section 2 motivates the paper by describing a running scenario and the limits of current model-persistence solutions. Section 3 provides an overview of our approach and its main properties. Section 4 describes our publicly-available persistence layer. Section 5 illustrates the experimental evaluation, Section 6 compares our approach with related work and Section 7 concludes the paper. 2 Motivation

Running example

As a running example for this paper we will consider an industrial scenario that uses modeling tools for helping a Java code reverse-engineering and modernization process. The first step in this scenario is parsing the legacy Java codebase (that can be massive) to produce a very detailed Java model. Such model will be then processed by other modeling tools like analyzers or transformers for computer-aided program understanding. Fig. 1a shows a small excerpt of a possible Java metamodel. This metamodel describes Java programs in terms of Packages, ClassDeclarations, BodyDeclarations, and Modifiers. A Package is a named container that groups a set of ClassDeclarations through the ownedElements composition. A ClassDeclaration contains a name and a set of BodyDeclarations. Finally, a BodyDeclaration contains a name, and its visibility is described by a single Modifier.

Fig. 1b shows a sample instance of the Java metamodel, i.e., a graph of objects conforming with the metamodel structure. The model contains a single Package (package1), containing only one ClassDeclaration (class1). The Class contains the bodyDecl1 and bodyDecl2 BodyDeclarations. Both of them are public. Similar instances in large reverse-engineering projects can contain millions of model elements describing the full system code.

Within a modeling ecosystem, all tools that need to access or manipulate models have to pass through a single model management interface. This includes all reverse-engineering, code analysis, and code visualization tools in our running scenario. In some of these ecosystems-as it is the case of EMF-the model management interface is automatically generated from the metamodel of the modeling language. For example, from the metamodel in Fig. 1a EMF produces an API that allows, e.g., to construct the sample instance of Fig. 1b by the code in Listing 1.1.

Without any specific memory-management solution, the model would need to be fully contained in memory for any access or modification. While this approach would be suitable for small models like the one in Fig. 1b, models that exceed the main memory would cause a significant performance drop or the application crash. A possible solution would be a transparent persistence layer in the modeling framework, able to automatically persist, load and unload model elements with no changes to the application code (e.g., to Listing 1.1). In this paper we want to design an efficient layer for this task.

Persisting very large models

Along the history of MDE, several modeling frameworks have emerged (e.g., Eclipse EMF [START_REF]Eclipse Modeling Framework[END_REF], Microsoft DSL Tools [START_REF] Cook | Domain-Specific Development with Visual Studio DSL Tools[END_REF], MetaEdit+ [START_REF] Kelly | Metaedit+ a fully configurable multi-user and multi-tool case and came environment[END_REF], GME [START_REF] Ledeczi | The generic modeling environment[END_REF]), each providing a uniform interface to its correspondent ecosystem of modeling tools. Modeling frameworks share a similar, object-oriented conceptual representation of models (e.g., based on OMG's MOF for EMF and GME, on Object-Property-Role-Relationship for MetaEdit+). They differ in the design of the model-management interface and persistence mechanism.

Since the publication of the XMI standard [START_REF] Omg | OMG MOF 2 XMI Mapping Specification version 2[END_REF], file-based XML serialization has been the preferred format for storing and sharing models and metamodels. The choice was suited to the fact that modeling frameworks have been originally designed to handle human-produced models, whose size does not cause significant performance concerns. However, XML-based serialization results to be inefficient for large models: (i) XML files sacrifice compactness in favor of human-readability and (ii) XML files need to be completely parsed to obtain a navigational model of their contents. The first factor reduces efficiency in I/O accesses, while the second increases the memory required to load and query models and it is an obstacle to on-demand loading. Moreover, XML-based implementations of model persistence require ad hoc implementations of advanced features such as concurrent modifications, model versioning, or access control.

The design of additional relational back-ends for model persistence helped solve the problem for medium-size models. For instance, CDO [START_REF]CDO Model Repository[END_REF] is the standard solution for persisting EMF models where scalability is an issue. It implements a Listing 1.1: Creation of the sample instance using the generated API (Java-like pseudocode) client-server architecture with on-demand loading, and transactional, versioning and notification facilities. Although in theory CDO is a generic framework [1,2,[START_REF]CDO MongoDB Store[END_REF][START_REF]CDO Objectivity Store[END_REF], only relational databases are regularly used and maintained2 and different experiences have shown that CDO does not scale well with VLMs in such a commmon setup [START_REF] Pagán | Morsa: A Scalable Approach for Persisting and Accessing Large Models[END_REF][START_REF] Pagán | Querying large models efficiently[END_REF][START_REF] Scheidgen | Automated and Transparent Model Fragmentation for Persisting Large Models[END_REF].

Scalable model-persistence layer

In this paper we investigate the problem of persisting very large models and design a solution that improves the state of the art in terms of runtime execution time, memory occupancy, extensibility and compatibility. More precisely, we propose to satisfy a set of requirements, that we consider as necessary for an effective solution for scalable model persistence.

We identify three interoperability requirements to guarantee that the solution integrates well with the modeling ecosystem:

1. The persistence layer must be fully compliant with the modeling framework's API. For example, client code should be able to manage models persisted with an alternative persistence manager as if they were persisted using the standard serialization. 2. The underlying persistence backend engine should be easily replaceable to avoid vendor lock-ins. 3. The persistence layer must provide extension points for additional (e.g., domain-specific) caching mechanisms independent from the underlying engine.

Two performance requirements represent the improvement we want to achieve over the state of the art: 4. The persistence layer must be memory-friendly, by using on-demand element loading and by removing from memory unused objects. 5. The persistence layer must outperform the execution time of current persistence layers when executing queries on VLMs using the standard API.

In Figure 2, we show the high-level architecture of our proposal particularized for the EMF framework. Our solution consist in a transparent persistence manager behind the model-management interface, so that tools built over the modeling framework would be unaware of it. The persistence manager communicates with a map-database by a driver and supports a pluggable caching strategy. In particular we implement the NeoEMF/Map tool as a persistence manager for EMF on top of MapDB. NeoEMF also supports a graph backend [START_REF] Benelallam | Neo4EMF, A Scalable Persistence Layer for EMF Models[END_REF].

The architecture answers the interoperability requirements. Requirement 1 is fulfilled by strictly conforming to the base modeling framework. Requirement 2 implies that (i) the APIs must be consistent between the model-management Fig. 2: Overview of the model-persistence framework framework and the persistence driver (i.e., the module in charge of dealing with the underlying database engine); and (ii) low-level data structures and code accessing the database engine must be completely decoupled from the modeling framework high level code. Maintaining uniform APIs between the different levels allows including additional functionality on top of the persistence driver by using the decorator pattern, such as different cache levels, thus fulfilling Requirement 3.

For fulfilling the performance requirements, we have designed a map-based underlying data model. A map, also called associative array or dictionary, is an abstract data type composed of a collection of key, value pairs, such that each possible key appears at most once in the collection. Hash tables are typically used to implement maps. A hash table is a structure composed by an array of slots in which values are stored. A hash function computes the index of the slot with the correct value. The main advantage of hash tables is that they provide a constant cost on average for searches, insertions and deletions. Maps and hash-maps are one of the most commonly used structures to implement richer data models by their simplicity and performance, specially for data storage. Maps have been used to implement solutions ranging from raw database engines (such as dbm, ndbm, MapDB, etc.) to high level data storage systems (the so called Key-Value Stores such as Oracle NoSQL or redis). The advantage of using a map-based database engine resides in its simplicity, since they are typically provided in the form of software libraries that can be directly embedded in your own solution.

NeoEMF/Map

In this section, we describe NeoEMF/Map, our transparent persistence layer for EMF models. The solution is composed of three parts: (i) a memory management strategy, (ii) a map-based data model and (iii) an implementation of atomic model-management operation as low-cost map operations.

Memory management

Our memory management strategy combines two mechanisms for lightweight ondemand loading and efficient garbage collection. First we decouple dependencies among objects by assigning a unique identifier to all model objects. Then:

-To implement lightweight on-demand loading, for each live model object, we create a lightweight delegate object that is in charge of on-demand loading the element data and keeping track of the element's state. Delegates load data from the persistence backend by using the object's unique identifier. -For efficient garbage collection in the Java Runtime Environment, we avoid to maintain hard Java references among model objects, so that the garbage collector will be allowed to deallocate any model object that is not directly referenced by the application. Thanks to unique element identification we can obtain this decoupling by replacing references among live objects with collections of identifiers corresponding to the referenced objects.

Map-based data model

We have designed the underlying data model of NeoEMF/Map to reduce the computational cost of each method of the EMF model access API. The design takes advantage of the unique identifier defined in the previous section to flatten the graph structure into a set of key-value mappings.

NeoEMF/Map uses three different maps to store models' information: (i) a property map, that keeps all objects' data in a centralized place; (ii) a type map, that tracks how objects interact with the meta-level (such as the instance of relationships); and (iii) a containment map, that defines the models' structure in terms of containment references. Tables 1,2, and 3 show how the sample model in Fig. 1b is represented using a key-vale structure.

As Table 1 shows, keys in the property map are a pair, the object unique identifier, and the property name. The values depend on the property type and cardinality (i.e., upper bound). For example, values for single-valued attributes (like the name of a Java Package) are directly saved as a single literal value as the entry 'p1', 'name' , 'package' shows; while values for many-valued attributes are saved as an array of single literal values (Fig. 1b does not contain an example of this). Values for single-valued references, such as the modifier containment reference from BodyDeclaration to Modifier, are stored as a single value (corresponding to the id of the referenced object). Examples of this are the entries 'b1', 'modifier' , 'm1' and 'b2', 'modifier' , 'm2' . Finally, multi-valued references are stored as an array containing the literal identifiers of the referenced objects. An example of this is the bodyDeclarations containment reference, from ClassDeclaration to BodyDeclaration, that for the case of the c1 object is stored as 'c1', 'bodyDeclarations' , { 'b1', 'b2' } .

Table 2 shows the structure of the type map. The keys are, again, the identifiers of the persisted objects, while the values are named tuples containing the basic information used to identify the corresponding meta-element. For example, the second row of the table specifies the element p1 is an instance of the Package class of the Java metamodel (that is identified by the http://java nsUri ).

Structurally, EMF models are trees. That implies that every non-volatile object (except the root object) must be contained within another object (i.e., referenced from another object via a containment reference). The containment map is the data structure in charge of maintaining a record of which is the container for every persisted object. Keys in the structure map are the identifier of every persisted object, and the values are named tuples that record both the identifier of the container object and the name of the property that relates the container object with the child object (i.e., the object to which the entry corresponds). Table 3 shows in the first row that, for example, the container of the Package p1 is ROOT through the eContents property (i.e., it is a root object and is not contained by any other object). In the second row we find the entry that describes that the Class c1 is contained in the Package p1 through the ownedElements property.

Model operations as map operations

As mentioned before, EMF generates a natural Java implementation of the concepts described in a metamodel. Operations on model elements are executed by calling the generated methods (mainly getters and setters). It is worth mentioning that multi-valued properties are represented using lists (see Listing 1.1, 16-18), thus, operations on such properties are executed using list operators. Table 4 shows a summary of the minimum and maximum number of operations that are performed on the underlying map-based data structures for each model operation. It is noteworthy that all the operations (lookups and inserts) in the underlying maps have always a constant cost. For example getting a property always implies a single lookup. Setting a property may imply from a single insert to 3 lookups and 3 inserts.

Experimental evaluation

We evaluate the performance of our proposal by comparing different solutions in the running scenario. Based on our joint experience with industrial partners, we have reverse-engineered three models from open-source Java projects whose sizes resemble those one can find in real world scenarios (see Table 5). Moreover, we have defined a set of queries that are executed on those models. The first of these queries is a well-known scenario in academic literature [START_REF] Jouault | An AmmA/ATL Solution for the GraBaTs 2009 Reverse Engineering Case Study[END_REF]. The others have been selected to mimic typical model access patterns in reverse engineering.

Selected backends and execution environment

We have selected NeoEMF/Map, NeoEMF/Graph and CDO for a thorough comparison (see Section 6 for a description of NeoEMF/Graph and other backends). Only the standard EMF interface methods are used in the experi- ments3 that are hence agnostic of which backend they are running on. Other backends have been discarded because they do not strictly comply with the standard EMF behavior (e.g. MongoEMF ), they require manual modifications in the source models or metamodels (e.g. EMF-fragments), or because we were only able to run a small subset of the experiments on them (e.g. Morsa).

All backends use their respective native EMF generated code for the Java MoDisco metamodel and have been tested in their default configurations with the following exceptions: (i) the timeout values for CDO have been increased since the default ones are too low; (ii) for the sake of a fairer comparison, some extended features have been disabled in CDO (e.g. audit views and branches); and (iii) the Neo4j memory buffers have been tweaked in NeoEMF/Graph to reduce the memory consumption of the embedded Neo4j engine. CDO maintains its caching and prefetching facilities with their default values. In the case of NeoEMF/Map and NeoEMF/Graph no high-level caching is performed.

Experiments

Experiment I: Import model from XMI -In this experiment (Table 6) we measure the time taken to load a source experimental model-that has been previously derived from the Java code and saved in XMI-and to save it in the selected persistence backend. The saved models are the ones used in next experiments. This experiment measures the time taken to create models that grow monotonically. Only a single configuration (setting the heap size to 8 GB) is used because the XMI model should be completely loaded into memory before saving it in the backend under study.

Experiment II: Simple model traversal -In this experiment we measure the total time taken to load a model, execute a visitor and unload a model. The visitor traverses the full containment tree starting from the root of the model. At each step of the traversal the visitor loads the element content from the backend. We show the results for the three scalable backends plus the standard XMI-based one. Three different maximum heap sizes have been used in this and the following benchmarks to demonstrate how the different backends perform in different configurations: 8GB for demonstrating the performance in an ideal scenario, and 512MB and 256MB to demonstrate how the loading/unloading mechanisms behave in setups with extremely limited memory. Table 7 shows the results of this experimentation over the test models. NeoEMF/Map and NeoEMF/Graph are abbreviated as N/M and N/G respectively.

Experiment III: Query without full traversal -Results of an example query of this type are shown in Table 8. The query returns all the orphan and nonprimitive types by navigating and filtering the orphanTypes association.

-Xmx8g -Xmx512m -Xmx256m Model XMI N/M N/G CDO XMI N/M N/G CDO XMI N/M N/
Orphan Non-Primitive Types -Xmx8g -Xmx512m -Xmx256m Model N/M N/G CDO N/M N/G CDO N/M N/G CDO 1 <1 s c <1 s c <1 s c <1 s c <1 s c <1 s c <1 s c <1 s c <1 s c 2 <1 s c 2 s <1 s c <1 s c 4 s <1 s c <1 s c 5 s <1 s c 3 <1 s c 19 s 2 s <1 s c 19 s 2 s <1 s c 20 s 2 s c
Execution time is less than the precission used Table 9: Model queries that traverse the model Experiment IV: Queries with full traversal -These queries start their computation by accessing the list of all the instances of a particular element type, and then apply a filtering to this list to select the starting points for navigating the model. In the experience of our industrial partners, this pattern covers the majority of computational-demanding queries in real world scenarios of the reverseengineering domain. While the first of these queries is well-known in academic literature, the others have been selected to mimic typical model access patterns: (i) Grabats [START_REF] Jouault | An AmmA/ATL Solution for the GraBaTs 2009 Reverse Engineering Case Study[END_REF] returns the set of classes that hold static method declarations having as return type the holding class (i.e., Singleton); (ii) Unused Methods returns the set of method declarations that are private and not internally called; (iii) Thrown Exceptions per package collects and returns a map of Packages with the Exceptions that may be thrown by any of the methods declared by its contained classes; (iv) Invisible Methods returns the set of method declarations that are private or protected; and (v) Class Declaration Attributes returns a map associating each Class declaration to the set of its attribute declarations.

-Xmx8g -Xmx512m -Xmx256m Model N/M N/G CDO N/M N/G CDO N/M N/G CDO Grabats
Experiment V: Model modification and saving -The last experiment aims to measure the overhead introduced by the transactional support provided by the different back-ends. Table 10 shows the execution times for renaming all method declarations and saving the modified model.

Discussion

From the analysis of the results, we can observe that NeoEMF/Map performs, in general, better than any other solution when using the standard API. Only in scenarios with constrained memory the execution times tend equalize due to excessive garbage collection. Nevertheless, other persistence backends tend to be more erratic in those scenarios, running out of memory or presenting big differences in computation times between experiments.

In the XMI import experiment (Table 6) we can observe that NeoEMF/Map presents import times in the the same order of magnitude than CDO, but it is about a 33% slower for the largest model. The simple data model with low-cost operations implemented by NeoEMF/Map contrasts with the more complex data model-and operations-implemented by NeoEMF/Graph which is consistently slower by a factor between 7 and 9. It can be observed that NeoEM-F/Map is affected by the overhead produced by modifications on big lists that grow monotonically since it does not implement any caching yet.

Table 7 shows that a traversal of a very large model is much faster (up to 9 times) by using the NeoEMF/Map persistence layer with respect to both a CDO and NeoEMF/Graph. However, in scenarios with very constrained memory, some garbage collection overhead can be noticed. Additionally, if load and unload times are considered (which are negligible for NeoEMF/Map, NeoEM-F/Graph and CDO), NeoEMF/Map also outperforms XMI. This is because before executing the traversal, the XMI-based backend needs to parse the whole input model, which is a costly operation. It can also be observed that XMI is unable to load the model into memory for small heap sizes.

Queries that do not require traversing a large part of the model are computed in a negligible time both in NeoEMF/Map and CDO. NeoEMF/Graph shows higher execution times, specially on bigger models (Table 8). In this case, it can be observed that using the rich graph-based data model cannot be exploited when using the standard methods for model traversal.

The fast model-traversal ability of NeoEMF/Map is exploited by the pattern followed by most of the queries in the modernization domain (Table 9). As a result, NeoEMF/Map is consistently faster than other backends for all queries, model sizes and heap sizes. Only in few cases NeoEMF/Map has similar performance to CDO, while in other scenarios NeoEMF/Map is up to 9 times faster. The low memory consumption of NeoEMF/Map also is revealed, since there appear cases in which CDO behaves more erratically, running out of memory or experiencing slowness issues caused by the garbage collector.

Typical queries that traverse the model to apply and persist changes perform, in general, significantly better on NeoEMF/Map (Table 10): 5 times faster on average (on big models) and even up to 9 faster (on small models). In cases with limited memory, however, CDO may present better results than NeoEMF/Map due to garbage collection overhead. Nevertheless, this is not always the case, and CDO also reveals its tendency to run out of memory in such scenarios.

Related work

As EMF models are designed following an object-oriented paradigm, our modelpersistence backend is inspired by object persistence systems for software tools that have been extensively studied in the last three decades [START_REF] Gallo | The Object Management System of PCTE as a Software Engineering Database Management System[END_REF][START_REF] Wakeman | PCTE: The Standard for Open Repositories[END_REF]. In recent works, different authors have provided some evidence that the use of schema-free databases may improve performance in persisting VLMs. However, most of them have put focus on graph-oriented [START_REF] Barmpis | Comparative analysis of data persistence technologies for large-scale models[END_REF][START_REF] Benelallam | Neo4EMF, A Scalable Persistence Layer for EMF Models[END_REF] or document-oriented databases [START_REF] Hunt | [END_REF][START_REF] Pagán | Morsa: A Scalable Approach for Persisting and Accessing Large Models[END_REF][START_REF] Pagán | Querying large models efficiently[END_REF]. Although document-oriented databases can be considered a form of Key-Value Stores, NeoEMF/Map is, as far as we know, the only proposal that focus on the optimization of atomic operations by using maps with simple keys and values.

One of the proposals that uses a document-oriented database as its persistence backend is Morsa [START_REF] Pagán | Morsa: A Scalable Approach for Persisting and Accessing Large Models[END_REF]. It provides on-demand loading capabilities together with incremental updates, and can be used seamlessly to persist models using the standard EMF mechanisms. Performance of the storage backend and their own query language has been reported [START_REF] Pagán | Morsa: A Scalable Approach for Persisting and Accessing Large Models[END_REF][START_REF] Pagán | Querying large models efficiently[END_REF]. Our persistence layer resembles Morsa in several aspects (notably in on-demand loading) but we aim at designing an efficient data representation for models, to optimize runtime performance.

Mongo EMF [START_REF] Hunt | [END_REF] is another alternative to store EMF models in MongoDB databases. Mongo EMF provides the same standard API than previous approaches. However, according to the documentation, the storage mechanism behaves slightly different than the standard persistence backend (for example, for persisting collections of objects or saving bi-directional cross-document containment references). For this reason, Mongo EMF cannot be used without performing any modification to replace another backend in an existing system.

EMF fragments [START_REF] Scheidgen | EMF fragments[END_REF] is another NoSQL-based persistence layer for EMF aimed at achieving fast navigation and fast storage of new data. EMF fragments principles are simpler than in other similar approaches. Those principles are based on the EMF proxy mechanism. In EMF fragments, models are automatically partitioned in several chunks (fragments). Unlike our approach, CDO, and Morsa, all data from a single fragment is loaded at a time. Only links to another fragments are loaded on demand. Another characteristic of this approach is that artifacts should be specifically adapted: metamodels have to be modified to indicate where the partitions should be made to get the partitioning capabilities.

NeoEMF/Graph-previously known as Neo4EMF [START_REF] Benelallam | Neo4EMF, A Scalable Persistence Layer for EMF Models[END_REF]-is our graph-based proposal for storing VLMs. In NeoEMF/Graph we consider that, since models are a set of highly interconnected elements, graphs are the most natural way to represent them. As we have experienced, however, a significant gain in performance is only obtained when using native queries on the underlying persistence back-end. Although this can be acceptable in some scenarios (as shown in [START_REF] Barmpis | Comparative analysis of data persistence technologies for large-scale models[END_REF][START_REF] Pagán | Morsa: A Scalable Approach for Persisting and Accessing Large Models[END_REF]), the use of native queries or custom languages implies changes in the client code.

Conclusion and Future Work

In this paper we proposed a map-based database persistence layer to handle large models and compared it against previous alternatives based on relational databases and graph databases. Using EMF as the implementation technology, we used queries from some of our industrial partners in the model-driven modernization domain as experiments. The main lesson is that-in terms of performance-typical model-access APIs, with fine-grained methods that only allow for one-step-navigation queries, do not benefit from complex relational or graph-based data structures. Much better results are potentially obtained by optimized low-level data structures, like hash-tables, that guarantee low and constant access times. Additional features that may be of interest in scenarios where performance is not an issue (such as versioning and transactional support provided by CDO) have not been considered.

As further work we want, first, to extend our study on optimized persistence layers for MDE by analyzing caching strategies, especially with reference to element unloading and element prefetching. Caching, and smart prefetching and unloading, aim to (i) alleviate the impact of garbage collection and (ii) reduce the overhead in modifications on lists that grow monotonically. In parallel, we will continue analyzing the benefits of other backends depending on the specific application scenario, such as the graph-based persistence solutions for high-level queries on tools that can drop some of our requirements. In theses cases, for example, bypassing the model access API by translating the queries to highperformance native graph-database queries may provide great benefits.

Fig. 1 :

 1 Fig.1: Excerpt of the Java metamodel (1a) and sample instance (1b)

1 // 4 B 5 B 8 /

 1458 Creation of objects 2 Package p1 := Factory . createPackage () ; 3 C l a s s D e c l a r a t i o n c1 := Factory . c r e a t e C l a s s D e c l a r a t i o n () ; od y De cl a ra ti o n b1 := Factory . c r e a t e B o d y D e c l a r a t i o n () ; od y De cl a ra ti o n b2 := Factory . c r e a t e B o d y D e c l a r a t i o n () ; 6 Modifier m1 := Factory . crea teModi fier () ; 7 Modifier m2 := Factory . crea teModi fier () ; e t O w n e d E l e m e n t s () . add ( c1 ) ;

17 c1.

 17 g e t B o d y D e c l a r a t i o n s () . add ( b1 ) ;

18 c1.

 18 g e t B o d y D e c l a r a t i o n s () . add ( b2 )

Table 3 :

 3 Containment map

	Key	Value
	'p1'	container='ROOT', featureName='eContents'
	'c1'	container='p1', featureName='ownedElements'
	'b1'	container='c1', featureName='bodyDeclarations'
	'b2'	container='c1', featureName='bodyDeclarations'
	'm1'	container='b1', featureName='modifiers'
	'm2'	container='b2', featureName='Mmodifiers'

Table 4 :

 4 Summary of accesses to the underlying map-based storage system

		Lookups		Inserts
	Method	Min.	Max.	Min.	Max.
		operations on objects
	getType	1	1	0	0
	getContainer	1	1	0	0
	getContainingFeature	1	1	0	0
		operations on properties
	get*	1	1	0	0
	set*	0	3	1	3
	isSet*	1	1	0	0
	unset*	1	1	0	1
	operations on multi-valued properties
	add	1	3	1	3
	remove	1	2	1	2
	clear	0	0	1	1
	size	1	1	0	0

Table 5 :

 5 Summary of the experimental models

	#	Model	Size in XMI	Elements
	1 org.eclipse.gmt.modisco.java	19.3MB	80 665
	2 org.eclipse.jdt.core	420.6MB	1 557 007
	3 org.eclipse.jdt.*	984.7MB	3 609 454

Table 6 :

 6 Import model from XMI

	Model	NeoEMF/Map	NeoEMF/Graph	CDO
	1	9 s	41 s	12 s
	2	161 s	1 161 s	120 s
	3	412 s	3 767 s	301 s

Table 7 :

 7 Model traversal (includes loading and unloading time)

  Error b 366 s 763 s 348 s Error b 443 s 783 s 403 s a java.lang.OutOfMemoryError: Java heap space b java.lang.OutOfMemoryError: GC overhead limit exceeded

												G CDO
	1	4 s	3 s	16 s	14 s	4 s	3 s	15 s	13 s	4 s	3 s	15 s	13 s
	2	35 s	25 s	201 s 133 s Error a 42 s	235 s 550 s Error b 121 s 239 s 650 s
	3	79 s	62 s	708 s 309 s

Table 8 :

 8 Model queries that do not traverse the model

Table 10 :

 10 Model modification and saving

					Orphan Non-Primitive Types
			-Xmx8g			-Xmx512m			-Xmx256m
	Model	N/M	N/G	CDO	N/M	N/G	CDO	N/M	N/G	CDO
	1	1 s	11 s	9 s	1 s	11 s	8 s	1 s	11 s	9 s
	2	24 s	191 s	118 s	41 s	213 s	536 s	160 s	224 s	723 s
	3	62 s	677 s	296 s	356 s	718 s	334 s	472 s	Error f	Error f
	f java.lang.OutOfMemoryError: Java heap space

http://www.emn.fr/z-info/atlanmod/index.php/NeoEMF/Map

Indeed, only DB Store[1], which uses a proprietary Object/Relational mapper, supports all the CDO features and is released in the Eclipse Simultaneous Release.

Configuration details: Intel Core i7 3740QM (2.70GHz), 16 GB of DDR3 SDRAM (800MHz), Samsung SM841 SATA3 SSD Hard Disk (6GB/s), Windows 7 Enterprise 64, JRE 1.7.0_40-b43, Eclipse

4.4.0, EMF 2.10.1, NeoEMF/Map uses MapDB 0.9.10, NeoEMF/Graph uses Neo4j 1.9.2, CDO 4.3.1 runs on top of H2 1.3.168

Table 1: Property map Key Value 'ROOT', 'eContents' { 'p1' } 'p1', 'name' 'package1' 'p1', 'ownedElement' { 'c1' } 'c1', 'name' 'class1' 'c1', 'bodyDeclarations' { 'b1', 'b2' } 'b1', 'name' 'bodyDecl1' 'b1', 'modifier' 'm1' 'b2', 'name' 'bodyDecl2' 'b2', 'modifier' 'm2' 'm1', 'visibility' 'public' 'm2', 'visibility' 'public'

Table 2: Type map Key Value 'ROOT' nsUri='http://java', class='RootEObject' 'p1' nsUri='http://java', class='Package' 'c1' nsUri='http://java', class='ClassDeclaration' 'b1' nsUri='http://java', class='BodyDeclaration' 'b2' nsUri='http://java', class='BodyDeclaration' 'm1' nsUri='http://java', class='Modifier' 'm2' nsUri='http://java', class='Modifier'


L Benhaddad

M C Bernard

C Deslouis

L Makhloufi

B Messaoudi

A Pailleret
email: alain.pailleret@upmc.fr

H Takenouti

Chemical synthesis of hollow sea urchin like nanostructured polypyrrole particles through a core-shell redox mechanism using a MnO 2 powder as oxidizing agent and sacrificial nanostructured template

Keywords: polypyrrole powder, nanostructuration, core-shell redox mechanism, manganese dioxide, sacrificial template, reactive template

Hollow sea urchin shaped nanostructured polypyrrole powder was successfully synthesized chemically in an acidic medium through a core-shell redox mechanism by using a nanostructured MnO 2 powder as oxidizing agent and sacrificial template simultaneously. The morphology and the structure of MnO 2 powder based reactant and produced polypyrrole powder were characterized respectively by using FEG-SEM, TEM, EDX and XRD techniques, which led us to demonstrate clearly the formation of hollow and open microparticles of polypyrrole with the presence of nanotubes on their surface. Nanostructured polypyrrole powder was found to be rather amorphous even though the shape of the polypyrrole particles was induced by the crystalline and nanostructured sea urchin shaped MnO 2 powder on which they grew. In addition, neither MnO 2 nor any manganese based species were found within the produced polypyrrole powder, which ruled out the production of composite materials. Moreover, Raman technique showed that the synthesized PPy powder was produced in the oxidized and thus conducting state. It actually possesses a 0.31 doping level and a 0.05 S.cm -1 conductivity, as shown by XPS and impedance spectroscopy measurements respectively. Cyclic voltammetry and UV-Visible spectroscopy studies allowed us to identify the oxidation mechanism of pyrrole by our MnO 2 powder through the detection of soluble Mn 2+ cations as reaction products isolated after filtration of the reaction medium.

Introduction

The term "nanomaterials" encompasses a wide range of materials including nanocrystalline materials, nanocomposites, nanoparticles, and nanotubes for example. Recently, the synthesis of nanomaterials has attracted a great scientific interest due to their unique physical, chemical, electrical, and magnetic properties, resulting mostly from their small size and their high specific area [START_REF] Grassian | When size really matters: Size-dependent properties and surface chemistry of metal and metal oxide nanoparticules in gas and liquid phase environments[END_REF][START_REF] Hu | Carbon nanotube thin films: fabrication, properties, and applications[END_REF][START_REF] Patzke | Oxide nanomaterials: Synthetic developments, mechanistic studies and technological innovations[END_REF][START_REF] Benhaddad | Reactivity of nanostructured MnO 2 in alkaline medium studied with a microcavity electrode: Effect of synthesizing agent[END_REF][START_REF] Benhaddad | Reactivity of nanostructured MnO2 in alkaline medium studied with a micro-cavity electrode: Effect of synthesizing temperature[END_REF], which makes them eligible for a vast range of application domains.

In particular, conducting polymers have been intensively studied for their one-dimensional conjugated structures as well as their adjustable conductivity and surface reactivity [START_REF] Long | Recent advances in synthesis, physical properties and applications of conducting polymer nanotubes and nanofibers[END_REF][START_REF] Jang | Conducting polymer nanomaterials and their applications (Review)[END_REF][START_REF] Hien | Role of doping ions in the corrosion protection of iron by polypyrrole films[END_REF][START_REF] Pailleret | Surface reactivity of polypyrrole/iron-oxide nanoparticles: electrochemical and CS-AFM investigations[END_REF]. Furthermore, nanostructured conducting polymers such as nanoparticles [START_REF] Vetter | Novel synthesis of stable polypyrrole nanospheres using ozone[END_REF][START_REF] Zhang | Preparation of polythiophene coated gold nanoparticles[END_REF], nanofibres [START_REF] Huang | Nanofiber formation in the chemical polymerization of aniline: A mechanistic study[END_REF][START_REF] Huang | Multi-functional polypyrrole nanofibres via a functional dopant-introduced process[END_REF], nanotubes [START_REF] Liu | Characteristics of polypyrrole (PPy) nano-tubules made by templated ac-electropolymerization[END_REF] and nanowires [START_REF] Debiemme-Chouvy | Template-free one-step electrochemical formation of polypyrrole nanowire array[END_REF][START_REF] Lu | Polypyrrole micro-and nanowires synthesized by electrochemical polymerization of pyrrole in the aqueous solutions of pyrenesulfonic acid[END_REF][START_REF] Jérôme | Electrochemical formation of polypyrrole nanowires[END_REF] have received great attention, mainly for their promising applications in batteries, conducting paints, chemical and electrochemical sensors, and field emission applications [START_REF] Jang | Conducting polymer nanomaterials and their applications (Review)[END_REF][START_REF] Voss | Cheap and cheerful circuits[END_REF][START_REF] Janata | Conducting polymers in electronic chemical sensors[END_REF][START_REF] Argun | The first truly all-polymer electrochromic devices[END_REF]. Polypyrrole (PPy) is one of the most investigated conducting polymers as a consequence of its high electrical conductivity, relatively good stability in air, low toxicity and simple preparation [START_REF] Jang | Conducting polymer nanomaterials and their applications (Review)[END_REF][START_REF] Hien | Role of doping ions in the corrosion protection of iron by polypyrrole films[END_REF][START_REF] Mokrane | Electropolymerization of polypyrrole, modified with germanium, on a passivated titanium electrode in aqueous nitrate solution: new results on catalytic reduction of protons and dissolved oxygen[END_REF][START_REF] Oukil | Preparation of polypyrrole films containing ferrocyanide ions deposited onto thermally pre-treated and untreated iron substrate: Application in the electroanalytical determination of ascorbic acid[END_REF][START_REF] González | Electrosynthesis of hollow polypyrrole microtubes with a rectangular cross-section[END_REF][START_REF] Chen | Preparation of polypyrrole-Fe 3 O 4 nanocomposites by the use of common ion effect[END_REF]. Generally, two methods can be used to prepare polypyrrole, namely electrochemical and chemical polymerizations. Both can involve a template during the polymerisation of pyrrole so as to obtain polypyrrole nanostructures [START_REF] Wei | Templating fabrication of polypyrrole nanorods/nanofibers[END_REF][START_REF] Mativetsky | Morphology and electrical properties of templatesynthesized polypyrrole nanocylinders[END_REF].

Template synthesis is an elegant approach for the elaboration of nanostructures. For example, it may involve the synthesis of a desired material within the pores of a nanoporous membrane [START_REF] Cao | Template-based synthesis of nanorod, nanowire, and nanotube arrays[END_REF]. In fact, two types of templates have been reported in literature: hard templates such as porous polycarbonate films [START_REF] Dauginet-Da Pra | Investigation of the electronic structure and spectroelectrochemical properties of conductive polymer nanotubes arrays[END_REF], fibrillar V 2 O 5 [START_REF] Zhang | Narrow pore-diameter polypyrrole nanotubes[END_REF], and porous alumina [START_REF] Martin | Nanomaterials -a membrane-based synthetic approach[END_REF], which usually have to be removed after synthesis of nanostructured polypyrrole, with the risk to destroy the synthesized polypyrrole, or some of its main properties, due to the use of strongly acidic/basic aqueous or organic solutions or elevated temperatures [START_REF] Wei | Templating fabrication of polypyrrole nanorods/nanofibers[END_REF], and soft templates such as reverse microemulsions [START_REF] Jang | Facile fabrication of polypyrrole nanotubes using reverse microemulsion polymerization[END_REF] and micelles [START_REF] Wan | Nanotubes of Conducting Polyaniline and Polypyrrole[END_REF], that may have the disadvantages of instability, low efficiency and lack of versatility for a given monomer [START_REF] Wei | Templating fabrication of polypyrrole nanorods/nanofibers[END_REF].

Among targeted structured materials, hollow spheres have received enormous interest in recent years due to their unique properties and their numerous potential applications in various domains as delivery vehicles for the removal of contaminated waste and the controlled release of substances such as drugs, cosmetics, dyes and inks or as a catalyst carrier [START_REF] Ballav | High-conducting polyaniline via oxidative polymerization of aniline by MnO 2 , PbO 2 and NH 4 VO 3[END_REF]. In order to improve the processability of polypyrrole, great efforts have been made to prepare polypyrrole hollow spheres. Recently, polymeric hollow spheres have been cited as novel types of carriers and nanoreactors with designed properties because they exhibit controllable permeability and surface functionality, which should enable many applications [START_REF] Pan | Synthesis of Polyaniline Nanotubes with a Reactive Template of Manganese Oxide[END_REF][START_REF] Gemeay | Preparation and characterization of polyaniline/manganese dioxide composites via oxidative polymerization: Effect of acids[END_REF][START_REF] Gemeay | Preparation and characterization of polyaniline/manganese dioxide composites and their catalytic activity[END_REF][START_REF] Yang | Preparation of uniform silica/polypyrrole core/shell microspheres and polypyrrole hollow microspheres by the template of modified silica particles using different modified agents[END_REF]. As a result, many efforts are made up to now to find out a facile, efficient and versatile approach to synthesize nanostructured polypyrrole based materials but it remains a key research challenge for researchers.

To this end, we introduce in this contribution a simple and efficient chemical method to synthesize pure nanostructured polypyrrole powder from an acidic aqueous medium by using nanostructured manganese dioxide. MnO 2 was already mentioned in literature as a possible oxidizing agent to produce conducting polymers from corresponding soluble monomers. It was indeed observed for instance by N. Ballav et al. that MnO 2 , PbO 2 , and NH 4 VO 3 particles can act as oxidants for the polymerization of aniline to produce polyaniline without acting as templates [START_REF] Shchukin | Smart Inorganic/Organic Nanocomposite Hollow Microcapsules[END_REF]. These oxidizing species are recoverable and recyclable, which is an advantage over conventional oxidizing agent (NH 4 ) 2 S 2 O 8 [START_REF] Shchukin | Smart Inorganic/Organic Nanocomposite Hollow Microcapsules[END_REF]. The chemical synthesis of pure nanostructured polyaniline powders from an adequate solution by using MnO 2 powder as an oxidizing agent and a template simultaneously was also reported [START_REF] Cheng | Facile fabrication of AgCl/polypyrrole-chitosan coreshell nanoparticles and polymeric hollow nanospheres[END_REF]. However, if the experimental conditions are not adequate, then a PANI/MnO 2 composite material is formed [START_REF] Nguyen Thi Le | Raman spectroscopy analysis of polypyrrole films as protective coatings on iron[END_REF][START_REF] Hu | gamma-MnO 2 /polyaniline composites: Preparation, characterization, and applications in microwave absorption[END_REF][START_REF] Dong | Characterisation of doped polypyrrole/manganese oxide nanocomposite for supercapacitor electrodes[END_REF]. We also noticed from literature that MnO 2 was claimed to act as an oxidizing agent towards the pyrrole monomer to produce PPy/MnO 2 composite materials [START_REF] Gemeay | Chemical preparation of Manganese dioxide/polypyrrole composites and their use as cathode active materials for rechargeable lithium batteries[END_REF][START_REF] Manjunatha | Electrode materials for aqueous rechargeable lithium batteries[END_REF].

Nevertheless, to the best of our knowledge, literature does not contain any report of the exact and accurate mechanism (stoechiometry, other reaction products except PPy, properties of PPy) of the chemical synthesis of polypyrrole powders using a MnO 2 powder.

The objective of the present study was thus aimed at defining the mechanism of the chemical polymerization of pyrrole into nanostructured polypyrrole materials from an acidic medium with the help of a MnO 2 powder synthesized by a hydrothermal method and used as oxidizing agents and sacrificial nanostructured template simultaneously.

The structures and morphologies of all powders synthesized in this work were characterized by various methods: Field Emission Gun-Scanning Electron Microscope (FEG-SEM), Transmission Electron Microscopy (TEM), Energy Dispersive X-ray elemental analysis (EDX), and X-ray Diffraction (XRD) techniques and Raman spectroscopy. UV-Visible spectroscopy was used in the presence of a binding agent that is specific for the detection of Mn 2+ cations, as well as cyclic voltammetry. Our purpose was to accurately and undoubtedly identify the manganese based reaction product of the formation mechanism of our nanostructured polypyrrole powders in the filtrated reaction medium.

Experimental Section

Chemicals

All the solutions were prepared using water deionised with double ion exchange columns. were purchased from Acros Organics and Prolabo respectively and used as received.

Synthesis of powders

MnO 2 : This method has already been reported in our previous publications [START_REF] Benhaddad | Reactivity of nanostructured MnO 2 in alkaline medium studied with a microcavity electrode: Effect of synthesizing agent[END_REF][START_REF] Benhaddad | Reactivity of nanostructured MnO2 in alkaline medium studied with a micro-cavity electrode: Effect of synthesizing temperature[END_REF]. It consists in mixing MnSO 4 , H 2 O (0.08 mol) with Na 2 S 2 O 8 (0.08 mol) and 150 mL of deionised water at room temperature. The mixture was stirred during 10 min so as to form a homogeneous pink solution that was then kept at 90 °C for 24 h. The obtained powder was filtered, rinsed with deionised water several times, and finally dried at 60 °C for 24 h.

Polypyrrole:

The polypyrrole powders were chemically prepared by injecting liquid pyrrole (V pyrrole = 1.36 mL, 0.2 M) into a beaker containing MnO 2 powder (2 g) suspended in an aqueous solution of sulphuric acid (100 mL, 1 M) at room temperature. The polymerization of pyrrole was found to be initiated immediately after addition of the monomer to the medium.

The mixture was stirred magnetically for 4 hours at room temperature. The black precipitate of polypyrrole was collected by filtration, rinsed repeatedly with deionised water, and finally dried at 60 °C for 24 h.

Instruments

A Field Emission Gun-Scanning Electron Microscope (FEG-SEM Ultra 55 Zeiss), coupled with Energy Dispersive X-ray elemental analysis (EDX), was used to visualise the synthesized powders. In addition to these techniques, the X-ray diffraction (XRD) and TEM techniques were also used. TEM images were obtained with a JEOL 2000 FX microscope running at an accelerating voltage of 200 keV. Prior to analysis, the powders were crushed in a mortar. A small amount was then added in a small volume of pure ethanol using ultrasonic bath. A drop of this mixture was placed on a copper grid covered with a carbon coating and allowed to dry in air before analysis.

A Jobin-Yvon (LABRAM model) Raman spectrometer was used with a He-Ne laser (wavelength 632.81 nm). The 180 • scattered Raman beam with respect to the incident beam was focused on the spectrometer slit. The device using a Notch filter presents a very high sensitivity which allows using weak laser intensity as low as 0.01 mW, avoiding therefore any perturbation of the polymer powder. Doping level of polypyrrole powder was determined from the measure of the sulphur to nitrogen ratio that was carried out with the help of X-Ray Photoelectron Spectroscopy (XPS).

Conductivity of PPy powder was measured using impedance spectroscopy as well as a home made device allowing a PPy powder based disk to be pressed between the flat faces of two steel cylinders connected to a Bio-Logic SP300 potentiostat. The high frequency limit of the obtained impedance spectroscopy spectrum provides a measurement of the electronic resistance from which one can extract σ, the electronic conductivity (in S.cm -1 ) of the PPy powder by using the formula σ = 1/R.l/s, where R is the measured series resistance (in ohms), l, the thickness of the PPy powder based disk (in cm) and s, its surface (in cm 2 ).

Study of the polymerization of pyrrole in presence of MnO 2

The study of pyrrole polymerization reaction was realized by using optical measurements. In a preliminary series of experiments, UV-Visible spectra were recorded in the range of 350-900 nm using a Hitachi U-4001 spectrophotometer in solutions containing different concentrations of Mn 2+ in the presence of Calix-S 4 and prepared in NaOH aqueous medium at pH 11.8, in a 1 cm standard cell. The purpose of this was to carry out a calibration procedure aimed at allowing the identification of Mn 2+ cations in solution. It is well known that this binding agent gives a red coloration upon complexation of Mn 2+ cations [45,[START_REF] Shinkai | new water-soluble host molecules derived from calix[6]arene[END_REF]. In order to corroborate this quantitative analysis, the presence of Mn 2+ was also detected by cyclic voltammetry. Electrochemical measurements were carried out with a potentiostat (Gamry, Femstat FAS1). The electrochemical experiments were carried out in a usual cell containing three electrodes: a platinum electrode (area = 3.1 mm 2 ) as working electrode, a SCE reference electrode, and a large platinum grid as counter electrode.

Results and Discussion

Characterization of MnO 2 powder

The morphology of MnO 2 powder obtained from the synthesis procedure reported in section 2.2, observed by FEG-SEM is presented in Figure 1a-b. The panoramic morphology of MnO 2 powder synthesized by hydrothermal method reveals a sea urchin like morphology with 4 ~ 10 µm in diameter. Elemental analysis by EDX (Figure 1c) confirms the presence of manganese and oxygen, elemental components of MnO 2 . Indeed, the presence of manganese is shown by two energy peaks appearing approximately at 5.5, and 6.3 keV whereas that of oxygen is shown by one energy peak situated approximately at 0.3 keV. The presence of sulphur, observed as an impurity coming from manganese sulphate, is negligible.

Typical TEM image (Figure 1d) of MnO 2 powder after grinding show that the nanosticks observed previously by the FEG-SEM technique do consist of assemblies of straight sticks with diameters within the 10-50 nm range, and up to several hundreds of nanometres in length. In parallel, electron diffraction pattern showed that each stick is rather well crystallized but its orientation changes from one to another. The observed sea urchin like structure is thus a polycrystalline structure. X-ray diffraction (XRD) pattern of the synthesized MnO 2 powder is shown in Figure 1e. The feature peaks recorded in the XRD spectrum were assigned by (hkl) values of 120, 031, 131, 230, 300, 002, 160, 401, 421, 003, 062 and 450. All of the reflections of the XRD pattern can be readily indexed to the crystallographic variety γ-MnO 2 , which agrees with the values recorded in the literature (JCPDS Card. N 14-0644).

Characterization of synthesized polypyrrole powders

The morphology of the resulting polypyrrole powder was observed by FEG-SEM (see Figs. 2a-b) and their corresponding EDX profile is presented in Figure 2c. The low magnification FEG-SEM image of polypyrrole powder synthesized from γ-MnO 2 illustrate that the synthesized polypyrrole particles exhibit hollow sea urchin like morphologies dictated by those observed for MnO 2 powder with a rather uniform size and a more or less widely open mouth. The high magnification FEG-SEM image of polypyrrole particles reveal that they are composed of many nanometric nanotubes combined together on their surface (see Figure 2b). Elemental analysis by EDX (Figure 2c) confirms the presence of carbon and nitrogen, elemental components of polypyrrole, in the structure of synthesized powders, shown by energy peaks observed at 0.3 keV and 0.4 keV, respectively. The presence of sulphur and oxygen is also obvious in these polypyrrole powders, which suggests, at this stage, that the obtained polypyrrole powder is likely doped by SO 4 2-anions present in the synthesis solution, and as a consequence, that polypyrrole is in a doped, i.e. conducting state. It is worth noting the complete absence of manganese in the polypyrrole powder in spite of the use of manganese dioxide as an oxidizing agent towards pyrrole. From these first observations, it can be concluded that hollow particles of pure nanostructured polypyrrole were successfully synthesized by a chemical route.

The polypyrrole particles observed in Figs. 2b are in fact nanotubes according to TEM images. Typical TEM images (see Figure 2d) show that the nanotubes of polypyrrole powder synthesized with γ-MnO 2 observed by the FEG-SEM technique actually possess a typical outer diameter of 50 nm, a length up to 400 nm, and an inner diameter of about 10 nm which vary along the nanotube. One can also distinguish, especially from Figure 2d that those nanotubes are also closed at one extremity.

Figure 3 shows X-ray powder diffraction (XRD) pattern of the polypyrrole powder. As the absence of manganese dioxide material has been established in this material, the XRD pattern can be attributed only to polypyrrole. On Figure 3, XRD pattern exhibits a weak and broad diffraction peak at 2 = 25°, which has already been encountered in literature and attributed to amorphous PPy structures [START_REF] Zhang | Fe 3 O 4 /polypyrrole/Au nanocomposites with core/shell/shell structure: synthesis, characterization and their electrochemical properties[END_REF][START_REF] Li | Preparation and electrochemistry of one-dimensional nanostructured MnO 2 /PPy composite for electrochemical capacitor[END_REF][START_REF] Kim | Synthesis and characterization of polypyrrole rod doped with p-toluenesulfonic acid via micelle formation[END_REF][START_REF] Gu | Synthesis and characterization of polypyrrole/graphite oxide composite by in situ emulsion polymerization[END_REF][START_REF] Yang | Polypyrrole/conductive mica composites: Preparation, characterization, and application in supercapacitor[END_REF].

Figure 4 presents the Raman spectrum corresponding to polypyrrole powder synthesized by using γ-MnO 2 . The most important peak is the one at ca. 1599 cm -1 , which represents the backbone stretching mode of C=C bonds and is considered to be an overlap of the contribution of the reduced and oxidized forms of polypyrrole [START_REF] Furukawa | Raman spectra of polypyrrole and its 2,5-13 C-substituted and C-deuterated analogues in doped and undoped states[END_REF][START_REF] Duchet | Chemical synthesis of polypyrrole: structure-properties relationship[END_REF][START_REF] Liu | Identification of oxidized polypyrrole on Raman spectrum[END_REF][START_REF] Liu | In situ cyclic voltammetry-surfaceenhanced Raman spectroscopy: studies on the doping-undoping of polypyrrole film[END_REF][START_REF] Chen | Raman spectroscopic evidence of thickness dependence of the doping level of electrochemically deposited polypyrrole film[END_REF][START_REF] Harada | Vibrational Spectra and Structure[END_REF]. The peak positions of C=C backbone stretching bonds are in favour of dominating oxidized species. It was reported by J. Duchet et al. [START_REF] Duchet | Chemical synthesis of polypyrrole: structure-properties relationship[END_REF] that the peak at 1503 cm -1 represents a skeletal band. Moreover, a broad feature comprised of several overlapping bands and centered at 1348 cm -1 is assigned to a hybrid mode of intra-ring C-C bond stretching and mainly inter-ring C-C bond stretching [START_REF] Furukawa | Raman spectra of polypyrrole and its 2,5-13 C-substituted and C-deuterated analogues in doped and undoped states[END_REF], antisymmetrical C-N stretching [START_REF] Duchet | Chemical synthesis of polypyrrole: structure-properties relationship[END_REF] or ring stretching [START_REF] Liu | In situ cyclic voltammetry-surfaceenhanced Raman spectroscopy: studies on the doping-undoping of polypyrrole film[END_REF][START_REF] Chen | Raman spectroscopic evidence of thickness dependence of the doping level of electrochemically deposited polypyrrole film[END_REF]. The peak at 1258 cm -1 has been assigned to the antisymmetrical C-H in-plane bending mode [START_REF] Duchet | Chemical synthesis of polypyrrole: structure-properties relationship[END_REF] or N-H in-plane deformation [START_REF] Liu | In situ cyclic voltammetry-surfaceenhanced Raman spectroscopy: studies on the doping-undoping of polypyrrole film[END_REF]. Further evidence for the presence of oxidized species is given by the double peaks which appear at ca. 1084 cm -1 and 1049 cm -1 and assigned to the symmetrical C-H in plane bending mode associated with the bipolarons (dication) and polaron (radical cation)

structures respectively [START_REF] Furukawa | Raman spectra of polypyrrole and its 2,5-13 C-substituted and C-deuterated analogues in doped and undoped states[END_REF][START_REF] Duchet | Chemical synthesis of polypyrrole: structure-properties relationship[END_REF]. Moreover, the bands at ca. 983 cm -1 and 941 cm -1 which are assigned to the ring deformation associated with polarons and bipolarons respectively [START_REF] Furukawa | Raman spectra of polypyrrole and its 2,5-13 C-substituted and C-deuterated analogues in doped and undoped states[END_REF][START_REF] Duchet | Chemical synthesis of polypyrrole: structure-properties relationship[END_REF][START_REF] Chen | Raman spectroscopic evidence of thickness dependence of the doping level of electrochemically deposited polypyrrole film[END_REF] are also the signature of oxidized PPy. All these interpretations tend to demonstrate that the PPy powder is in its doped (oxidized) state, in good agreement with the presence of sulphate anions revealed by our EDX analysis.

Study of the polymerization mechanism of pyrrole

Optical measurements

As reported previously, MnO 2 powder, used as oxidizing agent for the chemical polymerization of pyrrole, totally disappears as such at the end of the synthesis step, as shown by the absence of manganese in the structure of the polypyrrole powders revealed by EDX and XRD. This means that manganese produced from MnO 2 reduction should be found in the supernatant solution as an ionic and therefore soluble species. These results incited us to identify the reduction product of manganese dioxide and to study the kinetics of polypyrrole polymerization reaction. In this purpose, we have used UV-Visible spectroscopy and cyclic voltammetry. In order to define the nature of these ions (Mn 2+ , Mn 3+ ), it was postulated that MnO 2 was reduced into Mn 2+ ions and these ions were analyzed by the method already used by Nishida et al. [45].

In order to optimize the complexation conditions, Mn 2+ aqueous solutions were prepared from different concentrations of MnSO 4, H 2 O. The influence of Mn 2+ concentration on the intensity of absorbance band was studied directly after mixing 1 mL of Calix-S 4 solution and 3 mL of Mn 2+ solution, at different concentrations, at pH 11.8. It is obvious that the concentration of the testing solution affects the intensity of the absorbance band of the complex. The higher the concentration of manganese (II) cations is, the higher is the band intensity of complex Calix-S 4 / Mn (II), as presented in Figure 5, but this increase is limited at an absorbance of 3.5

because above this absorbance value, marked fluctuations appeared. The plot of this variation of absorbance with Mn 2+ concentration shows that the absorbance of these solutions varies linearly as a function of Mn 2+ ions concentrations, which obeys the Lambert-Beer Law (curve not shown) and constitutes thus a calibration curve.

In order to verify our hypothesis, polypyrrole powders were prepared as explained in section 2.2. After polymerization and filtration, the retrieved solution was diluted at an adequate concentration (1.16 10 -4 M), taking as a hypothesis that the whole initial amount of MnO 2 was reduced to Mn 2+ . It was observed that the added volume of Calix-S 4 (1 mL) to 3 mL of retrieved diluted polymerization solution changed immediately the coloration of initial solution from colourless to red. Also, the spectrum related to the characterization of this mixture by UV-Vis, shown in Figure 6, illustrates the presence of an absorption band perfectly overlapped with that presented in Figure 5c and relative to Mn 2+ ions at a concentration of 1.16 10 -4 M.

In another series of experiments, the above-mentioned spectrophotometric procedure was used to follow the production of Mn 2+ in the course of the polymerization procedure, and therefore the reaction kinetics of the production of our polypyrrole powders. For that purpose, an adequate volume of the reaction mixture was extracted, filtered so as to remove the polypyrrole and manganese dioxide powders, and then the Mn 2+ concentration was determined and plotted as a function of time (Figure not shown). It was found that this latter is constant with time beyond a 25 minutes reaction time, which therefore provides a first estimation of the reaction duration.

Electrochemical measurements

Another method allowing the identification of the reaction product resulting from MnO 2 reduction is the cyclic voltammetry technique. The aqueous solution resulting from filtration of the reaction medium was used as an electrolytic solution. The potential scan rate was 10 mV.s -1 and the potential scan started from 0.7 V vs. SCE towards the positive direction up to 1.3 V vs. SCE, followed by a cathodic scan down to 0.7 V vs. SCE. The resulting cyclic voltammogram shown on Figure 7 is typical for the electrochemical behaviour of Mn 2+ cations in acidic aqueous solutions. The reaction product was therefore undoubtedly identified as Mn 2+ . The anodic peak indeed reveals the oxidation of dissolved Mn 2+ cations into manganese dioxide, produced as an insoluble thin film on the working electrode surface, whereas the cathodic peak reveals its reduction in the reverse reaction [START_REF] Paul | The mechanism of the deposition of manganese-dioxide .2. electrode impedance studies[END_REF]. This important observation demonstrates that the Mn 2+ ions that were not detected in the structure of the produced polypyrrole powders are present in the retrieved polymerization solution of pyrrole and consequently confirms the results obtained by the UV-Visible technique.

Discussion

From these results, it can be concluded that the manganese dioxide sea urchins have oxidized pyrrole to produce hollow sea urchin shaped polypyrrole particles (see Eq. 1 with the hypothesis that the doping rate in PPy is 0.33 per monomer [START_REF] Deronzier | Polypyrrole films containing metal complexes: syntheses and applications[END_REF]) and were reduced into Mn 2+ cations (see Eq. 2), which were produced in solution as soluble species.

        (Eq.3)
In our experiments, oxidation of pyrrole occurred at the manganese dioxide/aqueous solution interface, leading to the progressive dissolution of MnO 2 into soluble Mn 2+ cations. As this interface therefore steps back towards the heart of the initial MnO 2 particles, the polypyrrole particles are likely to grow towards the interior of the native particles, so as to keep in touch with the manganese dioxide surface, although this is not incompatible with a simultaneous growth on the external side of the growing PPy particles. Such mechanism may suggest that pyrrole monomers and sulphate anions may diffuse through the growing and hollow polypyrrole particles envelope from the outside to the inside so as to feed the reaction site with reactants. Simultaneously, Mn 2+ cations have to diffuse away through the walls of these polypyrrole structures so as to leave the reaction site where they were produced. Another possibility, possibly more realistic, is that reactants and reaction products respectively reach and leave the reaction site by using the mouth frequently observed on the resulting hollow sea urchin shaped polypyrrole particles. In any case, it is obvious from our structural characterization experiments that these manganese dioxide nanostructured particles did not act only as oxidizing agents in the course of this mechanism but also as sacrificial templates imposing their shape to the resulting polypyrrole particles during a so-called core-shell redox mechanism.

The resulting polypyrrole powder possesses a 0. and their walls are about twenty-five nanometers thick (see Figure 2). As a consequence, one can expect a majority of short polypyrrole chain lengths that is likely to lead to a higher number of interchain electron transfer events and therefore to a lower conductivity, especially in an amorphous material (see Figure 3) like the polypyrrole powder synthesised in this work.

Conclusion

In this contribution, hollow sea-urchin shaped nanostructured polypyrrole particles were successfully synthesised by using sea urchin shaped MnO 2 nanostructured powders as oxidizing agents and sacrificial templates simultaneously. The reaction kinetics of pyrrole polymerization was studied by UV-Visible spectroscopy and cyclic voltammetry measurements. The reaction was found to occur within about 25 minutes. We demonstrated that MnO 2 particles oxidize pyrrole monomers into oxidised polypyrrole and were reduced to soluble Mn 2+ cations identified in the retrieved polymerization solution, which explains the absence of manganese in the produced polypyrrole powders. The reaction mechanism is clearly redox and of the core-shell type. The synthesized amorphous polypyrrole powders were found to be doped with sulphate anions and thus in the conducting state. They possess a 0.31 doping level as well as a 0.05 S.cm -1 conductivity in our experimental conditions. From all these observations, it can be mentioned that we have accurately and undoubtedly defined an easy and direct method to synthesize large amounts of pure, amorphous, conducting and nanostructured polypyrrole particles that are likely to possess in addition a high specific area.

We also believe that our investigations bring a necessary light on the redox reactivity between MnO 2 and pyrrole monomer that was rather badly defined in literature so far. As such, they may affect strongly and beyond expectations i) the understanding of chemical synthesis of that recorded in an aqueous solution containing Calix-S 4 (1 mL) and 3 mL of retrieved polymerization solution diluted so as to get the same Mn 2+ concentration (1,16 10 -4 M), taking as an hypothesis that the whole initial amount of MnO 2 was reduced to Mn 2+ .

FIGURES CAPTIONSFigure 1 :

 1 FIGURES CAPTIONSFigure 1: (a-b) FEG-SEM images, (c) EDX profile, (d) TEM image and (e) XRD pattern of MnO 2 powder.

Figure 2 :

 2 Figure 2: (a) Low magnification and (b) high magnification FEG-SEM images, (c) EDX profile, and (d) TEM image of polypyrrole powder synthesized with γ-MnO 2 .

Figure 3 :

 3 Figure 3: XRD pattern of polypyrrole powder synthesized with γ-MnO 2 .

Figure 4 :

 4 Figure 4: Raman spectrum of polypyrrole powder synthesized with γ-MnO 2 .

Figure 5 :

 5 Figure 5: UV-Visible spectra of Calix-S 4 /Mn 2+ complex in aqueous solutions containing Calix-S 4 (1 mL) and Mn 2+ (3 mL) at different concentrations: (a) 0,29 10 -4 M, (b) 0,58 10 -4 M, (c) 1,16 10 -4 M, (d) 1,74 10 -4 M, (e) 2,32 10 -4 M, (f) 2,9 10 -4 M, (g) 3,48 10 -4 M, (h) 4,06 10 -4 M, (i) 4,64 10 -4 M, (j) 5,22 10 -4 M, (k) 5,8 10 -4 M.

Figure 6 :

 6 Figure 6: Overlapped UV-Visible spectra showing (a) that presented in Figure 6 (c) and (b)

Figure 7 :

 7 Figure 7: Cyclic voltammogramm of platinum electrode in retrieved polymerization solutiondiluted so as to get the same Mn 2+ concentration (1,16 10 -4 M), taking as an hypothesis that the whole initial amount of MnO 2 was reduced to Mn 2+ . Potential scan rate: 10 mV.s -1 .

Figure 1 :

 1 Figure 1: (a-b) FEG-SEM images, (c) EDX profile, (d) TEM image and (e) XRD pattern of MnO 2 powder.

Figure 2 :Figure 3 :Figure 4 :

 234 Figure 2: (a) Low magnification and (b) high magnification FEG-SEM images, (c) EDX profile, and (d) TEM image of polypyrrole powder synthesized with γ-MnO 2 .

Figure 5 :

 5 Figure 5: UV-Visible spectra of Calix-S 4 /Mn 2+ complex in aqueous solutions containing Calix-S 4 (1 mL) and Mn 2+ (3 mL) at different concentrations: (a) 0,29 10 -4 M, (b) 0,58 10 -4 M, (c) 1,16 10 -4 M, (d) 1,74 10 -4 M, (e) 2,32 10 -4 M, (f) 2,9 10 -4 M, (g) 3,48 10 -4 M, (h) 4,06 10 -4 M, (i) 4,64 10 -4 M, (j) 5,22 10 -4 M, (k) 5,8 10 -4 M.

Figure 6 :

 6 Figure 6: Overlapped UV-Visible spectra showing (a) that presented in Fig. 6 (c) and (b) thatrecorded in an aqueous solution containing Calix-S 4 (1 mL) and 3 mL of retrieved polymerization solution diluted so as to get the same Mn 2+ concentration (1,16 10 -4 M), taking as an hypothesis that the whole initial amount of MnO 2 was reduced to Mn 2+ .

Figure 7 :

 7 Figure 7: Cyclic voltammogramm of platinum electrode in retrieved polymerization solution diluted so as to get the same Mn 2+ concentration (1,16 10 -4 M), taking as an hypothesis that the whole initial amount of MnO 2 was reduced to Mn 2+ . Potential scan rate: 10 mV.s -1 .

  31 doping level as shown by XPS characterisation (see Survey XPS spectrum in Figure SI 1 of Supplementary Information).Such value is in very good agreement with that of 0.33 usually encountered in literature for polypyrrole[START_REF] Deronzier | Polypyrrole films containing metal complexes: syntheses and applications[END_REF]. Moreover impedance spectroscopy measurements allowed us to determine a series resistance of 282.4 ± 4.4 Ω (average value calculated over ten impedance spectroscopy measurements, see impedance spectroscopy spectrum in Figure SI 2 of Supplementary Information) and thus a 0.05 S.cm -1 conductivity. By comparison with the doping level value, this conductivity value may reveal conductivity limitations due to chain length and nanostructured character of polypyrrole powders. The nanotubes observed on the surface of the sea-urchin shaped polypyrrole nanostructures are about two hundred fifty nanometers long

  PPy in the presence of MnO 2 and another oxidizing agent, ii) the electrochemical deposition of composite polypyrrole/MnO 2 thin films, and iii) the expectable surface properties (oxidation power) of MnO 2 particles in the resulting materials, keeping in mind that the oxidation potential of polypyrrole is lower than the oxidation potential of pyrrole. It is likely that such conclusions will be of large interest for numerous investigations frequently reported in literature lately concerning the synthesis, properties and applications of PPy/MnO 2 powders (mixtures or core/shell) and PPy/MnO 2 composite thin films in view of applications as electrode materials in batteries, supercapacitors and electrocatalysis for instance. FEG-SEM and EDX experiments, as well as Mr C. Bazin and Mrs. H. Benidiri for the XRD measurements. Mr C. Calers (LRS, UMR 7197) is warmly acknowledged for his collaboration during XPS measurements.

Acknowledgements

The present work was carried out in the frame of French -Algerian cooperation project CMEP-PHC Tassili N°06 MDU 686. The authors are grateful to EGIDE for financial support. They thank Mrs Pillier and Mr. Borensztajn for their efficient assistance in TEM,


Sylvestre Le Roy

Rodrigo Pedreros

Camille André

François Paris

Sophie Lecacheux

Fabien Marche

Charlotte Vinchon

Simulating overtopping and coastal flooding in urban areas: Perspectives to quantify sea level rise effects

de niveau recherche, publiés ou non, émanant des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

1

Simulating overtopping and coastal flooding in urban areas: Perspectives to quantify sea level rise effects

Recent progresses in numerical modelling and data acquisition have allowed significant improvements in coastal flooding simulations, with a maturity of numerical tools that now allows very precise results in urban areas. Essentially used for hazard studies, their reliability now offers the perspective to estimate the impact of sea level rise on coastal flooding hazards.

Thepresented methodis based on simultaneous simulation of wave overtopping and resulting flood in urban areas. This type of two-dimensional simulationscan afford reproducingboth the chronology and the effect of urban areas on flood dynamics. The method consists in elaborating,from larger simulations, a time-series of instantaneous water levels, including waves. This time-series is imposed upon a time-dependent phase-resolving model to simulate dynamically wave overtopping and the resulting flood, using a Digital Elevation Model that includes buildings.

This method has been applied to the Johanna storm (2008) in Gâvres (France). SURF-WB, a NLSW model, allowed simulating both overtopping dynamics and flooding, taking into account buildings thanks to a 1m-resolution. Obtained results proved to be very consistent with available reports (overtopping sectors, flooded area, water heights and chronology). This method allows reproducingvery realistically overtopping andflooding dynamics in an urban area (water heights and velocities), with an increased accuracy and very realistic results compared to more classical approaches.

This type of simulations can be used to estimate the potential evolutions of coastal flooding processes in a context of sea level rise due to climate change, supposing nevertheless a nonmodified morphology. Preliminary simulations realized on the site of Gâvres showed how sea level rise could increase overtopping for a storm like Johanna. For example, a rise of 20 cm of the sea water level may lead to a slightly larger flooded area, but with water heightsincreasing of about 28 cm, due to the modifications in overtopping flows and chronology.


Stefano Nardulli

Pierre Pansu

A discontinuous isoperimetric profile for a complete Riemannian manifold

The first known example of a complete Riemannian manifold whose isoperimetric profile is discontinuous is given.

RESUM É : On construit le premier exemple connu d' une variété riemannienne complète dont le profil isopérimétrique est discontinu.

Introduction 1.The problem

Let M be a Riemannian manifold. We are concerned with the continuity of the isoperimetric profile of M . Given 0 < v < vol(M ), consider all domains, i.e. smooth compact codimension 0 submanifolds in M with volume v. Define I M (v) as the least upper bound of the boundary areas of such domains. In this way, one gets a function I M : (0, vol(M )) → R + called the isoperimetric profile of M .

Question 1 When is the isoperimetric profile a continuous function ?

The answer is yes when M is compact, Lemme 6.2 of [START_REF] Gallot | Inégalités isopérimétriques et analytiques sur les variétés riemanniennes[END_REF]. S. Gallot's proof uses techniques of metric geometry. In the compact case, alternative proofs, based on the direct method of the calculus of variations, can be found in books like [START_REF] Ambrosio | Functions of bounded variation and free discontinuity problems[END_REF], [START_REF] Morgan | Geometric measure theory[END_REF], [START_REF] Maggi | Sets of finite perimeter and geometric variational problems[END_REF].

The latter argument has been extended to the case of complete manifolds with C2,α -bounded geometry, see Theorem 1 of [START_REF] Munoz | Continuity and differentiability properties of the isoperimetric profile in complete noncompact riemannian manifolds with bounded geometry[END_REF] and Theorem 2.2 of [START_REF] Enrique | Generalized compactness for finite perimeter sets and applications to the isoperimetric problem[END_REF].

If one assumes existence of isoperimetric regions of every volume, one can weaken bounded geometry assumptions. It suffices to assume a lower bound on Ricci curvature and on the volumes of balls of radius 1, see Theorem 4.1 [START_REF] Munoz | Continuity and differentiability properties of the isoperimetric profile in complete noncompact riemannian manifolds with bounded geometry[END_REF]. In our opinion, it remains an open question whether the noncollapsing assumption (lower bound on the volumes of balls) can be removed or not, see Question 3 below.

The isoperimetric profile is continuous also when the volume of M is finite; a proof of this fact can be found in Corollary 2.4 of [START_REF] Nardulli | On the Hamilton's isoperimetric ratio in complete Riemannian manifolds of finite volume[END_REF].

When the ambient manifold is a non-compact homogeneous space, Hsiang showed that its isoperimetric profile is a non-decreasing and absolutely continuous function [ [START_REF] Hsiang | On soap bubbles and isoperimetric regions in noncompact symmetric spaces[END_REF], Lemma 3, Thm. 6].

In a recent paper, [START_REF] Ritoré | Continuity of the isoperimetric profile of a complete Riemannian manifold under sectional curvature conditions[END_REF], Manuel Ritoré showed that a complete Riemannian manifold possessing a strictly convex Lipschitz continuous exhaustion function has continuous and nondecreasing isoperimetric profile. Hadamard manifolds and complete non-compact manifolds with strictly positive sectional curvature belong to this class. This shows that earlier attempts to construct counterexamples using pieces of increasing negative curvature are doomed to fail. An example of a manifold with density with discontinuous isoperimetric profile has been described by Adams, Morgan and Nardulli in Prop. 2 of [START_REF] Adams | [END_REF].

For more informations about the literature on the continuity of the isoperimetric profile the reader should consult the introduction of [START_REF] Ritoré | Continuity of the isoperimetric profile of a complete Riemannian manifold under sectional curvature conditions[END_REF] and references therein.

The result

Theorem 1 There exists a connected non compact 3-dimensional Riemannian manifold M such that I M is a discontinuous function.

The proof is a modification of the treatment of Riemannian manifolds with density by Adams, Morgan and Nardulli, an account of which can be found in Frank Morgan's blog, [START_REF] Adams | [END_REF].

Start with a disjoint union of Riemannian manifolds N = n M n such that vol(M n ) = 1 + τ n where τ n > 0 tends to 0. Then I N (1 + τ n ) = 0. Assume that, for all n, I Mn (1) = I Mn (τ n ) ≥ 1. Then it is not too hard to show that I N (1) ≥ 1. Connecting M n to M n+1 with a very thin tube produces a connected Riemannian manifold M for which I N (1 + n ) tends to 0. Again, it is not too hard to show that I M (1) > 0. Therefore I M is discontinuous.

Thus the key input is the sequence of Riemannian manifolds M n with vol(M n ) bounded and I Mn (τ n ) bounded below. Adams, Morgan and Nardulli indulged themselves in introducing densities. They took for M n a tiny round sphere with a high constant density. Since volumes and boundary areas rescale differently, one can achieve I Mn ( n ) ≥ 1. Instead, we use nilmanifolds equipped with metrics which converge (up to rescaling) to a single Carnot-Carathéodory metric. The Carnot-Carathéodory isoperimetric profile established in [START_REF] Pansu | An isoperimetric inequality on the Heisenberg group[END_REF] gives a uniform lower bound for the isoperimetric profiles of such metrics.

A similar construction certainly works in any dimension ≥ 3.

Question 2 Does there exist a 2-dimensional Riemannian manifold whose isoperimetric profile is discontinuous?

Question 3 Does a manifold with Ricci curvature bounded below and admitting isoperimetric regions in every volume, have a continuous isoperimetric profile?

2 Isoperimetry in nilmanifolds

Isoperimetry in the Heisenberg group

The Heisenberg group H is the group of real upper triangular unipotent 3 × 3 matrices,

H = {   1 x z 0 1 y 0 0 1   ; x, y, z ∈ R}.
Putting integer entries produces the discrete subgroup H Z ⊂ H. Let dx, dy, θ = dz -xdy be a basis of left-invariant forms. Let

g = dx 2 + dy 2 + 1 2 θ 2 .
This is a left-invariant Riemannian metric on H. As tends to 0, the distance d associated to g converges to the Carnot-Carathéodory distance

d c (p, q) = inf{length(γ) ; γ(0) = p, γ(1) = q, γ * θ = 0}.
• d c has Hausdorff dimension 4, with spherical 4-dimensional measure proportional to Haar measure S 4 = dxdydz.

• Smooth surfaces S in H have Hausdorff dimension 3, with spherical 3-dimensional measure proportional to the measure denoted by S 3 to be described soon (the proportionality constants are universal and will be ignored in the sequel).

• Smooth curves which are transverse to the contact structure ker(θ) have Hausdorff dimension 2, with spherical 2-dimensional measure S 2 given by integration of θ (up to sign).

• Smooth curves tangent to ker(θ) have Hausdorff dimension 1, with spherical 1-dimensional measure S 1 being length.

S 3 is locally the product S 1 ⊗ S 2 . Specifically, let d denote a (locally defined away from points where S is tangent to ker(θ)) unit 1-form on S whose kernel is orthogonal to the trace of ker(θ) on the tangent plane to S. Then, up to a sign, S 3 is obtained by integrating d ∧ θ.

The Heisenberg isoperimetric inequality ( [START_REF] Pansu | An isoperimetric inequality on the Heisenberg group[END_REF]) states that for all smooth domains Ω ⊂ H,

S 3 (∂Ω) ≥ S 4 (Ω) 3/4 , (1)
up to a universal constant that we ignore again.

Here is an alternate description of S 3 . Let d area denote the area induced by Riemannian metric g . The 1-form θ restricts to a 1-form on S, we denote its g -norm by |θ |S | . Then S 3 has density |θ |S | with respect to g -area,

dS 3 = |θ |S | d area .
Since |θ| = , |θ |S | ≤ , therefore S 3 (S) ≤ area (S). On the other hand, the Riemannian volume element of g is 1 dxdydz. This shows that the Heisenberg isoperimetric inequality (1) implies a lower bound on the isoperimetric profile of (H, g ) for all > 0,

I (H,g ) (v) ≥ 1 1/4 v 3/4 . (2)
This is asymptotically sharp for large volumes, but not for small volumes, where the correct asymptotics is v 2/3 . Never mind, it is the dependance on which is most important here.

We shall not directly use inequality (2). Instead, we shall rely on inequality (1) to study the Carnot-Carathéodory isoperimetric profile of a quotient of H. Only at the very end shall we return to Riemannian geometry.

Nilmanifolds

H possesses group automorphisms δ t (x, y, z) = (tx, ty, tz). Let Γ t = δ t (H Z ) and N t = Γ t \ H be the quotient manifold. It inherits quotient metrics g , yielding Riemannian nilmanifolds N t, of total volume equal to t 4 . But is also inherits a Carnot-Carathéodory metric that depends only on t. Our first goal is to show that the Carnot-Carathéodory isoperimetric profile of N t satisfies an inequality similar to (1). Note that δ t induces a homothetic map of N 1 onto N t , so it suffices to work with one single compact space N 1 . The volume of N 1 is S 4 (N 1 ) = 1.

Theorem 2 There exists a constant c such that the Carnot-Carathéodory isoperimetric profile of

N 1 satisfies I (N 1 ,dc) (v) ≥ c min{v, 1 -v} 3/4 . In other words, if Ω ⊂ N 1 is a smooth domain of volume less that 1/2, S 3 (∂Ω) ≥ c S 4 (Ω) 3/4 .
The method consists in cutting domains of N 1 into pieces that lift to covering spaces. Ultimately, pieces lift to H where one can apply (1). This covers cases where volume is smaller than some universal constant v 0 . To treat domains with volume ≥ v 0 , we apply a compactness result due to [START_REF] Franchi | Rectifiability and perimeter in the Heisenberg group[END_REF] (see also [START_REF] Leonardi | Isoperimetric sets on Carnot groups[END_REF]).

Reduction to pillars

A first is to cut domains into pieces called pillars that lift to a Z ⊕ Z covering space Z of N 1 .

Definition 1 Let ζ denote the center of H Z . Let us call pillar a subset of Z = ζ \ H whose projection to H/[H, H] = R 2 is contained in a unit square. Denote by P I Z the pillar profile of Z, i.e.

P I Z (v) = inf{S 3 (∂P ) ; P a pillar, S 4 (P ) = v}.

Proposition 2 (Reduction to pillars) The pillar profile of Z bounds the profile of N 1 from below, with an error term,

I (N 1 ,dc) (v) ≥ P I Z (v) -4v.
Proof. The coordinate functions x and y on H pass to a quotient

N 1 → Z \ R. For u = (s, s ) ∈ (Z \ R) 2 , let G u = {p ∈ N 1 ; x(p) = s or y(p) = s }.
This is the union of two surfaces, each of which is a level set of one of the functions x or y. The complement of G u has a cyclic fundamental group that maps isomorphically onto ζ.

Let Ω be a domain in N 1 . By the coarea formula,

S 4 (Ω) = Z\R S 3 (x -1 (s) ∩ Ω) ds.
This coarea formula follows from the fact that the volume element (viewed as a 4-form) splits,

d S 4 = dx ∧ dy ∧ θ = dx ∧ d S 3 ,
since dy ∧ θ = d S 3 along the fibers of x (one can take d = dy globally).

The same inequality holds with x replaced with y. This shows that there exists u = (s, s ) ∈ (Z\R) 2 such that

S 3 (x -1 (s) ∩ Ω) ≤ S 4 (Ω), S 3 (y -1 (s ) ∩ Ω) ≤ S 4 (Ω),
and thus

S 3 (G u ∩ Ω) ≤ 2S 4 (Ω).
The complement Ω \ G u lifts to the cyclic covering space Z. Pick some lift. Its closure P is a pillar. Indeed, on P , the real valued functions x and y take values in intervals of length 1. The boundary of P consists of a part that isometrically and injectively maps to ∂Ω, and of a part that maps 2-1 to G u ∩ Ω. Therefore

S 3 (∂P ) ≤ S 3 (∂Ω) + 2S 3 (G u ∩ Ω) ≤ S 3 (∂Ω) + 4S 4 (Ω).
If S 4 (Ω) = v, this shows that

I (N 1 ,dc) (v) ≥ P I Z (v) -4v.

Treatment of pillars

Proposition 3 (Treatment of pillars) The profile of H bounds the pillar profile of Z from below, with an error term,

P I Z (v) ≥ I H (v) -8v.
Proof. Let P ⊂ Z be a pillar. We can assume that its projection to R 2 is contained in {0 ≤ x ≤ 1}. Its inverse image P in H is a ζ-invariant subset with small projection in R 2 . Again, we cut P into logs of height 1 using level sets of the z function. This time, we split the volume element as

dS 4 = dx ∧ dy ∧ dz = dz ∧ (dx ∧ dy) = dz ∧ 1 |x| d S 3 ≥ dz ∧ d S 3 .
We have used the expression d S 3 = |x| dx dy for the measure induced on horizontal planes {z = s}.

On such surfaces, one can take d = dx globally, whence d S 3 = ±dx ∧ θ = |x| dx dy. The coarea formula gives

S 4 (P ) = S 4 ( P ∩ {0 ≤ z ≤ 1}) = 1 0 P ∩{z=s} 1 |x| d S 3 ds ≥ 1 0 S 3 ( P ∩ {z = s}) ds.
There exists s ∈ [0, 1] such that S 3 ( P ∩ {z = s}) ≤ S 4 (P ).

Set Ω = P ∩ {s ≤ z ≤ s + 1}. Then S 3 (∂Ω ) ≤ S 3 (∂P ) + 2S 4 (P ).

If P has volume v, this leads to

P I Z (v) ≥ I H (v) -2v.
2.5 Profile of (N 1 , d c )

Proposition 4 (Carnot-Carathéodory isoperimetric inequality for small volumes) If v ≤ 12 -4 ,

I (N 1 ,dc) (v) ≥ 1 2 v 3/4 .
Proof. Combined with Propositions 2 and 3, the Heisenberg isoperimetric inequality (1) yields

I (N 1 ,dc) (v) ≥ v 3/4 -4v -2v = v 3/4 (1 -6 v 1/4 ) ≥ 1 2 v 3/4 , since v ≤ 12 -4 .

Proof of Theorem 2

There a notion of Carnot-Carathéodory perimeter, an appropriate topology for which S 4 is continuous and the perimeter (which coincides with S 3 for smooth domains) lower semi-continuous, and a compactness theorem for sets of bounded perimeter in a compact Carnot manifold, [START_REF] Franchi | Rectifiability and perimeter in the Heisenberg group[END_REF]. This implies that the Carnot-Carathéodory isoperimetric profile I (N 1 ,dc) is positive on (0, 1) and lower semi-continuous. Therefore, there exists η > 0 such that

I (N 1 ,dc) ≥ η on [12 -4 , 1 -12 -4 ]. Set c = min{ 1 2 , 2 3/4 η}. Then I (N 1 ,dc) (v) ≥ η = c( 1 2 ) 3/4 ≥ c v 3/4 for every v ∈ [12 -4 , 1 2 ].
On the other hand, Proposition 4 shows that I (N 1 ,dc) (v) ≥ c v 3/4 for all v ∈ [0, 12 -4 ].

Note that the proof does not provide an effective constant c.

Riemannian profile

Corollary 3 Let N t, denote the quotient (δ t (H Z )) \ H equipped with the Riemannian metric induced by g . The isoperimetric profile of N t, satisfies

I Nt, (v) ≥ c 1/4 min{v, t 4 -v} 3/4 .
Proof. The homothetic map N 1 → N t induced by the automorphism δ t transports the inequality of Theorem 2 to N t without any change but the fact that S 4 (N t ) = t 4 replaces 1. The Riemannian volume element of N t, is 1 S 4 , the Riemannian area induced on surfaces satisfies area ≥ S 3 . This leads to the indicated dependence on in the isoperimetric profile of N t, .

3 Proof of Theorem 1

3.1 The case of a disjoint union of nilmanifolds

Proposition 5 Let τ n = 1 n , n = τ 3 n and t n = τ 3/4 n (1 + τ n ) 1/4 . Let N = n N tn, n . Then, for all v ∈ [ 1 16 , 1], I N (v) ≥ c 8
, where c is the constant of Theorem 2.

Proof. By construction, vol(N tn, n ) = 1 + τ n . Let Ω be a domain in

N with vol(Ω) = v. Write Ω = n Ω n where Ω n ⊂ N tn, n has volume v n , ∞ n=1 v n = v. If some v n satisfies v n ≥ 1 2 (1 + τ n ), then area(∂Ω n ) ≥ c 1/4 n (1 + τ n -v n ) 3/4 ≥ c 1/4 n τ 3/4 n = c, area(∂Ω) ≥ c (3)
in this case.

Otherwise, for all n ≥ 1,

area(∂Ω n ) ≥ c 1/4 n v 3/4 n ≥ c v 3/4 n .
We use the concavity inequality

a α + b α ≥ (a + b) α ,
valid for all 0 ≤ α ≤ 1, a ≥ 0 and b ≥ 0. This gives

area(∂Ω) = ∞ n=1 area(∂Ω n ) ≥ c ∞ n=1 v 3/4 n ≥ c ∞ n=1 v n 3/4 = ( 1 16 ) 3/4 c = c 8 .

Connecting manifolds

Proof. We construct a noncompact manifold that has the shape of an infinite pearl necklace, adjusting suitable parameters carefully. Let 0 < τ n < 1 be the sequence of positive real numbers chosen in the proof of Proposition 5. Pick another sequence of volumes w n < 1, such that

n w n < 1 2 , (4)
and a sequence of areas a n > 0 such that

n a n < c 16 , (5)
where c is the constant of Theorem 2.

The manifolds N tn, n that we want to connect to obtain our counterexample M , are like in Proposition 5, in particular we retain here that V (N tn, n ) = 1 + τ n . Take two small disjoint balls B n,1 , B n,2 inside N tn, n whose boundaries have total area ≤ a n . Arrange that B n,2 and B n+1,1 be nearly isometric. Put Ñn := N tn, n \ B n,1 ∪B n,2 .

Consider tubes or cylinders T n of the form T n := (S 2 (1)×[0, 1], g n ), where the metrics g n are chosen in such a way that V (g n ) ≤ w n and they glue together into a smooth metric on the connected sum M n := Ñn #T n where the gluing is done along i n (S 2 (1) × {0}) ∼ = ∂B n,2 . Now consider (M, g)

:= M 1 #M 2 # • • • #M n #M n+1 # • • • (6)
where M n and M n+1 glued together along the boundaries i n (S 2 (1) × {1}) ∼ = ∂B (n+1),1 , where i n : T n → M is the isometric embedding associated to our construction.

We show that the right limit I M (1+) vanishes. Consider domains D n := Ñn , we get V (D n ) = 1 + τ n -ṽ n-1 -ṽ n = 1 + α n , with α n → 0, ε n := A(∂D n ) = A g (∂B n,2 ∪∂B n+1,1 ) → 0. This implies readily 0 ≤ lim This show that I M (1) ≥ c 16 .

This concludes the proof of Theorem 1.

n→+∞I

  M (1 + α n ) ≤ lim n→+∞ A(∂D n ) = 0. (7)We show that I M (1) > 0. Let Ω be a domain in M such that V (Ω) = 1. Write Ω := ˚ Ωn , where Ωn := Ω ∩ Ñn . ThenV ( Ω) ≥ 1all n, ∂ Ωn = ((∂Ω) ∩ Ñn ) ∪(Ω ∩ ∂ Ñn ), A(∂ Ωn ) -A((∂Ω) ∩ Ñn ) ≤ A g (∂B n,2 ∪∂B n,1 ) ≤ a n ,thusA(∂Ω) ≥ A(∂ Ω) -

S. Nardulli, Instituto de Matemática, Universidade Federal de Rio de Janeiro

P. Pansu, Univ Paris-Sud, Laboratoire de Mathématiques d'Orsay, Orsay, F-91405

CNRS, Orsay, F-91405.

Pierre.Pansu@math.u-psud.fr http://www.math.u-psud.fr/∼pansu