A Simplified Framework for First-Order Languages and Its Formalization In
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
COMPSCI 501: Formal Language Theory Insights on Computability Turing Machines Are a Model of Computation Two (No Longer) Surpris
Insights on Computability Turing machines are a model of computation COMPSCI 501: Formal Language Theory Lecture 11: Turing Machines Two (no longer) surprising facts: Marius Minea Although simple, can describe everything [email protected] a (real) computer can do. University of Massachusetts Amherst Although computers are powerful, not everything is computable! Plus: “play” / program with Turing machines! 13 February 2019 Why should we formally define computation? Must indeed an algorithm exist? Back to 1900: David Hilbert’s 23 open problems Increasingly a realization that sometimes this may not be the case. Tenth problem: “Occasionally it happens that we seek the solution under insufficient Given a Diophantine equation with any number of un- hypotheses or in an incorrect sense, and for this reason do not succeed. known quantities and with rational integral numerical The problem then arises: to show the impossibility of the solution under coefficients: To devise a process according to which the given hypotheses or in the sense contemplated.” it can be determined in a finite number of operations Hilbert, 1900 whether the equation is solvable in rational integers. This asks, in effect, for an algorithm. Hilbert’s Entscheidungsproblem (1928): Is there an algorithm that And “to devise” suggests there should be one. decides whether a statement in first-order logic is valid? Church and Turing A Turing machine, informally Church and Turing both showed in 1936 that a solution to the Entscheidungsproblem is impossible for the theory of arithmetic. control To make and prove such a statement, one needs to define computability. In a recent paper Alonzo Church has introduced an idea of “effective calculability”, read/write head which is equivalent to my “computability”, but is very differently defined. -
Specifying Verified X86 Software from Scratch
Specifying verified x86 software from scratch Mario Carneiro Carnegie Mellon University, Pittsburgh, PA, USA [email protected] Abstract We present a simple framework for specifying and proving facts about the input/output behavior of ELF binary files on the x86-64 architecture. A strong emphasis has been placed on simplicity at all levels: the specification says only what it needs to about the target executable, the specification is performed inside a simple logic (equivalent to first-order Peano Arithmetic), and the verification language and proof checker are custom-designed to have only what is necessary to perform efficient general purpose verification. This forms a part of the Metamath Zero project, to build a minimal verifier that is capable of verifying its own binary. In this paper, we will present the specification of the dynamic semantics of x86 machine code, together with enough information about Linux system calls to perform simple IO. 2012 ACM Subject Classification Theory of computation → Program verification; Theory of com- putation → Abstract machines Keywords and phrases x86-64, ISA specification, Metamath Zero, self-verification Digital Object Identifier 10.4230/LIPIcs.ITP.2019.19 Supplement Material The formalization is a part of the Metamath Zero project at https://github. com/digama0/mm0. Funding This material is based upon work supported by AFOSR grant FA9550-18-1-0120 and a grant from the Sloan Foundation. Acknowledgements I would like to thank my advisor Jeremy Avigad for his support and encourage- ment, and for his reviews of early drafts of this work. 1 Introduction The field of software verification is on the verge of a breakthrough. -
Use Formal and Informal Language in Persuasive Text
Author’S Craft Use Formal and Informal Language in Persuasive Text 1. Focus Objectives Explain Using Formal and Informal Language In this mini-lesson, students will: Say: When I write a persuasive letter, I want people to see things my way. I use • Learn to use both formal and different kinds of language to gain support. To connect with my readers, I use informal language in persuasive informal language. Informal language is conversational; it sounds a lot like the text. way we speak to one another. Then, to make sure that people believe me, I also use formal language. When I use formal language, I don’t use slang words, and • Practice using formal and informal I am more objective—I focus on facts over opinions. Today I’m going to show language in persuasive text. you ways to use both types of language in persuasive letters. • Discuss how they can apply this strategy to their independent writing. Model How Writers Use Formal and Informal Language Preparation Display the modeling text on chart paper or using the interactive whiteboard resources. Materials Needed • Chart paper and markers 1. As the parent of a seventh grader, let me assure you this town needs a new • Interactive whiteboard resources middle school more than it needs Old Oak. If selling the land gets us a new school, I’m all for it. Advanced Preparation 2. Last month, my daughter opened her locker and found a mouse. She was traumatized by this experience. She has not used her locker since. If you will not be using the interactive whiteboard resources, copy the Modeling Text modeling text and practice text onto chart paper prior to the mini-lesson. -
The Metamathematics of Putnam's Model-Theoretic Arguments
The Metamathematics of Putnam's Model-Theoretic Arguments Tim Button Abstract. Putnam famously attempted to use model theory to draw metaphysical conclusions. His Skolemisation argument sought to show metaphysical realists that their favourite theories have countable models. His permutation argument sought to show that they have permuted mod- els. His constructivisation argument sought to show that any empirical evidence is compatible with the Axiom of Constructibility. Here, I exam- ine the metamathematics of all three model-theoretic arguments, and I argue against Bays (2001, 2007) that Putnam is largely immune to meta- mathematical challenges. Copyright notice. This paper is due to appear in Erkenntnis. This is a pre-print, and may be subject to minor changes. The authoritative version should be obtained from Erkenntnis, once it has been published. Hilary Putnam famously attempted to use model theory to draw metaphys- ical conclusions. Specifically, he attacked metaphysical realism, a position characterised by the following credo: [T]he world consists of a fixed totality of mind-independent objects. (Putnam 1981, p. 49; cf. 1978, p. 125). Truth involves some sort of correspondence relation between words or thought-signs and external things and sets of things. (1981, p. 49; cf. 1989, p. 214) [W]hat is epistemically most justifiable to believe may nonetheless be false. (1980, p. 473; cf. 1978, p. 125) To sum up these claims, Putnam characterised metaphysical realism as an \externalist perspective" whose \favorite point of view is a God's Eye point of view" (1981, p. 49). Putnam sought to show that this externalist perspective is deeply untenable. To this end, he treated correspondence in terms of model-theoretic satisfaction. -
Pst-Plot — Plotting Functions in “Pure” L ATEX
pst-plot — plotting functions in “pure” LATEX Commonly, one wants to simply plot a function as a part of a LATEX document. Using some postscript tricks, you can make a graph of an arbitrary function in one variable including implicitly defined functions. The commands described on this worksheet require that the following lines appear in your document header (before \begin{document}). \usepackage{pst-plot} \usepackage{pstricks} The full pstricks manual (including pst-plot documentation) is available at:1 http://www.risc.uni-linz.ac.at/institute/systems/documentation/TeX/tex/ A good page for showing the power of what you can do with pstricks is: http://www.pstricks.de/.2 Reverse Polish Notation (postfix notation) Reverse polish notation (RPN) is a modification of polish notation which was a creation of the logician Jan Lukasiewicz (advisor of Alfred Tarski). The advantage of these notations is that they do not require parentheses to control the order of operations in an expression. The advantage of this in a computer is that parsing a RPN expression is trivial, whereas parsing an expression in standard notation can take quite a bit of computation. At the most basic level, an expression such as 1 + 2 becomes 12+. For more complicated expressions, the concept of a stack must be introduced. The stack is just the list of all numbers which have not been used yet. When an operation takes place, the result of that operation is left on the stack. Thus, we could write the sum of all integers from 1 to 10 as either, 12+3+4+5+6+7+8+9+10+ or 12345678910+++++++++ In both cases the result 55 is left on the stack. -
Chapter 6 Formal Language Theory
Chapter 6 Formal Language Theory In this chapter, we introduce formal language theory, the computational theories of languages and grammars. The models are actually inspired by formal logic, enriched with insights from the theory of computation. We begin with the definition of a language and then proceed to a rough characterization of the basic Chomsky hierarchy. We then turn to a more de- tailed consideration of the types of languages in the hierarchy and automata theory. 6.1 Languages What is a language? Formally, a language L is defined as as set (possibly infinite) of strings over some finite alphabet. Definition 7 (Language) A language L is a possibly infinite set of strings over a finite alphabet Σ. We define Σ∗ as the set of all possible strings over some alphabet Σ. Thus L ⊆ Σ∗. The set of all possible languages over some alphabet Σ is the set of ∗ all possible subsets of Σ∗, i.e. 2Σ or ℘(Σ∗). This may seem rather simple, but is actually perfectly adequate for our purposes. 6.2 Grammars A grammar is a way to characterize a language L, a way to list out which strings of Σ∗ are in L and which are not. If L is finite, we could simply list 94 CHAPTER 6. FORMAL LANGUAGE THEORY 95 the strings, but languages by definition need not be finite. In fact, all of the languages we are interested in are infinite. This is, as we showed in chapter 2, also true of human language. Relating the material of this chapter to that of the preceding two, we can view a grammar as a logical system by which we can prove things. -
Axiomatic Set Teory P.D.Welch
Axiomatic Set Teory P.D.Welch. August 16, 2020 Contents Page 1 Axioms and Formal Systems 1 1.1 Introduction 1 1.2 Preliminaries: axioms and formal systems. 3 1.2.1 The formal language of ZF set theory; terms 4 1.2.2 The Zermelo-Fraenkel Axioms 7 1.3 Transfinite Recursion 9 1.4 Relativisation of terms and formulae 11 2 Initial segments of the Universe 17 2.1 Singular ordinals: cofinality 17 2.1.1 Cofinality 17 2.1.2 Normal Functions and closed and unbounded classes 19 2.1.3 Stationary Sets 22 2.2 Some further cardinal arithmetic 24 2.3 Transitive Models 25 2.4 The H sets 27 2.4.1 H - the hereditarily finite sets 28 2.4.2 H - the hereditarily countable sets 29 2.5 The Montague-Levy Reflection theorem 30 2.5.1 Absoluteness 30 2.5.2 Reflection Theorems 32 2.6 Inaccessible Cardinals 34 2.6.1 Inaccessible cardinals 35 2.6.2 A menagerie of other large cardinals 36 3 Formalising semantics within ZF 39 3.1 Definite terms and formulae 39 3.1.1 The non-finite axiomatisability of ZF 44 3.2 Formalising syntax 45 3.3 Formalising the satisfaction relation 46 3.4 Formalising definability: the function Def. 47 3.5 More on correctness and consistency 48 ii iii 3.5.1 Incompleteness and Consistency Arguments 50 4 The Constructible Hierarchy 53 4.1 The L -hierarchy 53 4.2 The Axiom of Choice in L 56 4.3 The Axiom of Constructibility 57 4.4 The Generalised Continuum Hypothesis in L. -
Enhancement of Properties in Mizar
Enhancement of properties in Mizar Artur Korniªowicz Institute of Computer Science, University of Bialystok, Bialystok, Poland ABSTRACT A ``property'' in the Mizar proof-assistant is a construction that can be used to register chosen features of predicates (e.g., ``reflexivity'', ``symmetry''), operations (e.g., ``involutiveness'', ``commutativity'') and types (e.g., ``sethoodness'') declared at the definition stage. The current implementation of Mizar allows using properties for notions with a specific number of visible arguments (e.g., reflexivity for a predicate with two visible arguments and involutiveness for an operation with just one visible argument). In this paper we investigate a more general approach to overcome these limitations. We propose an extension of the Mizar language and a corresponding enhancement of the Mizar proof-checker which allow declaring properties of notions of arbitrary arity with respect to explicitly indicated arguments. Moreover, we introduce a new property—the ``fixedpoint-free'' property of unary operations—meaning that the result of applying the operation to its argument always differs from the argument. Results of tests conducted on the Mizar Mathematical Library are presented. Subjects Digital Libraries, Theory and Formal Methods, Programming Languages Keywords Formal verification, Mizar proof-assistant, Mizar Mathematical Library INTRODUCTION Classical mathematical papers consist of sequences of definitions and justified facts classified into several categories like: theorems, lemmas, corollaries, and so on, often interspersed with some examples and descriptions. Submitted 25 June 2020 Mathematical documents prepared using various proof-assistants (e.g., Isabelle (Isabelle, Accepted 29 October 2020 2020), HOL Light (HOL Light, 2020), Coq (Coq, 2020), Metamath (Metamath, 2020), Published 30 November 2020 Lean (Lean, 2020), and Mizar (Mizar, 2020)) can also contain other constructions that are Corresponding author Artur Korniªowicz, processable by dedicated software. -
Classical First-Order Logic Software Formal Verification
Classical First-Order Logic Software Formal Verification Maria Jo~aoFrade Departmento de Inform´atica Universidade do Minho 2008/2009 Maria Jo~aoFrade (DI-UM) First-Order Logic (Classical) MFES 2008/09 1 / 31 Introduction First-order logic (FOL) is a richer language than propositional logic. Its lexicon contains not only the symbols ^, _, :, and ! (and parentheses) from propositional logic, but also the symbols 9 and 8 for \there exists" and \for all", along with various symbols to represent variables, constants, functions, and relations. There are two sorts of things involved in a first-order logic formula: terms, which denote the objects that we are talking about; formulas, which denote truth values. Examples: \Not all birds can fly." \Every child is younger than its mother." \Andy and Paul have the same maternal grandmother." Maria Jo~aoFrade (DI-UM) First-Order Logic (Classical) MFES 2008/09 2 / 31 Syntax Variables: x; y; z; : : : 2 X (represent arbitrary elements of an underlying set) Constants: a; b; c; : : : 2 C (represent specific elements of an underlying set) Functions: f; g; h; : : : 2 F (every function f as a fixed arity, ar(f)) Predicates: P; Q; R; : : : 2 P (every predicate P as a fixed arity, ar(P )) Fixed logical symbols: >, ?, ^, _, :, 8, 9 Fixed predicate symbol: = for \equals" (“first-order logic with equality") Maria Jo~aoFrade (DI-UM) First-Order Logic (Classical) MFES 2008/09 3 / 31 Syntax Terms The set T , of terms of FOL, is given by the abstract syntax T 3 t ::= x j c j f(t1; : : : ; tar(f)) Formulas The set L, of formulas of FOL, is given by the abstract syntax L 3 φ, ::= ? j > j :φ j φ ^ j φ _ j φ ! j t1 = t2 j 8x: φ j 9x: φ j P (t1; : : : ; tar(P )) :, 8, 9 bind most tightly; then _ and ^; then !, which is right-associative. -
Chapter 10: Symbolic Trails and Formal Proofs of Validity, Part 2
Essential Logic Ronald C. Pine CHAPTER 10: SYMBOLIC TRAILS AND FORMAL PROOFS OF VALIDITY, PART 2 Introduction In the previous chapter there were many frustrating signs that something was wrong with our formal proof method that relied on only nine elementary rules of validity. Very simple, intuitive valid arguments could not be shown to be valid. For instance, the following intuitively valid arguments cannot be shown to be valid using only the nine rules. Somalia and Iran are both foreign policy risks. Therefore, Iran is a foreign policy risk. S I / I Either Obama or McCain was President of the United States in 2009.1 McCain was not President in 2010. So, Obama was President of the United States in 2010. (O v C) ~(O C) ~C / O If the computer networking system works, then Johnson and Kaneshiro will both be connected to the home office. Therefore, if the networking system works, Johnson will be connected to the home office. N (J K) / N J Either the Start II treaty is ratified or this landmark treaty will not be worth the paper it is written on. Therefore, if the Start II treaty is not ratified, this landmark treaty will not be worth the paper it is written on. R v ~W / ~R ~W 1 This or statement is obviously exclusive, so note the translation. 427 If the light is on, then the light switch must be on. So, if the light switch in not on, then the light is not on. L S / ~S ~L Thus, the nine elementary rules of validity covered in the previous chapter must be only part of a complete system for constructing formal proofs of validity. -
Mathematics in the Computer
Mathematics in the Computer Mario Carneiro Carnegie Mellon University April 26, 2021 1 / 31 Who am I? I PhD student in Logic at CMU I Proof engineering since 2013 I Metamath (maintainer) I Lean 3 (maintainer) I Dabbled in Isabelle, HOL Light, Coq, Mizar I Metamath Zero (author) Github: digama0 I Proved 37 of Freek’s 100 theorems list in Zulip: Mario Carneiro Metamath I Lots of library code in set.mm and mathlib I Say hi at https://leanprover.zulipchat.com 2 / 31 I Found Metamath via a random internet search I they already formalized half of the book! I .! . and there is some stuff on cofinality they don’t have yet, maybe I can help I Got involved, did it as a hobby for a few years I Got a job as an android developer, kept on the hobby I Norm Megill suggested that I submit to a (Mizar) conference, it went well I Met Leo de Moura (Lean author) at a conference, he got me in touch with Jeremy Avigad (my current advisor) I Now I’m a PhD at CMU philosophy! How I got involved in formalization I Undergraduate at Ohio State University I Math, CS, Physics I Reading Takeuti & Zaring, Axiomatic Set Theory 3 / 31 I they already formalized half of the book! I .! . and there is some stuff on cofinality they don’t have yet, maybe I can help I Got involved, did it as a hobby for a few years I Got a job as an android developer, kept on the hobby I Norm Megill suggested that I submit to a (Mizar) conference, it went well I Met Leo de Moura (Lean author) at a conference, he got me in touch with Jeremy Avigad (my current advisor) I Now I’m a PhD at CMU philosophy! How I got involved in formalization I Undergraduate at Ohio State University I Math, CS, Physics I Reading Takeuti & Zaring, Axiomatic Set Theory I Found Metamath via a random internet search 3 / 31 I . -
The Metamath Proof Language
The Metamath Proof Language Norman Megill May 9, 2014 1 Metamath development server Overview of Metamath • Very simple language: substitution is the only basic rule • Very small verifier (≈300 lines code) • Fast proof verification (6 sec for ≈18000 proofs) • All axioms (including logic) are specified by user • Formal proofs are complete and transparent, with no hidden implicit steps 2 Goals Simplest possible framework that can express and verify (essentially) all of mathematics with absolute rigor Permanent archive of hand-crafted formal proofs Elimination of uncertainty of proof correctness Exposure of missing steps in informal proofs to any level of detail desired Non-goals (at this time) Automated theorem proving Practical proof-finding assistant for working mathematicians 3 sophistication × × × × × others Metamath × transparency (Ficticious conceptual chart) 4 Contributors David Abernethy David Harvey Rodolfo Medina Stefan Allan Jeremy Henty Mel L. O'Cat Juha Arpiainen Jeff Hoffman Jason Orendorff Jonathan Ben-Naim Szymon Jaroszewicz Josh Purinton Gregory Bush Wolf Lammen Steve Rodriguez Mario Carneiro G´erard Lang Andrew Salmon Paul Chapman Raph Levien Alan Sare Scott Fenton Fr´ed´ericLin´e Eric Schmidt Jeffrey Hankins Roy F. Longton David A. Wheeler Anthony Hart Jeff Madsen 5 Examples of axiom systems expressible with Metamath (Blue means used by the set.mm database) • Intuitionistic, classical, paraconsistent, relevance, quantum propositional logics • Free or standard first-order logic with equality; modal and provability logics • NBG, ZF, NF set theory, with AC, GCH, inaccessible and other large cardinal axioms Axiom schemes are exact logical equivalents to textbook counterparts. All theorems can be instantly traced back to what axioms they use.