Universally Programmable Intelligent Matter A Systematic Approach to Nanotechnology Bruce MacLennan University of Tennessee, Knoxville Supported by NSF NER grant and UTK Center for Information Technology Research Introduction & Definitions • Intelligent matter: individual molecules or molecular clusters function as agents • Universally programmable intelligent matter: made from a small set of building blocks that are computationally universal Goals • Avoid case-by-case nano-engineering of materials • Design one “universal material” that can be “programmed” for many applications • Requires a small, fixed set of molecular building blocks (& reactions), which can be arranged for varied purposes • Suggestive evidence for such sets K-substitution ((K X) Y) X K-Substitution as a Molecular Process S-Substitution (with Copying) (((S X) Y) Z) ((X Z) (Y Z)) S-Substitution (with Sharing) (((S X) Y) Z) ((X Z) (Y Z)) Computational Properties • Universality: S and K can compute anything that is computable • Church-Rosser Property: substitutions can be done in any order without affecting result SK Computation • Good model of nondeterministic & parallel computing • Has been studied as model of massively parallel computer architecture • Functional computer programs can be compiled into SK networks Example: Computing a Ring Ring (X,Y) = R where rec R = Aux (X,Y,R) Aux (X, nil, R) = R Aux (x:X, y:Y, R) = (x,y) : Aux (X,Y,R) Example: Computing a Tube Tube (nil, X, Y) = Ring (X, Y) Tube (a:N, X, Y) = Ring [X, Tube(N,X,Y)] Extensions • Sensor operations respond to environmental conditions • Effector operations have physical effects on environment • Execution of these “imperative” operations must be controlled Some Static Applications • Complex physical structures: chains, tubes, spheres, fibers, networks, quasi-crystalline structures • Membranes with pores or channels • Very dense analog neural networks • Sensor & effector organs for microrobots • Conventional computation Some Dynamic Applications • Membrane with controllable channels • Free-floating clusters controlling fluid properties • Semiautonomous agents to recognize and bind molecules • Sensory transducers, such as artificial retinas & cochleas • Effectors, such as cilia & artificial muscle fibers • Self-repair Developing an Application 1) 2) 3) 4) 5) 6) 7) 8) Write & debug program Compile into SK network Simulate on computer Flatten into DNA sequence Replicate DNA Construct molecular network from DNA Supply reactants for computation Optionally, replace by permanent groups Issues • • • • • • • • • Appropriate model of computation Replication/sharing problem Appropriate choice of combinators Blocking computation Nontraditional effects on computation Dealing with substitution error Geometrical issues Supply of reactants Identifying/synthesizing appropriate reactions Current Activities • • • • Developing mathematical model Theoretical analysis Developing simulation tool Programming sample applications