
AN EXPLORATION IN FLUID LOGICS By Joshua Taylor A Dissertation Submitted to the Graduate Faculty of Rensselaer Polytechnic Institute in Partial Fulfillment of the Requirements for the Degree of DOCTOR OF PHILOSOPHY Major Subject: COMPUTER SCIENCE Approved by the Examining Committee: Selmer Bringsjord Thesis Adviser Mark Goldberg, Member Carlos Varela, Member Nick Cassimatis, Member Rensselaer Polytechnic Institute Troy, New York November 2014 (For Graduation December 2014) © Copyright 2014 By Joshua Taylor All Rights Reserved ii Contents List of Tables vi List of Figures vii Acknowledgments xi Abstract xii 1 Introduction & Historical Review1 1.1 Motivation.................................................1 1.1.1 Human Reasoning is Heterogeneous.............................1 1.1.2 Humans Employ Tools.....................................1 1.1.3 Humans Automate and Combine Tools...........................2 1.1.4 Our Motivation, In This Context..............................3 1.2 Problem Statement...........................................3 1.3 Related & Prior Work...........................................4 1.3.1 Ad Hoc Approaches.......................................4 1.3.2 Heterogeneous Logic...................................... 12 2 Theory 16 2.1 Traditional Treatments......................................... 16 2.1.1 Axiomatic Proof Systems.................................... 17 2.1.2 Natural Deduction........................................ 19 2.2 Category Theoretic Treatments.................................... 28 2.2.1 Deductive Systems....................................... 28 2.2.2 Categories............................................. 31 2.2.2.1 Mathematical Structures as Categories...................... 31 iii CONTENTS iv 2.2.2.2 Categorical Constructions............................. 32 2.2.2.3 Relationships Between Categories........................ 34 2.2.2.4 Relationships between Functors......................... 38 2.2.3 Denotational Proof Languages................................. 39 2.3 Summary................................................. 45 3 Results 46 3.1 Overview................................................. 46 3.2 Implementing the λµ-Calculus..................................... 47 3.3 Implementing Denotational Proof Languages............................ 47 3.4 Implementing Categories........................................ 54 3.4.1 Graphs & Categories....................................... 54 3.4.2 Categorical Constructions................................... 57 3.4.2.1 Initials & Terminals................................ 58 3.4.2.2 Products & Coproducts............................... 59 3.4.2.3 Exponentials...................................... 61 3.4.2.4 Double Negations.................................. 61 3.4.3 Categories for Fluid Logics................................... 62 3.4.3.1 Cartesian & Bicartesian Closed Categories................... 62 3.4.3.2 Indeterminates & Polynomial Categories................... 63 3.5 Comparing Natural-Deduction and Axiomatic Propositional Calculus............. 64 3.5.1 Categorical Axiomatic Propositional Calculus....................... 64 3.5.2 Categorical Natural Deduction Propositional Calculus................. 65 3.5.3 Mapping Axiomatic PC to Natural Deduction PC.................... 65 3.5.4 Mapping in the Language.................................. 68 3.5.5 Cross-Category Reasoning................................... 71 3.6 Completing Natural Deduction with a Deduction Theorem.................... 72 3.7 Comparing Translations........................................ 75 3.8 Summary.................................................. 77 4 Discussion & Future Work 79 4.1 Slate..................................................... 79 4.2 Natural Deduction for the Cognitive Event Calculus....................... 80 4.3 A Richer Type System.......................................... 81 CONTENTS v 4.4 Idiomatic Programming......................................... 81 4.5 Improved Java Interoperability.................................... 83 Bibliography 84 A Implementing the λµ-Calculus 92 A.1 The Core Language............................................ 92 A.2 The Standard Language........................................ 93 A.2.1 Lexical Syntax......................................... 93 A.2.2 Grammar............................................. 94 A.2.3 Macroexpansion, Compilation, and Evaluation...................... 94 A.2.4 Special Forms........................................... 97 A.2.4.1 lambda......................................... 97 A.2.4.2 mu........................................... 98 A.2.4.3 throw......................................... 98 A.2.4.4 try/catch/finally.................................. 98 A.2.4.5 quote.......................................... 99 A.2.4.6 cond........................................... 99 A.2.4.7 set............................................ 99 A.2.4.8 define.......................................... 99 A.2.4.9 define-primitive-method............................. 100 A.2.4.10 define-macro.................................... 100 A.3 The Standard Library........................................... 101 A.3.1 Java Dot Interoperability.................................... 101 B Adjunctions 103 B.1 Review of Functors and Natural Transformations......................... 103 B.2 Adjunctions................................................. 104 C Distribution Arrows 108 D Equivalence of Double Negation and Excluded Middle 109 E Implementation Source Code 113 E.1 Structures for the Propositional Calculus.............................. 113 E.1.1 PropositionalCalculus.java.................................. 113 CONTENTS vi E.1.2 pc.lm................................................ 117 E.2 An Axiomatic Propositional Calculus Categorical DPL...................... 118 E.2.1 AxiomaticPCImpl.java...................................... 119 E.2.2 pc-axiomatic-cdpl.lm...................................... 124 E.3 A Natural-Deduction Propositional Calculus Categorical DPL................. 126 E.3.1 NaturalDeductionPCImpl.java................................ 126 E.3.2 pc-nd-cdpl.lm.......................................... 133 E.4 The Standard Library.......................................... 138 F Slate 155 F.1 History.................................................. 155 F.1.1 Provability-Based Semantic Interoperability & Translation Graphs........... 157 F.1.2 Argument Mapping...................................... 158 F.2 Proof Theory................................................ 159 List of Tables 1.1 Constructors of DL. Term constructors are not necessarily independent. E.g., is ? redundant provided and . The variables C and D range over concept terms, R and S ∼ > over role terms, and a and b over individual names.......................8 1.2 Some decidable sublogics of DL can be obtained by restricting the available concept and role constructors..............................................9 1.3 Partial translation of DL sentences into first-order formula. Π(φ) translates the DL sentence φ into a first-order formula. π0(R, X , Y ) produces a formula that indicates that the terms denoted by X and Y stand in relation T. π(C, X ) produces a formula that indicates that the term denoted by X is a member of the concept C...............9 2.1 Lambek & Scott(1988) partition the arrows of [x : A] into five classes and map L > ! each B C arrow of [x] to an A & B C arrow of . The notation αA,B,C used in the ! L ! L last case was introduced in Example 20 (p. 30) in Equation (2.1)................ 37 2.2 The arrow mapping for the functor K maps each B C arrow in [x] to a A& B A& C ! L ! arrow in . Since K is a functor, the fourth case, composition, is forced. The first L case covers identity arrows, and requires that conjunction is a product in order that πA,B, idB π0A,B = idA&B......................................... 37 h ◦ i A.1 The standard library defines a number of values, functions, macros, and match patterns. Most of these have counterparts in other Lisp-like languages, or to constructs in Athena.. 101 vii List of Figures 1.1 Set-theoretic semantics, in part, of DL. D is a domain of individuals, and I which maps individual, role, and concept names to elements of D, and complex role and concept expressions as defined here.......................................8 1.2 A translation graph relating two genealogical ontologies. Two intermediate ontologies are constructed, each of which has a vocabulary distinct from O1 and O2. In general, reasoning with information from multiple ontologies requires the axioms along the paths connecting the ontologies........................................ 10 1.3 Non-homomorphic and homomorphic representations for the ordering relations on num- bers. Axioms would allow the inference of w < z from the formulae on the left, but the same relation can be observed directly from the number line.................. 13 1.4 Three types of diagrams, viz.: timing diagrams, state diagrams, and circuit diagrams, are all used to describe a unit pulser. Each diagram depicts aspects of the underlying pulser, but no representation represents all aspects of the pulser.................... 13 2.1 Natural-deduction rules for the propositional calculus....................... 21 2.2 Rules specifying the semantics of the λµ-calculus. Most rules ensure that λ and µ abstrac- tions behave in the “usual” way, e.g., R1–R6. R7 is special in that it ensure that deduction applications are executed in an assumption base that has been extended with the results
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages175 Page
-
File Size-