Reversible Computation Computational Group Theory and Circuit Synthesis.

Slides:



Advertisements
Similar presentations
Department of Computer Science & Engineering University of Washington
Advertisements

University of Queensland
Reversible Gates in various realization technologies
Puzzle Twin primes are two prime numbers whose difference is two.
LU Factorization.
Logical Systems Synthesis.
Recursively Defined Functions
Midterm Exam for Quantum Computing Class Marek Perkowski.
CSE115/ENGR160 Discrete Mathematics 04/17/12
A Transformation Based Algorithm for Reversible Logic Synthesis D. Michael Miller Dmitri Maslov Gerhard W. Dueck Design Automation Conference, 2003.
DARPA Scalable Simplification of Reversible Circuits Vivek Shende, Aditya Prasad, Igor Markov, and John Hayes The Univ. of Michigan, EECS.
Reversible Circuit Synthesis Vivek Shende & Aditya Prasad.
Ch. 4: Velocity Kinematics
Engineering Models and Design Methods for Quantum State Machines.
April 25, A Constructive Group Theory based Algorithm for Reversible Logic Synthesis.
Section 10.3 Logic Gates.
Quantum Computing Lecture 22 Michele Mosca. Correcting Phase Errors l Suppose the environment effects error on our quantum computer, where This is a description.
CSEP 590tv: Quantum Computing
CSE115/ENGR160 Discrete Mathematics 02/14/12 Ming-Hsuan Yang UC Merced 1.
Section 4.1 Finite Permutation Groups Permutation of a Set Let A be the set { 1, 2, …, n }. A permutation on A is a function f : A  A that is both one-to-one.
Fast Spectral Transforms and Logic Synthesis DoRon Motter August 2, 2001.
Lecture 8: Cascaded Linear Transformations Row and Column Selection Permutation Matrices Matrix Transpose Sections 2.2.3, 2.3.
 Combinational circuit that selects binary information from one of many input lines and directs information to a single output line.
CSEP 590tv: Quantum Computing Dave Bacon June 29, 2005 Today’s Menu Administrivia Complex Numbers Bra’s Ket’s and All That Quantum Circuits.
Lecture 3. Boolean Algebra, Logic Gates Prof. Sin-Min Lee Department of Computer Science 2x.
Classical Versus Quantum. Goal: Fast, low-cost implementation of useful algorithms using standard components (gates) and design techniques Classical Logic.
CSCI 5857: Encoding and Encryption
CPSC 171 Introduction to Computer Science Boolean Logic, Gates, & Circuits.
1 Introduction to Abstract Mathematics Applications : Digital Logic Circuits 2.4 and Number Systems 2.5 Instructor: Hayk Melikya
Chapter 3.5 Logic Circuits. How does Boolean algebra relate to computer circuits? Data is stored and manipulated in a computer as a binary number. Individual.
Fall 2002CMSC Discrete Structures1 One, two, three, we’re… Counting.
CS1Q Computer Systems Lecture 6 Simon Gay. Lecture 6CS1Q Computer Systems - Simon Gay2 Algebraic Notation Writing AND, OR, NOT etc. is long-winded and.
Slide 1 Vitaly Shmatikov CS 380S Yao’s Protocol. slide Yao’s Protocol uCompute any function securely … in the semi-honest model uFirst, convert.
Permutation Groups Part 1. Definition A permutation of a set A is a function from A to A that is both one to one and onto.
DISCRETE COMPUTATIONAL STRUCTURES CS Fall 2005.
CPS3340 COMPUTER ARCHITECTURE Fall Semester, /05/2013 Lecture 4: Basics of Logic Design Instructor: Ashraf Yaseen DEPARTMENT OF MATH & COMPUTER.
Logic Gates Shashidhara H S Dept. of ISE MSRIT. Basic Logic Design and Boolean Algebra GATES = basic digital building blocks which correspond to and perform.
Sneha.  Gates Gates  Characteristics of gates Characteristics of gates  Basic Gates Basic Gates  AND Gate AND Gate  OR gate OR gate  NOT gate NOT.
You Did Not Just Read This or did you?. Quantum Computing Dave Bacon Department of Computer Science & Engineering University of Washington Lecture 3:
Great Theoretical Ideas in Computer Science for Some.
Linear Algebra. Circuits The circuits in computers and other input devices have inputs, each of which is either a 0 or 1, the output is also 0s and 1s.
Logic Gates. The Inverter The inverter (NOT circuit) performs the operation called inversion or complementation. Standard logic symbols: 1 1 input output.
Weikang Qian. Outline Intersection Pattern and the Problem Motivation Solution 2.
CS1Q Computer Systems Lecture 6 Simon Gay. Lecture 6CS1Q Computer Systems - Simon Gay2 Algebraic Notation Writing AND, OR, NOT etc. is long-winded and.
Sequential Logic Computer Organization II 1 © McQuain A clock is a free-running signal with a cycle time. A clock may be either high or.
SECTION 9 Orbits, Cycles, and the Alternating Groups Given a set A, a relation in A is defined by : For a, b  A, let a  b if and only if b =  n (a)
CLASSICAL LOGIC SRFPGA layout With I/O pins.
2/24/20161 One, two, three, we’re… Counting. 2/24/20162 Basic Counting Principles Counting problems are of the following kind: “How many different 8-letter.
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Yaohang Li.
LOGIC CIRCUITLOGIC CIRCUIT. Goal To understand how digital a computer can work, at the lowest level. To understand what is possible and the limitations.
Lecture 5 Graph Theory prepped by Lecturer ahmed AL tememe 1.
Module Code MA0003NI: Computing mathematics Lecture for Week Autumn.
Chapter 12. Chapter Summary Boolean Functions Representing Boolean Functions Logic Gates Minimization of Circuits (not currently included in overheads)
Computer Architecture & Operations I
Computer Architecture & Operations I
COCS DISCRETE STRUCTURES
Mathematical Analysis of a Nim-like Matrix Game Leo Livshits, Ph. D
CSCI-100 Introduction to Computing
Fredkin/Toffoli Templates for Reversible Logic Synthesis
3.4 Computer systems Boolean logic Lesson 2.
Week 7: Gates and Circuits: PART II
Introduction to Quantum logic (2)
Logic operations.
GCSE Computer Science – Logic Gates & Boolean Expressions
Counting Elements of Disjoint Sets: The Addition Rule
Chapter 4 Gates and Circuits.
DES (Data Encryption Standard)
A toy example for RC4.
Counting Elements of Disjoint Sets: The Addition Rule
Agenda Lecture Content: Combinatorial Circuits Boolean Algebras
Presentation transcript:

Reversible Computation Computational Group Theory and Circuit Synthesis

Reversible Functions are Permutations A reversible function on n bits (which must have n output bits) can be seen as a permutation in S N, N=2 n. For example, the “controlled not” operation on 2 bits is either the permutation (13) or (23) depending on which bit is the control. The “swap” operation on 2 bits is the permutation (12).

Permutation Kronecker Products The Kronecker Product of two permutations a,b is defined as the permutation corresponding to the Kronecker Product of the matrices of a and b. Consider a 2 bit gate given by the permutation p in S 4. Now suppose one wants the permutation in S 16 that it would effect if placed on the 2nd and 3rd bits in a reversible circuit of 4 bits. To find it, one simply takes the Kronecker Product i # p # i (where i is the identity in S 2 )

“wire permutations” One may apply a gate on any combination of wires. In group theoretic terms, this is equivalent to stating that one may “conjugate” a gate by any permutation of wires.

Reversible Circuit Synthesis Using permutation Kronecker products and conjugation by wire permutations, one may easily construct the set of group elements corresponding to a given set of gates This allows the use of tools from computational group theory algorithms for reversible circuit synthesis

Some Immediate Observations Taking the tensor product of a transposition with the identity in S 2 gives a permutation that is the product of 2 disjoint transpositions. Therefore, no set of gates which each operate on only n-1 bits will suffice to synthesize every reversible function on n bits However, adding a “work bit” alleviates this problem.