Conservation of Information

Size: px
Start display at page:

Download "Conservation of Information"

Transcription

1 Conservation of Information Amr Sabry (in collaboration with Roshan P. James) School of Informatics and Computing Indiana University May 8, 2012 Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

2 Physics and Computation Current models of computation were inspired by the laws of nature as understood in the past centuries. Quantum mechanics is currently the most accurate physical theory known to us. Let us investigate to what extent conventional models of computation are compatible with the (modern) laws of physics. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

3 Physical principles for computation and logic There are many principles we can embrace. We will start with one, and follow its consequences, which will turn out to be far reaching. Conservation of information Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

4 The Origin Ed Fredkin pursued the idea that information must be finite in density. One day, he announced that things must be even more simple than that. He said that he was going to assume that information itself is conserved. You re out of you mind, Ed. I pronounced. That s completely ridiculous. Nothing could happen in such a world. There couldn t even be logical gates. No decisions could ever be made. But when Fredkin gets one of his ideas, he s quite immune to objections like that; indeed, they fuel him with energy. Soon he went on to assume that information processing must also be reversible and invented what s now called the Fredkin gate. Marvin Minsky, Feynman and Cellular Vacuum, Feynman and Computation: Exploring the Limits of Computers, 1999 Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

5 Types and Type Isomorphims Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

6 Finite Types base types, b ::= 0 1 b + b b b Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

7 Finite Types base types, b ::= 0 1 b + b b b The axioms of a commutative semiring constitute a sound and complete set of type isomorphisms. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

8 Sound and Complete Isomorphisms 0 + b b identity for + b 1 + b 2 b 2 + b 1 commutativity for + b 1 + (b 2 + b 3 ) (b 1 + b 2 ) + b 3 associativity for + Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

9 Sound and Complete Isomorphisms 0 + b b identity for + b 1 + b 2 b 2 + b 1 commutativity for + b 1 + (b 2 + b 3 ) (b 1 + b 2 ) + b 3 associativity for + 1 b b identity for b 1 b 2 b 2 b 1 commutativity for b 1 (b 2 b 3 ) (b 1 b 2 ) b 3 associativity for Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

10 Sound and Complete Isomorphisms 0 + b b identity for + b 1 + b 2 b 2 + b 1 commutativity for + b 1 + (b 2 + b 3 ) (b 1 + b 2 ) + b 3 associativity for + 1 b b identity for b 1 b 2 b 2 b 1 commutativity for b 1 (b 2 b 3 ) (b 1 b 2 ) b 3 associativity for 0 b 0 distribute over 0 (b 1 + b 2 ) b 3 (b 1 b 3 ) + (b 2 b 3 ) distribute over + Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

11 Sound and Complete Isomorphisms 0 + b b identity for + b 1 + b 2 b 2 + b 1 commutativity for + b 1 + (b 2 + b 3 ) (b 1 + b 2 ) + b 3 associativity for + 1 b b identity for b 1 b 2 b 2 b 1 commutativity for b 1 (b 2 b 3 ) (b 1 b 2 ) b 3 associativity for 0 b 0 distribute over 0 (b 1 + b 2 ) b 3 (b 1 b 3 ) + (b 2 b 3 ) distribute over + b 1 b 1 b 1 b 2 b 2 b 1 b 1 b 2 b 2 b 3 b 1 b 3 b 1 b 3 b 2 b 4 (b 1 + b 2 ) (b 3 + b 4 ) b 1 b 3 b 2 b 4 (b 1 b 2 ) (b 3 b 4 ) Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

12 A Programming Language (Π) emerges... Add values for each type Add witnesses to the isomorphisms Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

13 A Programming Language (Π) emerges... Add values for each type Add witnesses to the isomorphisms base types, b ::= 0 1 b + b b b values, v ::= () left v right v (v, v) there are no values of type 0 () is the unique value of type 1 if v is of type b 1 then left v is of type b 1 + b 2 if v is of type b 2 then right v is of type b 1 + b 2 if v 1 is of type b 1 and v 2 is of type b 2 then (v 1, v 2 ) is of type b 1 b 2 Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

14 A Programming Language ( Π) emerges... zeroe : 0 + b b : zeroi swap + : b 1 + b 2 b 2 + b 1 : swap + assocl + : b 1 + (b 2 + b 3 ) (b 1 + b 2 ) + b 3 : assocr + unite : 1 b b : uniti swap : b 1 b 2 b 2 b 1 : swap assocl : b 1 (b 2 b 3 ) (b 1 b 2 ) b 3 : assocr distrib 0 : 0 b 0 : factor 0 distrib : (b 1 + b 2 ) b 3 (b 1 b 3 ) + (b 2 b 3 ) : factor id : b b c : b 1 b 2 sym c : b 2 b 1 c 1 : b 1 b 2 c 2 : b 2 b 3 (c 1 c 2 ) : b 1 b 3 c 1 : b 1 b 3 c 2 : b 2 b 4 (c 1 + c 2 ) : (b 1 + b 2 ) (b 3 + b 4 ) c 1 : b 1 b 3 c 2 : b 2 b 4 (c 1 c 2 ) : (b 1 b 2 ) (b 3 b 4 ) Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

15 Example The type isomorphism: (1 + 1) ((1 + 1) b) = (1 + 1) ((1 b) + (1 b)) = (1 + 1) (b + b) = (1 (b + b)) + (1 (b + b)) = (b + b) + (b + b) corresponds to the program: (id (distrib (unite unite))) (distrib (unite unite)) Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

16 Graphical notation Graphical language for symmetric monoidal categories. Values are waves or particles. Combinators are interconnections of wires. Computation is modeled as the flow of waves or particles on the wires. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

17 Graphical notation: Wires The simplest sort of diagram is the id : b b combinator which is simply represented as a wire labeled by its type b. When tracing a computation, one might imagine a value v of type b on the wire. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

18 Graphical notation: Products The product type b 1 b 2 may be represented using either one wire labeled b 1 b 2 or two parallel wires labeled b 1 and b 2. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

19 Graphical notation: Sums Sum types may similarly be represented by one wire or using parallel wires with a + operator between them. mr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

20 Graphical notation: Associativity Associativity is implicit in the graphical language. Three parallel wires represent b 1 (b 2 b 3 ) or (b 1 b 2 ) b 3, based on the context. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

21 Graphical notation: Commutativity Commutativity is represented by crisscrossing wires. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

22 Graphical notation: Distributivity and Factoring Distributivity and factoring are represented using the dual boxes shown below: Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

23 Programming in Π: Booleans, Negation We encode booleans by bool = true = left () false = right () Negation: not : bool bool not = swap + Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

24 Programming in Π: Conditionals Reversible conditional: if c (flag, b) = if flag then (flag, c(b)) else (flag, b) Given c : b b, then: if c : bool b bool b if c = distrib ((id c) + id) factor Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

25 Programming in Π: Fredkin and Toffoli Gates Universal gates for reversible combinational circuits Fredkin gate: if swap Toffoli gate: if ifswap + Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

26 Information Effects Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

27 Closed vs. Open Systems So far we have modeled closed systems in which information is preserved; An open system may have interactions with its environment; We will show that these interactions can be modeled with two new operations that interact with the environment via side effects: create : 1 b erase : b 1 The effects are isolated using an arrow metalanguage which is a standard way of modeling computational effects. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

28 One slide on arrows Abstractly, computations are maps that can do side effects. Pure computations can be lifted to the world of arrows: arr : (b c) (b c) Computations can be sequenced: : (b c) (c d) (b d) Computations can be selectively applied to inputs (the rest of the input can be thought of as the environment that is generally not affected): first : (a b) ((b, d) (c, d)) Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

29 λ and information effects Conventional programming languages (λ ) have accidently embodied information effects! Translate from a first-order λ, with sum and product types, to the arrow language with create and erase: Γ e : b = a : Γ b Translate from the arrow language with create and erase to Π: a : Γ b = c : h Γ g b where h and g, exposed in the types, represent the implicit information environment. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

30 Example: XOR xor(b 1, b 2 ) = if b 1 then not b 2 else b 2 The most optimal implementation of xor must erase at least 1 bit i.e. there must be at least one erase bool. xor : bool bool bool xor = distrib (not id) factor (erase bool id) arr unite Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

31 Example: NAND nand(b 1, b 2 ) = if b 1 then not b 2 else true The most optimal implementation of nand must erase at least 1.2 bits i.e. at least two bools must be erased. nand : bool bool bool nand = distrib (not (erase bool create true )) factor (erase bool id) arr unite Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

32 Applications A better basis of computation than λ-calculus for applications where information manipulation is computationally significant: Quantitative information-flow security Differential privacy Energy-aware computing VLSI design Biochemical models of computation etc. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

33 So far... A programming language Π universal over finite types; Based on type isomorphisms; conservation of information; Can model creation, cloning, and erasure of information as side effects; Related to linear logic (no weakening and no contraction); quantum computing (no-cloning and no-deleting); How about recursion, higher-order functions, etc.? Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

34 Categorial Interlude Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

35 Categorical Perspective base types, b ::= 0 1 b + b b b The subset of Π with (, 1) is a symmetric monoidal category; The subset of Π with (+, 0) is another symmetric monoidal category; The full language Π is a category with two symmetric monoidal structures which satisfy distributivity of over + (but not vice-versa). Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

36 Compact Closed Categories Compact closed categories have a notion of higher-order functions; necessary for self-interpreters and universal computation. Compact closed categories have a canonical notion of trace; the categorical abstraction of feedback, looping, and recursion; also necessary for universal computation. Technically all we need is to extend the semidistributive symmetric monoidal structure of Π to a compact closed structure. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

37 The Int Construction (Joyal, Street, and Verity, 1996) Start from a traced monoidal category; Introduce a new class of arrows flowing backwards ; Define appropriate notions of composition, etc. and compact closure is guaranteed! Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

38 Key Insight Arrows flowing forward carry waves/particles from producers to consumers; Arrows flowing backwards carry demands from consumers to producers; A function can be modeled using a backwards arrow that demands the argument and a forward arrow that produces the result! Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

39 Negation and Symmetry Idea of values flowing backwards is appealing: From a logical perspective, it corresponds to some form of (involutive) negation; Frm a physical perspective, it introduces symmetry which is probably the most widely accepted physical principle. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

40 Good and bad news It is possible to independently extend each symmetric monoidal structure to a compact closed one; The two compact closed structures appear incompatible with each other; It doesn t appear possible to get one notion of negation like in propositional, classical, intuitionistic, and even linear logic; It doesn t appear possible to get one notion of functions like in most models of computation; Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

41 Solution Keep trying to find the unifying structure, or: Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

42 Solution Keep trying to find the unifying structure, or: Give up our preconceived notions about negation and functions, and investigate: two notions of negation; two notions of functions; two notions of duality; and two notions of symmetry! Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

43 Negative and Fractional Types Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

44 Extending the language Π ηɛ Types Isomorphisms Values base types, b ::= 0 1 b + b b b b 1/b η + : 0 ( b) + b : ɛ + η : 1 (1/b) b : ɛ v : b v : b v : b 1/v : 1/b mr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

45 Additive and Multiplicative Dualities Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

46 Additive and Multiplicative Dualities Backward information flow Creation and annihilation of entangled particles Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

47 Example Consider the isomorphism: a = a + 0 = a + ( a + a) = (a + ( a)) + a = 0 + a = a It corresponds to the program: mr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

48 Example It has a very interesting computational content: Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

49 Example It has a very interesting computational content: Semantically equivalent to the identity function, but models teleportation. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

50 Multiplicative verion Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

51 Multiplicative verion Semantically equivalent to the identity function, but models a credit card transaction. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

52 Semantics (Additives) Given a combinator c and a value v, we can propagate the value forward; (by convention in the diagrams this is the left-to-right flow of values). Since combinators represent isomorphisms, we can also propagate a value backwards; (by convention in the diagrams this is the right-to-left flow of values). A value v flows in the opposite direction of v; (and hence ( v) is the same as v). Formally we have two interpreters: a forward interpreter and a reverse interpreter. If one of the interpreters encounters a combinator whose output is the 0 type, it calls the other one. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

53 Semantics (Multiplicatives) At any point, during the execution, we can create a value/constraint pair α and 1/α; If either α or 1/α is used in a way that fixes α, the dual is immediately adjusted. Formally, we augment the interpreters with unification Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

54 (Additive) Trace Given f : b 1 + b 2 b 1 + b 3, define trace + f : b 2 b 3 as: trace + f = zeroi (id + η + ) (f + id) (id + ɛ + ) zeroe Similarly for trace. Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

55 (Additive) Functions: Definition Applying a function to an argument consists of making the argument flow backwards to satisfy the demand of the function: Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

56 (Additive) Functions: Composition which is essentially equivalent to sequencing both the computation blocks as shown below: Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

57 More constructions The same diagrams but with a different interpretation give rise to multiplicative functions; All the identities that hold in a mathematical field become isomorphisms with fascinating computational interpretations; Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

58 Conclusions Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

59 Negative and Fractional Types Make sense in a world in which information is conserved; Can borrow because the infrastructure guarantees that all debts must be accounted for; Negative and fractional types provide fascinating mechanisms in which computations can be sliced and diced, decomposed and recomposed, run forwards and backwards, in arbitrary ways; Enable greater flexibility in programming by breaking global invariants into local ones that can be autonomously satisfied by a subcomputation; Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

60 Algebraic Computation We started with Π that expresses computation in the commutative semiring of whole numbers Extended to Π ηɛ that expresses computation in the field of rationals Possible extension is to allow user-defined (recursive) datatype defintions: these are polynomials, i.e., we can compute in the field of algebraic numbers; Example: The type of binary trees µx.(1 + x x) can be rewritten as x = 1 + x x or x 2 x + 1 = 0, i.e., the type x is (1/2) + i( 3/2)! Confirms previous observations that imaginary and square root types make sense! Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

61 Symmetries, Dualities, of Computation Duality between values (forward flow) and continuations (backwards flow) was previously observed (1989); The principle of conservation of information unveils deeper and more elegant symmetries; Towards a computational understanding quantum mechanics? Amr Sabry (in collaboration with Roshan P. James) (IU SOIC) Conservation of Information May 8, / 53

Embedding Classical and Quantum Circuits in Haskell

Embedding Classical and Quantum Circuits in Haskell Embedding Classical and Quantum Circuits in Haskell Amr Sabry School of Informatics and Computing Indiana University July 26, 2012 Amr Sabry ( School of Informatics and Computing Embedding Indiana University

More information

Combinational Logic Design Principles

Combinational Logic Design Principles Combinational Logic Design Principles Switching algebra Doru Todinca Department of Computers Politehnica University of Timisoara Outline Introduction Switching algebra Axioms of switching algebra Theorems

More information

Quantum Effects. Juliana K. Vizzotto 1 Thorsten Altenkirch 2. Amr Sabry January Yale CS Colloquium Page 1

Quantum Effects. Juliana K. Vizzotto 1 Thorsten Altenkirch 2. Amr Sabry January Yale CS Colloquium Page 1 Quantum Effects Juliana K. Vizzotto 1 Thorsten Altenkirch 2 Amr Sabry 3 1 Federal University of Rio Grande do Sul 2 The University of Nottingham 3 Indiana University 2 January 25 Yale CS Colloquium Page

More information

Boolean algebra. Values

Boolean algebra. Values Boolean algebra 1854 by George Boole in his book An Investigation of the Laws of Thought, is a variant of ordinary elementary algebra differing in its values, operations, and laws. Instead of the usual

More information

Quantum groupoids and logical dualities

Quantum groupoids and logical dualities Quantum groupoids and logical dualities (work in progress) Paul-André Melliès CNS, Université Paris Denis Diderot Categories, ogic and Foundations of Physics ondon 14 May 2008 1 Proof-knots Aim: formulate

More information

A categorical model for a quantum circuit description language

A categorical model for a quantum circuit description language A categorical model for a quantum circuit description language Francisco Rios (joint work with Peter Selinger) Department of Mathematics and Statistics Dalhousie University CT July 16th 22th, 2017 What

More information

What is Binary? Digital Systems and Information Representation. An Example. Physical Representation. Boolean Algebra

What is Binary? Digital Systems and Information Representation. An Example. Physical Representation. Boolean Algebra What is Binary? Digital Systems and Information Representation CSE 102 Underlying base signals are two valued: 0 or 1 true or false (T or F) high or low (H or L) One bit is the smallest unambiguous unit

More information

Boolean Algebra and Propositional Logic

Boolean Algebra and Propositional Logic Boolean Algebra and Propositional Logic Takahiro Kato June 23, 2015 This article provides yet another characterization of Boolean algebras and, using this characterization, establishes a more direct connection

More information

Boolean Algebra and Propositional Logic

Boolean Algebra and Propositional Logic Boolean Algebra and Propositional Logic Takahiro Kato September 10, 2015 ABSTRACT. This article provides yet another characterization of Boolean algebras and, using this characterization, establishes a

More information

1. Name the person who developed Boolean algebra

1. Name the person who developed Boolean algebra MATHEMATIC CENTER D96 MUNIRKA VILLAGE NEW DELHI 67 & VIKAS PURI NEW DELHI CONTACT FOR COACHING MATHEMATICS FOR TH 2TH NDA DIPLOMA SSC CAT SAT CPT CONTACT FOR ADMISSION GUIDANCE B.TECH BBA BCA, MCA MBA

More information

EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits)

EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits) EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits) September 5, 2002 John Wawrzynek Fall 2002 EECS150 Lec4-bool1 Page 1, 9/5 9am Outline Review of

More information

Outline. EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits) Combinational Logic (CL) Defined

Outline. EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits) Combinational Logic (CL) Defined EECS150 - Digital Design Lecture 4 - Boolean Algebra I (Representations of Combinational Logic Circuits) January 30, 2003 John Wawrzynek Outline Review of three representations for combinational logic:

More information

Category Theory. Categories. Definition.

Category Theory. Categories. Definition. Category Theory Category theory is a general mathematical theory of structures, systems of structures and relationships between systems of structures. It provides a unifying and economic mathematical modeling

More information

CS Lecture 19: Logic To Truth through Proof. Prof. Clarkson Fall Today s music: Theme from Sherlock

CS Lecture 19: Logic To Truth through Proof. Prof. Clarkson Fall Today s music: Theme from Sherlock CS 3110 Lecture 19: Logic To Truth through Proof Prof. Clarkson Fall 2014 Today s music: Theme from Sherlock Review Current topic: How to reason about correctness of code Last week: informal arguments

More information

UC Berkeley College of Engineering, EECS Department CS61C: Representations of Combinational Logic Circuits

UC Berkeley College of Engineering, EECS Department CS61C: Representations of Combinational Logic Circuits 2 Wawrzynek, Garcia 2004 c UCB UC Berkeley College of Engineering, EECS Department CS61C: Representations of Combinational Logic Circuits 1 Introduction Original document by J. Wawrzynek (2003-11-15) Revised

More information

Basing Decisions on Sentences in Decision Diagrams

Basing Decisions on Sentences in Decision Diagrams Proceedings of the Twenty-Sixth AAAI Conference on Artificial Intelligence Basing Decisions on Sentences in Decision Diagrams Yexiang Xue Department of Computer Science Cornell University yexiang@cs.cornell.edu

More information

Switches: basic element of physical implementations

Switches: basic element of physical implementations Combinational logic Switches Basic logic and truth tables Logic functions Boolean algebra Proofs by re-writing and by perfect induction Winter 200 CSE370 - II - Boolean Algebra Switches: basic element

More information

Programming Languages in String Diagrams. [ one ] String Diagrams. Paul-André Melliès. Oregon Summer School in Programming Languages June 2011

Programming Languages in String Diagrams. [ one ] String Diagrams. Paul-André Melliès. Oregon Summer School in Programming Languages June 2011 Programming Languages in String Diagrams [ one ] String Diagrams Paul-ndré Melliès Oregon Summer School in Programming Languages June 2011 String diagrams diagrammatic account o logic and programming 2

More information

Modern Algebra Prof. Manindra Agrawal Department of Computer Science and Engineering Indian Institute of Technology, Kanpur

Modern Algebra Prof. Manindra Agrawal Department of Computer Science and Engineering Indian Institute of Technology, Kanpur Modern Algebra Prof. Manindra Agrawal Department of Computer Science and Engineering Indian Institute of Technology, Kanpur Lecture 02 Groups: Subgroups and homomorphism (Refer Slide Time: 00:13) We looked

More information

COSC 243. Introduction to Logic And Combinatorial Logic. Lecture 4 - Introduction to Logic and Combinatorial Logic. COSC 243 (Computer Architecture)

COSC 243. Introduction to Logic And Combinatorial Logic. Lecture 4 - Introduction to Logic and Combinatorial Logic. COSC 243 (Computer Architecture) COSC 243 Introduction to Logic And Combinatorial Logic 1 Overview This Lecture Introduction to Digital Logic Gates Boolean algebra Combinatorial Logic Source: Chapter 11 (10 th edition) Source: J.R. Gregg,

More information

Boolean Algebra. The Building Blocks of Digital Logic Design. Section. Section Overview. Binary Operations and Their Representation.

Boolean Algebra. The Building Blocks of Digital Logic Design. Section. Section Overview. Binary Operations and Their Representation. Section 3 Boolean Algebra The Building Blocks of Digital Logic Design Section Overview Binary Operations (AND, OR, NOT), Basic laws, Proof by Perfect Induction, De Morgan s Theorem, Canonical and Standard

More information

Computing with Semirings and Weak Rig Groupoids

Computing with Semirings and Weak Rig Groupoids Computing with Semirings and Weak Rig Groupoids Jacques Carette and Amr Sabry 1 McMaster University (carette@mcmaster.ca) 2 Indiana University (sabry@indiana.edu) Abstract. The original formulation of

More information

Chapter 2: Switching Algebra and Logic Circuits

Chapter 2: Switching Algebra and Logic Circuits Chapter 2: Switching Algebra and Logic Circuits Formal Foundation of Digital Design In 1854 George Boole published An investigation into the Laws of Thoughts Algebraic system with two values 0 and 1 Used

More information

CS61c: Representations of Combinational Logic Circuits

CS61c: Representations of Combinational Logic Circuits CS61c: Representations of Combinational Logic Circuits J. Wawrzynek March 5, 2003 1 Introduction Recall that synchronous systems are composed of two basic types of circuits, combination logic circuits,

More information

Proving Completeness for Nested Sequent Calculi 1

Proving Completeness for Nested Sequent Calculi 1 Proving Completeness for Nested Sequent Calculi 1 Melvin Fitting abstract. Proving the completeness of classical propositional logic by using maximal consistent sets is perhaps the most common method there

More information

1.1 The Boolean Bit. Note some important things about information, some of which are illustrated in this example:

1.1 The Boolean Bit. Note some important things about information, some of which are illustrated in this example: Chapter Bits Information is measured in bits, just as length is measured in meters and time is measured in seconds. Of course knowing the amount of information, in bits, is not the same as knowing the

More information

Digital Circuit And Logic Design I. Lecture 3

Digital Circuit And Logic Design I. Lecture 3 Digital Circuit And Logic Design I Lecture 3 Outline Combinational Logic Design Principles (). Introduction 2. Switching algebra 3. Combinational-circuit analysis 4. Combinational-circuit synthesis Panupong

More information

Reasoning About Imperative Programs. COS 441 Slides 10b

Reasoning About Imperative Programs. COS 441 Slides 10b Reasoning About Imperative Programs COS 441 Slides 10b Last time Hoare Logic: { P } C { Q } Agenda If P is true in the initial state s. And C in state s evaluates to s. Then Q must be true in s. Program

More information

COMMUTATIVE ALGEBRA LECTURE 1: SOME CATEGORY THEORY

COMMUTATIVE ALGEBRA LECTURE 1: SOME CATEGORY THEORY COMMUTATIVE ALGEBRA LECTURE 1: SOME CATEGORY THEORY VIVEK SHENDE A ring is a set R with two binary operations, an addition + and a multiplication. Always there should be an identity 0 for addition, an

More information

Introduction to Kleene Algebras

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

On Paradoxes in Proof-Theoretic Semantics

On Paradoxes in Proof-Theoretic Semantics Quantum Group Dept. of Computer Science Oxford University 2nd PTS Conference, Tübingen, March 8, 2013 Outline 1 Categorical Harmony Logical Constants as Adjoint Functors Comparison with Other Concepts

More information

CHAPTER 10. Gentzen Style Proof Systems for Classical Logic

CHAPTER 10. Gentzen Style Proof Systems for Classical Logic CHAPTER 10 Gentzen Style Proof Systems for Classical Logic Hilbert style systems are easy to define and admit a simple proof of the Completeness Theorem but they are difficult to use. By humans, not mentioning

More information

2009 Spring CS211 Digital Systems & Lab CHAPTER 2: INTRODUCTION TO LOGIC CIRCUITS

2009 Spring CS211 Digital Systems & Lab CHAPTER 2: INTRODUCTION TO LOGIC CIRCUITS CHAPTER 2: INTRODUCTION TO LOGIC CIRCUITS What will we learn? 2 Logic functions and circuits Boolean Algebra Logic gates and Synthesis CAD tools and VHDL Read Section 2.9 and 2.0 Terminology 3 Digital

More information

A brief introduction to Logic. (slides from

A brief introduction to Logic. (slides from A brief introduction to Logic (slides from http://www.decision-procedures.org/) 1 A Brief Introduction to Logic - Outline Propositional Logic :Syntax Propositional Logic :Semantics Satisfiability and validity

More information

Truth-Functional Logic

Truth-Functional Logic Truth-Functional Logic Syntax Every atomic sentence (A, B, C, ) is a sentence and are sentences With ϕ a sentence, the negation ϕ is a sentence With ϕ and ψ sentences, the conjunction ϕ ψ is a sentence

More information

Introduction to Metalogic

Introduction to Metalogic Introduction to Metalogic Hans Halvorson September 21, 2016 Logical grammar Definition. A propositional signature Σ is a collection of items, which we call propositional constants. Sometimes these propositional

More information

Lecture 10: Gentzen Systems to Refinement Logic CS 4860 Spring 2009 Thursday, February 19, 2009

Lecture 10: Gentzen Systems to Refinement Logic CS 4860 Spring 2009 Thursday, February 19, 2009 Applied Logic Lecture 10: Gentzen Systems to Refinement Logic CS 4860 Spring 2009 Thursday, February 19, 2009 Last Tuesday we have looked into Gentzen systems as an alternative proof calculus, which focuses

More information

In the beginning God created tensor... as a picture

In the beginning God created tensor... as a picture In the beginning God created tensor... as a picture Bob Coecke coecke@comlab.ox.ac.uk EPSRC Advanced Research Fellow Oxford University Computing Laboratory se10.comlab.ox.ac.uk:8080/bobcoecke/home en.html

More information

Ex: Boolean expression for majority function F = A'BC + AB'C + ABC ' + ABC.

Ex: Boolean expression for majority function F = A'BC + AB'C + ABC ' + ABC. Boolean Expression Forms: Sum-of-products (SOP) Write an AND term for each input combination that produces a 1 output. Write the input variable if its value is 1; write its complement otherwise. OR the

More information

Sémantique des jeux asynchrones et réécriture 2-dimensionnelle

Sémantique des jeux asynchrones et réécriture 2-dimensionnelle Sémantique des jeux asynchrones et réécriture 2-dimensionnelle Soutenance de thèse de doctorat Samuel Mimram Laboratoire PPS (CNRS Université Paris Diderot) 1 er décembre 2008 1 / 64 A program is a text

More information

Depending on equations

Depending on equations Depending on equations A proof-relevant framework for unification in dependent type theory Jesper Cockx DistriNet KU Leuven 3 September 2017 Unification for dependent types Unification is used for many

More information

A BOUNDARY NOTATION FOR VISUAL MATHEMATICS Jeffrey James and William Bricken September Published in IEEE Visual Languages'92 ABSTRACT

A BOUNDARY NOTATION FOR VISUAL MATHEMATICS Jeffrey James and William Bricken September Published in IEEE Visual Languages'92 ABSTRACT A BOUNDARY NOTATION FOR VISUAL MATHEMATICS Jeffrey James and William Bricken September 1992 Published in IEEE Visual Languages'92 ABSTRACT Instead of traditional mathematical notation, we can describe

More information

Quantum computing! quantum gates! Fisica dell Energia!

Quantum computing! quantum gates! Fisica dell Energia! Quantum computing! quantum gates! Fisica dell Energia! What is Quantum Computing?! Calculation based on the laws of Quantum Mechanics.! Uses Quantum Mechanical Phenomena to perform operations on data.!

More information

Computer Organization: Boolean Logic

Computer Organization: Boolean Logic Computer Organization: Boolean Logic Representing and Manipulating Data Last Unit How to represent data as a sequence of bits How to interpret bit representations Use of levels of abstraction in representing

More information

CSC9R6 Computer Design. Practical Digital Logic

CSC9R6 Computer Design. Practical Digital Logic CSC9R6 Computer Design Practical Digital Logic 1 References (for this part of CSC9R6) Hamacher et al: Computer Organization App A. In library Floyd: Digital Fundamentals Ch 1, 3-6, 8-10 web page: www.prenhall.com/floyd/

More information

Simple Neural Nets for Pattern Classification: McCulloch-Pitts Threshold Logic CS 5870

Simple Neural Nets for Pattern Classification: McCulloch-Pitts Threshold Logic CS 5870 Simple Neural Nets for Pattern Classification: McCulloch-Pitts Threshold Logic CS 5870 Jugal Kalita University of Colorado Colorado Springs Fall 2014 Logic Gates and Boolean Algebra Logic gates are used

More information

BOOLEAN ALGEBRA INTRODUCTION SUBSETS

BOOLEAN ALGEBRA INTRODUCTION SUBSETS BOOLEAN ALGEBRA M. Ragheb 1/294/2018 INTRODUCTION Modern algebra is centered around the concept of an algebraic system: A, consisting of a set of elements: ai, i=1, 2,, which are combined by a set of operations

More information

CHAPTER 12 Boolean Algebra

CHAPTER 12 Boolean Algebra 318 Chapter 12 Boolean Algebra CHAPTER 12 Boolean Algebra SECTION 12.1 Boolean Functions 2. a) Since x 1 = x, the only solution is x = 0. b) Since 0 + 0 = 0 and 1 + 1 = 1, the only solution is x = 0. c)

More information

Lecture 11: Measuring the Complexity of Proofs

Lecture 11: Measuring the Complexity of Proofs IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Advanced Course on Computational Complexity Lecture 11: Measuring the Complexity of Proofs David Mix Barrington and Alexis Maciel July

More information

EDA045F: Program Analysis LECTURE 10: TYPES 1. Christoph Reichenbach

EDA045F: Program Analysis LECTURE 10: TYPES 1. Christoph Reichenbach EDA045F: Program Analysis LECTURE 10: TYPES 1 Christoph Reichenbach In the last lecture... Performance Counters Challenges in Dynamic Performance Analysis Taint Analysis Binary Instrumentation 2 / 44 Types

More information

A categorical quantum logic

A categorical quantum logic Proc QPL 2004, pp 3 20 A categorical quantum logic Samson Abramsky Ross Duncan Oxford University Computing Laboratory Abstract We define a sequent calculus corresponding to the logic of strongly compact

More information

Unit 8A Computer Organization. Boolean Logic and Gates

Unit 8A Computer Organization. Boolean Logic and Gates Unit 8A Computer Organization Boolean Logic and Gates Announcements Bring ear buds or headphones to lab! 15110 Principles of Computing, Carnegie Mellon University - CORTINA 2 Representing and Manipulating

More information

Applied Category Theory. John Baez

Applied Category Theory. John Baez Applied Category Theory John Baez In many areas of science and engineering, people use diagrams of networks, with boxes connected by wires: In many areas of science and engineering, people use diagrams

More information

= x ( x 2 4 ) [factor out x] (2)

= x ( x 2 4 ) [factor out x] (2) Connexions module: m10717 1 Part IIc: Propositional Logic 1 Propositional Equivalences What are the roots of x 3 4x? Well, in high-school algebra you learned how to deal with such numeric formulas: x 3

More information

Topic 1: Propositional logic

Topic 1: Propositional logic Topic 1: Propositional logic Guy McCusker 1 1 University of Bath Logic! This lecture is about the simplest kind of mathematical logic: propositional calculus. We discuss propositions, which are statements

More information

COS 140: Foundations of Computer Science

COS 140: Foundations of Computer Science COS 140: Foundations of Computer Science Boolean Algebra Fall 2018 Introduction 3 Problem................................................................. 3 Boolean algebra...........................................................

More information

A higher-order temporal logic for dynamical systems

A higher-order temporal logic for dynamical systems A higher-order temporal logic for dynamical systems David I. Spivak and Patrick Schultz Mathematics Department Massachusetts Institute of Technology AMS Fall Sectional, Riverside CA November 4, 2017 0

More information

Chapter 2 Boolean Algebra and Logic Gates

Chapter 2 Boolean Algebra and Logic Gates Chapter 2 Boolean Algebra and Logic Gates Huntington Postulates 1. (a) Closure w.r.t. +. (b) Closure w.r.t.. 2. (a) Identity element 0 w.r.t. +. x + 0 = 0 + x = x. (b) Identity element 1 w.r.t.. x 1 =

More information

Chapter 11 Evolution by Permutation

Chapter 11 Evolution by Permutation Chapter 11 Evolution by Permutation In what follows a very brief account of reversible evolution and, in particular, reversible computation by permutation will be presented We shall follow Mermin s account

More information

Adequate set of connectives, logic gates and circuits

Adequate set of connectives, logic gates and circuits Adequate set of connectives, logic gates and circuits Lila Kari University of Waterloo Adequate set of connectives, logic gates and circuits CS245, Logic and Computation 1 / 59 Connectives We have mentioned

More information

Towards a Flowchart Diagrammatic Language for Monad-based Semantics

Towards a Flowchart Diagrammatic Language for Monad-based Semantics Towards a Flowchart Diagrammatic Language or Monad-based Semantics Julian Jakob Friedrich-Alexander-Universität Erlangen-Nürnberg julian.jakob@au.de 21.06.2016 Introductory Examples 1 2 + 3 3 9 36 4 while

More information

1 Categorical Background

1 Categorical Background 1 Categorical Background 1.1 Categories and Functors Definition 1.1.1 A category C is given by a class of objects, often denoted by ob C, and for any two objects A, B of C a proper set of morphisms C(A,

More information

ELEC Digital Logic Circuits Fall 2014 Boolean Algebra (Chapter 2)

ELEC Digital Logic Circuits Fall 2014 Boolean Algebra (Chapter 2) ELEC 2200-002 Digital Logic Circuits Fall 2014 Boolean Algebra (Chapter 2) Vishwani D. Agrawal James J. Danaher Professor Department of Electrical and Computer Engineering Auburn University, Auburn, AL

More information

Relational semantics for a fragment of linear logic

Relational semantics for a fragment of linear logic Relational semantics for a fragment of linear logic Dion Coumans March 4, 2011 Abstract Relational semantics, given by Kripke frames, play an essential role in the study of modal and intuitionistic logic.

More information

Lecture Notes on The Curry-Howard Isomorphism

Lecture Notes on The Curry-Howard Isomorphism Lecture Notes on The Curry-Howard Isomorphism 15-312: Foundations of Programming Languages Frank Pfenning Lecture 27 ecember 4, 2003 In this lecture we explore an interesting connection between logic and

More information

Boolean Algebras, Boolean Rings and Stone s Representation Theorem

Boolean Algebras, Boolean Rings and Stone s Representation Theorem Boolean Algebras, Boolean Rings and Stone s Representation Theorem Hongtaek Jung December 27, 2017 Abstract This is a part of a supplementary note for a Logic and Set Theory course. The main goal is to

More information

Boolean Algebra CHAPTER 15

Boolean Algebra CHAPTER 15 CHAPTER 15 Boolean Algebra 15.1 INTRODUCTION Both sets and propositions satisfy similar laws, which are listed in Tables 1-1 and 4-1 (in Chapters 1 and 4, respectively). These laws are used to define an

More information

Categorical quantum mechanics

Categorical quantum mechanics Categorical quantum mechanics Chris Heunen 1 / 76 Categorical Quantum Mechanics? Study of compositional nature of (physical) systems Primitive notion: forming compound systems 2 / 76 Categorical Quantum

More information

CHAPTER 2 INTRODUCTION TO CLASSICAL PROPOSITIONAL LOGIC

CHAPTER 2 INTRODUCTION TO CLASSICAL PROPOSITIONAL LOGIC CHAPTER 2 INTRODUCTION TO CLASSICAL PROPOSITIONAL LOGIC 1 Motivation and History The origins of the classical propositional logic, classical propositional calculus, as it was, and still often is called,

More information

Monoidal Categories, Bialgebras, and Automata

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

Hoare Logic: Reasoning About Imperative Programs

Hoare Logic: Reasoning About Imperative Programs Hoare Logic: Reasoning About Imperative Programs COMP1600 / COMP6260 Dirk Pattinson Australian National University Semester 2, 2018 Programming Paradigms Functional. (Haskell, SML, OCaml,... ) main paradigm:

More information

CS 226: Digital Logic Design

CS 226: Digital Logic Design CS 226: Digital Logic Design 0 1 1 I S 0 1 0 S Department of Computer Science and Engineering, Indian Institute of Technology Bombay. 1 of 29 Objectives In this lecture we will introduce: 1. Logic functions

More information

Baby's First Diagrammatic Calculus for Quantum Information Processing

Baby's First Diagrammatic Calculus for Quantum Information Processing Baby's First Diagrammatic Calculus for Quantum Information Processing Vladimir Zamdzhiev Department of Computer Science Tulane University 30 May 2018 1 / 38 Quantum computing ˆ Quantum computing is usually

More information

Discrete Quantum Theories

Discrete Quantum Theories Discrete Quantum Theories Andrew J. Hanson 1 Gerardo Ortiz 2 Amr Sabry 1 Yu-Tsung Tai 3 (1) School of Informatics and Computing (2) Department of Physics (3) Mathematics Department Indiana University July

More information

Categories in Control John Baez and Jason Erbele

Categories in Control John Baez and Jason Erbele Categories in Control John Baez and Jason Erbele Categories are great for describing processes. A process with input x and output y is a morphism F : x y, and we can draw it like this: F We can do one

More information

Algebraic Geometry

Algebraic Geometry MIT OpenCourseWare http://ocw.mit.edu 18.726 Algebraic Geometry Spring 2009 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 18.726: Algebraic Geometry

More information

control in out in out Figure 1. Binary switch: (a) opened or off; (b) closed or on.

control in out in out Figure 1. Binary switch: (a) opened or off; (b) closed or on. Chapter 2 Digital Circuits Page 1 of 18 2. Digital Circuits Our world is an analog world. Measurements that we make of the physical objects around us are never in discrete units but rather in a continuous

More information

Logic Design. Chapter 2: Introduction to Logic Circuits

Logic Design. Chapter 2: Introduction to Logic Circuits Logic Design Chapter 2: Introduction to Logic Circuits Introduction Logic circuits perform operation on digital signal Digital signal: signal values are restricted to a few discrete values Binary logic

More information

Contents. Chapter 2 Digital Circuits Page 1 of 30

Contents. Chapter 2 Digital Circuits Page 1 of 30 Chapter 2 Digital Circuits Page 1 of 30 Contents Contents... 1 2 Digital Circuits... 2 2.1 Binary Numbers... 2 2.2 Binary Switch... 4 2.3 Basic Logic Operators and Logic Expressions... 5 2.4 Truth Tables...

More information

II. COMBINATIONAL LOGIC DESIGN. - algebra defined on a set of 2 elements, {0, 1}, with binary operators multiply (AND), add (OR), and invert (NOT):

II. COMBINATIONAL LOGIC DESIGN. - algebra defined on a set of 2 elements, {0, 1}, with binary operators multiply (AND), add (OR), and invert (NOT): ENGI 386 Digital Logic II. COMBINATIONAL LOGIC DESIGN Combinational Logic output of digital system is only dependent on current inputs (i.e., no memory) (a) Boolean Algebra - developed by George Boole

More information

Finite Dimensional Hilbert Spaces are Complete for Dagger Compact Closed Categories (Extended Abstract)

Finite Dimensional Hilbert Spaces are Complete for Dagger Compact Closed Categories (Extended Abstract) Electronic Notes in Theoretical Computer Science 270 (1) (2011) 113 119 www.elsevier.com/locate/entcs Finite Dimensional Hilbert Spaces are Complete or Dagger Compact Closed Categories (Extended bstract)

More information

Copy-Cat Strategies and Information Flow in Physics, Geometry, Logic and Computation

Copy-Cat Strategies and Information Flow in Physics, Geometry, Logic and Computation Copy-Cat Strategies and Information Flow in Physics, Geometry, and Computation Samson Abramsky Oxford University Computing Laboratory Copy-Cat Strategies and Information Flow CQL Workshop August 2007 1

More information

Propositional Logic: Methods of Proof (Part II)

Propositional Logic: Methods of Proof (Part II) Propositional Logic: Methods of Proof (Part II) You will be expected to know Basic definitions Inference, derive, sound, complete Conjunctive Normal Form (CNF) Convert a Boolean formula to CNF Do a short

More information

A Graph Theoretic Perspective on CPM(Rel)

A Graph Theoretic Perspective on CPM(Rel) A Graph Theoretic Perspective on CPM(Rel) Daniel Marsden Mixed states are of interest in quantum mechanics for modelling partial information. More recently categorical approaches to linguistics have also

More information

Chapter 2 Combinational Logic Circuits

Chapter 2 Combinational Logic Circuits Logic and Computer Design Fundamentals Chapter 2 Combinational Logic Circuits Part 1 Gate Circuits and Boolean Equations Charles Kime & Thomas Kaminski 2008 Pearson Education, Inc. Overview Part 1 Gate

More information

Propositional Logics and their Algebraic Equivalents

Propositional Logics and their Algebraic Equivalents Propositional Logics and their Algebraic Equivalents Kyle Brooks April 18, 2012 Contents 1 Introduction 1 2 Formal Logic Systems 1 2.1 Consequence Relations......................... 2 3 Propositional Logic

More information

Logic for Computational Effects: work in progress

Logic for Computational Effects: work in progress 1 Logic for Computational Effects: work in progress Gordon Plotkin and John Power School of Informatics University of Edinburgh King s Buildings Mayfield Road Edinburgh EH9 3JZ Scotland gdp@inf.ed.ac.uk,

More information

Notes for Lecture 3... x 4

Notes for Lecture 3... x 4 Stanford University CS254: Computational Complexity Notes 3 Luca Trevisan January 14, 2014 Notes for Lecture 3 In this lecture we introduce the computational model of boolean circuits and prove that polynomial

More information

Boolean Algebra and Digital Logic

Boolean Algebra and Digital Logic All modern digital computers are dependent on circuits that implement Boolean functions. We shall discuss two classes of such circuits: Combinational and Sequential. The difference between the two types

More information

Homotopy Type Theory

Homotopy Type Theory Homotopy Type Theory Jeremy Avigad Department of Philosophy and Department of Mathematical Sciences Carnegie Mellon University February 2016 Homotopy Type Theory HoTT relies on a novel homotopy-theoretic

More information

A categorical view of computational effects

A categorical view of computational effects Emily Riehl Johns Hopkins University A categorical view of computational effects C mp se::conference 1. Functions, composition, and categories 2. Categories for computational effects (monads) 3. Categories

More information

Combinational Logic Trainer Lab Manual

Combinational Logic Trainer Lab Manual Combinational Logic Trainer Lab Manual Control Inputs Microprocessor Data Inputs ff Control Unit '0' Datapath MUX Nextstate Logic State Memory Register Output Logic Control Signals ALU ff Register Status

More information

LOGIC PROPOSITIONAL REASONING

LOGIC PROPOSITIONAL REASONING LOGIC PROPOSITIONAL REASONING 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 Linz Version 2018.1

More information

CS 121 Digital Logic Design. Chapter 2. Teacher Assistant. Hanin Abdulrahman

CS 121 Digital Logic Design. Chapter 2. Teacher Assistant. Hanin Abdulrahman CS 121 Digital Logic Design Chapter 2 Teacher Assistant Hanin Abdulrahman 1 2 Outline 2.2 Basic Definitions 2.3 Axiomatic Definition of Boolean Algebra. 2.4 Basic Theorems and Properties 2.5 Boolean Functions

More information

Dynamic Semantics. Dynamic Semantics. Operational Semantics Axiomatic Semantics Denotational Semantic. Operational Semantics

Dynamic Semantics. Dynamic Semantics. Operational Semantics Axiomatic Semantics Denotational Semantic. Operational Semantics Dynamic Semantics Operational Semantics Denotational Semantic Dynamic Semantics Operational Semantics Operational Semantics Describe meaning by executing program on machine Machine can be actual or simulated

More information

Chapter 2: Boolean Algebra and Logic Gates

Chapter 2: Boolean Algebra and Logic Gates Chapter 2: Boolean Algebra and Logic Gates Mathematical methods that simplify binary logics or circuits rely primarily on Boolean algebra. Boolean algebra: a set of elements, a set of operators, and a

More information

1 September 1997 PEG Event-Symmetry for Superstrings. Philip E. Gibbs

1 September 1997 PEG Event-Symmetry for Superstrings. Philip E. Gibbs 1 September 1997 PEG-16-97 Event-Symmetry for Superstrings Philip E. Gibbs I apply the principle of event-symmetry to simple string models and discuss how these lead to the conviction that multiple quantisation

More information

EC-121 Digital Logic Design

EC-121 Digital Logic Design EC-121 Digital Logic Design Lecture 2 [Updated on 02-04-18] Boolean Algebra and Logic Gates Dr Hashim Ali Spring 2018 Department of Computer Science and Engineering HITEC University Taxila!1 Overview What

More information

CHAPTER1: Digital Logic Circuits Combination Circuits

CHAPTER1: Digital Logic Circuits Combination Circuits CS224: Computer Organization S.KHABET CHAPTER1: Digital Logic Circuits Combination Circuits 1 PRIMITIVE LOGIC GATES Each of our basic operations can be implemented in hardware using a primitive logic gate.

More information

Building a (sort of) GoI from denotational semantics: an improvisation

Building a (sort of) GoI from denotational semantics: an improvisation Building a (sort of) GoI from denotational semantics: an improvisation Damiano Mazza Laboratoire d Informatique de Paris Nord CNRS Université Paris 13 Workshop on Geometry of Interaction, Traced Monoidal

More information