BACK TO INDEX

Publications of year 2007
Thesis
  1. Kaoutar El Maghraoui. A Framework for the Dynamic Reconfiguration of Scientific Applications in Grid Environments. PhD thesis, Rensselaer Polytechnic Institute, 2007. Keyword(s): concurrent programming, distributed computing, grid computing, middleware.
    Abstract:
    Advances in hardware technologies are constantly pushing the limits of processing, networking, and storage resources, yet there are always applications whose computational demands exceed even the fastest technologies available. It has become critical to look into ways to efficiently aggregate distributed resources to benefit a single application. Achieving this vision requires the ability to run applications on dynamic and heterogeneous environments such as grids and shared clusters. New challenges emerge in such environments, where performance variability is the rule and not the exception, and where the availability of the resources can change anytime. Therefore, applications require the ability to dynamically reconfigure to adjust to the dynamics of the underlying resources. To realize this vision, we have developed the Internet Operating System (IOS), a framework for middleware-driven application reconfiguration in dynamic execution environments. Its goal is to provide high performance to individual applications in dynamic settings and to provide the necessary tools to facilitate the way in which scientific and engineering applications interact with dynamic environments and reconfigure themselves as needed. Reconfiguration in IOS is triggered by a set of decentralized agents that form a virtual network topology. IOS is built modularly to allow the use of different algorithms for agents’ coordination, resource profiling, and reconfiguration. IOS exposes generic APIs to high-level applications to allow for interoperability with a wide range of applications. We investigated two representative virtual topologies for inter-agent coordination: a peer-to-peer and a cluster-to-cluster topology

    @PhdThesis{elmaghraoui-phd-2007,
    author = {Kaoutar El Maghraoui},
    title = {A Framework for the Dynamic Reconfiguration of Scientific Applications in Grid Environments},
    school = {Rensselaer Polytechnic Institute},
    year = 2007,
    pdf = {http://wcl.cs.rpi.edu/theses/elmaghraoui-phd.pdf},
    keywords = {concurrent programming, distributed computing, grid computing, middleware},
    abstract = {Advances in hardware technologies are constantly pushing the limits of processing, networking, and storage resources, yet there are always applications whose computational demands exceed even the fastest technologies available. It has become critical to look into ways to efficiently aggregate distributed resources to benefit a single application. Achieving this vision requires the ability to run applications on dynamic and heterogeneous environments such as grids and shared clusters. New challenges emerge in such environments, where performance variability is the rule and not the exception, and where the availability of the resources can change anytime. Therefore, applications require the ability to dynamically reconfigure to adjust to the dynamics of the underlying resources. To realize this vision, we have developed the Internet Operating System (IOS), a framework for middleware-driven application reconfiguration in dynamic execution environments. Its goal is to provide high performance to individual applications in dynamic settings and to provide the necessary tools to facilitate the way in which scientific and engineering applications interact with dynamic environments and reconfigure themselves as needed. Reconfiguration in IOS is triggered by a set of decentralized agents that form a virtual network topology. IOS is built modularly to allow the use of different algorithms for agents’ coordination, resource profiling, and reconfiguration. IOS exposes generic APIs to high-level applications to allow for interoperability with a wide range of applications. We investigated two representative virtual topologies for inter-agent coordination: a peer-to-peer and a cluster-to-cluster topology} 
    }
    


Articles in journal, book chapters
  1. Travis Desell, Kaoutar El Maghraoui, and Carlos A. Varela. Malleable Applications for Scalable High Performance Computing. Cluster Computing, pp 323-337, June 2007. Keyword(s): distributed computing, grid computing, middleware.
    Abstract:
    Iterative applications are known to run as slow as their slowest computational component. This paper introduces malleability, a new dynamic reconfiguration strategy to overcome this limitation. Malleability is the ability to dynamically change the data size and number of computational entities in an application. Malleability can be used by middleware to autonomously reconfigure an application in response to dynamic changes in resource availability in an architecture-aware manner, allowing applications to optimize the use of multiple processors and diverse memory hierarchies in heterogeneous environments. The modular Internet Operating System (IOS) was extended to reconfigure applications autonomously using malleability. Two different iterative applications were made malleable. The first is used in astronomical modeling, and representative of maximum-likelihood applications was made malleable in the SALSA programming language. The second models the diffusion of heat over a two dimensional object, and is representative of applications such as partial differential equations and some types of distributed simulations. Versions of the heat application were made malleable both in SALSA and MPI. Algorithms for concurrent data redistribution are given for each type of application. Results show that using malleability for reconfiguration is 10 to 100 times faster on the tested environments. The algorithms are also shown to be highly scalable with respect to the quantity of data involved. While previous work has shown the utility of dynamically reconfigurable applications using only computational component migration, malleability is shown to provide up to a 15% speedup over component migration alone on a dynamic cluster environment. This work is part of an ongoing research effort to enable applications to be highly reconfigurable and autonomously modifiable by middleware in order to efficiently utilize distributed environments. Grid computing environments are becoming increasingly heterogeneous and dynamic, placing new demands on applications’ adaptive behavior. This work shows that malleability is a key aspect in enabling effective dynamic reconfiguration of iterative applications in these environments.

    @Article{desell-cc-malleability-2007,
    author = {Travis Desell and Kaoutar El Maghraoui and Carlos A. Varela},
    title = {Malleable Applications for Scalable High Performance Computing},
    journal = {Cluster Computing},
    year = 2007,
    month = {June},
    pages = {323--337},
    publisher = {Springer},
    address = {Netherlands},
    pdf = {http://wcl.cs.rpi.edu/papers/cc-malleability2007.pdf},
    url = {http://dx.doi.org/10.1007/s10586-007-0032-9},
    keywords = "distributed computing, grid computing, middleware",
    abstract = {Iterative applications are known to run as slow as their slowest computational component. This paper introduces malleability, a new dynamic reconfiguration strategy to overcome this limitation. Malleability is the ability to dynamically change the data size and number of computational entities in an application. Malleability can be used by middleware to autonomously reconfigure an application in response to dynamic changes in resource availability in an architecture-aware manner, allowing applications to optimize the use of multiple processors and diverse memory hierarchies in heterogeneous environments. The modular Internet Operating System (IOS) was extended to reconfigure applications autonomously using malleability. Two different iterative applications were made malleable. The first is used in astronomical modeling, and representative of maximum-likelihood applications was made malleable in the SALSA programming language. The second models the diffusion of heat over a two dimensional object, and is representative of applications such as partial differential equations and some types of distributed simulations. Versions of the heat application were made malleable both in SALSA and MPI. Algorithms for concurrent data redistribution are given for each type of application. Results show that using malleability for reconfiguration is 10 to 100 times faster on the tested environments. The algorithms are also shown to be highly scalable with respect to the quantity of data involved. While previous work has shown the utility of dynamically reconfigurable applications using only computational component migration, malleability is shown to provide up to a 15% speedup over component migration alone on a dynamic cluster environment. This work is part of an ongoing research effort to enable applications to be highly reconfigurable and autonomously modifiable by middleware in order to efficiently utilize distributed environments. Grid computing environments are becoming increasingly heterogeneous and dynamic, placing new demands on applications’ adaptive behavior. This work shows that malleability is a key aspect in enabling effective dynamic reconfiguration of iterative applications in these environments.} 
    }
    


Conference articles
  1. Travis Desell, Nathan Cole, Malik Magdon-Ismail, Heidi Newberg, Boleslaw Szymanski, and Carlos A. Varela. Distributed and Generic Maximum Likelihood Evaluation. In 3rd IEEE International Conference on e-Science and Grid Computing (eScience2007), Bangalore, India, pages 337-344, December 2007. Note: Best paper (finalist) award. Keyword(s): distributed computing, scientific computing, grid computing, supercomputing, internet computing, distributed computing, scientific computing, middleware, grid computing.
    Abstract:
    This paper presents GMLE 1, a generic and distributed framework for maximum likelihood evaluation. GMLE is currently being applied to astroinformatics for determining the shape of star streams in the Milky Way galaxy, and to particle physics in a search for theory-predicted but yet unobserved sub-atomic particles. GMLE is designed to enable parallel and distributed executions on platforms ranging from supercomputers and high-performance homogeneous computing clusters to more heterogeneous Grid and Internet computing environments. GMLE's modular implementation seperates concerns of developers into the distributed evaluation frameworks, scientific models, and search methods, which interact through a simple API. This allows us to compare the benefits and drawbacks of different scientific models using different search methods on different computing environments. We describe and compare the performance of two implementations of the GMLE framework: an MPI version that more effectively uses homogeneous environments such as IBM's BlueGene, and a SALSA version that more easily accommodates heterogeneous environments such as the Rensselaer Grid. We have shown GMLE to scale well in terms of computation as well as communication over a wide range of environments. We expect that scientific computing frameworks, such as GMLE, will help bridge the gap between scientists needing to analyze ever larger amounts of data and ever more complex distributed computing environments.

    @inproceedings{desell-gmle-escience-2007,
    author = "Travis Desell and Nathan Cole and Malik Magdon-Ismail and Heidi Newberg and Boleslaw Szymanski and Carlos A. Varela",
    title = "Distributed and Generic Maximum Likelihood Evaluation",
    booktitle = "3rd IEEE International Conference on e-Science and Grid Computing (eScience2007)",
    year = "2007",
    pages = "337--344",
    address = "Bangalore, India",
    month = "December",
    keywords = "distributed computing, scientific computing, grid computing, supercomputing, internet computing",
    note = {Best paper (finalist) award},
    pdf = {http://wcl.cs.rpi.edu/papers/e-science2007.pdf},
    keywords = {distributed computing, scientific computing, middleware, grid computing},
    abstract = {This paper presents GMLE 1, a generic and distributed framework for maximum likelihood evaluation. GMLE is currently being applied to astroinformatics for determining the shape of star streams in the Milky Way galaxy, and to particle physics in a search for theory-predicted but yet unobserved sub-atomic particles. GMLE is designed to enable parallel and distributed executions on platforms ranging from supercomputers and high-performance homogeneous computing clusters to more heterogeneous Grid and Internet computing environments. GMLE's modular implementation seperates concerns of developers into the distributed evaluation frameworks, scientific models, and search methods, which interact through a simple API. This allows us to compare the benefits and drawbacks of different scientific models using different search methods on different computing environments. We describe and compare the performance of two implementations of the GMLE framework: an MPI version that more effectively uses homogeneous environments such as IBM's BlueGene, and a SALSA version that more easily accommodates heterogeneous environments such as the Rensselaer Grid. We have shown GMLE to scale well in terms of computation as well as communication over a wide range of environments. We expect that scientific computing frameworks, such as GMLE, will help bridge the gap between scientists needing to analyze ever larger amounts of data and ever more complex distributed computing environments.} 
    }
    


  2. Kaoutar El Maghraoui, Travis Desell, Boleslaw K. Szymanski, and Carlos A. Varela. Dynamic Malleability in Iterative MPI Applications. In Proceedings of Seventh IEEE International Symposium on Cluster Computing and the Grid (CCGrid 2007), Rio de Janeiro, Brazil, pages 591-598, May 2007. IEEE Computer Society. Note: Best paper award nominee. Keyword(s): concurrent programming, distributed computing, middleware, grid computing.
    Abstract:
    Malleability enables a parallel application's execution system to split or merge processes modifying granularity. While process migration is widely used to adapt applications to dynamic execution environments, it is limited by the granularity of the application's processes. Malleability empowers process migration by allowing the application's processes to expand or shrink following the availability of resources. We have implemented malleability as an extension to the PCM (process checkpointing and migration) library, a user-level library for iterative MPI applications. PCM is integrated with the Internet operating system (IOS), a framework for middleware-driven dynamic application reconfiguration. Our approach requires minimal code modifications and enables transparent middleware- triggered reconfiguration. Experimental results using a two-dimensional data parallel program that has a regular communication structure demonstrate the usefulness of malleability.

    @InProceedings{elmaghraoui-mpi-malleability-2007,
    author = {Kaoutar El Maghraoui and Travis Desell and Boleslaw K. Szymanski and Carlos A. Varela},
    title = {Dynamic Malleability in Iterative MPI Applications},
    booktitle = {Proceedings of Seventh IEEE International Symposium on Cluster Computing and the Grid (CCGrid 2007), Rio de Janeiro, Brazil},
    year = {2007},
    month = {May},
    publisher = {IEEE Computer Society},
    pages = {591--598},
    note = {Best paper award nominee},
    pdf = {http://wcl.cs.rpi.edu/papers/ccgrid07.pdf},
    keywords = {concurrent programming, distributed computing, middleware, grid computing},
    abstract = {Malleability enables a parallel application's execution system to split or merge processes modifying granularity. While process migration is widely used to adapt applications to dynamic execution environments, it is limited by the granularity of the application's processes. Malleability empowers process migration by allowing the application's processes to expand or shrink following the availability of resources. We have implemented malleability as an extension to the PCM (process checkpointing and migration) library, a user-level library for iterative MPI applications. PCM is integrated with the Internet operating system (IOS), a framework for middleware-driven dynamic application reconfiguration. Our approach requires minimal code modifications and enables transparent middleware- triggered reconfiguration. Experimental results using a two-dimensional data parallel program that has a regular communication structure demonstrate the usefulness of malleability.} 
    }
    


  3. Boleslaw Szymanski, Travis Desell, and Carlos A. Varela. The Effect of Heterogeneity on Asynchronous Panmictic Genetic Search. In Proc. of the Seventh International Conference on Parallel Processing and Applied Mathematics (PPAM'2007), LNCS, Gdansk, Poland, pages 457-468, September 2007. Keyword(s): distributed computing, concurrent programming, scientific computing.
    Abstract:
    Research scientists increasingly turn to large-scale heterogeneous environments such as computational grids and the Internet based facilities to satisfy their rapidly growing computational needs. The increasing complexity of the scientific models and rapid collection of new data are drastically outpacing the advances in processor speed while the cost of supercomputing environments remains relatively high. However, the heterogeneity and unreliability of these environments, especially the Internet, make scalable and fault tolerant search methods indispensable to effective scientific model verification. An effective search method for these types of environments is asynchronous genetic search, where a population continuously evolves based on asynchronously generated and received results. However, it is unclear what effect heterogeneity has on this type of search. For example, results received from slower workers may turn out to be obsolete or less beneficial than results calculated by faster workers. This paper examines the effect of heterogeneity on asynchronous panmictic (single population) genetic search for two different scientific applications, one used by astronomers to model the Milky Way galaxy and another by particle physicists to determine the existence of theory predicted, yet unobserved particles such as missing baryons. Results show that for both applications results received from slower workers while overall less beneficial are still useful. Additionally, a modification of asynchronous genetic search shows that different parameter generation strategies change their effectiveness over the course of the search.

    @InProceedings{szymanski-ags-ppam-2007,
    author = {Boleslaw Szymanski and Travis Desell and Carlos A. Varela},
    title = {The Effect of Heterogeneity on Asynchronous Panmictic Genetic Search},
    booktitle = {Proc. of the Seventh International Conference on Parallel Processing and Applied Mathematics (PPAM'2007)},
    year = 2007,
    pages = {457--468},
    series = {LNCS},
    address = {Gdansk, Poland},
    month = {September},
    pdf = {http://wcl.cs.rpi.edu/papers/ppam07.pdf},
    keywords = {distributed computing, concurrent programming, scientific computing},
    abstract = {Research scientists increasingly turn to large-scale heterogeneous environments such as computational grids and the Internet based facilities to satisfy their rapidly growing computational needs. The increasing complexity of the scientific models and rapid collection of new data are drastically outpacing the advances in processor speed while the cost of supercomputing environments remains relatively high. However, the heterogeneity and unreliability of these environments, especially the Internet, make scalable and fault tolerant search methods indispensable to effective scientific model verification. An effective search method for these types of environments is asynchronous genetic search, where a population continuously evolves based on asynchronously generated and received results. However, it is unclear what effect heterogeneity has on this type of search. For example, results received from slower workers may turn out to be obsolete or less beneficial than results calculated by faster workers. This paper examines the effect of heterogeneity on asynchronous panmictic (single population) genetic search for two different scientific applications, one used by astronomers to model the Milky Way galaxy and another by particle physicists to determine the existence of theory predicted, yet unobserved particles such as missing baryons. Results show that for both applications results received from slower workers while overall less beneficial are still useful. Additionally, a modification of asynchronous genetic search shows that different parameter generation strategies change their effectiveness over the course of the search.} 
    }
    


Internal reports
  1. C. A. Varela, G. Agha, W. Wang, T. Desell, K. E. Maghraoui, J. LaPorte, and A. Stephens. The SALSA Programming Language: 1.1.2 Release Tutorial. Technical report 07-12, Dept. of Computer Science, R.P.I., February 2007. Keyword(s): concurrent programming, internet programming languages.
    Abstract:
    With the emergence of Internet and mobile computing, a wide range of Internet applications have introduced new demands for openness, portability, highly dynamic reconfiguration, and the ability to adapt quickly to changing execution environments. Current programming languages and systems lack support for dynamic reconfiguration of applications, where application entities get moved to different processing nodes at run-time. Java has provided support for dynamic web content through applets, network class loading, bytecode verification, security, and multi-platform compatibility. Moreover, Java is a good framework for distributed Internet programming because of its standardized representation of objects and serialization support. Some of the important libraries that provide support for Internet computing are: java.rmi for remote method invocation, java.reflection for run-time introspection, java.io for serialization, and java.net for sockets, datagrams, and URLs. SALSA (Simple Actor Language, System and Architecture) is an actororiented programming language designed and implemented to introduce the benefits of the actor model while keeping the advantages of object-oriented programming. Abstractions include active objects, asynchronous message passing, universal naming, migration, and advanced coordination constructs for concurrency. SALSA is pre-processed into Java and preserves many of Java’s useful object oriented conceptsmainly, encapsulation, inheritance, and polymorphism. SALSA abstractions enable the development of dynamically reconfigurable applications. A SALSA program consists of universal actors that can be migrated around distributed nodes at runtime.

    @TechReport{varela-salsa-2007,
    author = {C. A. Varela and G. Agha and W. Wang and T. Desell and K. E. Maghraoui and J. LaPorte and A. Stephens},
    title = {The {SALSA} Programming Language: 1.1.2 Release Tutorial},
    institution = "Dept. of Computer Science, R.P.I.",
    number = "{07-12}",
    year = 2007,
    month = feb,
    pdf = {http://wcl.cs.rpi.edu/papers/b4.pdf},
    keywords = {concurrent programming, internet programming languages},
    abstract = {With the emergence of Internet and mobile computing, a wide range of Internet applications have introduced new demands for openness, portability, highly dynamic reconfiguration, and the ability to adapt quickly to changing execution environments. Current programming languages and systems lack support for dynamic reconfiguration of applications, where application entities get moved to different processing nodes at run-time. Java has provided support for dynamic web content through applets, network class loading, bytecode verification, security, and multi-platform compatibility. Moreover, Java is a good framework for distributed Internet programming because of its standardized representation of objects and serialization support. Some of the important libraries that provide support for Internet computing are: java.rmi for remote method invocation, java.reflection for run-time introspection, java.io for serialization, and java.net for sockets, datagrams, and URLs. SALSA (Simple Actor Language, System and Architecture) is an actororiented programming language designed and implemented to introduce the benefits of the actor model while keeping the advantages of object-oriented programming. Abstractions include active objects, asynchronous message passing, universal naming, migration, and advanced coordination constructs for concurrency. SALSA is pre-processed into Java and preserves many of Java’s useful object oriented conceptsmainly, encapsulation, inheritance, and polymorphism. SALSA abstractions enable the development of dynamically reconfigurable applications. A SALSA program consists of universal actors that can be migrated around distributed nodes at runtime.} 
    }
    


  2. Wei-Jen Wang and Carlos A. Varela. A Non-Blocking Reference Listing Algorithm for Mobile Active Object Garbage Collection. Technical report 07-05, Dept. of Computer Science, R.P.I., February 2007. Keyword(s): distributed computing, grid computing, internet programming languages.
    Abstract:
    Automatic garbage collection (GC) gives abstraction to distributed application development, promoting code quality and improving resource management. Unreachability of active objects or actors from the root set is not a sufficient condition to collect actor garbage, making passive object GC algorithms unsafe when directly used on actor systems. In practical actor languages, all actors have references to the root set since they can interact with users, e.g., through standard input or output streams. This feature makes every unblocked actor live, and thus we call it the live unblocked actor principle. Following this idea, we introduce pseudo-roots: a dynamic set of actors that can be viewed as the root set. Pseudo-roots use protected (undeletable) references to ensure that no actors are erroneously collected even with messages in transit. The pseudoroot approach simplifies distributed actor garbage collection by representing in-transit messages in the actor reference graph even if both application and system messages are unordered (nonFIFO) and communication is asynchronous. Our algorithm also supports systems not following the live unblocked actor principle and therefore, is applicable to more traditional actor garbage collection. We formalize the computing model of the pseudo-root approach and provide proofs of correctness. Furthermore, we summarize empirical results on the performance and scalability of distributed GC using a particle physics maximum likelihood evaluation fitter on a 72-processor cluster environment.

    @techreport{wang-varela-reference-listing-2007,
    author = {{Wei-Jen} Wang and Carlos A. Varela},
    title = "A Non-Blocking Reference Listing Algorithm for Mobile Active Object Garbage Collection",
    institution = "Dept. of Computer Science, R.P.I.",
    number = "{07-05}",
    month = feb,
    year = 2007,
    pdf = {http://wcl.cs.rpi.edu/papers/toplasCS.pdf},
    keywords = {distributed computing, grid computing, internet programming languages},
    abstract = {Automatic garbage collection (GC) gives abstraction to distributed application development, promoting code quality and improving resource management. Unreachability of active objects or actors from the root set is not a sufficient condition to collect actor garbage, making passive object GC algorithms unsafe when directly used on actor systems. In practical actor languages, all actors have references to the root set since they can interact with users, e.g., through standard input or output streams. This feature makes every unblocked actor live, and thus we call it the live unblocked actor principle. Following this idea, we introduce pseudo-roots: a dynamic set of actors that can be viewed as the root set. Pseudo-roots use protected (undeletable) references to ensure that no actors are erroneously collected even with messages in transit. The pseudoroot approach simplifies distributed actor garbage collection by representing in-transit messages in the actor reference graph even if both application and system messages are unordered (nonFIFO) and communication is asynchronous. Our algorithm also supports systems not following the live unblocked actor principle and therefore, is applicable to more traditional actor garbage collection. We formalize the computing model of the pseudo-root approach and provide proofs of correctness. Furthermore, we summarize empirical results on the performance and scalability of distributed GC using a particle physics maximum likelihood evaluation fitter on a 72-processor cluster environment.} 
    }
    


Miscellaneous
  1. Travis Desell. Autonomic Grid Computing using Malleability and Migration: An Actor-Oriented Software Framework. Master's thesis, Rensselaer Polytechnic Institute, May 2007. Keyword(s): distributed computing, middleware, grid computing, internet programming languages.
    Abstract:
    As distributed computing environments increase in size by adding more participants, their computing architectures become more heterogeneous and dynamically available, while the chance of hardware failure increases. In order to efficiently develop applications for these environments, new programming methods and services must be made accessible which enable dynamic reconfiguration and fault tolerance. As part of an effort to provide these services and methods, this thesis examines two reconfiguration methods that allow applications to dynamically respond to changes in their environment. Migration allows for the computational components of an application to move between processors, while malleability enables a more general reshaping of an application by adding or removing computational components and redistributing data. Migration and malleability have been implemented in the SALSA programming language. Migration is provided transparently without any effort required from a developer, while malleability is accomplished through a simple API. The Internet Operating System (IOS), a modular middleware, is used to autonomously reconfigure applications which implement these reconfiguration methods.

    @MastersThesis{desell-malleability-2007,
    author = {Travis Desell},
    title = {Autonomic Grid Computing using Malleability and Migration: An Actor-Oriented Software Framework},
    school = {Rensselaer Polytechnic Institute},
    year = 2007,
    month = {May},
    pdf = {http://wcl.cs.rpi.edu/theses/desell_masters.pdf},
    keywords = {distributed computing, middleware, grid computing, internet programming languages},
    abstract = {As distributed computing environments increase in size by adding more participants, their computing architectures become more heterogeneous and dynamically available, while the chance of hardware failure increases. In order to efficiently develop applications for these environments, new programming methods and services must be made accessible which enable dynamic reconfiguration and fault tolerance. As part of an effort to provide these services and methods, this thesis examines two reconfiguration methods that allow applications to dynamically respond to changes in their environment. Migration allows for the computational components of an application to move between processors, while malleability enables a more general reshaping of an application by adding or removing computational components and redistributing data. Migration and malleability have been implemented in the SALSA programming language. Migration is provided transparently without any effort required from a developer, while malleability is accomplished through a simple API. The Internet Operating System (IOS), a modular middleware, is used to autonomously reconfigure applications which implement these reconfiguration methods.} 
    }
    



BACK TO INDEX




Disclaimer:

This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All person copying this information are expected to adhere to the terms and constraints invoked by each author's copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.

Les documents contenus dans ces répertoires sont rendus disponibles par les auteurs qui y ont contribué en vue d'assurer la diffusion à temps de travaux savants et techniques sur une base non-commerciale. Les droits de copie et autres droits sont gardés par les auteurs et par les détenteurs du copyright, en dépit du fait qu'ils présentent ici leurs travaux sous forme électronique. Les personnes copiant ces informations doivent adhérer aux termes et contraintes couverts par le copyright de chaque auteur. Ces travaux ne peuvent pas être rendus disponibles ailleurs sans la permission explicite du détenteur du copyright.




Last modified: Wed Nov 20 17:00:51 2024
Author: led2.


This document was translated from BibTEX by bibtex2html