×
Don’t stop when you’re tired. STOP when you are DONE.
--Your friends at LectureNotes
Close

Making Judgments

by Placement FactoryPlacement Factory
Type: NoteSpecialization: Logical ReasoningViews: 18Uploaded: 2 months ago

Share it with your friends

Suggested Materials

Leave your Comments

Contributors

Placement Factory
Placement Factory
Lecture Notes on Judgments and Propositions 15-816: Modal Logic Frank Pfenning Lecture 1 January 12, 2010 1 Introduction to This Course Logic is the study of reasoning. Since most mathematicians believe they are working on the discovery of objective and absolute truths, mathematical logic has focused on how to justify judgments A is true and A is false, where A denotes propositions about mathematical objects such as integers or real numbers. Every proposition is objectively either true or false, and logical connectives are functions on truth values. Philosophical logic takes a broader view and investigates how to reason about complex judgments such as A is possible, A is necessary, K knows A, K believes A, K affirms A and even A is obligatory or A is permitted, where K denotes agents or principals and A denotes propositions. Modal operators such as “K knows” can not be merely functions on truth values. For example, whether K knows A does not depend solely on whether A is true or false. Judgments have a subjective quality which is generally denied in mathematical logic. In computer science, both objective and subjective views on logic have numerous applications. The objective or classical approach, most influenced by mathematics, is exemplified by Hoare logic to reason about imperative programs. Classical program logic defines programs as a new kind of mathematical object, their meaning being given explicitly as functions from states to states. The classical approach then develops inference rules for reasoning about properties of programs. The subjective or intuitionistic approach is exemplified by constructive type theory where the very definition of the logical connectives is tied to their computational interpretation. L ECTURE N OTES J ANUARY 12, 2010
L1.2 Judgments and Propositions For example, the meaning of the implication A ⊃ B might be given as a (computable) function that maps proofs of A to proofs of B. In my opinion it is extremely unfortunate that, historically, the study of modal operators has been carried out almost exclusively with classical means. Rather than embracing a subjective, intuitionistic point of view which is in harmony with the meaning of the modal operators (which are not truth-functional in nature, after all), researchers have attempted to reduce meaning to truth values anyway, taking an underlying classical logic as axiomatic. This enterprise has been only partially successful, and many problems remain in particular in first-order and higher-order modal logic. In this course we will pursue both: We will study classical modal logic with classical means, and intuitionistic modal logic with intuitionistic means.1 But we hope to deliver more than two separate interleaved courses by elucidating the many deep connections between these schools of thought. For ¨ example, Godel’s interpretation of intuitionistic logic in classical modal logic, and Kolmogorov’s interpretation of classical logic in intuitionistic logic provide means for a classical mathematician to understand intuitionistic logic and vice versa. To make this course feasible we focus on systems that are particularly relevant to computer science. We hope that students will come away from this course with a working knowledge of modal logic and its applications in computer science. They should be able to confidently apply techniques from modal logic to problems in their area of research, be it in the use of classical modal logic for verification, or intuitionistic modal logic to capture interesting computational phenomena. They should be able to apply existing modal logics where appropriate and design new logical systems when necessary and rigorously analyze their properties. 2 Introduction to This Lecture The goal of this first lecture is to develop the two principal notions of logic, namely propositions and proofs. There is no universal agreement about the proper foundations for these notions. One approach, which has been particularly successful for applications in computer science, is to understand the meaning of a proposition by understanding its proofs. In the words of ¨ [ML96, Page 27]: Martin-Lof 1 Not coincidentally, this course is co-taught by practitioners steeped in these distinct traditions. L ECTURE N OTES J ANUARY 12, 2010
Judgments and Propositions L1.3 The meaning of a proposition is determined by [. . . ] what counts as a verification of it. A verification may be understood as a certain kind of proof that only examines the constituents of a proposition. This is analyzed in greater detail by Dummett [Dum91] although with less direct connection to computer science. The system of inference rules that arises from this point of view is natural deduction, first proposed by Gentzen [Gen35] and studied in depth by Prawitz [Pra65]. ¨ approach to explain the basic propoIn this lecture we apply Martin-Lof’s sitional connectives. We will see later that universal and existential quantifiers and, in particular, modal operators naturally fit into the same framework. 3 Judgments and Propositions ¨ foundation of logic is a clear separation of The cornerstone of Martin-Lof’s the notions of judgment and proposition. A judgment is something we may know, that is, an object of knowledge. A judgment is evident if we in fact know it. We make a judgment such as “it is raining”, because we have evidence for it. In everyday life, such evidence is often immediate: we may look out the window and see that it is raining. In logic, we are concerned with situation where the evidence is indirect: we deduce the judgment by making correct inferences from other evident judgments. In other words: a judgment is evident if we have a proof for it. The most important judgment form in logic is “A is true”, where A is a proposition. There are many others that have been studied extensively. For example, “A is false”, “A is true at time t” (from temporal logic), “A is necessarily true” (from modal logic), “program M has type τ ” (from programming languages), etc. Returning to the first judgment, let us try to explain the meaning of conjunction. We write A true for the judgment “A is true” (presupposing that A is a proposition). Given propositions A and B, we can form the compound proposition “A and B”, written more formally as A ∧ B. But we have not yet specified what conjunction means, that is, what counts as a verification of A ∧ B. This is accomplished by the following inference rule: A true B true ∧I A ∧ B true L ECTURE N OTES J ANUARY 12, 2010
L1.4 Judgments and Propositions Here the name ∧I stands for “conjunction introduction”, since the conjunction is introduced in the conclusion. This rule allows us to conclude that A ∧ B true if we already know that A true and B true. In this inference rule, A and B are schematic variables, and ∧I is the name of the rule. The general form of an inference rule is J1 . . . Jn J name where the judgments J1 , . . . , Jn are called the premises, the judgment J is called the conclusion. In general, we will use letters J to stand for judgments, while A, B, and C are reserved for propositions. We take conjunction introduction as specifying the meaning of A ∧ B completely. So what can be deduced if we know that A ∧ B is true? By the above rule, to have a verification for A ∧ B means to have verifications for A and B. Hence the following two rules are justified: A ∧ B true ∧EL A true A ∧ B true ∧ER B true The name ∧EL stands for “left conjunction elimination”, since the conjunction in the premise has been eliminated in the conclusion. Similarly ∧ER stands for “right conjunction elimination”. We will see in Section 8 what precisely is required in order to guarantee that the formation, introduction, and elimination rules for a connective fit together correctly. For now, we will informally argue the correctness of the elimination rules, as we did for the conjunction elimination rules. As a second example we consider the proposition “truth” written as >. Truth should always be true, which means its introduction rule has no premises. > true >I Consequently, we have no information if we know > true, so there is no elimination rule. A conjunction of two propositions is characterized by one introduction rule with two premises, and two corresponding elimination rules. We may think of truth as a conjunction of zero propositions. By analogy it should then have one introduction rule with zero premises, and zero corresponding elimination rules. This is precisely what we wrote out above. L ECTURE N OTES J ANUARY 12, 2010

Lecture Notes