MATH 260A: Mathematical Logic — Fall 2019, UC San Diego Lecture 1

Total Page:16

File Type:pdf, Size:1020Kb

MATH 260A: Mathematical Logic — Fall 2019, UC San Diego Lecture 1 MATH 260A: Mathematical Logic | Fall 2019, UC San Diego Lecture 1 Instructor: Sam Buss Scribe: Sasank Mouli September 26, 2019 Mathematical logic consists of the following branches, which are used in various disciplines as shown below. This course will mainly cover Model theory and Proof theory. 1 First-order logic 1.1 Introduction First-order logic is a language used to make mathematical statements. It has the following elements as building blocks. Propositional/Boolean connectives are standard boolean functions used as a basis to express all boolean functions. The most commonly used ones are AND (^), OR (_), IMPLIES (!), IF AND ONLY IF ($) and NOT (:). Variables represented by x, y, z, ··· range over some nonempty universe of objects. 1 Quantifiers 9x and 8x are used to express the presence or absence of objects in the universe satisfying certain properties (specified by a boolean formula). Predicate symbols are used to express relations over the universe. For example, Equality (=), Less or equal to (≤) are a binary relations. P RIME(x) is a unary relation expressing whether or not x is prime. The arity of a predicate is the number of arguments to it. Function symbols represented by f, g, h ··· denote functions over the universe. For example, + is a binary function denoting addition in the universe. The Successor function S(x) gives the successor of x in the universe. In usual notation, S(x) = x + 1. The arity of a function is the number of arguments to it. Constants are denoted by c, d, ··· . They can be viewed as functions of arity zero. 0, 1 are examples of constants. A first-order language is a choice of predicate symbols, function symbols and constants. Equal- ity (=) is sometimes assumed to be present as a default predicate symbol. 1.2 Examples We will now show examples of first-order languages and statements that can be expressed using them. 1.2.1 Theory of Groups To express that a universe of objects forms a group, we use the following first-order language: Function symbols: The unary function −1 (Inverse), the constant symbol e (Identity), the binary function · (Group operation). Predicate symbols: Equality (=). We can now express the group axioms as First order statements: - Associativity: 8x8y8z((x · y) · z = x · (y · z)) - Identity: 8x(x · e = x ^ e · x = x) - Inverse: 8x(x · x−1 = e ^ x−1 · x = e) Closure under · (the group operation) follows automatically since the operation · is interpreted as a function over the universe. We can use the sub-language containing just the function symbol · and the predicate symbol = to make the same statements. Let '(z) denote the first order formula 8x(z · x = x ^ x · z = x). The existence of an identity element is now expressed by the statement 9z'(z) The existence of an inverse can be represented by 8x9y9z('(z) ^ x · y = z ^ y · x = z) If G2 denotes this new set of group axioms, then it implies the truth of statements such as the uniqueness of the inverse, i.e. any universe of elements satisfying the first-order formulae in G2 has a unique inverse element satisfying '(z). 2 Theorem G2 8z18z2('(z1) ^ '(z2) ! (z1 = z2)) Definition 1. A group is torsion free if it satisfies the following property: For integers n and all group elements x 6= e, xn 6= e. The statement that a set of elements is a torsion free group can be expressed as a set of infinitely many first-order formulae. 8x(x 6= e ! x · x 6= e) 8x(x 6= e ! x · (x · x) 6= e) . There are groups which have arbitrarily high torsion (e.g. the multiplicative group of nth roots of unity where n is prime) and thus a finite set of the above formulae will not suffice. In upcoming lectures we will prove the following theorem. Theorem There is no finite set of first-order formulae expressing that a set of elements is a torsion free group. 1.2.2 Statements about the size of the universe Let GE2 denote the statement that our universe has at least two distinct elements. GE2 = 9x9y(:(x = y)) Similarly we have GE3 = 9x9y9z(x 6= y ^ y 6= z ^ x 6= z) where x 6= y denotes :(x = y). In general for k > 1, ^ GEk = 9x19x2 · · · 9xk( (xi 6= xj)) 1≤i<j≤k V k where means a conjunction of 2 many inequalities. Note that the size of the above 1≤i<j≤k formula is O(k2) i.e. it uses O(k2) symbols. Homework Refomulate GEk with O(k) symbols. 1.2.3 Set theory The first order language for set theory consists of the predicate symbols 2 and =. For instance, the following first-order formula states that a set x is empty. 8y(y 62 x) 3 1.3 Things that are not in first-order logic V - Quantifying over infinitely many variables, e.g. 9x19x2 ··· ( i<j xi 6= xj) - Second order logic, which allows quantifying over sets of objects or equivalently has variable predicate symbols. - Modal quantifiers: ' is the statement \' is necessarily true". ' is the statement \' is possibly true." - Tense logics/CTL - Type theory 1.4 Formal definition of first-order formulae Below we formally define the syntax of first-order logic. Fix a language L of non logical symbols (i.e. predicate, function and constant symbols, = if necessary), logical symbols (^, _, !, $ , :), variables (x, y, z, ··· , a, b, c, ··· ) and other structural symbols like parentheses and comma. Definition 2. L-terms An L-term is inductively defined as follows. 1. Any variable x is a term 2. Any constant c is a term 3. If f is a function symbol of arity k and t1, ··· , tk are terms, then f(t1; ··· ; tk) is a term. Definition 3. L-formulae 1. If t1, t2 are terms t1 = t2 is a formula (an atomic formula) 2. If P is a predicate of arity k and t1, ··· , tk are terms then P (t1; ··· ; tk) is a formula (also an atomic formula) 3. If ' and are formulae then so are (' ^ ), (' _ ), (' ! ), (' $ ), :'. 4. If x is a variable, 8x', 9x' are formulae. We want L-formulae to have Unique Readability, i.e. there is a unique way to interpret every formula. This is ensured by the use of parentheses. We omit parentheses when reasonable and use infix notation. The order of precedence in the absence of parentheses is as follows :, 8, 9 ^, _ !, $ Operators of equal precedence are associated from right to left. For example, ' ^ ! _ χ is interpreted as (' ^ ) ! ( _ χ). ' ^ ^ χ is read as ' ^ ( ^ χ). ' ! ! χ means ' ! ( ! χ) which is the same as ' ^ ! χ. Expressions such as ' ^ _ χ should never be used since their meaning may be ambiguous. 4 MATH 260A: Mathematical Logic — Fall 2019, UC San Diego Lecture2 Instructor: Sam Buss Scribe: Ayoob Shahmoradi 1 Propositional Logic 1.1 Language • Connectives: ^, _, , Ñ, Ø • Variables (Var): x1, x2, ...p1, p2, ... 1.2 Syntax • Definition of a formula: – Any variable is an atomic formula. – If ϕ and ψ are formulas, so are p ϕq, pϕ ^ ψq, pϕ _ ψq, pϕ Ñ ψq, pϕ Ø ψq. 1.3 Semantics Variables range over T and F. Definition 1: A truth-assignment (t.a.) is a mapping τ: Var Ñ tT,F u. Then τ is the extension of τ to all formulas s.t.: • τppq=τppq if p is a variable. • τp ϕq= T iff τpϕq=F. • τpϕ ^ ψq= T iff τpϕq=T and τpψq=T. 1 • τpϕ _ ψq= T iff τpϕq=T or τpψq=T. • τpϕ Ñ ψq= T iff τpϕq=F or τpψq=T. • τpϕ Ø ψq= T iff τpϕq = τpψq. Definition 2. ϕ is a tautology{valid (written as ⊧ ϕ) if τpϕq=T for all truth assignments τ. Note that , ^, _, Ñ, Ø, respectively, stand for NEGATION, AND, OR, IF ... THEN, and IF AND ONLY IF. Definition 3. ϕ is satisfiable if for some truth assignment τ, τpφq=T. Theorem 1. ϕ is satisfiable iff ( ϕ) is not a tautology. Definition 4. ϕ tautologically implies ψ (ϕ ⊧ ψ) if every truth assignment that satisfies ϕ also satisfies ψ. Definition 5. ϕ is tautologically equivalent to ψ (ϕ )( ψq iff ϕ ( ψ and ψ ( ϕ. Theorem 2. ϕ ⊧ ψ iff ⊧ pϕ Ñ ψq. Let Γ be a set of formulas. Definition 6. τ satisfies Γ iff τ ⊧ ϕ for all ϕ P Γ.(τ ‰ Γ) Definition 7. Γ tautologically implies ϕ (Γ ⊧ ϕ) iff for all t.a. τ if τ ⊧ Γ then τ ⊧ ϕ. Theorem 3. If Γ is unsatisfiable and ϕ is any formula, then Γ ⊧ ϕ. Theorem 4 If for all ϕ, Γ ⊧ ϕ, then Γ is unsatisfiable. Theorem 5. Γ ⊧ ϕ iff Γ Y t ϕu is unsatisfiable. 1.4 CNF/DNF A conjunction of formulas is a formula pψ1 ^ ψ2q... ^ ψn ´ ¯ where each ψi is a formula. Similarly, a disjunction of formulas is a formula pϕ1 _ ϕ2q... _ ϕn ´ ¯ 2 where each ϕi is a formula. Now in order to define disjunctive normal form (DNF) and conjunctive normal form (CNF), we need the following definitions. • A literal is either a variable (p) or a negated variable ( p). • A clause is a disjunction of a finite set of formulas. • A CNF formula is a conjunction of a finite set of clauses. • A term is a conjunction of a finite set of literals. • A DNF formula is a disjunction of a finite set of terms. Example:pp Ø qq. • DNF: pp ^ qq _ p p ^ qq • CNF: p p _ qq ^ p q _ pq Theorem 6. Every formula ϕ is tautologically equivalent to a DNF formula and to a CNF formula.
Recommended publications
  • Laced Boolean Functions and Subset Sum Problems in Finite Fields
    Laced Boolean functions and subset sum problems in finite fields David Canright1, Sugata Gangopadhyay2 Subhamoy Maitra3, Pantelimon Stanic˘ a˘1 1 Department of Applied Mathematics, Naval Postgraduate School Monterey, CA 93943{5216, USA; fdcanright,[email protected] 2 Department of Mathematics, Indian Institute of Technology Roorkee 247667 INDIA; [email protected] 3 Applied Statistics Unit, Indian Statistical Institute 203 B. T. Road, Calcutta 700 108, INDIA; [email protected] March 13, 2011 Abstract In this paper, we investigate some algebraic and combinatorial properties of a special Boolean function on n variables, defined us- ing weighted sums in the residue ring modulo the least prime p ≥ n. We also give further evidence to a question raised by Shparlinski re- garding this function, by computing accurately the Boolean sensitivity, thus settling the question for prime number values p = n. Finally, we propose a generalization of these functions, which we call laced func- tions, and compute the weight of one such, for every value of n. Mathematics Subject Classification: 06E30,11B65,11D45,11D72 Key Words: Boolean functions; Hamming weight; Subset sum problems; residues modulo primes. 1 1 Introduction Being interested in read-once branching programs, Savicky and Zak [7] were led to the definition and investigation, from a complexity point of view, of a special Boolean function based on weighted sums in the residue ring modulo a prime p. Later on, a modification of the same function was used by Sauerhoff [6] to show that quantum read-once branching programs are exponentially more powerful than classical read-once branching programs. Shparlinski [8] used exponential sums methods to find bounds on the Fourier coefficients, and he posed several open questions, which are the motivation of this work.
    [Show full text]
  • Analysis of Boolean Functions and Its Applications to Topics Such As Property Testing, Voting, Pseudorandomness, Gaussian Geometry and the Hardness of Approximation
    Analysis of Boolean Functions Notes from a series of lectures by Ryan O’Donnell Guest lecture by Per Austrin Barbados Workshop on Computational Complexity February 26th – March 4th, 2012 Organized by Denis Th´erien Scribe notes by Li-Yang Tan arXiv:1205.0314v1 [cs.CC] 2 May 2012 Contents 1 Linearity testing and Arrow’s theorem 3 1.1 TheFourierexpansion ............................. 3 1.2 Blum-Luby-Rubinfeld. .. .. .. .. .. .. .. .. 7 1.3 Votingandinfluence .............................. 9 1.4 Noise stability and Arrow’s theorem . ..... 12 2 Noise stability and small set expansion 15 2.1 Sheppard’s formula and Stabρ(MAJ)...................... 15 2.2 Thenoisyhypercubegraph. 16 2.3 Bonami’slemma................................. 18 3 KKL and quasirandomness 20 3.1 Smallsetexpansion ............................... 20 3.2 Kahn-Kalai-Linial ............................... 21 3.3 Dictator versus Quasirandom tests . ..... 22 4 CSPs and hardness of approximation 26 4.1 Constraint satisfaction problems . ...... 26 4.2 Berry-Ess´een................................... 27 5 Majority Is Stablest 30 5.1 Borell’s isoperimetric inequality . ....... 30 5.2 ProofoutlineofMIST ............................. 32 5.3 Theinvarianceprinciple . 33 6 Testing dictators and UGC-hardness 37 1 Linearity testing and Arrow’s theorem Monday, 27th February 2012 Rn Open Problem [Guy86, HK92]: Let a with a 2 = 1. Prove Prx 1,1 n [ a, x • ∈ k k ∈{− } |h i| ≤ 1] 1 . ≥ 2 Open Problem (S. Srinivasan): Suppose g : 1, 1 n 2 , 1 where g(x) 2 , 1 if • {− } →± 3 ∈ 3 n x n and g(x) 1, 2 if n x n . Prove deg( f)=Ω(n). i=1 i ≥ 2 ∈ − − 3 i=1 i ≤− 2 P P In this workshop we will study the analysis of boolean functions and its applications to topics such as property testing, voting, pseudorandomness, Gaussian geometry and the hardness of approximation.
    [Show full text]
  • A Call-By-Need Lambda Calculus
    A CallByNeed Lamb da Calculus Zena M Ariola Matthias Fel leisen Computer Information Science Department Department of Computer Science University of Oregon Rice University Eugene Oregon Houston Texas John Maraist and Martin Odersky Philip Wad ler Institut fur Programmstrukturen Department of Computing Science Universitat Karlsruhe UniversityofGlasgow Karlsruhe Germany Glasgow Scotland Abstract arguments value when it is rst evaluated More pre cisely lazy languages only reduce an argument if the The mismatchbetween the op erational semantics of the value of the corresp onding formal parameter is needed lamb da calculus and the actual b ehavior of implemen for the evaluation of the pro cedure b o dy Moreover af tations is a ma jor obstacle for compiler writers They ter reducing the argument the evaluator will remember cannot explain the b ehavior of their evaluator in terms the resulting value for future references to that formal of source level syntax and they cannot easily com parameter This technique of evaluating pro cedure pa pare distinct implementations of dierent lazy strate rameters is called cal lbyneed or lazy evaluation gies In this pap er we derive an equational characteri A simple observation justies callbyneed the re zation of callbyneed and prove it correct with resp ect sult of reducing an expression if any is indistinguish to the original lamb da calculus The theory is a strictly able from the expression itself in all p ossible contexts smaller theory than the lamb da calculus Immediate Some implementations attempt
    [Show full text]
  • Probabilistic Boolean Logic, Arithmetic and Architectures
    PROBABILISTIC BOOLEAN LOGIC, ARITHMETIC AND ARCHITECTURES A Thesis Presented to The Academic Faculty by Lakshmi Narasimhan Barath Chakrapani In Partial Fulfillment of the Requirements for the Degree Doctor of Philosophy in the School of Computer Science, College of Computing Georgia Institute of Technology December 2008 PROBABILISTIC BOOLEAN LOGIC, ARITHMETIC AND ARCHITECTURES Approved by: Professor Krishna V. Palem, Advisor Professor Trevor Mudge School of Computer Science, College Department of Electrical Engineering of Computing and Computer Science Georgia Institute of Technology University of Michigan, Ann Arbor Professor Sung Kyu Lim Professor Sudhakar Yalamanchili School of Electrical and Computer School of Electrical and Computer Engineering Engineering Georgia Institute of Technology Georgia Institute of Technology Professor Gabriel H. Loh Date Approved: 24 March 2008 College of Computing Georgia Institute of Technology To my parents The source of my existence, inspiration and strength. iii ACKNOWLEDGEMENTS आचायातर् ्पादमादे पादं िशंयः ःवमेधया। पादं सॄचारयः पादं कालबमेणच॥ “One fourth (of knowledge) from the teacher, one fourth from self study, one fourth from fellow students and one fourth in due time” 1 Many people have played a profound role in the successful completion of this disser- tation and I first apologize to those whose help I might have failed to acknowledge. I express my sincere gratitude for everything you have done for me. I express my gratitude to Professor Krisha V. Palem, for his energy, support and guidance throughout the course of my graduate studies. Several key results per- taining to the semantic model and the properties of probabilistic Boolean logic were due to his brilliant insights.
    [Show full text]
  • NU-Prolog Reference Manual
    NU-Prolog Reference Manual Version 1.5.24 edited by James A. Thom & Justin Zobel Technical Report 86/10 Machine Intelligence Project Department of Computer Science University of Melbourne (Revised November 1990) Copyright 1986, 1987, 1988, Machine Intelligence Project, The University of Melbourne. All rights reserved. The Technical Report edition of this publication is given away free subject to the condition that it shall not, by the way of trade or otherwise, be lent, resold, hired out, or otherwise circulated, without the prior consent of the Machine Intelligence Project at the University of Melbourne, in any form or cover other than that in which it is published and without a similar condition including this condition being imposed on the subsequent user. The Machine Intelligence Project makes no representations or warranties with respect to the contents of this document and specifically disclaims any implied warranties of merchantability or fitness for any particular purpose. Furthermore, the Machine Intelligence Project reserves the right to revise this document and to make changes from time to time in its content without being obligated to notify any person or body of such revisions or changes. The usual codicil that no part of this publication may be reproduced, stored in a retrieval system, used for wrapping fish, or transmitted, in any form or by any means, electronic, mechanical, photocopying, paper dart, recording, or otherwise, without someone's express permission, is not imposed. Enquiries relating to the acquisition of NU-Prolog should be made to NU-Prolog Distribution Manager Machine Intelligence Project Department of Computer Science The University of Melbourne Parkville, Victoria 3052 Australia Telephone: (03) 344 5229.
    [Show full text]
  • Predicate Logic
    Predicate Logic Laura Kovács Recap: Boolean Algebra and Propositional Logic 0, 1 True, False (other notation: t, f) boolean variables a ∈{0,1} atomic formulas (atoms) p∈{True,False} boolean operators ¬, ∧, ∨, fl, ñ logical connectives ¬, ∧, ∨, fl, ñ boolean functions: propositional formulas: • 0 and 1 are boolean functions; • True and False are propositional formulas; • boolean variables are boolean functions; • atomic formulas are propositional formulas; • if a is a boolean function, • if a is a propositional formula, then ¬a is a boolean function; then ¬a is a propositional formula; • if a and b are boolean functions, • if a and b are propositional formulas, then a∧b, a∨b, aflb, añb are boolean functions. then a∧b, a∨b, aflb, añb are propositional formulas. truth value of a boolean function truth value of a propositional formula (truth tables) (truth tables) Recap: Boolean Algebra and Propositional Logic 0, 1 True, False (other notation: t, f) boolean variables a ∈{0,1} atomic formulas (atoms) p∈{True,False} boolean operators ¬, ∧, ∨, fl, ñ logical connectives ¬, ∧, ∨, fl, ñ boolean functions: propositional formulas (propositions, Aussagen ): • 0 and 1 are boolean functions; • True and False are propositional formulas; • boolean variables are boolean functions; • atomic formulas are propositional formulas; • if a is a boolean function, • if a is a propositional formula, then ¬a is a boolean function; then ¬a is a propositional formula; • if a and b are boolean functions, • if a and b are propositional formulas, then a∧b, a∨b, aflb, añb are
    [Show full text]
  • Satisfiability 6 the Decision Problem 7
    Satisfiability Difficult Problems Dealing with SAT Implementation Klaus Sutner Carnegie Mellon University 2020/02/04 Finding Hard Problems 2 Entscheidungsproblem to the Rescue 3 The Entscheidungsproblem is solved when one knows a pro- cedure by which one can decide in a finite number of operations So where would be look for hard problems, something that is eminently whether a given logical expression is generally valid or is satis- decidable but appears to be outside of P? And, we’d like the problem to fiable. The solution of the Entscheidungsproblem is of funda- be practical, not some monster from CRT. mental importance for the theory of all fields, the theorems of which are at all capable of logical development from finitely many The Circuit Value Problem is a good indicator for the right direction: axioms. evaluating Boolean expressions is polynomial time, but relatively difficult D. Hilbert within P. So can we push CVP a little bit to force it outside of P, just a little bit? In a sense, [the Entscheidungsproblem] is the most general Say, up into EXP1? problem of mathematics. J. Herbrand Exploiting Difficulty 4 Scaling Back 5 Herbrand is right, of course. As a research project this sounds like a Taking a clue from CVP, how about asking questions about Boolean fiasco. formulae, rather than first-order? But: we can turn adversity into an asset, and use (some version of) the Probably the most natural question that comes to mind here is Entscheidungsproblem as the epitome of a hard problem. Is ϕ(x1, . , xn) a tautology? The original Entscheidungsproblem would presumable have included arbitrary first-order questions about number theory.
    [Show full text]
  • Variable-Arity Generic Interfaces
    Variable-Arity Generic Interfaces T. Stephen Strickland, Richard Cobbe, and Matthias Felleisen College of Computer and Information Science Northeastern University Boston, MA 02115 [email protected] Abstract. Many programming languages provide variable-arity func- tions. Such functions consume a fixed number of required arguments plus an unspecified number of \rest arguments." The C++ standardiza- tion committee has recently lifted this flexibility from terms to types with the adoption of a proposal for variable-arity templates. In this paper we propose an extension of Java with variable-arity interfaces. We present some programming examples that can benefit from variable-arity generic interfaces in Java; a type-safe model of such a language; and a reduction to the core language. 1 Introduction In April of 2007 the C++ standardization committee adopted Gregor and J¨arvi's proposal [1] for variable-length type arguments in class templates, which pre- sented the idea and its implementation but did not include a formal model or soundness proof. As a result, the relevant constructs will appear in the upcom- ing C++09 draft. Demand for this feature is not limited to C++, however. David Hall submitted a request for variable-arity type parameters for classes to Sun in 2005 [2]. For an illustration of the idea, consider the remarks on first-class functions in Scala [3] from the language's homepage. There it says that \every function is a value. Scala provides a lightweight syntax for defining anonymous functions, it supports higher-order functions, it allows functions to be nested, and supports currying." To achieve this integration of objects and closures, Scala's standard library pre-defines ten interfaces (traits) for function types, which we show here in Java-like syntax: interface Function0<Result> { Result apply(); } interface Function1<Arg1,Result> { Result apply(Arg1 a1); } interface Function2<Arg1,Arg2,Result> { Result apply(Arg1 a1, Arg2 a2); } ..
    [Show full text]
  • Problems and Comments on Boolean Algebras Rosen, Fifth Edition: Chapter 10; Sixth Edition: Chapter 11 Boolean Functions
    Problems and Comments on Boolean Algebras Rosen, Fifth Edition: Chapter 10; Sixth Edition: Chapter 11 Boolean Functions Section 10. 1, Problems: 1, 2, 3, 4, 10, 11, 29, 36, 37 (fifth edition); Section 11.1, Problems: 1, 2, 5, 6, 12, 13, 31, 40, 41 (sixth edition) The notation ""forOR is bad and misleading. Just think that in the context of boolean functions, the author uses instead of ∨.The integers modulo 2, that is ℤ2 0,1, have an addition where 1 1 0 while 1 ∨ 1 1. AsetA is partially ordered by a binary relation ≤, if this relation is reflexive, that is a ≤ a holds for every element a ∈ S,it is transitive, that is if a ≤ b and b ≤ c hold for elements a,b,c ∈ S, then one also has that a ≤ c, and ≤ is anti-symmetric, that is a ≤ b and b ≤ a can hold for elements a,b ∈ S only if a b. The subsets of any set S are partially ordered by set inclusion. that is the power set PS,⊆ is a partially ordered set. A partial ordering on S is a total ordering if for any two elements a,b of S one has that a ≤ b or b ≤ a. The natural numbers ℕ,≤ with their ordinary ordering are totally ordered. A bounded lattice L is a partially ordered set where every finite subset has a least upper bound and a greatest lower bound.The least upper bound of the empty subset is defined as 0, it is the smallest element of L.
    [Show full text]
  • Small Hitting-Sets for Tiny Arithmetic Circuits Or: How to Turn Bad Designs Into Good
    Electronic Colloquium on Computational Complexity, Report No. 35 (2017) Small hitting-sets for tiny arithmetic circuits or: How to turn bad designs into good Manindra Agrawal ∗ Michael Forbes† Sumanta Ghosh ‡ Nitin Saxena § Abstract Research in the last decade has shown that to prove lower bounds or to derandomize polynomial identity testing (PIT) for general arithmetic circuits it suffices to solve these questions for restricted circuits. In this work, we study the smallest possibly restricted class of circuits, in particular depth-4 circuits, which would yield such results for general circuits (that is, the complexity class VP). We show that if we can design poly(s)-time hitting-sets for Σ ∧a ΣΠO(log s) circuits of size s, where a = ω(1) is arbitrarily small and the number of variables, or arity n, is O(log s), then we can derandomize blackbox PIT for general circuits in quasipolynomial time. Further, this establishes that either E6⊆#P/poly or that VP6=VNP. We call the former model tiny diagonal depth-4. Note that these are merely polynomials with arity O(log s) and degree ω(log s). In fact, we show that one only needs a poly(s)-time hitting-set against individual-degree a′ = ω(1) polynomials that are computable by a size-s arity-(log s) ΣΠΣ circuit (note: Π fanin may be s). Alternatively, we claim that, to understand VP one only needs to find hitting-sets, for depth-3, that have a small parameterized complexity. Another tiny family of interest is when we restrict the arity n = ω(1) to be arbitrarily small.
    [Show full text]
  • Making a Faster Curry with Extensional Types
    Making a Faster Curry with Extensional Types Paul Downen Simon Peyton Jones Zachary Sullivan Microsoft Research Zena M. Ariola Cambridge, UK University of Oregon [email protected] Eugene, Oregon, USA [email protected] [email protected] [email protected] Abstract 1 Introduction Curried functions apparently take one argument at a time, Consider these two function definitions: which is slow. So optimizing compilers for higher-order lan- guages invariably have some mechanism for working around f1 = λx: let z = h x x in λy:e y z currying by passing several arguments at once, as many as f = λx:λy: let z = h x x in e y z the function can handle, which is known as its arity. But 2 such mechanisms are often ad-hoc, and do not work at all in higher-order functions. We show how extensional, call- It is highly desirable for an optimizing compiler to η ex- by-name functions have the correct behavior for directly pand f1 into f2. The function f1 takes only a single argu- expressing the arity of curried functions. And these exten- ment before returning a heap-allocated function closure; sional functions can stand side-by-side with functions native then that closure must subsequently be called by passing the to practical programming languages, which do not use call- second argument. In contrast, f2 can take both arguments by-name evaluation. Integrating call-by-name with other at once, without constructing an intermediate closure, and evaluation strategies in the same intermediate language ex- this can make a huge difference to run-time performance in presses the arity of a function in its type and gives a princi- practice [Marlow and Peyton Jones 2004].
    [Show full text]
  • Lambda-Calculus Types and Models
    Jean-Louis Krivine LAMBDA-CALCULUS TYPES AND MODELS Translated from french by René Cori To my daughter Contents Introduction5 1 Substitution and beta-conversion7 Simple substitution ..............................8 Alpha-equivalence and substitution ..................... 12 Beta-conversion ................................ 18 Eta-conversion ................................. 24 2 Representation of recursive functions 29 Head normal forms .............................. 29 Representable functions ............................ 31 Fixed point combinators ........................... 34 The second fixed point theorem ....................... 37 3 Intersection type systems 41 System D­ ................................... 41 System D .................................... 50 Typings for normal terms ........................... 54 4 Normalization and standardization 61 Typings for normalizable terms ........................ 61 Strong normalization ............................. 68 ¯I-reduction ................................. 70 The ¸I-calculus ................................ 72 ¯´-reduction ................................. 74 The finite developments theorem ....................... 77 The standardization theorem ......................... 81 5 The Böhm theorem 87 3 4 CONTENTS 6 Combinatory logic 95 Combinatory algebras ............................. 95 Extensionality axioms ............................. 98 Curry’s equations ............................... 101 Translation of ¸-calculus ........................... 105 7 Models of lambda-calculus 111 Functional
    [Show full text]