Prime Clocks. Michael Stephen Fiske. 10th GI Conference on Autonomous Systems October 23, AEMEA Institute. San Francisco, California

Similar documents
Computer Organization: Boolean Logic

Implementation of Boolean Logic by Digital Circuits

Boolean Algebra & Digital Logic

Unit 8A Computer Organization. Boolean Logic and Gates

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

Computer Science. 20. Combinational Circuits. Computer Science COMPUTER SCIENCE. Section

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

CS 226: Digital Logic Design

CSE 20 DISCRETE MATH. Fall

Applications. Smartphone, tablet, game controller, antilock brakes, microprocessor, Wires

0 volts. 2 volts. 5 volts

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

20. Combinational Circuits

Note: The area of logic that deals with propositions is called the propositional calculus or propositional logic.

History & Binary Representation

ELCT201: DIGITAL LOGIC DESIGN

Computer Science. 19. Combinational Circuits. Computer Science COMPUTER SCIENCE. Section 6.1.

Introduction to Quantum Computation

MAA509: Quantum Computing and Information Introduction

Logic Synthesis and Verification

BOOLEAN ALGEBRA INTRODUCTION SUBSETS

Chapter 2 Combinational Logic Circuits

Intro To Digital Logic

4 Switching Algebra 4.1 Axioms; Signals and Switching Algebra

Boolean algebra. Values

2. Associative Law: A binary operator * on a set S is said to be associated whenever (A*B)*C = A*(B*C) for all A,B,C S.

From Physics to Logic

Logic and Boolean algebra

Switches: basic element of physical implementations

Binary addition example worked out

Contents. Chapter 2 Digital Circuits Page 1 of 30

quantum mechanics is a hugely successful theory... QSIT08.V01 Page 1

1.0 Introduction to Quantum Systems for Information Technology 1.1 Motivation

ECE/CS 250 Computer Architecture

ECE 250 / CPS 250 Computer Architecture. Basics of Logic Design Boolean Algebra, Logic Gates

Digital Electronics Part 1: Binary Logic

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

Chapter 2: Switching Algebra and Logic Circuits

Transistor and Integrated Circuits: History

Total Time = 90 Minutes, Total Marks = 50. Total /50 /10 /18

Computer organization

Building a Computer Adder

Chapter 2. Digital Logic Basics

Propositional Logic: Equivalence

Adders, subtractors comparators, multipliers and other ALU elements

CS1800 Discrete Structures Final Version A

Unit 4: Computer as a logic machine

Sample Problems for all sections of CMSC250, Midterm 1 Fall 2014

Notation Index. gcd(a, b) (greatest common divisor) NT-16

IST 4 Information and Logic

Digital Logic. CS211 Computer Architecture. l Topics. l Transistors (Design & Types) l Logic Gates. l Combinational Circuits.

CNS 188a Computation Theory and Neural Systems. Monday and Wednesday 1:30-3:00 Moore 080

Digital Logic: Boolean Algebra and Gates. Textbook Chapter 3

IST 4 Information and Logic

Logic Gates and Boolean Algebra

Outline. policies for the first part. with some potential answers... MCS 260 Lecture 10.0 Introduction to Computer Science Jan Verschelde, 9 July 2014

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: NP-Completeness I Date: 11/13/18

L9: Galois Fields. Reading material

EECS150 - Digital Design Lecture 21 - Design Blocks

Boolean algebra. Examples of these individual laws of Boolean, rules and theorems for Boolean algebra are given in the following table.

CMPE12 - Notes chapter 1. Digital Logic. (Textbook Chapter 3)

CS/COE1541: Introduction to Computer Architecture. Logic Design Review. Sangyeun Cho. Computer Science Department University of Pittsburgh

Combinational Logic Design Principles

CprE 281: Digital Logic

Chapter 2. Boolean Algebra and Logic Gates

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

CS/COE0447: Computer Organization

CS/COE0447: Computer Organization

UNIT 8A Computer Circuitry: Layers of Abstraction. Boolean Logic & Truth Tables

CprE 281: Digital Logic

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

Experiment 7: Magnitude comparators

Logic design? Transistor as a switch. Layered design approach. CS/COE1541: Introduction to Computer Architecture. Logic Design Review.

Logic Design. Chapter 2: Introduction to Logic Circuits

What is a Computer? computer: anything that is able to take a mathematically

THE LOGIC OF COMPOUND STATEMENTS

Introduction. Foundations of Computing Science. Pallab Dasgupta Professor, Dept. of Computer Sc & Engg INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR

MODULE- 07 : FLUIDICS AND FLUID LOGIC

Fundamentals of Digital Design

ELEC Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10)

Lecture 6: Introducing Complexity

Digital Logic (2) Boolean Algebra

CSC103 How Computers Work

MACHINE COMPUTING. the limitations

Bits. Chapter 1. Information can be learned through observation, experiment, or measurement.

Menu. Let s logically analyze a simple paragraph:

Discrete Mathematics and Its Applications

ECE 340 Lecture 31 : Narrow Base Diode Class Outline:

Revisiting Finite Field Multiplication Using Dickson Bases

Chapter 1 :: From Zero to One

Why digital? Overview. Number Systems. Binary to Decimal conversion

Mark Redekopp, All rights reserved. Lecture 1 Slides. Intro Number Systems Logic Functions

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

CS/COE0447: Computer Organization and Assembly Language

Boolean Algebra, Gates and Circuits

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

How Does Nature Compute?

Automata Theory CS Complexity Theory I: Polynomial Time

Circuits & Boolean algebra.

Discrete Mathematics. CS204: Spring, Jong C. Park Computer Science Department KAIST

Transcription:

Prime Clocks Michael Stephen Fiske 10th GI Conference on Autonomous Systems October 23, 2017 AEMEA Institute San Francisco, California

Motivation for Prime Clocks The mindset of mainstream computer science algorithms is SERIAL. Digital computers execute their machine instructions ONE INSTRUCTION (one step) at a TIME but there is no explicit reference to time. Active Element Machine (AEM), 2011. http://www.aemea.org/aem (1) Every AEM command has an explicit reference to time. (2) Multiple AEM commands can execute at the same time. The AEM is an inherently parallel computing machine.

Digital Computers and Early Logic Gates Late 1930 s, Digital Computers constructed from logic gates. 1,2 Based on Boolean logic 3, various forms of logic gates arose: mechanical switches, electro-mechanical devices, vacuum tubes. 4,5,6,7 1 Konrad Zuse. Patentanmeldung Z-2391, German Patent Office, 1941. 2 Raul Rojas. Konrad Zuse s Legacy: The Architecture of the Z1 and Z3. IEEE Annals of the History of Computing, Vol. 19, No. 2, 1997. 3 George Boole. An Investigation into the Laws of Thought. Walton and Maberly, 1854. 4 H. Aiken & G. Hopper. The Automatic Sequence Controlled Calculator. Springer 203-222, 1982. 5 Alice & Arthur Burks. The ENIAC. Annals of History of Computing, Vol. 3, No. 4, 310-399, 1981. 6 C. Shannon. The synthesis of two-terminal switching circuits. Bell Systems Journal, 28, 59-98, 1949. 7 Alan Turing. Proposals for Development in the Mathematics Division of ACE. Report E882. NPL, 1945.

Transistors Transformed Logic Gates Transistors 8,9,10 transformed logic gates and enabled the integrated circuit 11,12. AND gate 8 J. Lilienfeld. Method and apparatus for controlling electric current. U.S. Patent 1,745,175. Oct. 8, 1926. 9 J. Lilienfeld. Device for controlling electric current. U.S. Patent 1,900,018. Filed March 28, 1928. 10 J. Bardeen & W.H. Brattain. The Transistor, A Semi-Conductor Triode. Physical Review, 74, 230-231, June 25, 1948. 11 Jack Kilby. Miniaturized Electronic Circuits. U.S. Patent 3,138,743, 1959. 12 Robert N. Noyce. Semiconductor Device-and-Lead Structure. U.S. Patent 2,981,877, 1959.

AND, OR, NOT Logic Gates The conjunction ^, disjunction _ and negation, operators (i.e., AND, OR, comnot gates) form a Boolean algebra. Any Boolean function f : {0, 1} n {0, 1} can be constructed from a finite composition of AND, OR, NOT gates. A B A ^ B 0 0 0 1 0 0 0 1 0 1 1 1 A B A _ B 0 0 0 1 0 1 0 1 1 1 1 1 A A 0 1 1 0 A ^ B 0 A _ B 0 A

Shannon s Theorem Most Boolean functions f : {0, 1} n {0, 1} built from AND, 2 OR, NOT gates require about n gates. n x 0 x 1 x 2 h(x 0 x 1 x 2 x 3 ) x 3 h(x 0 x 1 x 2 x 3 )= (x 0 ^ x 1 ) ^ ( x 2 ) ^ x 3 _ x0 ^ x 1 ^ x 2 ^ ( x 3 ) _ ( x 2 ) ^ ( x 3 ) (3)

Consequences of Boolean algebra and Shannon s Theorem Circuits built from AND, OR, NOT gates have a depth. because and. (x ^ y) 6= ( x) ^ y (0 ^ 0) =1 ( 0) ^ 0 = 0 Complete parallelism with logic gates is not attainable. The complexity of the graph connectivity of the gates for most functions f : {0, 1} n {0, 1} is exponential as a function of n. Each gate has 1 or 2 input lines and 1 output line, so the exponential complexity follows from Shannon s theorem.

[2, 0] clock [3, 1] clock [7, 3] clock Prime Clocks [13, 6] clock 0 0 6 0 1 11 12 0 1 2 1 2 1 5 4 3 2 10 9 8 7 6 5 4 3 A [2, 0] clock ticks 0, 1, 0, 1, 0, 1,... A [3, 1] clock ticks 1, 2, 0, 1, 2, 0,... A [7, 3] clock ticks 3, 4, 5, 6, 0, 1, 2, 3, 4,... A [13, 6] clock ticks 6, 7, 8, 9, 10, 11, 12, 0, 1, 2, 3, 4, 5, 6,...

Prime Clock Sums in W 2 Time [2, 0] [3, 1] [2, 0] [3, 1] [7, 3] [13, 6] [7, 3] [13, 6] 0 0 1 1 3 6 1 1 1 2 1 4 7 1 2 0 0 0 5 8 1 3 1 1 0 6 9 1 4 0 2 0 0 10 0 5 1 0 1 1 11 0... W n is the set of all sequences a : N! {0, 1,... n 1}. Prime clock sums in can compute Boolean functions. For a and b in, define a + n b = c where ci = (ai + bi) mod n. For n 2, with binary operator + n is a commutative group. W n W n W 2 Commutativity means the clock computation can be parallelized.

A Prime Clock Sum in W 5 Time [5, 3] [7, 6] [11, 3] [13, 0] [5, 3] 5 [7, 6] 5 [11, 3] 5 [13, 0] 0 3 6 3 0 2 1 4 0 4 1 4 2 0 1 5 2 3 3 1 2 6 3 2 4 2 3 7 4 1 5 3 4 8 5 0 6 4 5 9 6 4 7 0 6 10 7 3 8 1 0 0 8 4... Notation: [5, 3] 5[7, 6] 5[11, 3] 5[13, 0] (6) =4 Prime Clock sums can be computed in any. The rest of the talk will focus on prime clock sums in. W n W 2

Parallelization of Prime Clock Sums vs. Circuit Depth With m = x 0 + 2x 1 + 4x 2 + 8x 3, prime clock sum ([7, 3] [13, 6])(m) computes the same function on {0, 1} 4 as function h(x 0 x 1 x 2 x 3 )= (x 0 ^ x 1 ) ^ ( x 2 ) ^ x 3 _ x0 ^ x 1 ^ x 2 ^ ( x 3 ) _ ( x 2 ) ^ ( x 3 ) (3) x 0 x 1 x 2 h(x 0 x 1 x 2 x 3 ) x 3

Prime Clock Sum Algorithm 1 Prime Clock Sum [q 1, t 1 ] [q 2, t 2 ]... ALGORITHM 1. INPUT: i Set b 1 = ( (i + t 1 ) mod q 1 ) mod 2 Set b 2 = ( (i + t 2 ) mod q 2 ) mod 2... Set b L = ( (i + t L ) mod q L ) mod 2 Set y = (b 1 + b 2 +... + b L ) mod 2 OUTPUT: y [q L, t L ] Hardware computes (b 1 + b 2 +... + b L ) mod 2 as a parallel exclusive-or. 13 For 0 < k < L+1, L distinct clocks can compute ( (i + t k ) mod q k ) mod 2 in parallel. 13 Hao Yan, Liping Feng, Thomas H. LaBean and John H. Reif. Parallel Molecular Computations of Pairwise Exclusive-Or (XOR) Using DNA String Tile Self-Assembly. J. Am. Chem. Soc., 125, 47, 14246 14247, 2003.

Prime Clock Sum Algorithm 2 Prime Clock Sum [q 1, t 1 ] [q 2, t 2 ]... ALGORITHM 2. INPUT: i Set b 1 = (i + t 1 ) mod q 1 [q L, t L ] Set b 2 = (i + t 2 ) mod q 2... Set b L = (i + t L ) mod q L Set y = (b 1 + b 2 +... + b L ) mod 2 OUTPUT: y

2 bit multiplication Multiplication functions M i : {0, 1} 4! {0, 1}. M 0 = [2, 0] [7, 3] [7, 4] [7, 5] [11, 10] M1 = [2, 0] [2, 1] [3, 0] [5, 2] [11,0] [11,1] M2 = [5, 0] [7, 0] [7, 2] [11, 4] M3 = [2, 1] [5, 0] [11, 1] [11, 6] u l M 3 M 2 M 1 M 0 00 00 0 0 0 0 00 01 0 0 0 0 00 10 0 0 0 0 00 11 0 0 0 0 01 00 0 0 0 0 01 01 0 0 0 1 01 10 0 0 1 0 01 11 0 0 1 1 10 00 0 0 0 0 10 01 0 0 1 0 10 10 0 1 0 0 10 11 0 1 1 0 11 00 0 0 0 0 11 01 0 0 1 1 11 10 0 1 1 0 11 11 1 0 0 1

Can the finite Prime Clock Sums compute all Boolean functions? Yes. Showing this is true requires some work. A group is a set G and binary operation + with 4 properties. (I) + is closed on G. (II) + is associative on G. (a + b) + c = a + (b + c). (III) G has a unique identity e. For all a in G, a + e = e + a = a. (IV) Each a in G has a unique inverse g. a + g = g + a = e. For positive integer m, define Bm = { b 1 b 2... b m : b i is 0 or 1}. Set Bm has 2 m bit strings. Define binary operator + 2 on Bm as a 1... a m + 2 b 1... b m = c 1... c m with c i = (a i + b i ) mod 2. Set Bm with binary operation + 2 is a commutative group.

Prime clocks [p, 0], [p, 1],..., [p, p 1] Consider prime clocks [p, 0], [p, 1], [p, 2],..., [p, p 1]. Prime number p is called a 1 mod 4 prime if (p 1) / 2 is even. Prime number p is called a 3 mod 4 prime if (p 1) / 2 is odd. Prime clock sum [q 1, t 1 ] [q 2, t 2 ] [q L, t L ]. is mapped to a bit string c 0 c 1... c p-1 in Bp = {0, 1} p where bit ck = ( [q 1, t 1 ] [q 2, t 2 ] [q L, t L ].) (k). uth table in F. uth table in F. n 2 n Theorem 3. If p is a 3 mod 4 prime, the subgroup of generated by clocks [p, 0], [p, 1],... [p, p 1] is isomorphic to Bp = {0, 1} p n 2 n W 2

The subgroup generated by the 7 clocks 7 is a 3 mod 4 prime. The subgroup of W 2 generated by the clocks [7, 0], [7, 1], [7, 2], [7, 3], [7, 4], [7, 5], [7, 6] is isomorphic to {0, 1} 7. Time [7, 0] [7, 1] [7, 2] [7, 3] [7, 0] [7, 2] [7, 3] [7, 1] [7, 2] [7, 3] 0 0 1 0 1 1 0 1 1 0 1 0 0 1 2 0 1 0 1 1 0 3 1 0 1 0 0 1 4 0 1 0 0 0 1 5 1 0 0 1 0 1 6 0 0 1 0 1 1...

Clocks built from a 1 mod 4 prime Theorem 5. If p is a 1 mod 4 prime, the subgroup of W 2 generated by clocks [p, 0], [p, 1],... [p, p 1] is isomorphic to Bp 1. 5 is a 1 mod 4 prime. In table 5, [5, 0] [5, 1] =[5, 2] [5, 3] [5, 4] Table 5: The 5-clocks projected into W 2 Time [5, 0] [5, 1] [5, 2] [5, 3] [5, 4] [5, 0] [5, 1] [5, 2] [5, 3] [5, 4] 0 0 1 0 1 0 1 1 1 1 0 1 0 0 1 1 2 0 1 0 0 1 1 1 3 1 0 0 1 0 1 1 4 0 0 1 0 1 0 0 5 0 1 0 1 0 1 1...

Main Theorem Main Theorem. For any positive integer n and any function f : {0, 1} n {0, 1}, there exists a finite sum of prime clocks in that can compute f. PROOF. Since there are an infinite number of primes, there is a prime number p > 2 n, so (p 1) 2 n. Now, p is a 1 mod 4 or a 3 mod 4 prime. Theorems 3, 5 imply that prime clocks [p, 0], [p, 1],... [p, p 1] generate a subgroup isomorphic to Bp 1 or Bp. In either case Bp 1 or Bp, for every bit string of length 2 n, there is a prime clock sum built from clocks [p, 0], [p, 1],... [p, p 1] that computes this bit string. One of these prime clock sums W 2

Proof of Main Theorem computes the bit string: f( 0 n ) f( 0 n 1 1 ) f( 0 n 2 10 ) and so on all the way up to f( 1 n ) where 0 n corresponds to 0 0 n 1 1 corresponds to 1 0 n 2 10 corresponds to 2 and so on all the way up to 1 n corresponds to 2 n 1.

Summary When for each prime clock, there is one physical device, the computation is as parallel as a large XOR. Interesting: Parallel computation has been reduced to parallelizing a huge XOR computation. If a computational task can be transformed to one or more Boolean functions, then decentralized computation across a network is robust to timing and race conditions.

Questions - Part 1 In some cases, using smaller clocks with different primes is more efficient than using clocks [p, 0], [p, 1],... [p, p 1]. Under what conditions are smaller clocks preferable? When one or more large primes are used, the mod 2 operation discards a lot of information. When the primes are large, can computation be made more efficient by working in W n where n >> 2? What types of hardware or wetware (e.g., DNA computation) are suitable for building prime clocks and massively parallelizing XOR?

Questions - Part 2 What are potential applications in machine learning and genetic algorithms? What are the potential applications in security and cryptography?

Questions - Strange Attractors In dynamical systems theory, the periodic points are often dense in the attractor and for each positive integer n, there is a periodic point with period n. Example: horseshoe map. 14 Do prime clocks provide any direction on how strange attractors can be used computationally? 14 Stephen Smale. Differentiable Dynamical Systems. Bulletin of the American Mathematical Society. Vol. 73, No. 6, 747-817, 1967.