Newtonian Program Analysis: Solving Sharir and Pnueli s Equations
|
|
- Antony O’Neal’
- 5 years ago
- Views:
Transcription
1 Newtonian Program Analysis: Solving Sharir and Pnueli s Equations Javier Esparza Technische Universität München Joint work with Stefan Kiefer and Michael Luttenberger
2
3
4 From programs to equations: Intraprocedural x > 0 x = 0 x x + 1 x < 10 x 10
5 From programs to equations: Intraprocedural c Y a d X b One-step relations a,..., e (IN IN) c = {(x, x + 1) x 0} Big-step relations X, Y, Z IN IN Z e X Y = a Y + b = c Z Z = d Y + e
6 From programs to equations: Intraprocedural c Y a d X b One-step relations a,..., e (IN IN) c = {(x, x + 1) x 0} Big-step relation X IN IN Z e X Y = a Y + b = c Z Z = d Y + e
7 From programs to equations: Intraprocedural c Y a d X b One-step relations a,..., e (IN IN) c = {(x, x + 1) x 0} Big-step relations X, Y, Z IN IN Z e X Y = a Y + b = c Z Z = d Y + e
8 From programs to equations: Intraprocedural c Y a d X b One-step relations a,..., e (IN IN) c = {(x, x + 1) x 0} Big-step relations X, Y, Z IN IN Z e X Y = a Y + b = c Z Z = d Y + e
9 From programs to equations: Intraprocedural Program system X = f (X) of linear fixed-point equations Least solution non-computable in general Program analysis: domain 2 IN abstract domain D transformer f abstract transformer f # Sufficient condition for existence of least solution: (D, +, ) is a (ω-continuous) semiring
10 From programs to equations: Intraprocedural Program system X = f (X) of linear fixed-point equations Least solution non-computable in general Program analysis: domain 2 IN abstract domain D transformer f abstract transformer f # Sufficient condition for existence of least solution: (D, +, ) is a (ω-continuous) semiring
11 From programs to equations: Intraprocedural Program system X = f (X) of linear fixed-point equations Least solution non-computable in general Program analysis: domain 2 IN abstract domain D transformer f abstract transformer f # Sufficient condition for existence of least solution: (D, +, ) is a (ω-continuous) semiring
12 From programs to equations: Intraprocedural Program system X = f (X) of linear fixed-point equations Least solution non-computable in general Program analysis: domain 2 IN abstract domain D transformer f abstract transformer f # Sufficient condition for existence of least solution: (D, +, ) is a (ω-continuous) semiring
13 Quantitative program analysis: Expected time X 0.7 Y X = 0.7 Y Y = Z + 1 Z Z = 0.6 Y
14 From programs to equations: Interprocedural P Q x > 0 x = 0 x < 3 x 3 call Q x < 10 call Q call P x 10 x x 2
15 From programs to equations: Interprocedural P Q P 0 a e Q 0 f P 0 = a P 1 + b P 1 =?? P 2 P 1 Q 1 Q 2 P 2 = c P 1 + d call Q c b call Q call P Q 0 = e Q 1 + f Q 2 P 2 d g Q 3 Q 1 =?? Q 3 Q 2 =?? Q 3 Q 3 = g
16 From programs to equations: Interprocedural P Q P 0 = a P 1 + b P 0 Q 0 P 1 =?? P 2 a e f P 2 = c P 1 + d P 1 Q 1 Q 2 Q 0 = e Q 1 + f Q 2 call Q c b call Q call P Q 1 =?? Q 3 P 2 d g Q 3 Q 2 =?? Q 3 Q 3 = g
17 Sharir and Pnueli s functional approach P Q P 0 a e Q 0 f P 0 = a P 1 + b Q 0 P 1 = Q 0 P 2 P 2 = c P 1 + d P 1 Q 1 Q 2 Q 0 = e Q 1 + f Q 2 call Q c b call Q call P Q 1 =?? Q 3 P 2 d g Q 3 Q 2 =?? Q 3 Q 3 = g
18 Sharir and Pnueli s functional approach P Q P 0 a e Q 0 f P 0 = a P 1 + b Q 0 P 1 = Q 0 P 2 P 2 = c P 1 + d P 1 Q 1 Q 2 Q 0 = e Q 1 + f Q 2 call Q c b call Q call P Q 0 Q 1 =?? Q 3 P 2 d g Q 3 Q 2 =?? Q 3 Q 3 = g
19 Sharir and Pnueli s functional approach P Q P 0 a e Q 0 f P 0 = a P 1 + b Q 0 P 1 = Q 0 P 2 P 2 = c P 1 + d P 1 Q 1 Q 2 Q 0 = e Q 1 + f Q 2 call Q c b call Q call P Q 0 Q 1 =?? Q 3 P 2 d g Q 3 Q 2 =?? Q 3 Q 3 = g P 0
20 Sharir and Pnueli s interprocedural equations Program system X = f (X) of polynomial, non-linear fixed-point equations Least solution non-computable in general Program analysis: domain 2 IN abstract domain D transformer f abstract transformer f # Sufficient condition for existence of least solution: (D, +, ) is a (ω-continuous) semiring
21 Sharir and Pnueli s interprocedural equations Program system X = f (X) of polynomial, non-linear fixed-point equations Least solution non-computable in general Program analysis: domain 2 IN abstract domain D transformer f abstract transformer f # Sufficient condition for existence of least solution: (D, +, ) is a (ω-continuous) semiring
22 Solving the equations: Kleene iteration Theorem [Kleene]: The least solution µf of X = f (X) is the supremum of {k i } i 0, where k 0 = f (0) k i+1 = f (k i ) Basic algorithm: compute k 0, k 1, k 2,... until either k i = k i+1, which implies k i = µf, or the approximation is considered adequate.
23 Kleene iteration is slow Set domains: Kleene iteration never terminates for X = f (X) if least solution µf is an infinite set. X = a X + b µf = a b Kleene approximants are finite sets: k i = (ɛ + a a i )b Probabilistic interpretation: convergence can be very slow for polynomial equations [EY STACS05]. X = 1 2 X µf = 1 = Logarithmic convergence : k iterations to get log k bits of accuracy. k n 1 1 n + 1 k 2000 =
24 Kleene Iteration for X = f (X) (univariate case) µf f (X)
25 Kleene Iteration for X = f (X) (univariate case) µf f (X)
26 Kleene Iteration for X = f (X) (univariate case) µf f (X)
27 Kleene Iteration for X = f (X) (univariate case) µf f (X)
28 Kleene Iteration for X = f (X) (univariate case) µf f (X)
29 Kleene Iteration for X = f (X) (univariate case) µf f (X)
30 Kleene Iteration for X = f (X) (univariate case) µf f (X)
31 Kleene Iteration for X = f (X) (univariate case) µf f (X)
32 Newton s Method for X = f (X) (univariate case) µf f (X)
33 Newton s Method for X = f (X) (univariate case) µf f (X)
34 Newton s Method for X = f (X) (univariate case) µf f (X)
35 Newton s Method for X = f (X) (univariate case) µf f (X)
36 Newton s Method for X = f (X) (univariate case) µf f (X)
37 Newton s Method for X = f (X) (univariate case) µf f (X)
38 Kleene vs. Newton Program analysis: Kleene iteration is applicable to arbitrary ω-continuous semirings... but converges slowly. Numerical mathematics: Newton s Method converges fast... but can only be applied to the real field Can Newton s method be generalized to arbitrary ω-continuous semirings?
39 Kleene vs. Newton Program analysis: Kleene iteration is applicable to arbitrary ω-continuous semirings... but converges slowly. Numerical mathematics: Newton s Method converges fast... but can only be applied to the real field Can Newton s method be generalized to arbitrary ω-continuous semirings?
40 Mathematical formulation of Newton s Method Elementary analysis yields for the i-th Newton iterant ν i : ν 0 = 0 ν i+1 = ν i + i where i least solution of X = Df νi (X) + f (ν i ) ν i Df νi (X) differential of f (X) at the point ν i
41 Generalizing Newton s method Key point: generalize X = Df ν (X) + f (ν) ν to arbitrary ω-continuous semirings In an arbitrary ω-continuous semiring neither the differential Df ν (X), nor the difference f (ν) ν are defined.
42 Overcoming the obstacles (1) Use the algebraic definition of differential (recall that we only have polynomial functions!) 0 if f (X) = c X if f (X) = X Df (X) = Dg(X) + Dh(X) if f (X) = g(x) + h(x) Dg(X) h(x) + g(x) Dh(X) if f (X) = g(x) h(x) (2) Replace f (ν i ) ν i by any δ i such that f (ν i ) = ν i + δ i Define i as the least solution of X = Df νi (X) + δ i
43 Idempotent and commutative semirings Theorem [Hopkins-Kozen LICS 99]: The least fixed point of a system X = f (X) of n equations over an idempotent and commutative ω-continuous semiring is reached by the sequence ν 0 = f (0) ν i+1 = J(ν i ) f (ν i ) after at most O(3 n ) iterations. Theorem: This is exactly Newton s sequence. Moreover, the fixed point is reached after at most n iterations.
44 Idempotent and commutative semirings Theorem [Hopkins-Kozen LICS 99]: The least fixed point of a system X = f (X) of n equations over an idempotent and commutative ω-continuous semiring is reached by the sequence ν 0 = f (0) ν i+1 = J(ν i ) f (ν i ) after at most O(3 n ) iterations. Theorem: This is exactly Newton s sequence. Moreover, the fixed point is reached after at most n iterations.
45 Two (quick) examples of application
46 May-Alias Analysis listify(): transforms a binary tree of pointers into a list of pointers by reading the tree in preorder. void listifyl() { void listify() { T.move left(); L.push back(t get data()); listify(); if( T.is leaf() == false ) { T.move up(); listifyl(); listifyr(); } } }
47 May-Alias Analysis
48 May-Alias Analysis
49 May-Alias Analysis Which data access paths of tree and list may point to the same element? Access path of the tree: word w 1 {left, right} Access path of the list: word w 2 {next} May-alias information: set of pairs (w 1, w 2 ) such that w 1, w 2 may point to the same cell Commutative abstraction: (left right left, next next) (3, 1, 2)
50 May-Alias Analysis Kleene iteration does not terminate. Newton s method terminates after one iteration and provides the following information: Data access paths with 0 right s and l left s may only be aliased to the l-th element of the list. Data access paths with r right s and l left s may only be aliased to the (2r + l)-th element of the list, or to larger elements of the same parity.
51 Lazy evaluation of And-Or trees Nodes are only constructed and evaluated (to 0 or 1) if needed. (e.g., if left subtree of And-node evaluates to 1, right subtree is not constructed) function And(node) if node.leaf() then return node.value() else v := Or(node.left) if v = 0 then return 0 else return Or(node.right) function Or(node) if node.leaf() then return node.value() else v := And(node.left) if v = 1 then return 1 else return And(node.right)
52 Assume the probabilities that node.leaf() returns true and node.value() returns 1 are both 1/2. We perform an analysis to compute the average runtime.
53 Kleene vs. Newton Neither Kleene nor Newton terminate, but Newton converges faster: i k (i) And 0 ν (i) And 0 k (i) And 1 ν (i) And
54 Messages of this talk The theory of solving program analysis equations is not be as well understood as we thought. We can learn from numerical mathematics and contribute to it. Go for unified theory of qualitative and quantitative program analysis.
55 Commenting the works...
56 ... of the giants
57 And yet... The glosses of Saint Emilianus, written around 1000 AC. Oldest writing in (a form of) Spanish, one of the most spoken languages in the world.
58 Shimon Even, Amir Pnueli,
Newtonian Program Analysis
Newtonian Program Analysis Javier Esparza Technische Universität München Joint work with Stefan Kiefer and Michael Luttenberger From programs to flowgraphs proc X 1 proc X 2 proc X 3 a c d f X 1 b
More informationNewtonian Program Analysis
Newtonian Program Analysis Javier Esparza, Stefan Kiefer, and Michael Luttenberger Institut für Informatik, Technische Universität München, 85748 Garching, Germany {esparza,kiefer,luttenbe}@model.in.tum.de
More informationOn Fixed Point Equations over Commutative Semirings
On Fixed Point Equations over Commutative Semirings Javier Esparza, Stefan Kiefer, and Michael Luttenberger Universität Stuttgart Institute for Formal Methods in Computer Science Stuttgart, Germany {esparza,kiefersn,luttenml}@informatik.uni-stuttgart.de
More informationSolving fixed-point equations over semirings
Solving fixed-point equations over semirings Javier Esparza Technische Universität München Joint work with Michael Luttenberger and Maximilian Schlund Fixed-point equations We study systems of equations
More informationAn Extension of Newton s Method to ω-continuous Semirings
An Extension of Newton s Method to ω-continuous Semirings Javier Esparza, Stefan Kiefer, and Michael Luttenberger Institute for Formal Methods in Computer Science Universität Stuttgart, Germany {esparza,kiefersn,luttenml}@informatik.uni-stuttgart.de
More informationProgram Analyses using Newton s Method
Program Analyses using Newton s Method (Invited Paper) 1,2 Thomas Reps 1 University of Wisconsin; Madison, WI, USA 2 GrammaTech, Inc.; Ithaca, NY, USA Abstract. Esparza et al. generalized Newton s method
More informationInterprocedural Dataflow Analysis, Part III: Newtonian Program Analysis Via Tensor Product CS701
Interprocedural Dataflow Analysis, Part III: Newtonian Program Analysis Via Tensor Product CS701 Thomas Reps Abstract In this lecture, we summarize the interprocedural-dataflow-analysis method of Esparza
More informationA CS look at stochastic branching processes
A computer science look at stochastic branching processes T. Brázdil J. Esparza S. Kiefer M. Luttenberger Technische Universität München For Thiagu, December 2008 Back in victorian Britain... There was
More informationProblem. Problem Given a dictionary and a word. Which page (if any) contains the given word? 3 / 26
Binary Search Introduction Problem Problem Given a dictionary and a word. Which page (if any) contains the given word? 3 / 26 Strategy 1: Random Search Randomly select a page until the page containing
More informationIntroduction to Kleene Algebras
Introduction to Kleene Algebras Riccardo Pucella Basic Notions Seminar December 1, 2005 Introduction to Kleene Algebras p.1 Idempotent Semirings An idempotent semiring is a structure S = (S, +,, 1, 0)
More informationFPsolve: A Generic Solver for Fixpoint Equations over Semirings
FPsolve: A Generic Solver for Fixpoint Equations over Semirings Javier Esparza, Michael Luttenberger, and Maximilian Schlund Technische Universität München, {esparza,luttenbe,schlund}@in.tum.de Abstract.
More informationKleene Algebra and Arden s Theorem. Anshul Kumar Inzemamul Haque
Kleene Algebra and Arden s Theorem Anshul Kumar Inzemamul Haque Motivation Regular Expression is a Kleene Algebra. We can use the properties and theorems of Kleene Algebra to simplify regular expressions
More informationBinary Search Trees. Motivation
Binary Search Trees Motivation Searching for a particular record in an unordered list takes O(n), too slow for large lists (databases) If the list is ordered, can use an array implementation and use binary
More informationAn Overview of Residuated Kleene Algebras and Lattices Peter Jipsen Chapman University, California. 2. Background: Semirings and Kleene algebras
An Overview of Residuated Kleene Algebras and Lattices Peter Jipsen Chapman University, California 1. Residuated Lattices with iteration 2. Background: Semirings and Kleene algebras 3. A Gentzen system
More informationR ij = 2. Using all of these facts together, you can solve problem number 9.
Help for Homework Problem #9 Let G(V,E) be any undirected graph We want to calculate the travel time across the graph. Think of each edge as one resistor of 1 Ohm. Say we have two nodes: i and j Let the
More informationConvergence Thresholds of Newton s Method for Monotone Polynomial Equations
Convergence Thresholds of Newton s Method for Monotone Polynomial Equations Javier Esparza, Stefan Kiefer, Michael Luttenberger To cite this version: Javier Esparza, Stefan Kiefer, Michael Luttenberger.
More informationChapter 5 The Witness Reduction Technique
Outline Chapter 5 The Technique Luke Dalessandro Rahul Krishna December 6, 2006 Outline Part I: Background Material Part II: Chapter 5 Outline of Part I 1 Notes On Our NP Computation Model NP Machines
More informationCharacterizing the Equational Theory
Introduction to Kleene Algebra Lecture 4 CS786 Spring 2004 February 2, 2004 Characterizing the Equational Theory Most of the early work on Kleene algebra was directed toward characterizing the equational
More informationAxioms of Kleene Algebra
Introduction to Kleene Algebra Lecture 2 CS786 Spring 2004 January 28, 2004 Axioms of Kleene Algebra In this lecture we give the formal definition of a Kleene algebra and derive some basic consequences.
More informationCPSC 467: Cryptography and Computer Security
CPSC 467: Cryptography and Computer Security Michael J. Fischer Lecture 9 September 30, 2015 CPSC 467, Lecture 9 1/47 Fast Exponentiation Algorithms Number Theory Needed for RSA Elementary Number Theory
More information3.1 Introduction. Solve non-linear real equation f(x) = 0 for real root or zero x. E.g. x x 1.5 =0, tan x x =0.
3.1 Introduction Solve non-linear real equation f(x) = 0 for real root or zero x. E.g. x 3 +1.5x 1.5 =0, tan x x =0. Practical existence test for roots: by intermediate value theorem, f C[a, b] & f(a)f(b)
More informationComplexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler
Complexity Theory Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 15 May, 2018 Reinhard
More informationOutline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181.
Complexity Theory Complexity Theory Outline Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität
More informationMore Asymptotic Analysis Spring 2018 Discussion 8: March 6, 2018
CS 61B More Asymptotic Analysis Spring 2018 Discussion 8: March 6, 2018 Here is a review of some formulas that you will find useful when doing asymptotic analysis. ˆ N i=1 i = 1 + 2 + 3 + 4 + + N = N(N+1)
More informationCompositional Recurrence Analysis Revisited
Compositional Recurrence Analysis Revisited Zachary Kincaid Princeton Univ., USA zkincaid@cs.princeton.edu Jason Breck Ashkan Forouhi Boroujeni Univ. of Wisconsin, USA {jbreck,ashkanfb@cs.wisc.edu Thomas
More informationCS 395T Computational Learning Theory. Scribe: Mike Halcrow. x 4. x 2. x 6
CS 395T Computational Learning Theory Lecture 3: September 0, 2007 Lecturer: Adam Klivans Scribe: Mike Halcrow 3. Decision List Recap In the last class, we determined that, when learning a t-decision list,
More informationTwo Approaches to Interprocedural Data Flow Analysis
Two Approaches to Interprocedural Data Flow Analysis Micha Sharir Amir Pnueli Part one: The Functional Approach 12.06.2010 Klaas Boesche Intraprocedural analysis procedure main read a, b procedure p if
More informationCalculus. Central role in much of modern science Physics, especially kinematics and electrodynamics Economics, engineering, medicine, chemistry, etc.
Calculus Calculus - the study of change, as related to functions Formally co-developed around the 1660 s by Newton and Leibniz Two main branches - differential and integral Central role in much of modern
More informationCMPUT 675: Approximation Algorithms Fall 2014
CMPUT 675: Approximation Algorithms Fall 204 Lecture 25 (Nov 3 & 5): Group Steiner Tree Lecturer: Zachary Friggstad Scribe: Zachary Friggstad 25. Group Steiner Tree In this problem, we are given a graph
More informationFlow grammars a flow analysis methodology
Flow grammars a flow analysis methodology James S. Uhl and R. Nigel Horspool Dept. of Computer Science, University of Victoria P.O. Box 3055, Victoria, BC, Canada V8W 3P6 E-mail: juhl@csr.uvic.ca, nigelh@csr.uvic.ca
More informationCompositional Recurrence Analysis Revisited
4/7/2017 aec badge pldi.svg file:///c:/users/reps/documents/papers/submissions/newtoncra/aec badge pldi.svg 1/1 Compositional Recurrence Analysis Revisited * PLDI * Artifact Consistent * Complete * Well
More informationChapter 1. Root Finding Methods. 1.1 Bisection method
Chapter 1 Root Finding Methods We begin by considering numerical solutions to the problem f(x) = 0 (1.1) Although the problem above is simple to state it is not always easy to solve analytically. This
More informationAlgorithms and Theory of Computation. Lecture 2: Big-O Notation Graph Algorithms
Algorithms and Theory of Computation Lecture 2: Big-O Notation Graph Algorithms Xiaohui Bei MAS 714 August 14, 2018 Nanyang Technological University MAS 714 August 14, 2018 1 / 20 O, Ω, and Θ Nanyang Technological
More informationBounded-width QBF is PSPACE-complete
Bounded-width QBF is PSPACE-complete Albert Atserias Universitat Politècnica de Catalunya Barcelona, Spain atserias@lsi.upc.edu Sergi Oliva Universitat Politècnica de Catalunya Barcelona, Spain oliva@lsi.upc.edu
More informationEECS 229A Spring 2007 * * (a) By stationarity and the chain rule for entropy, we have
EECS 229A Spring 2007 * * Solutions to Homework 3 1. Problem 4.11 on pg. 93 of the text. Stationary processes (a) By stationarity and the chain rule for entropy, we have H(X 0 ) + H(X n X 0 ) = H(X 0,
More informationAlgorithms and Their Complexity
CSCE 222 Discrete Structures for Computing David Kebo Houngninou Algorithms and Their Complexity Chapter 3 Algorithm An algorithm is a finite sequence of steps that solves a problem. Computational complexity
More informationExponential and logarithm functions
ucsc supplementary notes ams/econ 11a Exponential and logarithm functions c 2010 Yonatan Katznelson The material in this supplement is assumed to be mostly review material. If you have never studied exponential
More informationCompleteness of Star-Continuity
Introduction to Kleene Algebra Lecture 5 CS786 Spring 2004 February 9, 2004 Completeness of Star-Continuity We argued in the previous lecture that the equational theory of each of the following classes
More informationNotes for Lecture 11
Stanford University CS254: Computational Complexity Notes 11 Luca Trevisan 2/11/2014 Notes for Lecture 11 Circuit Lower Bounds for Parity Using Polynomials In this lecture we prove a lower bound on the
More informationSolving Monotone Polynomial Equations
Solving Monotone Polynomial Equations Javier Esparza, Stean Kieer, and Michael Luttenberger Institut ür Inormatik, Technische Universität München, 85748 Garching, Germany {esparza,kieer,luttenbe}@in.tum.de
More informationarxiv: v1 [cs.fl] 2 Oct 2018
The Parikh Property for Weighted Context-Free Grammars Pierre Ganty IMDEA Software Institute, Madrid, Spain pierre.ganty@imdea.org Elena Gutiérrez IMDEA Software Institute, Madrid, Spain Universidad Politécnica
More informationProvenance Semirings. Todd Green Grigoris Karvounarakis Val Tannen. presented by Clemens Ley
Provenance Semirings Todd Green Grigoris Karvounarakis Val Tannen presented by Clemens Ley place of origin Provenance Semirings Todd Green Grigoris Karvounarakis Val Tannen presented by Clemens Ley place
More informationIs g one-to-one? Is g onto? Why? Solution: g is not one-to-one, since for c A, g(b) = g(c) = c. g is not onto, since a / g(a).
Discrete Structures: Exam 2 Solutions to Sample Questions, 1. Let A = B = {a, b, c}. Consider the relation g = {(a, b), (b, c), (c, c)}. Is g one-to-one? Is g onto? Why? Solution: g is not one-to-one,
More informationM17 MAT25-21 HOMEWORK 6
M17 MAT25-21 HOMEWORK 6 DUE 10:00AM WEDNESDAY SEPTEMBER 13TH 1. To Hand In Double Series. The exercises in this section will guide you to complete the proof of the following theorem: Theorem 1: Absolute
More informationNotes for Lecture Notes 2
Stanford University CS254: Computational Complexity Notes 2 Luca Trevisan January 11, 2012 Notes for Lecture Notes 2 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation
More informationNotes on Machine Learning for and
Notes on Machine Learning for 16.410 and 16.413 (Notes adapted from Tom Mitchell and Andrew Moore.) Learning = improving with experience Improve over task T (e.g, Classification, control tasks) with respect
More informationLinear Discrimination Functions
Laurea Magistrale in Informatica Nicola Fanizzi Dipartimento di Informatica Università degli Studi di Bari November 4, 2009 Outline Linear models Gradient descent Perceptron Minimum square error approach
More informationINF2220: algorithms and data structures Series 1
Universitetet i Oslo Institutt for Informatikk I. Yu, D. Karabeg INF2220: algorithms and data structures Series 1 Topic Function growth & estimation of running time, trees (Exercises with hints for solution)
More information30 Classification of States
30 Classification of States In a Markov chain, each state can be placed in one of the three classifications. 1 Since each state falls into one and only one category, these categories partition the states.
More information1 Alphabets and Languages
1 Alphabets and Languages Look at handout 1 (inference rules for sets) and use the rules on some examples like {a} {{a}} {a} {a, b}, {a} {{a}}, {a} {{a}}, {a} {a, b}, a {{a}}, a {a, b}, a {{a}}, a {a,
More informationA first order divided difference
A first order divided difference For a given function f (x) and two distinct points x 0 and x 1, define f [x 0, x 1 ] = f (x 1) f (x 0 ) x 1 x 0 This is called the first order divided difference of f (x).
More informationSolutions or answers to Final exam in Error Control Coding, October 24, G eqv = ( 1+D, 1+D + D 2)
Solutions or answers to Final exam in Error Control Coding, October, Solution to Problem a) G(D) = ( +D, +D + D ) b) The rate R =/ and ν i = ν = m =. c) Yes, since gcd ( +D, +D + D ) =+D + D D j. d) An
More informationAlgorithms 2/6/2018. Algorithms. Enough Mathematical Appetizers! Algorithm Examples. Algorithms. Algorithm Examples. Algorithm Examples
Enough Mathematical Appetizers! Algorithms What is an algorithm? Let us look at something more interesting: Algorithms An algorithm is a finite set of precise instructions for performing a computation
More informationCS Communication Complexity: Applications and New Directions
CS 2429 - Communication Complexity: Applications and New Directions Lecturer: Toniann Pitassi 1 Introduction In this course we will define the basic two-party model of communication, as introduced in the
More informationChapter 4: Computation tree logic
INFOF412 Formal verification of computer systems Chapter 4: Computation tree logic Mickael Randour Formal Methods and Verification group Computer Science Department, ULB March 2017 1 CTL: a specification
More informationNotes for Lecture 25
U.C. Berkeley CS278: Computational Complexity Handout N25 ofessor Luca Trevisan 12/1/2004 Notes for Lecture 25 Circuit Lower Bounds for Parity Using Polynomials In this lecture we prove a lower bound on
More informationSpace-efficient scheduling of stochastically generated tasks
Space-efficient scheduling of stochastically generated tasks Tomáš Brázdil 1, Javier Esparza 2, Stefan Kiefer 3, and Michael Luttenberger 2 1 Faculty of Informatics, Masaryk University, Brno, Czech Republic
More informationCOMPSCI 650 Applied Information Theory Apr 5, Lecture 18. Instructor: Arya Mazumdar Scribe: Hamed Zamani, Hadi Zolfaghari, Fatemeh Rezaei
COMPSCI 650 Applied Information Theory Apr 5, 2016 Lecture 18 Instructor: Arya Mazumdar Scribe: Hamed Zamani, Hadi Zolfaghari, Fatemeh Rezaei 1 Correcting Errors in Linear Codes Suppose someone is to send
More informationROOT FINDING REVIEW MICHELLE FENG
ROOT FINDING REVIEW MICHELLE FENG 1.1. Bisection Method. 1. Root Finding Methods (1) Very naive approach based on the Intermediate Value Theorem (2) You need to be looking in an interval with only one
More informationTree Adjoining Grammars
Tree Adjoining Grammars TAG: Parsing and formal properties Laura Kallmeyer & Benjamin Burkhardt HHU Düsseldorf WS 2017/2018 1 / 36 Outline 1 Parsing as deduction 2 CYK for TAG 3 Closure properties of TALs
More informationd(ν) = max{n N : ν dmn p n } N. p d(ν) (ν) = ρ.
1. Trees; context free grammars. 1.1. Trees. Definition 1.1. By a tree we mean an ordered triple T = (N, ρ, p) (i) N is a finite set; (ii) ρ N ; (iii) p : N {ρ} N ; (iv) if n N + and ν dmn p n then p n
More informationFIXED POINT ITERATION
FIXED POINT ITERATION The idea of the fixed point iteration methods is to first reformulate a equation to an equivalent fixed point problem: f (x) = 0 x = g(x) and then to use the iteration: with an initial
More information1 Circuit Complexity. CS 6743 Lecture 15 1 Fall Definitions
CS 6743 Lecture 15 1 Fall 2007 1 Circuit Complexity 1.1 Definitions A Boolean circuit C on n inputs x 1,..., x n is a directed acyclic graph (DAG) with n nodes of in-degree 0 (the inputs x 1,..., x n ),
More informationExpectation propagation for symbol detection in large-scale MIMO communications
Expectation propagation for symbol detection in large-scale MIMO communications Pablo M. Olmos olmos@tsc.uc3m.es Joint work with Javier Céspedes (UC3M) Matilde Sánchez-Fernández (UC3M) and Fernando Pérez-Cruz
More informationDomain theory and denotational semantics of functional programming
Domain theory and denotational semantics of functional programming Martín Escardó School of Computer Science, Birmingham University MGS 2007, Nottingham, version of April 20, 2007 17:26 What is denotational
More information1 Differentiability at a point
Notes by David Groisser, Copyright c 2012 What does mean? These notes are intended as a supplement (not a textbook-replacement) for a class at the level of Calculus 3, but can be used in a higher-level
More informationCS 188 Introduction to Fall 2007 Artificial Intelligence Midterm
NAME: SID#: Login: Sec: 1 CS 188 Introduction to Fall 2007 Artificial Intelligence Midterm You have 80 minutes. The exam is closed book, closed notes except a one-page crib sheet, basic calculators only.
More informationAnnouncements. CompSci 102 Discrete Math for Computer Science. Chap. 3.1 Algorithms. Specifying Algorithms
CompSci 102 Discrete Math for Computer Science Announcements Read for next time Chap. 3.1-3.3 Homework 3 due Tuesday We ll finish Chapter 2 first today February 7, 2012 Prof. Rodger Chap. 3.1 Algorithms
More informationElliptic Curve Discrete Logarithm Problem
Elliptic Curve Discrete Logarithm Problem Vanessa VITSE Université de Versailles Saint-Quentin, Laboratoire PRISM October 19, 2009 Vanessa VITSE (UVSQ) Elliptic Curve Discrete Logarithm Problem October
More informationMath 262A Lecture Notes - Nechiporuk s Theorem
Math 6A Lecture Notes - Nechiporuk s Theore Lecturer: Sa Buss Scribe: Stefan Schneider October, 013 Nechiporuk [1] gives a ethod to derive lower bounds on forula size over the full binary basis B The lower
More information* 8 Groups, with Appendix containing Rings and Fields.
* 8 Groups, with Appendix containing Rings and Fields Binary Operations Definition We say that is a binary operation on a set S if, and only if, a, b, a b S Implicit in this definition is the idea that
More informationAn Algorithm better than AO*?
An Algorithm better than? Blai Bonet Universidad Simón Boĺıvar Caracas, Venezuela Héctor Geffner ICREA and Universitat Pompeu Fabra Barcelona, Spain 7/2005 An Algorithm Better than? B. Bonet and H. Geffner;
More informationApproximative Methods for Monotone Systems of min-max-polynomial Equations
Approximative Methods or Monotone Systems o min-max-polynomial Equations Javier Esparza, Thomas Gawlitza, Stean Kieer, and Helmut Seidl Institut ür Inormatik Technische Universität München, Germany {esparza,gawlitza,kieer,seidl}@in.tum.de
More informationBefore We Start. The Pumping Lemma. Languages. Context Free Languages. Plan for today. Now our picture looks like. Any questions?
Before We Start The Pumping Lemma Any questions? The Lemma & Decision/ Languages Future Exam Question What is a language? What is a class of languages? Context Free Languages Context Free Languages(CFL)
More informationGALOIS THEORY : LECTURE 4 LEO GOLDMAKHER
GALOIS THEORY : LECTURE 4 LEO GOLDMAKHER 1. A BRIEF REVIEW OF S n The rest of the lecture relies on familiarity with the symmetric group of n elements, denoted S n (this is the group of all permutations
More informationNotes for Lecture 15
U.C. Berkeley CS278: Computational Complexity Handout N15 Professor Luca Trevisan 10/27/2004 Notes for Lecture 15 Notes written 12/07/04 Learning Decision Trees In these notes it will be convenient to
More informationTime stealing: An adventure in tropical land
1/ 21 Time stealing: An adventure in tropical land Marianne Johnson Manchester, 16th November 2010 2/ 21 Time stealing: An adventure in tropical land For Dave on the occasion of his 60th Birthday (with
More informationExercises 1 - Solutions
Exercises 1 - Solutions SAV 2013 1 PL validity For each of the following propositional logic formulae determine whether it is valid or not. If it is valid prove it, otherwise give a counterexample. Note
More information2. As we shall see, we choose to write in terms of σ x because ( X ) 2 = σ 2 x.
Section 5.1 Simple One-Dimensional Problems: The Free Particle Page 9 The Free Particle Gaussian Wave Packets The Gaussian wave packet initial state is one of the few states for which both the { x } and
More information1. Prove: A full m- ary tree with i internal vertices contains n = mi + 1 vertices.
1. Prove: A full m- ary tree with i internal vertices contains n = mi + 1 vertices. Proof: Every vertex, except the root, is the child of an internal vertex. Since there are i internal vertices, each of
More informationREVIEW QUESTIONS. Chapter 1: Foundations: Sets, Logic, and Algorithms
REVIEW QUESTIONS Chapter 1: Foundations: Sets, Logic, and Algorithms 1. Why can t a Venn diagram be used to prove a statement about sets? 2. Suppose S is a set with n elements. Explain why the power set
More informationSome Remarks on Minimal Clones
ALGORITHMIC COMPLEXITY and UNIVERSAL ALGEBRA 2007. 7. 16. 7. 20. Szeged, Hungary Some Remarks on Minimal Clones Hajime MACHIDA (Tokyo) Joint Work with Michael PINSKER (Wien) ALGORITHMIC COMPLEXITY and
More information3. Algorithms. What matters? How fast do we solve the problem? How much computer resource do we need?
3. Algorithms We will study algorithms to solve many different types of problems such as finding the largest of a sequence of numbers sorting a sequence of numbers finding the shortest path between two
More informationAn analogy from Calculus: limits
COMP 250 Fall 2018 35 - big O Nov. 30, 2018 We have seen several algorithms in the course, and we have loosely characterized their runtimes in terms of the size n of the input. We say that the algorithm
More informationA CHARACTERIZATION OF LOCALLY FINITE VARIETIES THAT SATISFY A NONTRIVIAL CONGRUENCE IDENTITY
A CHARACTERIZATION OF LOCALLY FINITE VARIETIES THAT SATISFY A NONTRIVIAL CONGRUENCE IDENTITY KEITH A. KEARNES Abstract. We show that a locally finite variety satisfies a nontrivial congruence identity
More informationLecture 7: Quantum Fourier Transform over Z N
Quantum Computation (CMU 18-859BB, Fall 015) Lecture 7: Quantum Fourier Transform over Z September 30, 015 Lecturer: Ryan O Donnell Scribe: Chris Jones 1 Overview Last time, we talked about two main topics:
More informationCHAPTER 6. Differentiation
CHPTER 6 Differentiation The generalization from elementary calculus of differentiation in measure theory is less obvious than that of integration, and the methods of treating it are somewhat involved.
More informationIntroduction to Temporal Logic. The purpose of temporal logics is to specify properties of dynamic systems. These can be either
Introduction to Temporal Logic The purpose of temporal logics is to specify properties of dynamic systems. These can be either Desired properites. Often liveness properties like In every infinite run action
More informationCSCI 3110 Assignment 6 Solutions
CSCI 3110 Assignment 6 Solutions December 5, 2012 2.4 (4 pts) Suppose you are choosing between the following three algorithms: 1. Algorithm A solves problems by dividing them into five subproblems of half
More informationUniversität Augsburg
Universität Augsburg Properties of Overwriting for Updates in Typed Kleene Algebras Thorsten Ehm Report 2000-7 Dezember 2000 Institut für Informatik D-86135 Augsburg Copyright c Thorsten Ehm Institut für
More information1 Computational Problems
Stanford University CS254: Computational Complexity Handout 2 Luca Trevisan March 31, 2010 Last revised 4/29/2010 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation
More informationCS 6110 Lecture 21 The Fixed-Point Theorem 8 March 2013 Lecturer: Andrew Myers. 1 Complete partial orders (CPOs) 2 Least fixed points of functions
CS 6110 Lecture 21 The Fixed-Point Theorem 8 March 2013 Lecturer: Andrew Myers We saw that the semantics of the while command are a fixed point. We also saw that intuitively, the semantics are the limit
More informationSupplement. Algebraic Closure of a Field
Supplement: Algebraic Closure of a Field 1 Supplement. Algebraic Closure of a Field Note. In this supplement, we give some background material which is used in the proof of Fraleigh s Theorem 31.17/31.22
More informationMATH 4211/6211 Optimization Basics of Optimization Problems
MATH 4211/6211 Optimization Basics of Optimization Problems Xiaojing Ye Department of Mathematics & Statistics Georgia State University Xiaojing Ye, Math & Stat, Georgia State University 0 A standard minimization
More informationMonoidal Categories, Bialgebras, and Automata
Monoidal Categories, Bialgebras, and Automata James Worthington Mathematics Department Cornell University Binghamton University Geometry/Topology Seminar October 29, 2009 Background: Automata Finite automata
More informationPAC Learning. prof. dr Arno Siebes. Algorithmic Data Analysis Group Department of Information and Computing Sciences Universiteit Utrecht
PAC Learning prof. dr Arno Siebes Algorithmic Data Analysis Group Department of Information and Computing Sciences Universiteit Utrecht Recall: PAC Learning (Version 1) A hypothesis class H is PAC learnable
More informationLecture 16. Error-free variable length schemes (contd.): Shannon-Fano-Elias code, Huffman code
Lecture 16 Agenda for the lecture Error-free variable length schemes (contd.): Shannon-Fano-Elias code, Huffman code Variable-length source codes with error 16.1 Error-free coding schemes 16.1.1 The Shannon-Fano-Elias
More informationResearch Statement Christopher Hardin
Research Statement Christopher Hardin Brief summary of research interests. I am interested in mathematical logic and theoretical computer science. Specifically, I am interested in program logics, particularly
More informationSemirings for Breakfast
Semirings for Breakfast Marc Pouly marc.pouly@unifr.ch Interdisciplinary Center for Security, Reliability and Trust University of Luxembourg July 2010 Marc Pouly Semirings for Breakfast 1/ 27 Semirings
More informationThe maximum-subarray problem. Given an array of integers, find a contiguous subarray with the maximum sum. Very naïve algorithm:
The maximum-subarray problem Given an array of integers, find a contiguous subarray with the maximum sum. Very naïve algorithm: Brute force algorithm: At best, θ(n 2 ) time complexity 129 Can we do divide
More information