Automatic Abstraction for Congruences

Size: px
Start display at page:

Download "Automatic Abstraction for Congruences"

Transcription

1 A Story of Beauty and the Beast Portcullis Computer Security University of Melbourne

2 Structure of this talk Related work: Philippe Granger: Static Analysis of Linear Congruence Equalities among Variables of a Program, TAPSOFT, 1991! Markus Müller-Olm and Helmut Seidl: Analysis of Modular Arithmetic, TOPLAS, 2007 David Monniaux: Automatic Modular Abstractions for Linear Constraints, POPL, 2009 Björn Wachter and Lijun Zhang: Best Probabilistic Transformers, VMCAI, 2010? Heart of the technique: describe (abstract) a Boolean function with a system of congruences technique interleaves SAT solving and merge for congruences

3 Describing a function with congruence constraints Consider the function f = (c 0 c 0) (c 1 (c 1 c 0 )) where denotes exclusive or Observe that f is described by the congruence constraints: { s = } { = c 0 + c c 0 + c 2c 1 + 2c 0 + 2c c 0 + 2c c 0 + 2c 1 s describes f since every solution of f is a solution of s: c 0 c 1 c 0 c 1 c 0 + c c 1 + 2c 0 + 2c s f }

4 Finding a congruence system s that describes f 11 Find a solution to f, namely, the satisfying assignment: m 1 = {c 0 1, c 1 0, c 0 0, c 1 1} 12 Represent m 1 as a triangular system of congruences: c c s 1 = c c Construct a function g 1 that holds iff c does not hold: g 1 = (c 1 1)

5 Finding a congruence system s that describes f (cont ) 21 Find a solution to f g 1, namely, the satisfying assignment: m 2 = {c 0 1, c 1 1, c 0 0, c 1 0} 22 Represent m 2 as a system of congruence constraints s 2 : c c s 2 c = c c 0 and recall s = c c c c Merge s 2 and s 1 to obtain s 2 = c 1 + c c Construct a function g 2 that holds iff c does not hold: g 2 = (c 0 0)

6 Finding a congruence system s that describes f (cont ) 31 Find a solution to f g 2, namely, the satisfying assignment: m 3 = {c 0 0, c 1 0, c 0 1, c 1 0} 32 Represent m 3 as a system of congruence constraints s 3 : c c s 3 c = c 0 and recall s = c 1 + c 1 c c Merge s 3 and s 2 to obtain { c0 + c s 3 = 0 } 4 1 c 1 + c 0 + c Construct g 3 that holds iff c 1 + c 0 + c does not hold: g 3 = (t 0 c 1 c 0 ) (t 1 c 1 c 0 ) (t 0 c 1 t 0) (t 1 (c 1 t 0) t 1 ) ( t 0 t 1 )

7 Finding a congruence system s that describes f (cont ) 41 Find a solution to f g 3, namely, the satisfying assignment: m 4 = {c 0 0, c 1 1, c 0 1, c 1 1} 42 Represent m 4 as a system of congruence constraints s 4 : c s 4 c = c c Merge s 3 and s 4 to obtain s 4: { c0 + c s 4 = 0 } 4 1 2c 1 + 2c 0 + 2c Construct g 4 that holds iff c 1 + c 0 + c does not hold: g 4 = (c 1 c 0 c 1) 1

8 Finding a congruence system s that describes f (cont ) 51 Detect that f g 4 does not have a solution { c0 + c s 4 = c 1 + 2c 0 + 2c } 52 Construct g 5 that holds iff c 0 + c does not hold: g 5 = (t 0 c 1 c 0) (t 1 c 1 c 0) ( t 0 t 1 ) 53 Detect that f g 5 does not have a solution { c0 + c s 4 = } 2c 1 + 2c 0 + 2c 1 4 2

9 Summary of story so far The systems s 1, s 2, s 3, s 4 constitute an increasing chain of congruence constraints: The system si+1 has strictly more solutions than s i ; The maximal number of systems in chain is pn + 1 where 2 p = 4 is the modulo [TOPLAS, 2007] But does it scale? Depends on hardness of the SAT/SMT instance Depends on the join algorithm (needs to be inplace)

10 Parity example l 0 : p := 0; y := x; l 1 : while (y 0) y := y & (y 1); p := 1 - p; l 2 : skip Then t 1 = l 0, l 1, c 1, t 2 = l 1, l 1, c 2 and t 3 = l 1, l 2, c 3 where ( 15 i=0 p i 2 0) c 1 = ( 15 i=0 y i 2 x i ) ( 15 i=0 x i 2 x i ) ( 15 i=0 p i 2 p i ) p 0 + p 0 ( 2 1 c 3 = 15 i=0 x i 2 x i ) ( 15 i=1 p i 2 p i ) ( 15 i=0 y i 2 0) c 2 = ( 15 i=0 x i 2 x i ) ( 15 i=0 y i 2 0) y i=1 y i 15 2 i=0 y i

11 Bit reversal example l 0 : y := x; y := ((y 1) & 0x5555) ((y & 0x5555) 1); y := ((y 2) & 0x3333) ((y & 0x3333) 2); y := ((y 4) & 0x0F0F) ((y & 0x0F0F) 4); y := (y 8) (y 8); l 1 : skip Then t = l 0, l 1, c where c = 15 i=0 (x i 2 16 x i y 15 i 2 16 x i )

12 Bonus tracks Presented a new algorithm for congruence closure; Show how inequalities can be traced (see paper); l 0 : assume(0 < n); x := 0; y := 0; l 1 : while (x < n) y := y + 2; x := x + 1; l 2 : skip l 0 : assume(0 < n); x := 0; y := 0; δ := n x; l 1 : while (0 < δ) y := y + 2; x := x + 1; δ := n x; l 2 : skip Formulate the ideas with an unrestricted flowchart language with non-linear, bit-manipulating operations (see paper)

Analysis of Modular Arithmetic

Analysis of Modular Arithmetic Analysis of Modular Arithmetic Markus Müller-Olm 1 and Helmut Seidl 2 1 Universität Dortmund, Fachbereich Informatik, LS 5 Baroper Str. 301, 44221 Dortmund, Germany markus.mueller-olm@cs.uni-dortmund.de

More information

An Abstract Interpretation Approach. for Automatic Generation of. Polynomial Invariants

An Abstract Interpretation Approach. for Automatic Generation of. Polynomial Invariants An Abstract Interpretation Approach for Automatic Generation of Polynomial Invariants Enric Rodríguez-Carbonell Universitat Politècnica de Catalunya Barcelona Deepak Kapur University of New Mexico Albuquerque

More information

XOR - XNOR Gates. The graphic symbol and truth table of XOR gate is shown in the figure.

XOR - XNOR Gates. The graphic symbol and truth table of XOR gate is shown in the figure. XOR - XNOR Gates Lesson Objectives: In addition to AND, OR, NOT, NAND and NOR gates, exclusive-or (XOR) and exclusive-nor (XNOR) gates are also used in the design of digital circuits. These have special

More information

Analysis of Modular Arithmetic

Analysis of Modular Arithmetic Analysis of Modular Arithmetic MARKUS MÜLLER-OLM Westfälische Wilhelms-Universität Münster and HELMUT SEIDL TU München We consider integer arithmetic modulo a power of 2 as provided by mainstream programming

More information

Generation of. Polynomial Equality Invariants. by Abstract Interpretation

Generation of. Polynomial Equality Invariants. by Abstract Interpretation Generation of Polynomial Equality Invariants by Abstract Interpretation Enric Rodríguez-Carbonell Universitat Politècnica de Catalunya (UPC) Barcelona Joint work with Deepak Kapur (UNM) 1 Introduction

More information

Universal Algebra for Logics

Universal Algebra for Logics Universal Algebra for Logics Joanna GRYGIEL University of Czestochowa Poland j.grygiel@ajd.czest.pl 2005 These notes form Lecture Notes of a short course which I will give at 1st School on Universal Logic

More information

Error Correcting Codes Prof. Dr. P. Vijay Kumar Department of Electrical Communication Engineering Indian Institute of Science, Bangalore

Error Correcting Codes Prof. Dr. P. Vijay Kumar Department of Electrical Communication Engineering Indian Institute of Science, Bangalore (Refer Slide Time: 00:15) Error Correcting Codes Prof. Dr. P. Vijay Kumar Department of Electrical Communication Engineering Indian Institute of Science, Bangalore Lecture No. # 03 Mathematical Preliminaries:

More information

CIS 6930/4930 Computer and Network Security. Topic 5.1 Basic Number Theory -- Foundation of Public Key Cryptography

CIS 6930/4930 Computer and Network Security. Topic 5.1 Basic Number Theory -- Foundation of Public Key Cryptography CIS 6930/4930 Computer and Network Security Topic 5.1 Basic Number Theory -- Foundation of Public Key Cryptography 1 Review of Modular Arithmetic 2 Remainders and Congruency For any integer a and any positive

More information

Wednesday, February 21. Today we will begin Course Notes Chapter 5 (Number Theory).

Wednesday, February 21. Today we will begin Course Notes Chapter 5 (Number Theory). Wednesday, February 21 Today we will begin Course Notes Chapter 5 (Number Theory). 1 Return to Chapter 5 In discussing Methods of Proof (Chapter 3, Section 2) we introduced the divisibility relation from

More information

Analysis of Modular Arithmetic

Analysis of Modular Arithmetic Analysis of Modular Arithmetic MARKUS MÜLLER-OLM Westfälische Wilhelms-Universität Münster and HELMUT SEIDL TU München We consider integer arithmetic modulo a power of 2 as provided by mainstream programming

More information

Join Algorithms for the Theory of Uninterpreted Functions

Join Algorithms for the Theory of Uninterpreted Functions Join Algorithms for the Theory of Uninterpreted Functions Sumit Gulwani 1, Ashish Tiwari 2, and George C. Necula 1 1 University of California, Berkeley, CA 94720, {gulwani,necula}@cs.berkeley.edu 2 SRI

More information

Interprocedurally Analyzing Polynomial Identities

Interprocedurally Analyzing Polynomial Identities Interprocedurally Analyzing Polynomial Identities Markus Müller-Olm 1, Michael Petter 2, and Helmut Seidl 2 1 Westfälische Wilhelms-Universität Münster, Institut für Informatik Einsteinstr. 62, 48149 Münster,

More information

On Distribution Based Bisimulations for Probabilistic Automata

On Distribution Based Bisimulations for Probabilistic Automata On Distribution Based Bisimulations for Probabilistic Automata AVACS alumni technical talk Lijun Zhang Institute of Software, Chinese Academy of Sciences Joint work with Holger Hermanns, Lei Song, Christian

More information

SMT BASICS WS 2017/2018 ( ) LOGIC SATISFIABILITY MODULO THEORIES. Institute for Formal Models and Verification Johannes Kepler Universität Linz

SMT BASICS WS 2017/2018 ( ) LOGIC SATISFIABILITY MODULO THEORIES. Institute for Formal Models and Verification Johannes Kepler Universität Linz LOGIC SATISFIABILITY MODULO THEORIES SMT BASICS WS 2017/2018 (342.208) Armin Biere Martina Seidl biere@jku.at martina.seidl@jku.at Institute for Formal Models and Verification Johannes Kepler Universität

More information

CSE 311: Foundations of Computing. Lecture 10: Set Operations & Representation, Modular Arithmetic

CSE 311: Foundations of Computing. Lecture 10: Set Operations & Representation, Modular Arithmetic CSE 311: Foundations of Computing Lecture 10: Set Operations & Representation, Modular Arithmetic Definitions A and B are equal if they have the same elements A = B x (x A x B) A is a subset of B if every

More information

Building a Computer Adder

Building a Computer Adder Logic Gates are used to translate Boolean logic into circuits. In the abstract it is clear that we can build AND gates that perform the AND function and OR gates that perform the OR function and so on.

More information

SEVENTH EDITION and EXPANDED SEVENTH EDITION

SEVENTH EDITION and EXPANDED SEVENTH EDITION SEVENTH EDITION and EXPANDED SEVENTH EDITION Slide 10-1 Chapter 10 Mathematical Systems 10.1 Groups Definitions A mathematical system consists of a set of elements and at least one binary operation. A

More information

Lecturecise 22 Weak monadic second-order theory of one successor (WS1S)

Lecturecise 22 Weak monadic second-order theory of one successor (WS1S) Lecturecise 22 Weak monadic second-order theory of one successor (WS1S) 2013 Reachability in the Heap Many programs manipulate linked data structures (lists, trees). To express many important properties

More information

Toda s theorem in bounded arithmetic with parity quantifiers and bounded depth proof systems with parity gates

Toda s theorem in bounded arithmetic with parity quantifiers and bounded depth proof systems with parity gates 1 / 17 Toda s theorem in bounded arithmetic with parity quantifiers and bounded depth proof systems with parity gates Leszek Kołodziejczyk University of Warsaw/UCSD (joint work with Sam Buss and Konrad

More information

«ATutorialon Abstract Interpretation»

«ATutorialon Abstract Interpretation» «ATutorialon Abstract Interpretation» Patrick Cousot École normale supérieure 45 rue d Ulm 75230 Paris cedex 05, France Patrick.Cousot@ens.fr www.di.ens.fr/~cousot VMCAI 05 Industrial Day VMCAI 05 Industrial

More information

Orders and Equivalences

Orders and Equivalences and Equivalences Gazihan Alankuş (Based on original slides by Brahim Hnich et al.) August 9, 2012 Gazihan Alankuş (Based on original slides by Brahim Hnich et al.) and Equivalences Gazihan Alankuş (Based

More information

Logarithmic space. Evgenij Thorstensen V18. Evgenij Thorstensen Logarithmic space V18 1 / 18

Logarithmic space. Evgenij Thorstensen V18. Evgenij Thorstensen Logarithmic space V18 1 / 18 Logarithmic space Evgenij Thorstensen V18 Evgenij Thorstensen Logarithmic space V18 1 / 18 Journey below Unlike for time, it makes sense to talk about sublinear space. This models computations on input

More information

Definition of Büchi Automata

Definition of Büchi Automata Büchi Automata Definition of Büchi Automata Let Σ = {a,b,...} be a finite alphabet. By Σ ω we denote the set of all infinite words over Σ. A non-deterministic Büchi automaton (NBA) over Σ is a tuple A

More information

Automatic Generation of Polynomial Invariants for System Verification

Automatic Generation of Polynomial Invariants for System Verification Automatic Generation of Polynomial Invariants for System Verification Enric Rodríguez-Carbonell Technical University of Catalonia Talk at EPFL Nov. 2006 p.1/60 Plan of the Talk Introduction Need for program

More information

Relations. Binary Relation. Let A and B be sets. A (binary) relation from A to B is a subset of A B. Notation. Let R A B be a relation from A to B.

Relations. Binary Relation. Let A and B be sets. A (binary) relation from A to B is a subset of A B. Notation. Let R A B be a relation from A to B. Relations Binary Relation Let A and B be sets. A (binary) relation from A to B is a subset of A B. Notation Let R A B be a relation from A to B. If (a, b) R, we write a R b. 1 Binary Relation Example:

More information

Translatable Updates of Selection Views under Constant Complement

Translatable Updates of Selection Views under Constant Complement Translatable Updates of Selection Views under Constant Complement Enrico Franconi and Paolo Guagliardo Free University of Bozen-Bolzano, Italy 4 th September 2014 DEXA 2014, Munich (Germany) KRDB Research

More information

Solutions to Problem Set 3 - Fall 2008 Due Tuesday, Sep. 30 at 1:00

Solutions to Problem Set 3 - Fall 2008 Due Tuesday, Sep. 30 at 1:00 Solutions to 18.781 Problem Set 3 - Fall 2008 Due Tuesday, Sep. 30 at 1:00 1. (Niven 2.3.3) Solve the congruences x 1 (mod 4), x 0 (mod 3), x 5 (mod 7). First we note that 4, 3, and 7 are pairwise relatively

More information

Divisibility of the 5- and 13-regular partition functions

Divisibility of the 5- and 13-regular partition functions Divisibility of the 5- and 13-regular partition functions 28 March 2008 Collaborators Joint Work This work was begun as an REU project and is joint with Neil Calkin, Nathan Drake, Philip Lee, Shirley Law,

More information

CSE 311: Foundations of Computing. Lecture 10: Set Operations & Representation, Modular Arithmetic

CSE 311: Foundations of Computing. Lecture 10: Set Operations & Representation, Modular Arithmetic CSE 311: Foundations of Computing Lecture 10: Set Operations & Representation, Modular Arithmetic Definitions A and B are equalif they have the same elements A = B x(x A x B) A is a subsetof B if every

More information

Analysing All Polynomial Equations in Z 2

Analysing All Polynomial Equations in Z 2 Analysing All Polynomial Equations in Z 2 w Helmut Seidl, Andrea Flexeder and Michael Petter Technische Universität München, Boltzmannstrasse 3, 85748 Garching, Germany, {seidl, flexeder, petter}@cs.tum.edu,

More information

WHAT IS AN SMT SOLVER? Jaeheon Yi - April 17, 2008

WHAT IS AN SMT SOLVER? Jaeheon Yi - April 17, 2008 WHAT IS AN SMT SOLVER? Jaeheon Yi - April 17, 2008 WHAT I LL TALK ABOUT Propositional Logic Terminology, Satisfiability, Decision Procedure First-Order Logic Terminology, Background Theories Satisfiability

More information

Programming Languages and Types

Programming Languages and Types Programming Languages and Types Klaus Ostermann based on slides by Benjamin C. Pierce Where we re going Type Systems... Type systems are one of the most fascinating and powerful aspects of programming

More information

MATH 115, SUMMER 2012 LECTURE 4 THURSDAY, JUNE 21ST

MATH 115, SUMMER 2012 LECTURE 4 THURSDAY, JUNE 21ST MATH 115, SUMMER 2012 LECTURE 4 THURSDAY, JUNE 21ST JAMES MCIVOR Today we enter Chapter 2, which is the heart of this subject. Before starting, recall that last time we saw the integers have unique factorization

More information

An Abstract Domain to Discover Interval Linear Equalities

An Abstract Domain to Discover Interval Linear Equalities An Abstract Domain to Discover Interval Linear Equalities Liqian Chen 1,2, Antoine Miné 1,3, Ji Wang 2, and Patrick Cousot 1,4 1 École Normale Supérieure, Paris, France {chen,mine,cousot}@di.ens.fr 2 National

More information

Relations. We have seen several types of abstract, mathematical objects, including propositions, predicates, sets, and ordered pairs and tuples.

Relations. We have seen several types of abstract, mathematical objects, including propositions, predicates, sets, and ordered pairs and tuples. Relations We have seen several types of abstract, mathematical objects, including propositions, predicates, sets, and ordered pairs and tuples. Relations use ordered tuples to represent relationships among

More information

Satisfiability Modulo Theories

Satisfiability Modulo Theories Satisfiability Modulo Theories Summer School on Formal Methods Menlo College, 2011 Bruno Dutertre and Leonardo de Moura bruno@csl.sri.com, leonardo@microsoft.com SRI International, Microsoft Research SAT/SMT

More information

Lecture December 2009 Fall 2009 Scribe: R. Ring In this lecture we will talk about

Lecture December 2009 Fall 2009 Scribe: R. Ring In this lecture we will talk about 0368.4170: Cryptography and Game Theory Ran Canetti and Alon Rosen Lecture 7 02 December 2009 Fall 2009 Scribe: R. Ring In this lecture we will talk about Two-Player zero-sum games (min-max theorem) Mixed

More information

Practice Midterm Exam Solutions

Practice Midterm Exam Solutions CSE 311: Foundations of Computing I Practice Midterm Exam Solutions Name: Sample Solutions ID: TA: Section: INSTRUCTIONS: You have 50 minutes to complete the exam. The exam is closed book. You may not

More information

What is SSA? each assignment to a variable is given a unique name all of the uses reached by that assignment are renamed

What is SSA? each assignment to a variable is given a unique name all of the uses reached by that assignment are renamed Another Form of Data-Flow Analysis Propagation of values for a variable reference, where is the value produced? for a variable definition, where is the value consumed? Possible answers reaching definitions,

More information

Foundations of Abstract Interpretation

Foundations of Abstract Interpretation Escuela 03 II / 1 Foundations of Abstract Interpretation David Schmidt Kansas State University www.cis.ksu.edu/~schmidt Escuela 03 II / 2 Outline 1. Lattices and continuous functions 2. Galois connections,

More information

Part 1. The Review of Linear Programming Introduction

Part 1. The Review of Linear Programming Introduction In the name of God Part 1. The Review of Linear Programming 1.1. Spring 2010 Instructor: Dr. Masoud Yaghini Outline The Linear Programming Problem Geometric Solution References The Linear Programming Problem

More information

Linear Algebra, Boolean Rings and Resolution? Armin Biere. Institute for Formal Models and Verification Johannes Kepler University Linz, Austria

Linear Algebra, Boolean Rings and Resolution? Armin Biere. Institute for Formal Models and Verification Johannes Kepler University Linz, Austria Linear Algebra, Boolean Rings and Resolution? Armin Biere Institute for Formal Models and Verification Johannes Kepler University Linz, Austria ACA 08 Applications of Computer Algebra Symbolic Computation

More information

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 7: Procedures for First-Order Theories, Part 1

Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 7: Procedures for First-Order Theories, Part 1 Automated Program Verification and Testing 15414/15614 Fall 2016 Lecture 7: Procedures for First-Order Theories, Part 1 Matt Fredrikson mfredrik@cs.cmu.edu October 17, 2016 Matt Fredrikson Theory Procedures

More information

Quadratic Congruences, the Quadratic Formula, and Euler s Criterion

Quadratic Congruences, the Quadratic Formula, and Euler s Criterion Quadratic Congruences, the Quadratic Formula, and Euler s Criterion R. C. Trinity University Number Theory Introduction Let R be a (commutative) ring in which 2 = 1 R + 1 R R. Consider a quadratic equation

More information

Elementary proofs of congruences for the cubic and overcubic partition functions

Elementary proofs of congruences for the cubic and overcubic partition functions AUSTRALASIAN JOURNAL OF COMBINATORICS Volume 602) 204), Pages 9 97 Elementary proofs of congruences for the cubic and overcubic partition functions James A. Sellers Department of Mathematics Penn State

More information

Department of Computer Science University at Albany, State University of New York Solutions to Sample Discrete Mathematics Examination II (Fall 2007)

Department of Computer Science University at Albany, State University of New York Solutions to Sample Discrete Mathematics Examination II (Fall 2007) Department of Computer Science University at Albany, State University of New York Solutions to Sample Discrete Mathematics Examination II (Fall 2007) Problem 1: Specify two different predicates P (x) and

More information

SMT: Satisfiability Modulo Theories

SMT: Satisfiability Modulo Theories SMT: Satisfiability Modulo Theories Ranjit Jhala, UC San Diego April 9, 2013 Decision Procedures Last Time Propositional Logic Today 1. Combining SAT and Theory Solvers 2. Theory Solvers Theory of Equality

More information

Unprovability of circuit upper bounds in Cook s theory PV

Unprovability of circuit upper bounds in Cook s theory PV Unprovability of circuit upper bounds in Cook s theory PV Igor Carboni Oliveira Faculty of Mathematics and Physics, Charles University in Prague. Based on joint work with Jan Krajíček (Prague). [Dagstuhl

More information

3 The fundamentals: Algorithms, the integers, and matrices

3 The fundamentals: Algorithms, the integers, and matrices 3 The fundamentals: Algorithms, the integers, and matrices 3.4 The integers and division This section introduces the basics of number theory number theory is the part of mathematics involving integers

More information

CISC 4090: Theory of Computation Chapter 1 Regular Languages. Section 1.1: Finite Automata. What is a computer? Finite automata

CISC 4090: Theory of Computation Chapter 1 Regular Languages. Section 1.1: Finite Automata. What is a computer? Finite automata CISC 4090: Theory of Computation Chapter Regular Languages Xiaolan Zhang, adapted from slides by Prof. Werschulz Section.: Finite Automata Fordham University Department of Computer and Information Sciences

More information

Logic in Automatic Verification

Logic in Automatic Verification Logic in Automatic Verification Javier Esparza Sofware Reliability and Security Group Institute for Formal Methods in Computer Science University of Stuttgart Many thanks to Abdelwaheb Ayari, David Basin,

More information

0, otherwise. Find each of the following limits, or explain that the limit does not exist.

0, otherwise. Find each of the following limits, or explain that the limit does not exist. Midterm Solutions 1, y x 4 1. Let f(x, y) = 1, y 0 0, otherwise. Find each of the following limits, or explain that the limit does not exist. (a) (b) (c) lim f(x, y) (x,y) (0,1) lim f(x, y) (x,y) (2,3)

More information

Math.3336: Discrete Mathematics. Primes and Greatest Common Divisors

Math.3336: Discrete Mathematics. Primes and Greatest Common Divisors Math.3336: Discrete Mathematics Primes and Greatest Common Divisors Instructor: Dr. Blerina Xhabli Department of Mathematics, University of Houston https://www.math.uh.edu/ blerina Email: blerina@math.uh.edu

More information

Solutions to homework 2

Solutions to homework 2 ICS 180: Introduction to Cryptography 4/22/2004 Solutions to homework 2 1 Security Definitions [10+20 points] Definition of some security property often goes like this: We call some communication scheme

More information

Integrating Answer Set Programming and Satisfiability Modulo Theories

Integrating Answer Set Programming and Satisfiability Modulo Theories Integrating Answer Set Programming and Satisfiability Modulo Theories Ilkka Niemelä Helsinki University of Technology (TKK) Department of Information and Computer Science http://www.tcs.tkk.fi/ ini/ References:

More information

Iterated Strict Dominance in Pure Strategies

Iterated Strict Dominance in Pure Strategies Iterated Strict Dominance in Pure Strategies We know that no rational player ever plays strictly dominated strategies. As each player knows that each player is rational, each player knows that his opponents

More information

The Euclidean Division Implemented with a Floating-Point Multiplication and a Floor

The Euclidean Division Implemented with a Floating-Point Multiplication and a Floor The Euclidean Division Implemented with a Floating-Point Multiplication and a Floor Vincent Lefèvre 11th July 2005 Abstract This paper is a complement of the research report The Euclidean division implemented

More information

ABHELSINKI UNIVERSITY OF TECHNOLOGY

ABHELSINKI UNIVERSITY OF TECHNOLOGY Motivation cont d Modular Equivalence for Normal R local change R Logic Programs P Q Helsinki University of Technology {emilia.oikarinen,tomi.janhunen}@tkk.fi Translation-based technique not as efficient

More information

CSE 311: Foundations of Computing. Lecture 10: Set Operations & Representation, Modular Arithmetic

CSE 311: Foundations of Computing. Lecture 10: Set Operations & Representation, Modular Arithmetic CSE 311: Foundations of Computing Lecture 10: Set Operations & Representation, Modular Arithmetic Definitions A and B are equalif they have the same elements A = B x(x A x B) A is a subsetof B if every

More information

Lecture 22. m n c (k) i,j x i x j = c (k) k=1

Lecture 22. m n c (k) i,j x i x j = c (k) k=1 Notes on Complexity Theory Last updated: June, 2014 Jonathan Katz Lecture 22 1 N P PCP(poly, 1) We show here a probabilistically checkable proof for N P in which the verifier reads only a constant number

More information

Interactive protocols & zero-knowledge

Interactive protocols & zero-knowledge Interactive protocols & zero-knowledge - interactive protocols formalize what can be recognized by polynomial time restricted verifiers in arbitrary protocols - generalizes NP - zero-knowledge formalizes

More information

Factor Graphs and Message Passing Algorithms Part 1: Introduction

Factor Graphs and Message Passing Algorithms Part 1: Introduction Factor Graphs and Message Passing Algorithms Part 1: Introduction Hans-Andrea Loeliger December 2007 1 The Two Basic Problems 1. Marginalization: Compute f k (x k ) f(x 1,..., x n ) x 1,..., x n except

More information

EAHyper: Satisfiability, Implication, and Equivalence Checking of Hyperproperties

EAHyper: Satisfiability, Implication, and Equivalence Checking of Hyperproperties EAHyper: Satisfiability, Implication, and Equivalence Checking of Hyperproperties Bernd Finkbeiner, Christopher Hahn, and Marvin Stenger Saarland Informatics Campus, Saarland University, Saarbrücken, Germany

More information

TRANSFER FUNCTION SYNTHESIS WITHOUT QUANTIFIER ELIMINATION

TRANSFER FUNCTION SYNTHESIS WITHOUT QUANTIFIER ELIMINATION Logical Methods in Computer Science Vol. 8 (3:17) 2012, pp. 1 37 www.lmcs-online.org Submitted Oct. 14, 2011 Published Sep. 17, 2012 TRANSFER FUNCTION SYNTHESIS WITHOUT QUANTIFIER ELIMINATION JÖRG BRAUER

More information

On the efficient approximability of constraint satisfaction problems

On the efficient approximability of constraint satisfaction problems On the efficient approximability of constraint satisfaction problems July 13, 2007 My world Max-CSP Efficient computation. P Polynomial time BPP Probabilistic Polynomial time (still efficient) NP Non-deterministic

More information

Precise Interprocedural Analysis using Random Interpretation

Precise Interprocedural Analysis using Random Interpretation Precise Interprocedural Analysis using Random Interpretation Sumit Gulwani gulwani@cs.berkeley.edu George C. Necula necula@cs.berkeley.edu Department of Electrical Engineering and Computer Science University

More information

Stanford University CS254: Computational Complexity Handout 8 Luca Trevisan 4/21/2010

Stanford University CS254: Computational Complexity Handout 8 Luca Trevisan 4/21/2010 Stanford University CS254: Computational Complexity Handout 8 Luca Trevisan 4/2/200 Counting Problems Today we describe counting problems and the class #P that they define, and we show that every counting

More information

CSCI 1590 Intro to Computational Complexity

CSCI 1590 Intro to Computational Complexity CSCI 1590 Intro to Computational Complexity NP-Complete Languages John E. Savage Brown University February 2, 2009 John E. Savage (Brown University) CSCI 1590 Intro to Computational Complexity February

More information

Lecture 14: IP = PSPACE

Lecture 14: IP = PSPACE IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Basic Course on Computational Complexity Lecture 14: IP = PSPACE David Mix Barrington and Alexis Maciel August 3, 2000 1. Overview We

More information

CPSC 467: Cryptography and Computer Security

CPSC 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 information

CSC 2429 Approaches to the P vs. NP Question and Related Complexity Questions Lecture 2: Switching Lemma, AC 0 Circuit Lower Bounds

CSC 2429 Approaches to the P vs. NP Question and Related Complexity Questions Lecture 2: Switching Lemma, AC 0 Circuit Lower Bounds CSC 2429 Approaches to the P vs. NP Question and Related Complexity Questions Lecture 2: Switching Lemma, AC 0 Circuit Lower Bounds Lecturer: Toniann Pitassi Scribe: Robert Robere Winter 2014 1 Switching

More information

Interactive protocols & zero-knowledge

Interactive protocols & zero-knowledge Interactive protocols & zero-knowledge - interactive protocols formalize what can be recognized by polynomial time restricted verifiers in arbitrary protocols - generalizes NP - zero-knowledge formalizes

More information

Questions Pool. Amnon Ta-Shma and Dean Doron. January 2, Make sure you know how to solve. Do not submit.

Questions Pool. Amnon Ta-Shma and Dean Doron. January 2, Make sure you know how to solve. Do not submit. Questions Pool Amnon Ta-Shma and Dean Doron January 2, 2017 General guidelines The questions fall into several categories: (Know). (Mandatory). (Bonus). Make sure you know how to solve. Do not submit.

More information

EQUIVALENCE RELATIONS (NOTES FOR STUDENTS) 1. RELATIONS

EQUIVALENCE RELATIONS (NOTES FOR STUDENTS) 1. RELATIONS EQUIVALENCE RELATIONS (NOTES FOR STUDENTS) LIOR SILBERMAN Version 1.0 compiled September 9, 2015. 1.1. List of examples. 1. RELATIONS Equality of real numbers: for some x,y R we have x = y. For other pairs

More information

Course An Introduction to SAT and SMT. Cap. 2: Satisfiability Modulo Theories

Course An Introduction to SAT and SMT. Cap. 2: Satisfiability Modulo Theories Course An Introduction to SAT and SMT Chapter 2: Satisfiability Modulo Theories Roberto Sebastiani DISI, Università di Trento, Italy roberto.sebastiani@unitn.it URL: http://disi.unitn.it/rseba/didattica/sat_based18/

More information

10. Finite Lattices and their Congruence Lattices. If memories are all I sing I d rather drive a truck. Ricky Nelson

10. Finite Lattices and their Congruence Lattices. If memories are all I sing I d rather drive a truck. Ricky Nelson 10. Finite Lattices and their Congruence Lattices If memories are all I sing I d rather drive a truck. Ricky Nelson In this chapter we want to study the structure of finite lattices, and how it is reflected

More information

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF CHAPTER 4 ELEMENTARY NUMBER THEORY AND METHODS OF PROOF Copyright Cengage Learning. All rights reserved. SECTION 4.5 Direct Proof and Counterexample V: Floor and Ceiling Copyright Cengage Learning. All

More information

POLYNOMIAL SPACE QSAT. Games. Polynomial space cont d

POLYNOMIAL SPACE QSAT. Games. Polynomial space cont d T-79.5103 / Autumn 2008 Polynomial Space 1 T-79.5103 / Autumn 2008 Polynomial Space 3 POLYNOMIAL SPACE Polynomial space cont d Polynomial space-bounded computation has a variety of alternative characterizations

More information

INAPPROX APPROX PTAS. FPTAS Knapsack P

INAPPROX APPROX PTAS. FPTAS Knapsack P CMPSCI 61: Recall From Last Time Lecture 22 Clique TSP INAPPROX exists P approx alg for no ε < 1 VertexCover MAX SAT APPROX TSP some but not all ε< 1 PTAS all ε < 1 ETSP FPTAS Knapsack P poly in n, 1/ε

More information

Exclusive OR/ Exclusive NOR

Exclusive OR/ Exclusive NOR University of Wisconsin - Madison ECE/Comp Sci 352 Digital Systems Fundamentals Charles R. Kime Section 2 Fall 2001 Chapter 2 Combinational Logic Circuits Part 8 Charles Kime & Thomas Kaminski Exclusive

More information

Lecture 4 : Quest for Structure in Counting Problems

Lecture 4 : Quest for Structure in Counting Problems CS6840: Advanced Complexity Theory Jan 10, 2012 Lecture 4 : Quest for Structure in Counting Problems Lecturer: Jayalal Sarma M.N. Scribe: Dinesh K. Theme: Between P and PSPACE. Lecture Plan:Counting problems

More information

CSE 20 DISCRETE MATH. Fall

CSE 20 DISCRETE MATH. Fall CSE 20 DISCRETE MATH Fall 2017 http://cseweb.ucsd.edu/classes/fa17/cse20-ab/ Today's learning goals Determine whether a relation is an equivalence relation by determining whether it is Reflexive Symmetric

More information

4 Number Theory and Cryptography

4 Number Theory and Cryptography 4 Number Theory and Cryptography 4.1 Divisibility and Modular Arithmetic This section introduces the basics of number theory number theory is the part of mathematics involving integers and their properties.

More information

Introduction to Cryptology. Lecture 20

Introduction to Cryptology. Lecture 20 Introduction to Cryptology Lecture 20 Announcements HW9 due today HW10 posted, due on Thursday 4/30 HW7, HW8 grades are now up on Canvas. Agenda More Number Theory! Our focus today will be on computational

More information

Number Theory, Algebra and Analysis. William Yslas Vélez Department of Mathematics University of Arizona

Number Theory, Algebra and Analysis. William Yslas Vélez Department of Mathematics University of Arizona Number Theory, Algebra and Analysis William Yslas Vélez Department of Mathematics University of Arizona O F denotes the ring of integers in the field F, it mimics Z in Q How do primes factor as you consider

More information

N-Synchronous Kahn Networks A Relaxed Model of Synchrony for Real-Time Systems

N-Synchronous Kahn Networks A Relaxed Model of Synchrony for Real-Time Systems N-Synchronous Kahn Networks A Relaxed Model of Synchrony for Real-Time Systems Albert Cohen 1, Marc Duranton 2, Christine Eisenbeis 1, Claire Pagetti 1,4, Florence Plateau 3 and Marc Pouzet 3 POPL, Charleston

More information

γ γ γ γ(α) ). Then γ (a) γ (a ) ( γ 1

γ γ γ γ(α) ). Then γ (a) γ (a ) ( γ 1 The Correspondence Theorem, which we next prove, shows that the congruence lattice of every homomorphic image of a Σ-algebra is isomorphically embeddable as a special kind of sublattice of the congruence

More information

Overview. Discrete Event Systems Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for?

Overview. Discrete Event Systems Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for? Computer Engineering and Networks Overview Discrete Event Systems Verification of Finite Automata Lothar Thiele Introduction Binary Decision Diagrams Representation of Boolean Functions Comparing two circuits

More information

CSE 200 Lecture Notes Turing machine vs. RAM machine vs. circuits

CSE 200 Lecture Notes Turing machine vs. RAM machine vs. circuits CSE 200 Lecture Notes Turing machine vs. RAM machine vs. circuits Chris Calabro January 13, 2016 1 RAM model There are many possible, roughly equivalent RAM models. Below we will define one in the fashion

More information

Attempts to Bridge the Gap between Equality Reasoning and Logical Proving

Attempts to Bridge the Gap between Equality Reasoning and Logical Proving Bridging Equality Reasoning and Logical Proving 1 Attempts to Bridge the Gap between Equality Reasoning and Logical Proving 1. What Gap? 2. Congruence Classes with Logic Variables 3. Proving without Normalisation

More information

From SAT To SMT: Part 1. Vijay Ganesh MIT

From SAT To SMT: Part 1. Vijay Ganesh MIT From SAT To SMT: Part 1 Vijay Ganesh MIT Software Engineering & SMT Solvers An Indispensable Tactic for Any Strategy Formal Methods Program Analysis SE Goal: Reliable/Secure Software Automatic Testing

More information

Automata-Based String Analysis

Automata-Based String Analysis 1 / 46 Automata-Based String Analysis Model Counting Tevfik Bultan, Abdulbaki Aydin, Lucas Bang Verification Laboratory http://vlab.cs.ucsb.edu Department of Computer Science Overview Overview String Constraints

More information

Introduction to Languages and Computation

Introduction to Languages and Computation Introduction to Languages and Computation George Voutsadakis 1 1 Mathematics and Computer Science Lake Superior State University LSSU Math 400 George Voutsadakis (LSSU) Languages and Computation July 2014

More information

Definition: Alternating time and space Game Semantics: State of machine determines who

Definition: Alternating time and space Game Semantics: State of machine determines who CMPSCI 601: Recall From Last Time Lecture Definition: Alternating time and space Game Semantics: State of machine determines who controls, White wants it to accept, Black wants it to reject. White wins

More information

COMP2411 Lecture 6: Soundness and Completeness. Reading: Huth and Ryan, Sections 1.4

COMP2411 Lecture 6: Soundness and Completeness. Reading: Huth and Ryan, Sections 1.4 COMP2411 Lecture 6: Soundness and Completeness Reading: Huth and Ryan, Sections 14 Arithmetic is useful in the world because it is an example of the diagram: symbols - symbolic manipulation -> symbols

More information

University of Leeds SCHOOL OF COMPUTING RESEARCH REPORT SERIES Report A Linear Domain for Analyzing the Distribution of Numerical Values 1

University of Leeds SCHOOL OF COMPUTING RESEARCH REPORT SERIES Report A Linear Domain for Analyzing the Distribution of Numerical Values 1 University of Leeds SCHOOL OF COMPUTING RESEARCH REPORT SERIES Report 2005.06 A Linear Domain for Analyzing the Distribution of Numerical Values 1 by Roberto Bagnara 2 & Katy Dobson 3 & Patricia M. Hill

More information

Chapter 4 Finite Fields

Chapter 4 Finite Fields Chapter 4 Finite Fields Introduction will now introduce finite fields of increasing importance in cryptography AES, Elliptic Curve, IDEA, Public Key concern operations on numbers what constitutes a number

More information

Interpolation. Seminar Slides. Betim Musa. 27 th June Albert-Ludwigs-Universität Freiburg

Interpolation. Seminar Slides. Betim Musa. 27 th June Albert-Ludwigs-Universität Freiburg Interpolation Seminar Slides Albert-Ludwigs-Universität Freiburg Betim Musa 27 th June 2015 Motivation program add(int a, int b) { var x,i : int; l 0 assume(b 0); l 1 x := a; l 2 i := 0; while(i < b) {

More information

An 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. 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 information

MATH 3300 Test 1. Name: Student Id:

MATH 3300 Test 1. Name: Student Id: Name: Student Id: There are nine problems (check that you have 9 pages). Solutions are expected to be short. In the case of proofs, one or two short paragraphs should be the average length. Write your

More information