formalizing common sense

Upload: alephnull

Post on 04-Jun-2018

225 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/14/2019 Formalizing common sense

    1/50

    Page1of50

    Formalizing common sense

    for scalable inconsistency-robust information integration

    using Direct LogicTMReasoning and the Actor Model

    Carl Hewitthttp://carlhewitt.info

    This paper is dedicated to John McCarthy and Ludwig Wittgenstein.

    AbstractPeople use common sense in their interactions with large software systems. This common sense needs to beformalized so that can be used by computer systems. Unfortunately, previous formalizations have been inadequate.For example, because contemporary large software systems are pervasively inconsistent, it is not safe to reasonabout them using classical logic. Our goal is to develop a standard foundation for reasoning in large-scale Internet

    applications (including sense making for natural language) by addressing the following issues: inconsistencyrobustness, contrapositive inference bug, and direct argumentation.

    Direct Logic is an inconsistency-robust logic that is a minimal fix to Classical Logic without the rule of IndirectProof, i.e. Proof by Contradiction, the addition of which transforms Direct Logic into Classical Logic. Direct Logicmakes the following contributions over previous work:

    DirectInference (no contrapositive bug for inference) DirectArgumentation (inference directly expressed) InconsistencyRobustness Inconsistency-robustNatural Deduction that doesnt require artifices such as indices (labels) on

    propositions or restrictions on reiteration Intuitive inferences hold including the following:

    o Boolean Equivalenceso -Elimination, i.e.,, ()o

    Splitting for disjunctive caseso Integrity , i.e.,(()According to Feferman [2008]:

    So far as I know, it has not been determined whether such [inconsistency robust] logics account for sustainedordinary reasoning, not only in everyday discourse but also in mathematics and the sciences.

    The claim is made that Direct Logic is an improvement over classical logic with respect to Fefermans desideratumabove for modern systems that are perpetually, pervasively inconsistent. Information technology needs an all-embracing system of inconsistency-robust reasoning to support practical information integration. Having such asystem is important in computer science because computers must be able to carry out all inferences (includinginferences about their own inference processes) without relying on humans. A tradeoff is that in return for havingsuch a powerful inference system, self-referential propositions are not allowed.

    Since the global state model of computation (first formalized by Turing) is inadequate to the needs of modern large-scale Internet applications the Actor Model was developed to meet this need. Using, the Actor Model, this paper

    proves that Logic Programming is not computationally universal in that there are computations that cannot beimplemented using logical inference. Consequently the Logic Programming paradigm is strictly less general than theProcedural Embedding of Knowledge paradigm.

    Presented atInconsistency Robustness 2011. Stanford University. August 16-18, 2011.

    Copyright of this paper belongs to the author, who hereby grants permission to Stanford University toinclude it in the conference material and proceedings of Inconsistency Robustness 2011 and to place it onrelevant websites

    http://carlhewitt.info/http://carlhewitt.info/http://carlhewitt.info/
  • 8/14/2019 Formalizing common sense

    2/50

    Page2of50

    Contents

    Introduction ....................................................................... 3Interaction createsReality ................................................. 3Information is a generalization of physical informationin Relational Physics .......................................................... 3Pervasive Inconsistency is the Norm in Large Software

    Systems .............................................................................. 4Inconsistency Robustness .................................................. 5Classical logic works only for Consistent Theories ....... 5Deciding consistency is the hardest computational

    problem .......................................................................... 6Inconsistency robustness facilitates formalization ......... 6Inconsistent probabilities................................................ 6Circular information ....................................................... 7

    Limitations of Classical Mathematical Logic .................... 7Inconsistency In Garbage Out Redux (IGOR) ............... 8Inexpressibility ............................................................... 8Excluded Middle ............................................................ 8

    Direct Logic ....................................................................... 8In the argumentation lies the knowledge ........................ 9Direct Argumentation ..................................................... 9Theory Dependence ....................................................... 9Information Invariance ................................................... 9Semantics of Direct Logic ............................................ 10Inference in Argumentation ......................................... 10

    Contributions of Direct Logic .......................................... 11Computation .................................................................... 11

    What is Computation? .................................................. 11Configurations versus Global States ............................ 11Actors generalize Turing Machines ............................. 12Reception order indeterminacy .................................... 13Actor Physics ............................................................... 13Computational Representation Theorem ...................... 14

    Computation is not subsumed by logical deduction ..... 14Bounded Nondeterminism of Direct Logic .................. 15Classical mathematics self proves its own consistency(contra Gdel et. al.) ..................................................... 15Computational Undecidability ..................................... 15Completeness versus Inferential Undecidability .......... 15Information Integration ................................................ 16Resistance of Classical Logicians ................................ 16Scalable Information Integration Machinery ................ 16

    Work to be done............................................................... 17Invariance ..................................................................... 17Consistency .................................................................. 17Inconsistency Robustness ............................................. 17Argumentation ............................................................. 18Inferential Explosion .................................................... 18Robustness, Integrity, and Coherence .......................... 18Evolution of Mathematics ............................................ 18

    Conclusion ....................................................................... 18Acknowledgement ........................................................... 19Bibliography .................................................................... 20

    Appendix 1: Details of Direct Logic ................................ 28Syntax of Direct Logic .................................................. 28Housekeeping ............................................................... 30Equality of Propositions ................................................ 30Conjunction, i.e., comma .............................................. 31Disjunction .................................................................... 31Logical Implication ....................................................... 31Quantifiers .................................................................... 32Self-annihilation ........................................................... 32Reification and Abstraction .......................................... 32

    Appendix 2. Foundations of Classical Mathematicsbeyond Logicism .............................................................. 33

    Consistency has been the bedrock of classicalmathematics .................................................................. 33Inheritance from classical mathematics ........................ 34

    Nondeterministic Execution.......................................... 34Sets................................................................................ 34XML ............................................................................. 34Unrestricted Induction for XML ................................... 34XMLActors(XML extended with Actors) ....................... 34

    Natural Numbers, Real Numbers, and their Sets areUnique up to Isomorphism ........................................... 34

    Appendix 3. Historical development of InferentialUndecidability (Incompleteness).................................. 35

    Truth versus Argumentation ......................................... 35Gdel was certain ......................................................... 35Wittgenstein: self-referential propositions lead toinconsistency................................................................. 36Classical Logicians versus Wittgenstein ....................... 36Turing versus Gdel...................................................... 38Contra Gdel et. al ........................................................ 38

    Appendix 4. Inconsistency-robust Logic Programming ... 40Appendix 5. Inconsistency-robust Natural Deduction ...... 41End Notes ......................................................................... 43

  • 8/14/2019 Formalizing common sense

    3/50

    Page3of50

    IntroductionThe proof of the pudding is the eating.

    Cervantes [1605] in Don Quixote. Part 2. Chap. 24

    Our lives are changing: soonwe wil l always be onl ine.People use their common sense interacting with largesoftware systems. This common sense needs to be

    formalized.

    Large-scale Internet software systems present the followingchallenges:1.Pervasive inconsistency is the normand consequently

    classical logic infers too much, i.e., anything andeverything. Inconsistencies (e.g. that can be derivedfrom implementations, documentation, and use cases)in large software systems are pervasive and despiteenormous expense have not been eliminated.

    2.Concurrency is the norm.Logic Programs based on theinference rules of mathematical logic are notcomputationally universal because the message orderreception indeterminate computations of concurrent

    programs in open systems cannot be deduced usingmathematical logic from sentences about pre-existingconditions. The fact that computation is not reducible tological inference has important practical consequences. Forexample, reasoning used in Information Integration cannot

    be implemented using logical inference [Hewitt 2008a].

    This paper suggests some principles and practicesformalizing common sense approaches to addressing theabove issues.

    The plan of this paper is as follows:1.Solve the above issues with First Order Logic by

    introducing a new system called Direct Logic1 forlarge software systems.

    2.Demonstrate that no logic system is computationallyuniversal (not even Direct Logic even though it is

    1Direct Logic is called direct due to considerations such as thefollowing:

    Direct Logic does not incorporategeneralproof bycontradiction in a theory T. Instead it only allows self-annihilation.See discussion below.

    In Direct Logic, theories to speak directly about their owninference relation.

    Inference offrom in a theory T(T)is directin the sense that it does not automatically incorporate the

    contrapositive i.e.,it does not automatically incorporate(T). See discussion below.

    2Rovelli added:This [concept of information]is very weak; it doesnot require [consideration of]information storage, thermodynamics,complex systems, meaning, or anything of the sort. In particular:

    i. Information can be lost dynamically ([correlated systemscan become uncorrelated]);

    ii. [It does]not distinguish between correlation obtained onpurpose and accidental correlation;

    evidently more powerful than any logic system thathas been previously developed). I.e., there areconcurrent programs for which there is no equivalentLogic Program.

    Interaction createsRealityi

    [W]e cannot think of anyobject apart from thepossibility of its connection with other things.Wittgenstein, Tractatus

    According to [Rovelli 2008]:a pen on my table has information because it points in thisor that direction. We do not need a human being, a cat, ora computer, to make use of this notion of information.2

    Relational physics takes the following view [Laudisa andRovelli 2008]:

    Relational physics discards the notions of absolutestate of a system and absolute properties and valuesof its physical quantities.

    State and physical quantities refer always to theinteraction, or the relation, among multiplesystems.3

    Nevertheless, relational physics is a completedescription of reality.4

    According to this view, Interaction creates reality.ii

    Information is a generalization of physical informationin Relational PhysicsInformation, as used in this article, is a generalization of the

    physical information of Relational Physics.5Informationsystems participate in reality and thus are both consequenceand cause. Science is a large information system thatinvestigates and theorizes about interactions. So how does

    Science work? According to [Law 2004, emphasis added] scientifi c routi ni sation, produced with immense

    dif f icul ty and at immense cost, that secures the general

    iii. Most important: any physical system may containinformation about another physical system.

    Also,Information is exchanged via physical interactions. andfurthermore, It is always possible to acquire new information abouta system.3In place of the notion of state, which refers solely to the system,[use]the notion of the information that a system has about another

    system.4Furthermore, according to [Rovelli 2008], quantum mechanicsindicates that the notion of a universal description of the state of theworld, shared by all observers, is a concept which is physicallyuntenable, on experimental grounds. In this regard,[Feynman 1965]offered the following advice: Do not keep saying to yourself, if youcan possibly avoid it, But how can it be like that?" because youwill go down the drain," into a blind alley from which nobody has

    yet escaped.5Unlike physical information in Relational Physics [Rovelli 2008,

    page 10], this paper doesnotmake the assumption that informationis necessarily a discrete quantity or that it must be consistent.

  • 8/14/2019 Formalizing common sense

    4/50

    Page4of50

    continued stabili ty of natur al (and social) scientif ic

    reality.Elements withi n [this routinisation] may beoverturned But overall and most of the time,it i sthe expense[and other difficulties]of doing otherwisethat al lows [scientific routinisation]to achi eve relativestabili ty. So it is that a scientif ic r eality is produced that

    holds together more or less.iii

    According to [Law 2004], we can respond as follows:That we refuse the distinction between the literal and themetaphorical (as various philosophers of science havenoted, the literal is always dead metaphor, a metaphor

    that is no longer seen as such). That we workallegorically. That we imagine coherence withoutconsistency.[emphasis added]

    The coherence envisaged by Law (above) is a dynamicinteractive ongoing process among humans and other objects.

    Pervasive Inconsistency is the Norm in LargeSoftware Systems

    find bugs faster than developers can fix them andeach fix leads to another bug

    --Cusumano & Selby 1995, p. 40

    The development of large software systems and the extremedependence of our society on these systems have introducednew phenomena. These systems have pervasiveinconsistencies among and within the following:iv Use cases that express how systems can be used and

    tested in practice.vDocumentationthat expresses over-arching justification

    for systems and their technologies.vi Codethat expresses implementations of systems

    Adapting a metaphorviiused by Karl Popper for science, thebold structure of a large software system rises, as it were,above a swamp. It is like a building erected on piles. The pilesare driven down from above into the swamp, but not down toany natural or given base; and when we cease our attempts todrive our piles into a deeper layer, it is not because we havereached bedrock. We simply pause when we are satisfied thatthey are firm enough to carry the structure, at least for the time

    being. Or perhaps we do something else more pressing. Undersome piles there is no rock. Also some rock does not hold.

    Different communities are responsible for constructing,evolving, justifying and maintaining documentation, usecases, and code for large, software systems. In specific casesany one consideration can trump the others. Sometimesdebates over inconsistencies among the parts can become quiteheated, e.g.,between vendors. I n the long run, after diff icultnegotiations, in large software systems, use cases,

    documentation , and code all change to produce systems with

    new inconsistencies.However , no one knows what they are

    or where they are located! A l arge software system is never

    done [Rosenberg 2007]..viii

    With respect to detectedinconsistencies, according to [Russo,Nuseibeh, and Easterbrook 2000]:.

    The choice of an inconsistency handling strategy depends onthe context and the impact it has on other aspects of thedevelopment process. Resolving the inconsistency may be as

    simple as adding or deleting information from a software

    description. However, it often relies on resolving fundamentalconflicts, or taking important design decisions. In such cases,immediate resolution is not the best option, and a number ofchoices are available:

    Ignore- it is sometimes the case that the effort of fixing aninconsistency is too great relative to the (low) risk that theinconsistency will have any adverse consequences. In suchcases, developers may choose to ignore the existence of theinconsistency in their descriptions. Good practice dictatesthat such decisions should be revisited as a project

    progresses or as a system evolves. Defer- this may provide developers with more time to elicit

    further information to facilitate resolution or to render theinconsistency unimportant. In such cases, it is important to

    flag the parts of the descriptions that are affected, as

    development will continue while the inconsistency istolerated.

    Circumvent- in some cases, what appears to be aninconsistency according to the consistency rules is notregarded as such by the software developers. This may bebecause the rule is wrong, or because the inconsistencyrepresents an exception to the rule that had not beencaptured. In these cases, the inconsistency can becircumvented by modifying the rule, or by disabling it for a

    specific context. Ameliorate- it may be more cost-effective to improve a

    description containing inconsistencies without necessarilyresolving them all. This may include adding information tothe description that alleviates some adverse effects of an

    inconsistency and/or resolves other inconsistencies as a sideeffect. In such cases, amelioration can be a usefulinconsistency handling strategy in that it moves thedevelopment process in a desirable direction in whichinconsistencies and their adverse impact are reduced.

  • 8/14/2019 Formalizing common sense

    5/50

    Page5of50

    Inconsistency RobustnessYou cannot be confident about applying your calculusuntil you know that there are no hidden contradictions init67. Turing [see Wittgenstein 1933-1935]

    Indeed, even at this stage, I predict a time when there will

    be mathematical investigations of calculi containingcontradictions, and people will actually be proud ofhaving emancipated themselves from consistency.Wittgenstein circa1930. See [Wittgenstein 1933-1935]ix

    Inconsistency robustness is information system performancein the face of continually pervasive inconsistencies--- a shiftfrom the previously dominant paradigms of inconsistencydenial and inconsistency eliminationattempting to sweepthem under the rug.8

    In fact, inconsistencies are pervasive throughout ourinformation infrastructure and they affect one another.Consequently, an interdisciplinary approach is needed.x

    Inconsistency robustness differs from previous paradigmsbased on belief revision, probability, and uncertainty asfollows:

    Belief revision: Large information systems arecontinually, pervasively inconsistent and there is noway to revise them to attain consistency.

    Probability and fuzzy logic: In large informationsystems, there are typically several ways to calculate

    probability. Often the result is that the probability isboth close to 0% and close to 100%!9

    Uncertainty: Resolving uncertainty to determine truthis not realistic in large information systems.

    There are many examples of practical inconsistency

    robustness including the following: Our economy relies on large software systems thathave tens of thousands of known inconsistencies(often called bugs) along with tens of thousandsmore that have yet to be pinned down even thoughtheir symptoms are sometimes obvious.

    Physics has progressed for centuries in the face ofnumerous inconsistencies including the ongoingdecades-long inconsistency between its two mostfundamental theories (general relativity and quantummechanics).

    Decision makers commonly ask for the case against aswell as the case for proposed findings and action plansin corporations, governments, and judicial systems.

    Inconsistency robustness stands to become a more centraltheme for computation. The basic argument is that because

    6 Turing is correct that it is unsafe to use classical logic to reasonabout inconsistent information. See example below.7Church and Turing later proved that determining whether there arehidden inconsistencies in a useful calculus is computationallyundecidable.

    inconsistency is continually pervasive in large informationsystems, the issue of inconsistency robustness must beaddressed! Inconsistency robustness is both an observed

    phenomenon and a desired feature: It is an observed phenomenon because large

    information systems are required to operate in anenvironment of pervasive inconsistency. How are theydoing?

    It is a desired feature because we need to improve theperformance of large information systems.

    Classical logic works only for Consistent Theories

    A little inaccuracy sometimes saves tons of explanation.Saki in The Square Egg

    Inconsistency robust theories can be easier to develop thanclassical theories because perfect absence of inconsistency isnot required. In case of inconsistency, there will be some

    propositions that can be both proved and disproved, i.e., therewill be arguments both for and against the propositions.

    A classic case of inconsistency occurs in the novel Catch-22[Heller 1961] which states that a person would be crazy to flymore missions and sane if he didn't, but if he was sane he hadto fly them. If he flew them he was crazy and didn't have to;but if he didn't want to he was sane and had to. Yossarian wasmoved very deeply by the absolute simplicity of this clause ofCatch-22 and let out a respectful whistle. That's some catch,that Catch-22, he observed.

    8Inconsistency robustness builds on previous work on inconsistencytolerance, e.g.,[Bertossi, Hunter, and Schaub 2004].9On the other hand, statistics can be extremely important in robust

    practical reasoning.

  • 8/14/2019 Formalizing common sense

    6/50

    Page6of50

    In the spirit of Catch-22, consider the follow formalization ofthe above:10

    Policy1(x)Sane[x]Catch-22Obligated[x,Fly]Policy2(x)Obligated[x,Fly]Catch-22Fly[x]Policy3(x)Crazy[x]Catch-22Obligated[x,Fly]

    Observe1(x)Obligated[x,Fly].Fly[x]Catch-22Sane[x]Observe2(x)Fly[x]Catch-22Crazy[x]11Observe3(x)Sane[x],Obligated[x,Fly]Catch-22Fly[]]Observe4Catch-22Sane[Yossarian]

    In addition, again in the spirit of Catch-22, the followingbackground added as well:

    Background2Catch-22Obligated[Moon,Fly]

    Using classical logic,the following rather surprisingconclusion can be inferred:

    Catch-22Fly[Moon]i.e.,the moon flies an aircraft!12The theory Catch-22 illustrates that classical logic worksonly for consistent theories.13So how difficult is it tocomputationally decide consistency?

    Deciding consistency is the hardest computational

    problem

    Theorem: Consistency is the hardest14mathematicalcomputational decision problem.

    Proof: For problem in theory T,({T, }inconsistent) (T)

    Because of the above, it is not possible to determine whether

    classical logic is applicable to a practical theory.

    10This is a very simple example of how classical logic can inferabsurd conclusions from inconsistent information. More generally,classical inferences using inconsistent information can be arbitrarilyconvoluted and there is no practical way to test if inconsistentinformation has been used in a derivation.

    11 Direct Logic supports fine grained reasoning because inference

    does not necessarily carry argument in the contrapositive direction .For example, given

    1. the policy A person who flies is crazy. (i.e.,Fly[p]Catch 22 Crazy[p])

    2. the observation that Yossarian is not crazy. (i.e.Catch 22Crazy[Yossarian] we might haveCatch 22Fly[Yossarian]because Direct Logicdoesnt have the contrapositive for inference.12This proof has been carried out in much less than a second ofcomputer time using a computer automated classical logic theorem

    prover.

    13 It turns out that there is a hidden inconsistency in the theoryCatch-22:

    I nconsistency robustness facili tates formal ization

    However, unlike Classical Logic, in Direct Logic:15Catch-22Fly[Moon]The theory Catch-22illustrates the following points:Inconsistency robustness facilitates theory development

    because a single inconsistency is not disastrous.Even though the theory Catch-22is inconsistent, it is notmeaningless.

    I nconsistent probabil iti es

    You can use all the quantitative data you canget, but you still have to distrust it and use yourown intelligence and judgment.

    Alvin Toffler

    it would be better to eschew all talk of

    probability in favor of talk about correlation.N. David Mermin [1998]

    Inconsistency is built into the very foundation of probability

    theory: (PresentMoment) 0

    Because of cumulative contingencies to get here.16 (PresentMoment) 1

    Because it's reality.

    The above problem is not easily fixed because of thefollowing:

    There is lots of indeterminacy and much of it isinherent.

    Also there are pervasive interdependencies that renderinvalid probabilistic calculations that assumeindependence.

    Inference1Catch-22Fly[Yossarian]

    Inference2Catch-22Fly[Yossarian]

    Thus there is an inconsistency in the theory Catch-22concerningwhether Yossarian flies.14in the sense that there is no more difficult problem. Decidingconsistency is much more difficult than deciding halting problem.

    15Using Direct Logic, various arguments can be made inCatch-22. For example:

    Sane[x] Crazy[x]i.e. The sane ones are thereby crazy because they fly.

    Crazy[x],Fly[x]

    Sane[x]

    i.e. The crazy ones who dont fly are thereby sane.However, neither of the above arguments is absolute because theremight be arguments against the above arguments.

    16For example, suppose that we have just flipped a coin a largenumber of times producing a long sequence of heads and tails. Theexact sequence that has been produced is extremely unlikely.

  • 8/14/2019 Formalizing common sense

    7/50

  • 8/14/2019 Formalizing common sense

    8/50

    Page8of50

    Limitations of Classical Mathematical LogicIrony is about contradictions that do not resolve intolarger wholes even dialectically, about the tension ofholding incompatible things together because all arenecessary and true.

    Haraway [1991]

    I nconsistency In Garbage Out Redux (I GOR)

    An important limitation of classical logic for inconsistenttheories is that it supports the principle that from aninconsistency anything can be inferredxiii,e.g. The moon ismade of green cheese.

    For convenience, I have given the above principle the nameIGOR for Inconsistency in Garbage Out Redux. IGOR can beformalized as follows in which a contradiction about a

    proposition infers any proposition :19 because, The IGOR principle of classical logic may not seem veryintuitive! So why is it included in classical logic? Proof by contradiction: (, ) ()which

    can be justified in classical logic on the grounds that if infers a contradiction in a consistent theory then must be false. In an inconsistent theory, proof bycontradiction leads to explosion by the followingderivation in classical logic by a which a contradictionaboutPinfers any proposition :

    P, P P, P() Extraneous Introduction: (()) which in

    classical logic would say that if is true then ())is true regardless of whether is true.xivIn aninconsistent theory, Extraneousintroduction leads toexplosion via the following derivation in classical logic

    in which a contraction about Pinfers any proposition:P,P(P),P

    I nexpressibil ityIntegrity is when what you say, what you do, what youthink, and who you are all come from the same place[and are headed in the same direction].

    Madelyn Griffith-haynie

    In the Tarskian framework [Tarski and Vaught 1957], a theorycannot directly express argumentation.xv For example aclassical theory cannot directly represent its own inferencerelationship and consequently cannot directly represent its rulesof inference.

    19Using the symbolto mean infers in classical mathematicallogic. The symbol was first published in [Frege 1879].

    20ExcludedMiddleis Excluded Middle for the empty theory ,i.e.,(). However, [Kao 2011] showed that ExcludedMiddleleads to IGOR using the example of taking to be PQ.

    Excluded M iddle

    Excluded Middleis the principle of Classical Logic thatT(). However, ExcludedMiddle is not suitable forinconsistency-robust logic because it is equivalent to sayingthat there are no inconsistencies, i.e.().20

    Direct LogicBut if the general truths of Logic are of such a naturethat when presented to the mind they at once commandassent, wherein consists the difficulty of constructing theScience of Logic? [Boole 1853 pg. 3]

    Direct Logicxvi is a simple framework: propositions havearguments for and against. Inference rules provide argumentsthat let you infer more propositions. Direct Logic is just a

    bookkeeping system that helps you keep track. It doesnt tellyou what to do when an inconsistency is derived. But it doeshave the great virtue that it doesnt make the mistakes ofclassical logic when reasoning about inconsistent information.

    The semantics of Direct Logic are based on argumentation.

    Arguments can be inferred for and against propositions.Furthermore, additional arguments can be inferred for andagainst these arguments, e.g., supporting and counterarguments.xvii

    Direct Logic is an inconsistency robust inference system forreasoning about large software systems with the followinggoals:

    Provide a foundation for reasoning about the mutuallyinconsistent implementation, specifications, and usecases large software systems.

    Formalize a notion of direct inference for reasoningabout inconsistent information

    Support all natural deductive inference [Fitch 1952;Gentzen 1935] with the exception of generalProof byContradictionandExtraneousIntroduction.

    Support the usual Boolean equivalences21 -Elimination, i.e.,, ()T Inference by splitting for disjunctive cases Support reification and abstraction among code,

    documentation, and use cases of large softwaresystems. (See discussion below.)

    Provide increased safety in reasoning usinginconsistent information.22

    Direct Logic supports direct inferencexviii(T ) for aninconsistent theory T.Consequently,Tdoes not supporteither generalProof by ContradictionorExtraneous Introduction. However,T does support all other rules of21with exception of absorption, which must be restricted to avoidIGOR22by comparison with classical logic

  • 8/14/2019 Formalizing common sense

    9/50

    Page9of50

    natural deduction [Fitch 1952; Gentzen 1935].23Consequently, Direct Logic is well suited for practicalreasoning about large software systems.24

    The theories of Direct Logic are open in the sense of open-ended schematic axiomatic systems [Feferman 2007b]. Thelanguage of a theory can include any vocabulary in which its

    axioms may be applied, i.e., it is not restricted to a specificvocabulary fixed in advance (or at any other time). Indeed atheory can be an open system can receive new information at anytime [Hewitt 1991, Cellucci 1992].

    I n the argumentation l ies the knowledge

    Testimony is like an arrow shot from a long-bow; itsforce depends on the strength of the hand that drawsit. But argument is like an arrow from a cross-bow,which has equal force if drawn by a child or a man.Charles Boyle

    Partly in reaction to Popper25, Lakatos [1967, 2]) calls theview belowEuclidean:xix

    Classical epistemology has for two thousand yearsmodeled its ideal of a theory, whether scientific ormathematical, on its conception of Euclidean geometry.The ideal theory is a deductive system with anindubitable truth-injection at the top (a finiteconjunction of axioms)so that truth, flowing downfrom the top through the safe truth-preserving channelsof valid inferences, inundates the whole system.

    Since truth is out the window for inconsistent theories, weneed a reformulation in terms of argumentation.

    Di rect Argumentation

    I nference in a theoryT(T ) carri es chains of argumentf rom antecedents to consequents.

    Direct Argumentation means that T in a propositionactuallymeans inference in the theory T.xxFor example,TandTactuallyinferT,which in DirectLogic can be expressed as follows byDirect Argumentation:, (T)T

    23But with the modification from classical Natural Deduction that

    thatT()if and only ifTand ifT.24In this respect, Direct Logic differs from previous inconsistencytolerant logics, which had inference rules that made them intractablefor use with large software systems.

    25 Proof by contradiction has played an important role in science(emphasized by Karl Popper [1962]) as formulated in his principle ofrefutation which in its most stark form is as follows:

    If T Ob for some observation Ob, then it can beconcluded that Tis refuted (in a theory called Popper), i.e., PopperT

    Theory Dependence

    Inference in Direct Logic is theory dependent. For example[Latour 2010]:

    Are these stone, clay, and wood idols true divinities26?

    [The Africans]answered Yes!with utmost innocence:yes, of course, otherwise we would not have made them

    with our own hands27

    ! The Portuguese, shocked butscrupulous, not want to condemn without proof, gave theAfricans one last chance: You cant say both that youvemade your own [idols] and that they are true divinities28;you have to choose: its either one or the other.Unless,they went on indignantly, you really have no brains, and

    youre as oblivious to the principle of contraction29as youare to the sin of idolatry.Stunned silence from the[Africans] who failed to see any contradiction.30

    As stated, there is no inconsistency in either the theoryAfricansor the theory Portuguese. But there is aninconsistency in the join of these theories, namely,Africans+Portuguese.

    In general, the theories of Direct Logic are inconsistent andtherefore propositions cannot be consistently labeled withtruth values.

    I nformation Invari ance

    Become a student of change. It is the only thingthat will remain constant.

    Anthony J. D'Angelo, The College Blue Book

    Invariance31is a fundamental technical goal of Direct Logic.

    Invariance: Principles of Direct Logic areinvariant as follows:

    1. Soundness of inference:information isnot increased by inference2. Completeness of inference:allinformation that necessarily holds can beinferred

    Direct Logic aims to achieve information invariance evenwhen information is inconsistent using inconsistency robust

    See Suppe [1977] for further discussion.

    26Africans Divine[idols]

    27Africans Fabricated[idols]

    28Portuguese(Fabricated[idols]Divine[idols])

    29in Africans+Portuguese30in Africans31Closely related to conservation laws in physics

  • 8/14/2019 Formalizing common sense

    10/50

    Page10of50

    inference32 regardless that mathematical theories areinferentially undecidable (incomplete): 33

    Semantics of Di rect Logic

    The semantics of Direct Logic is the semantics ofargumentation. Arguments can be made in favor of against

    propositions. And, in turn, arguments can be made in favor and

    against arguments. The notation

    is used to express thatAis an argument for in T.The semantics of Direct Logic are grounded in the principlethat every proposition that holds in a theory must haveargument in its favor which can be expressed as follows:

    The principle Inferences have ArgumentssaysthatTif and only if there is an argument AforinT, i.e.

    34

    For example, there is a controversy in biochemistry as to

    whether or not it has been shown that arsenic can support lifewith published arguments by Redfieldxxiand NASAxxiitothe following effect:

    R

    (

    SupportsLife[Arsenic])

    [Rovelli 2011] has commented on this general situation:There is a widely used notion that does plenty of damage:the notion of "scientifically proven". Nearly an oxymoron.The very foundation of science is to keep the door open todoubt. Precisely because we keep questioning everything,especially our own premises, we are always ready toimprove our knowledge. Therefore a good scientist isnever 'certain'. Lack of certainty is precisely what makes

    conclusions more reliable than the conclusions of thosewho are certain: because the good scientist will be readyto shift to a different point of view if better elements ofevidence, or novel arguments emerge. Therefore certaintyis not only something of no use, but is in fact damaging, ifwe value reliability.

    32See appendices of this paper.33Direct Logic infers there is a proposition such that both and, where is the metatheory that computatonallyenumerates the theorems of . But this does not mean that it issomehow fundamentally incomplete with respect to theinformation that can be inferred because (), ()..

    A fanciful example of argumentation comes from the famousstory What the Tortoise Said to Achilles [Carroll 1895].Applied to example of the Tortoise in the stony, we have

    Z(Axiom1, Axiom2)

    ZxxiiiwhereA Things that are equal to the same are equal to each

    other.B The two sides of this Triangle are things that are equal tothe same.

    Z The two sides of this Triangle are equal to each other.Axiom1 A,BAxiom2 A,BZ

    The above proposition fulfills the demand of the Tortoise thatWhatever Logic is good enough to tell me is worthwriti ng down.

    I nference in Argumentation

    Scientist and engineers speak in the name of new alliesthat they have shaped and enrolled; representativesamong other representatives, they add these unexpected

    resources to tip the balance of force in their favor.Latour [1987] Second Principle

    Elimination(Chaining ) is a fundamental principle ofinference: xxiv xxv

    Elimination(Chaining):,(T)T inferred by andT

    SubArguments is another fundamental principle of inference:

    Introduction(SubArguments):T)T T)

    InT,inferswhenis inferred inTPlease see the appendix Detail of Direct Logic for more

    information.

    34There is a computational decision procedure CheckerTrunning inlinear time such that:

    [aArguments,sSentences]CheckerT[a, s]=1Ts

  • 8/14/2019 Formalizing common sense

    11/50

    Page11of50

    Contributions of Direct Logic

    Direct Logic aims to be a minimal fix to classical logic tomeet the needs of inconsistency robust informationintegration. (Addition of just the rule of Indirect Proof, i.e.Proof by Contradiction, transforms Direct Logic intoClassical Logic.) Direct Logic makes the following

    contributions over previous work:DirectInference (no contrapositive bug for inference)Direct Argumentation (inference directly expressed)InconsistencyRobustnessInconsistency-robustNatural Deduction that doesnt

    require artifices such as indices (labels) on propositionsor restrictions on reiteration

    Intuitive inferences hold including the following:o Boolean Equivalenceso Splitting for disjunctive cases

    o -Elimination, i.e.,, ()To Integrity (a proposition holding argues against an

    argument for its negation)

    ComputationxxviThe distinction between past, present and futureis only a stubbornly persistent illusion.

    Albert Einstein

    Concurrency has now become the norm. Howevernondeterminism came first. See [Hewitt 2010b] for a historyof models of nondeterministic computation.

    What is Computation?

    Any practical problem in computer science can besolved by introducing another level of abstraction.

    paraphrase of Alan Perlis

    Turings model of computation was intenselypsychological.xxvii He proposed the thesis that it included allof purely mechanical computation.xxviii

    Kurt Gdel declared thatIt is absolutely impossible that anybody who understandsthe question[What is computation?]and knows Turingsdefinition should decide for a different concept.xxix

    35Likewise the messages sent can contain addresses only1. that were provided when the Actor was created2. that have been received in messages3. that are for Actors created here

    By contrast, in the Actor model [Hewitt, Bishop and Steiger1973; Hewitt 2010b], computation is conceived as distributedin space where computational devices called Actorscommunicate asynchronously using addresses of Actors andthe entire computation is not in any well-defined state. The

    behavior of an Actor is defined when it receives a messageand at other times may be indeterminate.

    Axioms of locality including Organizational and Operationalhold as follows:

    Organization: The local storage of an Actor caninclude addresses only1.that were provided when it was created or of Actors

    that it has created2.that have been received in messages

    Operation: In response to a message received, an Actorcan1create more Actors2 send messages35to addresses in the following:

    the message it has just received

    its local storage3.update its local storage for the next message36

    The Actor Model differs from its predecessors and mostcurrent models of computation in that the Actor modelassumes the following:

    Concurrent execution in processing a message. The following are notrequired by an Actor: a

    thread, a mailbox, a message queue, its ownoperating system process, etc.

    Message passing has the same overhead as loopingand procedure calling.

    Conf igurati ons versus Global States

    Computations are represented differently in Turing Machinesand Actors:

    1. Turing Machine: a computation can be representedas a global state that determines all informationabout the computation. It can be nondeterministic asto which will be the next global state, e.g., insimulations where the global state can transitionnondeterministically to the next state as a globalclock advances in time, e.g., Simula [Dahl and

    Nygaard 1967].xxx1. Actors: a computation can be represented as a

    configuration. Information about a configuration canbe indeterminate.37

    Functions defined by lambda expressions [Church 1941] arespecial case Actors that never change.

    36An Actor that will never update its local storage can befreely replicated and cached.37For example, there can be messages in transit that will bedelivered at some indefinite time.

  • 8/14/2019 Formalizing common sense

    12/50

    Page12of50

    That Actors which behave like mathematical functionsexactly correspond with those definable in the lambdacalculus provides an intuitive justification for the rules of thelambda calculus:

    Lambda identifiers: each identifier is bound to theaddress of an Actor. The rules for free and bound

    identifiers correspond to the Actor rules foraddresses. Beta reduction: each beta reduction corresponds to

    an Actor receiving a message. Instead of performingsubstitution, an Actor receives addresses of itsarguments.

    Note that in the definition in ActorScript [Hewitt 2011] of thelambda-calculus:

    All operations are local. The definition is modular in that each lambda

    calculus programming language construct is anActor.

    The definition is easily extensible since it is easy toadd additional programming language constructs.

    The definition is easily operationalized intoefficient concurrent implementations.

    The definition easily fits into more generalconcurrent computational frameworks for many-core and distributed computation.

    Identifier.[x] Eval[environment] environment.Lookup[x]Bind[value, environment]

    Lookup[y] y =x value;elseenvironment.Lookup[y]?

    Application.[operator, operand]

    Eval[environment] operator.Eval[environment].

    [operand.Eval[environment]]

    Lambda.[formal, body] Eval[environment]

    [argument] body.Eval[formal.Bind[argument, environment]]

    There are nondeterministiccomputable functions on integers

    that cannot be implemented using the nondeterministic lambda-

    calculus.

    In many practical38applications, simulating an Actor systemusing a lambda expression (i.e.using purely functional

    programming) is exponentially slower.

    381. What makes a system practical is that is used byprofessional practioners in professional practice. Examplesinclude climate models and medical diagnosis and treatmentsystems for cancer. A practical software system typically hastens of millions of lines of code. Large systems that are not

    practical include failed systems costing hundreds of millionsof dollars before being abandoned.

    The lambda calculus can express parallelism but not generalconcurrency (see discussion below).

    Actors generali ze Turi ng Machines

    Actor systems can perform computations that are impossibleby Turing Machines as illustrated by the following example:

    There is a bound on the size of integer that can be

    computed by an always haltingnondeterministic TuringMachine starting on a blank tape.39xxxi

    Gordon Plotkin [1976] gave an informal proof as follows:Now the set of initial segments of execution sequences of agiven nondeterministic program P, starting from a givenstate, will form a tree. The branching points will correspondto the choice points in the program. Since there are alwaysonly finitely many alternatives at each choice point, thebranching factor of the tree is always finite.xxxiiThat is, thetree is finitary. Now Knig's lemma says that if every branchof a finitary tree is finite, then so is the tree itself. In thepresent case this means that if every execution sequence ofP terminates, then there are only finitely many executionsequences. So if an output set of Pis infinite, it must containa nonterminating computation.xxxiii

    By contrast, the following Actor system can compute aninteger of unbounded size using the ActorScriptTM

    programming language [Hewitt 2010a]:

    Unbounded40Start[ ]LetaCounter CreateCounter.[ ]PrepaCounter.Go[ ],

    answer aCounter.Stop[ ]answer

    CreateCounter.[]actor currentCount0,

    continue TrueStop[ ]

    currentCount afterward continuefalseGo[ ]

    continue 41 TrueExitGo[ ]afterwardcurrentCount currentCount+1False Void?

    By the semantics of the Actor model of computation [Clinger1981; Hewitt 2006], sending UnboundedaStartmessagewill result in sending an integer of unbounded size to the

    return address that was received with the Start message.

    39This result is very old. It was known by Dijkstra motivating hisbelief that it is impossible to implement unboundednondeterminism. Also the result played a crucial role in theinvention of the Actor Model in 1972.40read as is defined to be41read as query cases

  • 8/14/2019 Formalizing common sense

    13/50

    Page13of50

    Theorem. There are nondeterministiccomputable functionson integers that cannot be implemented by a nondeterministicTuring machine.

    Proof. The above Actor system implements anondeterministic function42that cannot be implemented bya nondeterministic Turing machine.

    The following arguments support unbounded nondeterminismin the Actor model [Hewitt 1985, 2006]:

    There is no bound that can be placed on how long ittakes a computational circuit called an arbiterto settle.Arbiters are used in computers to deal with thecircumstance that computer clocks operateasynchronously with input from outside, e.g.,keyboard input, disk access, network input, etc. So itcould take an unbounded time for a message sent to acomputer to be received and in the meantime thecomputer could traverse an unbounded number ofstates.

    Electronic mail enables unbounded nondeterminism

    since mail can be stored on servers indefinitely beforebeing delivered.

    Communication links to servers on the Internet can beout of service indefinitely.

    Reception order i ndeterminacyHewitt and Agha [1991] and other published work argued thatmathematical models of concurrency did not determine

    particular concurrent computations as follows: The ActorModel43makes use of arbitration for implementing theorderin which Actors process message. Since these orders are ingeneral indeterminate, they cannot be deduced from priorinformation by mathematical logic alone. Thereforemathematical logic cannot implement concurrent computation

    in open systems.

    In concrete terms for Actor systems, typically we cannotobserve the details by which the order in which an Actor

    processes messages has been determined. Attempting to do soaffects the results. Instead of observing the internals ofarbitration processes of Actor computations, we awaitoutcomes.xxxiv Indeterminacy in arbiters producesindeterminacy in Actors.

    42with graphmapstart0, start1, start2,

    Nand

    Nor

    Nand

    Nor

    Inverter

    Inverter

    Nxor

    `

    OutputInput

    InputOutput

    ArbiterConcurrencyPrimitivexxxv(dashes are used solely to delineate crossing wires)

    The reason that we await outcomes is that we have norealistic alternative.

    Actor Physics

    The Actor model makes use of two fundamental orders onevents [Baker and Hewitt 1977; Clinger 1981, Hewitt 2006]:

    1. The activation order() is a fundamental order thatmodels one event activating another (there is energyflow from an event to an event which it activates). Theactivation order is discrete:

    [e1,e2Events]Finite[{eEventse1 ee2}]There are two kinds of events involved in the activationorder: reception and transmission. Reception events canactivate transmission events and transmission events canactivate reception events.

    2. The reception orderof a serialized Actor x(

    ) models

    the (total) order of events in which a message arrives at x.The reception order of each xis discrete:

    [e1,e2Events]Finite[{eEvents(e1 e e2 )}]The combined order(denoted by ) is defined to be thetransitive closure of the activation order and the receptionorders of all Actors. So the following question arose in theearly history of the Actor model: Is the combined orderdiscrete? Discreteness of the combined order captures animportant intuition about computation because it rules outcounterintuitive computations in which an infinite number ofcomputational events occur between two events ( laZeno).

    Hewitt conjectured that the discreteness of the activationorder together with the discreteness of all reception ordersimplies that the combined order is discrete. Surprisingly

    [Clinger 1981; later generalized in Hewitt 2006] answeredthe question in the negative by giving a counterexample.

    43Actors are the universal primitives of concurrent computation.

    http://en.wikipedia.org/wiki/Actor_model_theory#Arrival_orderingshttp://en.wikipedia.org/wiki/Actor_model_theory#Arrival_orderings
  • 8/14/2019 Formalizing common sense

    14/50

    Page14of50

    The counterexample is remarkable in that it violates thecompactness theorem for 1storder logic:

    Any finite set of sentences is consistent (the activation orderand all reception orders are discrete) and represents a

    potentially physically realizable situation. But there is aninfinite set of sentences that is inconsistent with thediscreteness of the combined order and does not represent a

    physically realizable situation.The counterexample is not a problem for Direct Logic

    because the compactness theorem does not hold.The resolution of the problem is to take discreteness of the

    combined order as an axiom of the Actor model:

    [e1,e2Events]Finite[{eEvents|(e1ee2 )}]Computational Representation Theorem

    a philosophical shift in which knowledge is no longertreated primarily as referential, as a set of statementsaboutreality, but as a practice that interferes withother practices. It therefore participates in reality.Annemarie Mol [2002]

    What does the mathematical theory of Actors have to sayabout the relationship between logic and computation? Aclosed system is defined to be one which does notcommunicate with the outside. Actor model theoryprovidesthe means to characterize all the possible computations of aclosed system in terms of the Computational RepresentationTheorem [Clinger 1982; Hewitt 2006]:xxxvi

    The denotation Denote of a closed systemSrepresents allthe possible behaviors ofSas

    DenoteS limit

    Progression

    where ProgressionS takes a set of partial behaviors to their

    next stage, i.e., Progression i44Progression i+1In this way,Scan be mathematically characterized in termsof all its possible behaviors (including those involvingunbounded nondeterminism).45

    The denotations form the basis of constructively checkingprograms against all their possible executions,46

    44read as can evolve to45There are no messages in transit in DenoteS46a restricted form of this can be done via Model Checking inwhich the properties checked are limited to those that can beexpressed in Linear-time Temporal Logic [Clarke, Emerson, Sifakis,etc. ACM 2007 Turing Award]

    A consequence of the Computational Representation systemis that an Actor can have an uncountablenumber of different

    possible outputs. For example, Real.go can output any realnumber47between 0 and 1 where

    Real go [(0either1), postponeReal.go]where

    (0either1) is the nondeterministic choice of 0 or 1 [first, rest]is the sequence that begins with firstandwhose remainder is rest

    postponeexpressiondelays execution of expressionuntil the value is needed.

    The upshot is that concurrent systems can be representedand characteri zed by logical deduction but cannot be

    implemented.

    Thus, the following practical problem arose:How can practical programming languages berigorously defined since the proposal by Scott andStrachey [1971] to define them in terms lambdacalculus failed because the lambda calculus cannot

    implement concurrency?

    One solution is to develop a concurrent variant of the Lispmeta-circular definition [McCarthy, Abrahams, Edwards,Hart, and Levin 1962] that was inspired by Turing's UniversalMachine [Turing 1936]. If expis a Lisp expression and envisan environment that assigns values to identifiers, then the

    procedure Evalwith arguments expand envevaluates expusing env. In the concurrent variant, evalenv)is a messagethat can be sent to expto cause expto be evaluated using theenvironment env. Using such messages, modular meta-circular definitions can be concisely expressed in the Actormodel for universal concurrent programming languages

    [Hewitt 2010a].Computation is not subsumed by logical deduction

    The gauntlet was officially thrown in The Challenge of OpenSystems [Hewitt 1985] to which [Kowalski 1988b] replied inLogic-Based Open Systems. [Hewitt and Agha 1988]followed up in the context of the Japanese Fifth GenerationProject.

    [Kowalski 1988a]48 developed the thesis that computationcould be subsumed by deduction His thesis was valuable inthat it motivated further research to characterize exactly whichcomputations could be performed by Logic Programming.However, contrary to Kowalski, computation in general is notsubsumed by deduction.

    47using binary representation. See [Feferman 2012] for more oncomputation over the reals.48In fact [Kowalski 1980] forcefully stated:

    There is only one language suitable for representinginformation -- whether declarative or procedural -- andthat is first-order predicate logic. There is only oneintelligent way to process information -- and that is byapplying deductive inference methods.

    http://en.wikipedia.org/wiki/Actor_model_theoryhttp://en.wikipedia.org/wiki/Actor_model_theory
  • 8/14/2019 Formalizing common sense

    15/50

    Page15of50

    Bounded Nondeterminism of Di rect L ogic

    Since it includes the nondeterministic calculus, directinference, and mathematical induction in addition to its otherinference capabilities, Direct Logic is a very powerful LogicProgramming language.

    But there is no Direct Logic expression that is equivalent to

    sending Unboundedastartmessage for the followingreason:

    An expression will be said to always converge (written as) if and only if every reduction path terminates.I.e.,there is no function fsuch that

    f(0)=and[n]f(n)f(n+1)where the symbol is used for reduction (see the appendixof this paper on classical mathematics in Direct Logic).Forexample, the following does not always converge((x 0eitherx(x))(x 0eitherx(x)))49 becausethere is a nonterminating path.

    Theorem: Bounded Nondeterminism of Direct Logic. If anexpression in Direct Logic always converges, then there is a

    bound Boundon the number to which it can converge.I.e., [n](nnBound)Consequently there is no Direct Logic program equivalent tosending Unboundedastartmessage because it hasunbounded nondeterminism whereas every Direct Logic

    program has bounded nondeterminism.

    In this way we have proved that the Procedural Embedding ofKnowledge paradigm is strictly more general than the LogicProgramming paradigm.

    Classical mathematics self provesits own consistency (contra Gdel et. al.)

    Consistency can be defined as follows:Consistent [sSentences] s, s

    Proof by Contradiction can be used to derive the consistencyof mathematics by the following simple argument:

    49Note that there are two expressions (separated by either) in thebodies which provides for nondeterminism.

    50Of course, this is contrary to a famous result in [Gdel1931,Rosser 1936]. A resolution is that Direct Logic uses a powerfulnatural deduction system in which theories can reason about theirown inferences. A tradeoff is that the self-referential propositions(used in [Gdel1931, Rosser 1936] to prove that mathematicscannot prove its own consistency) are not allowed in Direct Logic.See further discussion in [Hewitt 2012].51Consequently, it is necessary to use a meta-theory to convincinglydemonstrate consistency. See further discussion in Further Worksection of this paper.

    Theorem: Mathematics self-proves its own consistency.50

    Proof. Suppose to obtain a contradiction thatConsistent. Consequently,[sSentences]((s) ( s)) and hence thereis a sentence s0 such thats0and s0. Thesetheorems can be used to infer s0and s0, whichis a contradiction.

    Using proof by contradiction, Consistent

    The above proof illustrates that consistency is built into thevery structure of classical mathematics because of proof bycontradiction.51

    Computational Undecidabili ty

    Some questions cannot be uniformly answeredcomputationally.

    The halting problem is to computationally decide whether aprogram halts on a given input52i.e.,there is a totalcomputational deterministic predicate Halt such that thefollowing 3 properties hold for any program p and input x:

    1. Halt(p, x) 1True (p(x))2. Halt(p, x) 1False ( p(x))3. Halt(p, x) 1True Halt(p, x) 1False

    [Church 1936 and later Turing 1936] published proofs thatthe halting problem is computationally undecidable.xxxviiTheorem: ComputationallyDecidable[Halt]53Completeness versus I nf erenti al Undecidabil ity

    In mathematics, there isno ignorabimus.Hilbert 1902

    A mathematical theory is an extension of mathematics whoseproofs are computationally enumerable.xxxviiiFor example,group theory is obtained by adding the axioms of groups to

    Direct Logic.By definition, if Tis a mathematical theory, there is a total

    procedure ProofTsuch that:

    ([sSentences]T

    s) [i]ProofT[i]=

    52Adapted from [Church 1936]. Normal forms were discovered forthe lambda calculus, which is the way that they halt. [Church1936] proved the halting problem computationally undecidable.

    Having done considerable work, Turing was disappointed to learn ofChurchs publication. The monthafter Churchs article was

    published, [Turing 1936] was hurriedly submitted for publication.

    53The fact that the halting problem is computationally undecidabledoes not mean that proving that programs halt cannot be done in

    practice [Cook, Podelski, and Rybalchenko 2006].

  • 8/14/2019 Formalizing common sense

    16/50

    Page16of50

    Theorem: If Tis a consistent mathematical theory, there is a

    proposition ChurchTuring, such that both of the followinghold:54

    TChurchTuring TChurchTuring

    Note the following important ingredients for the proof ofinferential undecidability (incompleteness) ofmathematical theories: Closure (computational enumerability) of a

    mathematical theory to carry through the proof. Consistency (nontriviality) to prevent everything from

    being provable.

    Information Invariance55is a fundamental technical goal oflogic consisting of the following:

    1. Soundness of inference:information is notincreased by inference56

    2. Completeness of inference:all information thatnecessarily holds can be inferred

    Note that that a mathematical theory is inferentially undecidablewith respect to ChurchTuringdoes not mean incompletenesswith respect to the information that can be inferred because(T ChurchTuring),(TChurchTuring).I nformation In tegration

    Technology now at hand can integrate all kinds of digitalinformation for individuals, groups, and organizations sotheir information usefully links together xxxixInformationintegration needs to make use of the following informationsystem principles:

    Persistence. Information is collected and indexed. Concurrency: Work proceeds interactively and

    concurrently, overlapping in time. Quasi-commutativity: Information can be usedregardless of whether it initiates new work or becomerelevant to ongoing work.

    Sponsorship: Sponsors provide resources forcomputation, i.e., processing, storage, andcommunications.

    54Otherwise, provability in classical logic would becomputationally decidable because

    [p:Program, x]Halt[p, x] THalt[p, x]where Halt[p, x] if and only if program p halts on input x. If such a

    ChurchTuring did not exist, then provability could be decided byenumerating theorems until the sentence in question or its negationis encountered.55Closely related to conservation laws in physics56E.g. inconsistent information does not infer nonsense.57In 1994, Alan Robinson noted that he has always been a littlequick to make adverse judgments about what I like to call wackologics especially in AustraliaI conduct my affairs as though Ibelieve that there is only one logic. All the rest is variation inwhat youre reasoning about, not in how youre reasoning [Logic] is immutable. (quoted in Mackenzie [2001] page 286)

    Pluralism: Information is heterogeneous, overlappingand often inconsistent.

    Provenance: The provenance of information iscarefully tracked and recorded.

    Lossless: Once a system has some information, then ithas it thereafter.

    Resistance of Classical Logici ansFaced with the choice between changing ones

    mind and proving that there is no need to do so,almost everyone gets busy on the proof.

    John Kenneth Galbraith[1971 pg. 50]

    A number of classical logicians have felt threatened by theresults in this paper:

    Some would like to stick with just classical logic and notconsider inconsistency robustness.57

    Some would like to stick with the Tarskian stratifiedtheories and not consider direct inference.

    Some would like to stick with just Logic Programming

    (e.g.nondeterministic Turing Machines, -calculus, etc.)and not consider concurrency.And some would like to have nothing to do with any of theabove!xlHowever, the results in this paper (and the drivingtechnological and economic forces behind them) tend to pushtowards inconsistency robustness, direct inference, andconcurrency. [Hewitt 2008a]

    Classical logicians are now challenged as to whether theyagree that

    Inconsistency is the norm. Direct inference is the norm. Logic Programming is notcomputationally universal.

    On the other hand Richard Routley noted: classical logic bears a large measure of responsibility forthe growing separation between philosophy and logic whichthere is today If classical logic is a modern tool inadequate

    for its job, modern philosophers have shown a classically stoicresignation in the face of this inadequacy. They have behavedlike people who, faced with a device, designed to lift stream

    water, but which is so badly designed that it spills most of itsfreight, do not set themselves to the design of abettermodel,but rather devote much of their energy to constructingingenious arguments to convince themselves that the device isadmirable, that they do not need or want the device to delivermore water; that there is nothing wrong with wasting waterand that it may even be desirable; and that in order toimprove the device they would have to change some featuresof the design, a thing which goes totally against theirengineering intuitions and which they could not possiblyconsider doing. [Routley 2003]

  • 8/14/2019 Formalizing common sense

    17/50

    Page17of50

    Scalable I nformation Integration Machinery

    Information integration works by making connectionsincluding examples like the following:

    A statistical connection between being in a traffic jamand driving in downtown Trenton between 5PM and6PM on a weekday.

    A terminological connection between MSR andMicrosoft Research.

    A causal connection between joining a group andbeing a member of the group.

    A syntactic connection between a pin dropped and adropped pin.

    A biological connection between a dolphin and amammal.

    A demographic connection between undocumentedresidents of California and 7% of the population ofCalifornia.

    A geographical connection between Leeds andEngland.

    A temporal connection between turning on acomputer and joining an on-line discussion.

    By making these connections, iInfoTMinformation integrationoffers tremendous value for individuals, families, groups, andorganizations in making more effective use of informationtechnology.

    In practice integrated information is invariably inconsistent.xliTherefore iInfo must be able to make connections even in theface of inconsistency.xliiThe business of iInfo is not to makedifficult decisions like deciding the ultimate truth or

    probability of propositions. Instead it provides means forprocessing information and carefully recording its

    provenance including arguments (including arguments aboutarguments) for and against propositions.

    Work to be doneThe best way to predict the future is to invent it.

    Alan Kay

    There is much theoretical work to be done including thefollowing:

    I nvari ance

    Invariance should be precisely formulated and proved. Thisbears on the issue of how it can be known that all theprinciples of Direct Logic have been discovered.

    Consistency

    The following conjectures for Direct Logic need to beformally proved:

    58i.e. consistency of59[Andr Weil 1949] speaking as a representative of Bourbaki60In a meta-theory, toget around self-proof of consistency using

    proof by contradiction that is presented earlier in this paper.

    Consistency of Direct Logic58relative to the consistencyof classical mathematics. In this regard Direct Logic is consonant withBourbaki:

    Absence of contradiction, in mathematics as a wholeor in any given branch of it, appears as anempirical fact, rather than as a metaphysicalprinciple. The more a given branch has beendeveloped, the less likely it becomes thatcontradictions may be met with in its fartherdevelopment.59

    Thus the long historical failure to find an explosion in themethods used by Direct Logic can be considered to bestrong evidence of its nontriviality.

    Absence of contrapositive inference bug in Direct Logic. Demonstration60of consistency of classical mathematics

    in which there are norestrictions on in {xD| [x]}other than is notallowed be self-referential?

    I nconsistency Robustness

    Inconsistency robustness of theories of Direct Logic needs tobe formally defined and proved.

    Church remarked as follows concerning aFoundation ofLogicthat he was developing:

    Our present project is to develop the consequences ofthe foregoing set of postulates until a contradiction isobtained from them, or until the development has beencarried so far consistently as to make it empiricallyprobable that no contradiction can be obtained fromthem. And in this connection it is to be remembered thatjust such empirical evidence, although admittedlyinconclusive, is the only existing evidence of thefreedom from contradiction of any system of

    mathematical logic which has a claim to adequacy.[Church 1933]61

    61The difference between the time that Church wrote the above andtoday is that the standards for adequacy have gone up dramatically.Direct Logic must be adequate to the needs of reasoning about largesoftware systems that make use of reification and abstraction.

  • 8/14/2019 Formalizing common sense

    18/50

    Page18of50

    Direct Logic is in a similar position except that the taskis to demonstrate inconsistency robustness ofinconsistent theories. This means that the exact

    boundaries of Direct Logic as a minimal fix to classicallogic need to be established. as a continuation of its

    process of development that has seen important

    adjustments including the following:oDevelopment of Self-annihilationas a replacement

    for Self-refutation.62oDropping the principles ofExcluded Middle in favor

    of reasoning by Disjunctive Cases.oDropping the principle of Opposite Casesxliiiin favor

    of reasoning by Disjunctive Cases.63Argumentation

    Argumentation is fundamental to inconsistency robustness. Argumentation based reasoning for proof by

    contradiction needs to be developed for Direct Logic.For example, rules like the following need to bedeveloped:

    (

    ),(

    ), OnPoint[A1,A2]Twhere OnPoint[A1,A2]means that arguments A1and A2are on point64in the derivation of the inconsistency.

    Further work is need on fundamental principles ofargumentation for many-core information integration.See [Hewitt 2008a, 2008b].

    Tooling for Direct Logic needs to be developed tosupport large software systems. See [Hewitt 2008a].

    I nferential Explosion

    Inconsistencies such as the one about whether Yossarianfliesare relatively benignin the sense that they lacksignificant consequences to software engineering. Other

    propositions (such asT1=0)are more malignantbecausethey can be used to infer that all integers are equal to 0using induction. To address malignant propositions, deeperinvestigations of argumentation using must be undertakenin which the provenance of information will play a centralrole. See [Hewitt 2008a].

    Robustness, I ntegri ty, and Coherence

    Fundamental concepts such as robustness, integrity, andcoherenceneed to be rigorously characterized and furtherdeveloped. Inconsistency-robust reasoning beyond theinference that can be accomplished in Direct Logic needs to

    be developed, e.g., analogy, metaphor, discourse, debate, and

    collaboration.

    62Self-refutationis the principle (T)T. However,[Kao 2011] showed that taking to be PQ(PQ)leads toIGOR.

    63Opposite cases is the principle (T),(T)T. However, taking to be PQ(PQ)and tobe(PQ)(PQ)leads to IGOR.

    Evoluti on of Mathematics

    In the relation between mathematics and computingscience, the latter has been far many years at thereceiving end, and I have often asked myselfif, when,and how computing would ever be able to repay the

    debt. [Dijkstra 1986]We argue that mathematics will become more likeprogramming. [Asperti, Geuvers and Natrajan 2009]

    Mathematical are thought to be consistent, e.g., Integers andReals, Geometry and Topology, Analysis, Group theory, etc.In practice, mathematical theories play a supporting role toinconsistency theories, e.g.,theories of the Liver, Diabetes,Human Behavior, etc.

    Conclusion

    What the poet laments holds for the mathematician.That he writes his works with the blood of his heart.Boltzmann

    Inconsistency robustness builds on the following principles: We know only a little, but it affects us enormously65 Much of it is wrong,66but we dont know how. Science is never certain, it is continually (re-)made

    Software engineers for large software systems often havegood arguments for some proposition and also goodarguments for its negation of P. So what do large softwaremanufacturers do? If the problem is serious, they bring it

    before a committee of stakeholders to try and sort it out. Inmany particularly difficult cases the resulting decision has

    been to simply live with the problem for a while.

    Consequently, large software systems are shipped tocustomers with thousands of known inconsistencies ofvarying severity whereEven relatively simple theories can be subtly inconsistent There is no practical way to test a theory for inconsistency.Inconsistency robustness facilitates theory development

    because a single inconsistency is not disastrous.Even though a theory is inconsistent, it is not

    meaningless.

    64derived from legal terminology meaning directly applicable ordispositive of the matter under consideration65for better or worse66e.g., misleading, wrong-headed, ambiguous, contra best-practices,etc.

  • 8/14/2019 Formalizing common sense

    19/50

    Page19of50

    Direct Logic has important advantages over previousproposals (e.g.Relevance Logicxliv) for inconsistency robustreasoning. These advantages include:

    inconsistency-robust Natural Deduction reasoningthat doesnt require artifices such as indices (labels)on propositions or restrictions on reiteration

    standardBoolean equivalenceshold inference bysplitting for disjunctive cases -Elimination, i.e.,, ()T self-annihilation being able to more safely reason about the mutually

    inconsistent data, code, specifications, and use casesof client cloud computing

    absence of contrapositive inference bug

    Direct Logic preserves as much of classical logic as possiblegiven that it is based on direct inference.

    A big advantage of inconsistency robust logic is that it makesfewer mistakes than classical logic when dealing withinconsistent theories. Since software engineers have to dealwith theories chock full of inconsistencies, Direct Logicshould be attractive.However, to make it relevant we need toprovide them with tools that are cost effective.

    This paper develops a very powerful formalism (called DirectLogic) that incorporates the mathematics of ComputerScience and allows direct inference for almost all of classicallogic to be used in a way that is suitable for SoftwareEngineering.

    The concept of TRUTH has already been hard hit by thepervasive inconsistencies of large software systems. LudwigWittgenstein (ca. 1939) said No one has ever yet got intotrouble from a contradiction in logic. to which Alan Turing

    responded The real harm will not come in unless there is anapplication, in which case a bridge may fall down.[Holt2006]It seems that we may now have arrived at the remarkablecircumstance that we cant keep our systems from crashingwithout allowing contradictions into our logic!

    This paper also proves that Logic Programming is notcomputationally universal in that there are concurrent

    programs for which there is no equivalent in Direct Logic.Thus the Logic Programming paradigm is strictly less generalthan the Procedural Embedding of Knowledge paradigm.

    Of course the results of this paper do not diminish theimportance of logic.xlvThere is much work to be done!67

    Our everyday life is becoming increasingly dependent on largesoftware systems. And these systems are becomingincreasingly permeated with inconsistency and concurrency.As these pervasively inconsistent concurrent systems become

    a major part of the envir onment i n whi ch we live, it becomes

    an i ssue of common sense how to use them effectively.Wewil l need sophisticated software systems that f ormali ze this

    67In the filmDangerous Knowledge[Malone 2006], explores thehistory of previous crises in the foundations for the logic of

    common sense to help people understand and apply the

    pri nciples and practices suggested in thi s paper .Creating thissoftware is not a trivial undertaking!

    Acknowledgement

    Science and politics and aesthetics, these

    do not inhabit different domains. Insteadthey interweave. Their relations intersectand resonate together in unexpected ways.Law [2004 pg. 156]

    Sol Feferman, Mike Genesereth, David Israel, Bill Jarrold,Ben Kuipers, Pat Langley, Vladimir Lifschitz, FrankMcCabe, John McCarthy, Fanya S. Montalvo, Peter

    Neumann, Ray Perrault,Natarajan Shankar,Mark Stickel,Richard Waldinger, and others provided valuable feedback atseminars at Stanford, SRI, and UT Austin to an earlierversion of the material in this paper. For the AAAI SpringSymposium06, Ed Feigenbaum, Mehmet Gker, DavidLavery, Doug Lenat, Dan Shapiro, and others provided

    valuable feedback. At MIT Henry Lieberman, Ted Selker,Gerry Sussman and the members of Common SenseResearch Group made valuable comments. Reviewers forAAMAS 06and 07, KR06, COIN@AAMAS06 andIJCAR06 made suggestions for improvement.

    In the logic community, Mike Dunn, Sol Feferman, MikeGenesereth, Tim Hinrichs, Mike Kassoff, John McCarthy,Chris Mortensen, Graham Priest, Dana Scott, RichardWeyhrauch and Ed Zalta provided valuable feedback

    Dana Scott made helpful suggestions concerning inferentialundecidability. Richard Waldinger provided extensivesuggestions that resulted in better focusing a previous version

    of this paper and increasing its readability. Discussion withPat Hayes and Bob Kowalski provided insight into the earlyhistory of Prolog. Communications from John McCarthy andMarvin Minsky suggested making common sense a focus.Mike Dunn collaborated on looking at the relationship of theBoolean Fragment of Direct Logic to R-Mingle. Greg Restall

    pointed out that Direct Logic does not satisfy someRelevantist principles. Gerry Allwein and Jeremy Forth madedetailed comments and suggestions for improvement. BobKowalski and Erik Sandewall provided helpful pointers anddiscussion of the relationship with their work. Discussionswith Ian Mason and Tim Hinrichs helped me develop Lbstheorem for Direct Logic. Scott Fahlman suggestedintroducing the roadmap in the introduction of the paper. AtCMU, Wilfried Sieg introduced me to his very interestingwork with Clinton Field on automating the search for proofsof the Gdel/Rosser inferential undecidability theorems. Alsoat CMU, I had productive discussions with Jeremy Avigad,Randy Bryant, John Reynolds, Katia Sycara, and JeannetteWing. At my MIT seminar and afterwards, Marvin Minsky,

    knowledge focusing on the ultimately tragic personal outcomes forCantor, Boltzmann, Gdel, and Turing.

    http://www.csl.sri.com/shankar/shankar.htmlhttp://www.csl.sri.com/shankar/shankar.html
  • 8/14/2019 Formalizing common sense

    20/50

    Page20of50

    Ted Selker, Gerry Sussman, and Pete Szolovits made helpfulcomments. Les Gasser, Mike Huhns, Victor Lesser, Pablo

    Noriega, Sascha Ossowski, Jaime Sichman, Munindar Singh,etc.provided valuable suggestions at AAMAS07.I had avery pleasant dinner with Harvey Friedman at Chez Panisseafter his 2ndTarski lecture.

    Jeremy Forth, Tim Hinrichs, Fanya S. Montalvo, and RichardWaldinger provided helpful comments and suggestions onthe logically necessary inconsistencies in theories of DirectLogic. Rineke Verbrugge provided valuable comments andsuggestions at MALLOW07.Mike Genesereth and GordonPlotkin kindly hosted my lectures at Stanford and Edinburgh,respectively, on The Logical Necessity of Inconsistency.Inclusion of Cantors diagonal argument as motivation wassuggested by Jeremy Forth. John McCarthy pointed to thedistinction between Logic Programming and the LogicistProgramme for Artificial Intelligence. Reviewers at JAIRmade useful suggestions. Mark S. Miller made importantsuggestions for improving the meta-circular definition of

    iScript. Comments by Michael Beeson helped make thepresentation of Direct Logic more rigorous. Conversationswith Jim Larson helped clarify the relationship betweenclassical logic and the inconsistency robust logic. Ananonymous referee of the Journal of Logic and Computationmade a useful comment. John-Jules Meyer and Albert Visser

    provided helpful advice and suggestions. Comments byMike Genesereth, Eric Kao, and Mary-Anne Williams at myStanford Logic Group seminar Inference in Boolean DirectLogic is Computationally Decidableon 18 November 2009greatly improved the explanation of direct inference.Discussions at my seminar Direct Inference forDirectLogicTM Reasoning at SRI hosted by Richard Waldinger on7 January 2010 helped improve the presentation of DirectLogic. Helpful comments by Emily Bender, RichardWaldinger and Jeannette Wing improved the section onInconsistency Robustness.

    Eric Kao provided numerous helpful comments anddiscovered bugs in the principles of Self-refutation andExcluded Middle that were part of a previous version ofDirect Logic [Kao 2011]. Self-refutation has been replaced

    by Self-annihilation in the current version. Stuart Shapiroprovided helpful information on why SNePS [Shapiro 2000]wasbased on Relevance Logic. Discussions with DennisAllison, Eugene Miya, Vaughan Pratt and others were helpfulin improving this article.

    Make Travers made suggestions and comments that greatlyimproved the overall organization of the paper. RichardWaldinger provided guidance on classical automatic theorem

    provers. Illuminating conversations with Patrick Suppesprovided additional ideas for improvement.

    Bibliography

    Hal Abelson and Gerry Sussman Structure and Interpretation ofComputer Programs1984.

    Luca Aceto and Andrew D. Gordon (editors). Algebraic ProcessCalculi: The First Twenty Five Years and Beyond Bertinoro, Italy,August, 2005.

    Sanjaya Addanki, Roberto Cremonini, and J. Scott Penberthy.

    Reasoning about assumptions in graphs of modelsReadings inQualitative Reasoning about Physical Systems. Kaufman. 1989.Gul Agha.Actors: A Model of Concurrent Computation in Distributed

    SystemsDoctoral Dissertation. 1986.Gul Agha, Ian Mason, Scott Smith, and Carolyn Talcott. A

    foundation for Actor computation.Journal of FunctionalProgramming.1997.

    Allen, L. E., and Saxon, C. S. More is needed in AI: Interpretationassistance for coping with the problem of multiple structurainterpretationsICAIL1991.

    Bruce Anderson. Documentation for LIB PICO-PLANNER Schoolof Artificial Intelligence, Edinburgh University. 1972.

    Chris Anderson. The End of Theory: The Data Deluge Makes theScientific Method Obsolete Wired. June 23, 2009.

    Alan Anderson and Nuel Belnap, Jr. (1975)Entailment: The Logic ofRelevance and Necessity Princeton University Press.

    Robert Anderson and Woody Bledsoe (1970) A Linear Format for

    Resolution with Merging and a New Technique for EstablishingCompletenessJACM 17.Aldo Antonelli (2006). Non-monotonic Logic StanfordEncyclopedia of Philosophy. March 2006.

    A. I. Arruda. Aspects of the historical development of paraconsistentlogic InParaconsistent Logic: Essays on the InconsistentPhilosophia Verlag. 1989

    William Aspray Interview with J. Barkley Rosser and Stephen C.Kleene The Princeton Mathematics Community in the 1930s Transcript PMC23 1985.

    William Athas andNanette Boden Cantor: An Actor ProgrammingSystem for Scientific ComputingProceedings of the NSF Workshopon Object-Based Concurrent Programming. 1988. Special Issue ofSIGPLAN Notices.

    Henry Baker.Actor Systems for Real-Time ComputationMIT EECSDoctoral Dissertation. January 1978.

    Henry Baker and Carl Hewitt:Laws for Communicating Parallel

    ProcessesIFIP. August 1977.Henry Baker and Carl Hewitt The Incremental Garbage Collection ofProcesses.Symposium on Artificial Intelligence ProgrammingLanguages. SIGPLAN Notices. August 1977.

    Bob Balzer. Tolerating Inconsistency 13th International Conferenceon Software Engineering. 1991.

    Marcel Barzin 1940.Bruce Baumgart. Micro-Planner Alternate Reference Manual

    Stanford AI Lab Operating Note No. 67, April 1972.JC Beall and Greg Restall. Logical Pluralism Oxford University

    Press. 2006.Michael Beeson. Lambda Logic Lecture Notes in Artificial

    Intelligence 3097. Springer. 2004.Nuel Belnap. A useful four-valued logic inModern uses of multiple

    valued logics. D. Reidel, Dordrecht, 1977.Francesco Berto The Gdel Paradox and Wittgensteins Reasons

    Philosophia Mathematica (III) 17. 2009.

    Francesco Berto. There's Something about Gdel: The CompleteGuide to the Incompleteness Theorem John Wiley and Sons. 2010.Francesco Berto. Representing Inconsistency Inconsistency

    Robustness 2011.Leopoldo Bertossi, Anthony Hunter, and Torsten Schaub eds.Inconsistency ToleranceSpringer. 2004.

    Philippe Besnard and Anthony Hunter. Quasi-classical Logic: Non-trivializable classical reasoning from inconsistent informationSymbolic and Quantitative Approaches to Reasoning and UncertaintySpringer LNCS 1995.

    Philippe Besnard and Torsten Schaub. Significant Inferences:Preliminary Report. 2000.

    http://www.princeton.edu/~mudd/finding_aids/mathoral/pm02.htmhttp://www.princeton.edu/~mudd/finding_aids/mathoral/pm02.htmhttp://en.wikipedia.org/w/index.php?title=Henry_Baker_and_Carl_Hewitt&action=edithttp://en.wikipedia.org/w/index.php?title=Henry_Baker_and_Carl_Hewitt&action=edithttp://www.princeton.edu/~mudd/finding_aids/mathoral/pm02.htm
  • 8/14/2019 Formalizing common sense

    21/50

    Page21of50

    Jean-Yves Bziau. The future of paraconsistent logicLogical Studies2. 1999.

    Jean-Yves Bziau, Walter Carnielli, and Dov Gabbay. Ed.Handbookof ParaconsistencyCollege Publications Kings College London.2007

    S. V. Bhave. Situations in Which Disjunctive Syllogism Can Leadfrom True Premises to a False Conclusion Notre Dame Journal of

    Formal Logic Vol. 38, No. 3. 1997.

    Fisher Black.A deductive question answering system, HarvardUniversity Thesis. 1964.Simon Blackburn and Keith Simmons (1999) TruthOxford University

    Press.H. Blair and V. S. Subrahmanian. Paraconsistent Logic

    Programming. Theoretical Computer Science, 68(2) 1989.Patricia Blanchette The Frege-Hilbert Controversy The StanfordEncyclopedia of Philosophy December 7, 2007.

    Andreas Blass, Yuri Gurevich, Dean Rosenzwei