5 research outputs found

    Logical Inference of Horn Clauses in Petri Net Models

    Get PDF

    Automatic Signature Matching in Component Composition

    Get PDF
    Reuse is not a new concept in software engineering. Ideas, abstractions, and processes have been reused by programmers since the very early days of software development. In the beginning, since storage media was very expensive, software reuse was basically to serve computers and their mechanical resources, as it substantially conserved memory. When the limitations on physical resources started to diminish, software engineers began to invent reuse approaches to save human resources as well. In addition, as the size and complexity of software systems constantly grow, organized and systematic reuse becomes essential in order to develop those systems in timely and cost-effective fashion. That is one main reason why new technologies and approaches for building software systems, such as object-oriented and component-based development, emerged in the last two or three decades. The focus of this thesis is on software components as building blocks of today's software systems. We consider components as software black boxes whose specification and external behavior are known. We assume that this information can somehow be extracted for each deployed software component. The first and basic assumption then would be the availability of a searchable repository of software components and their external behavioral specifications. Web services are a good example of such components. The most important advantage of software components is that they can be reused repeatedly in building different software systems. Reuse presents challenging problems, one of which is studied in this thesis. This problem, the composition problem, simply is creating a composite component from a collection of available components that, by interacting with each other, provide a requested functionality. When there are a large number of components available to be reused, finding a solution to the composition problem manually would require a considerable time and human effort. This could make the search practically impossible or unwieldy. However, performing the search automatically would save a significant amount of development time, cost and human effort. Solving this problem would be a huge step forward in the component-based software development. In this thesis, we concentrate on a subproblem of the composition problem, composition planning or synthesis, which is defined as finding a collection of useful components from the repository and the necessary communications among them to satisfy a requested functionality. For scalability purposes, we study automatic solutions to composition planning and propose two approaches in this regard. In one, we take advantage of graphs to model the repository, which is the collection of available components along with their behavioral specification. Graph search algorithms and a few composition-specific algorithms are used to find solutions for given component requests. In the other approach, we extend a logical reasoning algorithm and come up with algorithms for solving the composition planning problem. In both approaches we provide algorithms for finding the possibility of a composition, as well as finding the composition itself. We propose different types of composition and show how applying each would impact the behavior of a composite component. We provide the necessary formalism for capturing these types of composition through two different models: interface automata and composition algebra. Interface automata is an automaton-based model for representing the behavior of software components. The other model in this regard is composition algebra, which is an algebraic model based on CSP (Communicating Sequential Processes), CCS (Calculus of Communicating Systems), and interface automata. These formal models are used to validate the results returned by the composition approaches. We also compare the two composition approaches and show why each of them is suitable for specific types of the problem according to the repository attributes. We then evaluate the performance of the reasoning-based approach and provide some experimental results. In these experiments, we study how different attributes of the repository components could impact the performance of the reasoning-based approach in solving the composition planning problem

    Modelação e integração em sistemas flexíveis de produção

    Get PDF
    Dissertação apresentada para obtenção do Grau de Mestre em Engenharia Informática,pela Universidade Nova de Lisboa, Faculdade de Ciências e TecnologiaEsta tese trata da modelação e integração em sistemas flexíveis de produção, com vista à construção de uma plataforma de suporte ao desenvolvimento de supervisores inteligentes. Faz-se uma apresentação sumária dos aspectos de modelação importantes para a construção de plataformas de integração, usando paradigmas de modelação com potencial para descreverem sistemas flexíveis de manufactura: programação orientada por objectos e "frames". Analisam-se as diferentes questões importantes relacionadas com a modelação estrutural e comportamental dos componentes que participam numa célula; propõem-se diversas taxonomias e uma metodologia para ligar os controladores locais à sua "imagem" (modelo). De seguida, descreve-se um trabalho de concepção/implementação de dois sistemas flexíveis de manufactura, concebendo/desenvolvendo a plataforma integrada de um dos sistemas. Mostram-se os servidores utilizados para integrar os diversos controladores locais, recorrendo ao paradigma cliente-servidor e realçam-se as dificuldades de integração surgidas com as arquitecturas fechadas da maioria dos controladores locais. Construiu-se ainda um modelo do sistema, usando as técnicas apresentadas, suportando a ligação com os controladores locais. Finalmente apresenta-se um método para a síntese de sistemas de supervisão, a partir de redes de Petri, descrevendo-se resultados experimentais resultantes da aplicação da metodologia a uma célula de montagem do sistema em estudo

    A predicated network formalism for commonsense reasoning.

    Get PDF
    Chiu, Yiu Man Edmund.Thesis submitted in: December 1999.Thesis (M.Phil.)--Chinese University of Hong Kong, 2000.Includes bibliographical references (leaves 269-248).Abstracts in English and Chinese.Abstract --- p.iAcknowledgments --- p.iiiChapter 1 --- Introduction --- p.1Chapter 1.1 --- The Beginning Story --- p.2Chapter 1.2 --- Background --- p.3Chapter 1.2.1 --- History of Nonmonotonic Reasoning --- p.3Chapter 1.2.2 --- Formalizations of Nonmonotonic Reasoning --- p.6Chapter 1.2.3 --- Belief Revision --- p.13Chapter 1.2.4 --- Network Representation of Knowledge --- p.17Chapter 1.2.5 --- Reference from Logic Programming --- p.21Chapter 1.2.6 --- Recent Work on Network-type Automatic Reasoning Sys- tems --- p.22Chapter 1.3 --- A Novel Inference Network Approach --- p.23Chapter 1.4 --- Objectives --- p.23Chapter 1.5 --- Organization of the Thesis --- p.24Chapter 2 --- The Predicate Inference Network PIN --- p.25Chapter 2.1 --- Preliminary Terms --- p.26Chapter 2.2 --- Overall Structure --- p.27Chapter 2.3 --- Object Layer --- p.29Chapter 2.3.1 --- Virtual Object --- p.31Chapter 2.4 --- Predicate Layer --- p.33Chapter 2.4.1 --- Node Values --- p.34Chapter 2.4.2 --- Information Source --- p.35Chapter 2.4.3 --- Belief State --- p.36Chapter 2.4.4 --- Predicates --- p.37Chapter 2.4.5 --- Prototypical Predicates --- p.37Chapter 2.4.6 --- Multiple Inputs for a Single Belief --- p.39Chapter 2.4.7 --- External Program Call --- p.39Chapter 2.5 --- Variable Layer --- p.40Chapter 2.6 --- Inter-Layer Links --- p.42Chapter 2.7 --- Chapter Summary --- p.43Chapter 3 --- Computation for PIN --- p.44Chapter 3.1 --- Computation Functions for Propagation --- p.45Chapter 3.1.1 --- Computational Functions for Combinative Links --- p.45Chapter 3.1.2 --- Computational Functions for Alternative Links --- p.49Chapter 3.2 --- Applying the Computation Functions --- p.52Chapter 3.3 --- Relations Represented in PIN --- p.55Chapter 3.3.1 --- Relations Represented by Combinative Links --- p.56Chapter 3.3.2 --- Relations Represented by Alternative Links --- p.59Chapter 3.4 --- Chapter Summary --- p.61Chapter 4 --- Dynamic Knowledge Update --- p.62Chapter 4.1 --- Operations for Knowledge Update --- p.63Chapter 4.2 --- Logical Expression --- p.63Chapter 4.3 --- Applicability of Operators --- p.64Chapter 4.4 --- Add Operation --- p.65Chapter 4.4.1 --- Add a fully instantiated single predicate proposition with no virtual object --- p.66Chapter 4.4.2 --- Add a fully instantiated pure disjunction --- p.68Chapter 4.4.3 --- Add a fully instantiated expression which is a conjunction --- p.71Chapter 4.4.4 --- Add a human biased relation --- p.74Chapter 4.4.5 --- Add a single predicate expression with virtual objects --- p.76Chapter 4.4.6 --- Add a IF-THEN rule --- p.80Chapter 4.5 --- Remove Operation --- p.88Chapter 4.5.1 --- Remove a Belief --- p.88Chapter 4.5.2 --- Remove a Rule --- p.91Chapter 4.6 --- Revise Operation --- p.94Chapter 4.6.1 --- Revise a Belief --- p.94Chapter 4.6.2 --- Revise a Rule --- p.96Chapter 4.7 --- Consistency Maintenance --- p.97Chapter 4.7.1 --- Logical Suppression --- p.98Chapter 4.7.2 --- Example on Handling Inconsistent Information --- p.99Chapter 4.8 --- Chapter Summary --- p.102Chapter 5 --- Knowledge Query --- p.103Chapter 5.1 --- Domains of Quantification --- p.104Chapter 5.2 --- Reasoning through Recursive Rules --- p.109Chapter 5.2.1 --- Infinite Looping Control --- p.110Chapter 5.2.2 --- Proof of the finite termination of recursive rules --- p.111Chapter 5.3 --- Query Functions --- p.117Chapter 5.4 --- Type I Queries --- p.119Chapter 5.4.1 --- Querying a Simple Single Predicate Proposition (Type I) --- p.122Chapter 5.4.2 --- Querying a Belief with Logical Connective(s) (Type I) --- p.128Chapter 5.5 --- Type II Queries --- p.132Chapter 5.5.1 --- Querying Single Predicate Expressions (Type II) --- p.134Chapter 5.5.2 --- Querying an Expression with Logical Connectives (Type II) --- p.143Chapter 5.6 --- Querying an Expression with Virtual Objects --- p.152Chapter 5.6.1 --- Type I Queries Involving Virtual Object --- p.152Chapter 5.6.2 --- Type II Queries involving Virtual Objects --- p.156Chapter 5.7 --- Chapter Summary --- p.157Chapter 6 --- Uniqueness and Finite Termination --- p.159Chapter 6.1 --- Proof Structure --- p.160Chapter 6.2 --- Proof for Completeness and Finite Termination of Domain Search- ing Procedure --- p.161Chapter 6.3 --- Proofs for Type I Queries --- p.167Chapter 6.3.1 --- Proof for Single Predicate Expressions --- p.167Chapter 6.3.2 --- Proof of Type I Queries on Expressions with Logical Con- nectives --- p.172Chapter 6.3.3 --- General Proof for Type I Queries --- p.174Chapter 6.4 --- Proofs for Type II Queries --- p.175Chapter 6.4.1 --- Proof for Type II Queries on Single Predicate Expressions --- p.176Chapter 6.4.2 --- Proof for Type II Queries on Disjunctions --- p.178Chapter 6.4.3 --- Proof for Type II Queries on Conjunctions --- p.179Chapter 6.4.4 --- General Proof for Type II Queries --- p.181Chapter 6.5 --- Proof for Queries Involving Virtual Objects --- p.182Chapter 6.6 --- Uniqueness and Finite Termination of PIN Queries --- p.183Chapter 6.7 --- Chapter Summary --- p.184Chapter 7 --- Lifschitz's Benchmark Problems --- p.185Chapter 7.1 --- Structure --- p.186Chapter 7.2 --- Default Reasoning --- p.186Chapter 7.2.1 --- Basic Default Reasoning --- p.186Chapter 7.2.2 --- Default Reasoning with Irrelevant Information --- p.187Chapter 7.2.3 --- Default Reasoning with Several Defaults --- p.188Chapter 7.2.4 --- Default Reasoning with a Disabled Default --- p.190Chapter 7.2.5 --- Default Reasoning in Open Domain --- p.191Chapter 7.2.6 --- Reasoning about Unknown Exceptions I --- p.193Chapter 7.2.7 --- Reasoning about Unknown Exceptions II --- p.194Chapter 7.2.8 --- Reasoning about Unknown Exceptions III --- p.196Chapter 7.2.9 --- Priorities between Defaults --- p.198Chapter 7.2.10 --- Priorities between Instances of a Default --- p.199Chapter 7.2.11 --- Reasoning about Priorities --- p.199Chapter 7.3 --- Inheritance --- p.200Chapter 7.3.1 --- Linear Inheritance --- p.200Chapter 7.3.2 --- Tree-Structured Inheritance --- p.202Chapter 7.3.3 --- One-Step Multiple Inheritance --- p.203Chapter 7.3.4 --- Multiple Inheritance --- p.204Chapter 7.4 --- Uniqueness of Names --- p.205Chapter 7.4.1 --- Unique Names Hypothesis for Objects --- p.205Chapter 7.4.2 --- Unique Names Hypothesis for Functions --- p.206Chapter 7.5 --- Reasoning about Action --- p.206Chapter 7.6 --- Autoepistemic Reasoning --- p.206Chapter 7.6.1 --- Basic Autoepistemic Reasoning --- p.206Chapter 7.6.2 --- Autoepistemic Reasoning with Incomplete Information --- p.207Chapter 7.6.3 --- Autoepistemic Reasoning with Open Domain --- p.207Chapter 7.6.4 --- Autoepistemic Default Reasoning --- p.208Chapter 8 --- Comparison with PROLOG --- p.214Chapter 8.1 --- Introduction of PROLOG --- p.215Chapter 8.1.1 --- Brief History --- p.215Chapter 8.1.2 --- Structure and Inference --- p.215Chapter 8.1.3 --- Why Compare PIN with Prolog --- p.216Chapter 8.2 --- Representation Power --- p.216Chapter 8.2.1 --- Close World Assumption and Negation as Failure --- p.216Chapter 8.2.2 --- Horn Clauses --- p.217Chapter 8.2.3 --- Quantification --- p.218Chapter 8.2.4 --- Build-in Functions --- p.219Chapter 8.2.5 --- Other Representation Issues --- p.220Chapter 8.3 --- Inference and Query Processing --- p.220Chapter 8.3.1 --- Unification --- p.221Chapter 8.3.2 --- Resolution --- p.222Chapter 8.3.3 --- Computation Efficiency --- p.225Chapter 8.4 --- Knowledge Updating and Consistency Issues --- p.227Chapter 8.4.1 --- PIN and AGM Logic --- p.228Chapter 8.4.2 --- Knowledge Merging --- p.229Chapter 8.5 --- Chapter Summary --- p.229Chapter 9 --- Conclusion and Discussion --- p.230Chapter 9.1 --- Conclusion --- p.231Chapter 9.1.1 --- General Structure --- p.231Chapter 9.1.2 --- Representation Power --- p.231Chapter 9.1.3 --- Inference --- p.232Chapter 9.1.4 --- Dynamic Update and Consistency --- p.233Chapter 9.1.5 --- Soundness and Completeness Versus Efficiency --- p.233Chapter 9.2 --- Discussion --- p.234Chapter 9.2.1 --- Different Selection Criteria --- p.234Chapter 9.2.2 --- Link Order --- p.235Chapter 9.2.3 --- Inheritance Reasoning --- p.236Chapter 9.3 --- Future Work --- p.237Chapter 9.3.1 --- Implementation --- p.237Chapter 9.3.2 --- Application --- p.237Chapter 9.3.3 --- Probabilistic and Fuzzy PIN --- p.238Chapter 9.3.4 --- Temporal Reasoning --- p.238Bibliography --- p.23

    Logical inference of clauses based on Petri net models

    No full text
    This paper extends the logical inference of Horn clauses in Petri net models to cover a large class of non-Horn clauses. Based on four-valued logic and the conflict transition concept, we show how the Petri net model for this class of non-Horn clauses can be constructed. The clause inference is solved by the T-invariant method or the fixpoint of markings. Both forward and backward inference can be used in our:model. It is further shown that these techniques are efficient for the common classes of monotonic reasoning. (C) 1998 John Wiley & Sons, Inc
    corecore