Possibility Research is a business devoted to creating a new kind of intelligent software that improves programming, decision making, contracts, and governance.
Computer technology is rapidly changing every aspect of our lives and society. The internet is connecting the whole of humanity into a kind of global brain. New results in neuroscience and psychology are giving us deep insights into our brains and minds. Artificial intelligence and robotics appear poised to dramatically change society.
And yet, all is not well. Today’s software is fraught with bugs and security holes. Poorly designed laws and governance structures have led to financial and ecological crises. Today’s programming languages are complex and insecure.
We need a new approach to computing that integrates intelligence into its very fabric. Two forthcoming books will describe work by Steve Omohundro and colleagues toward this end. The technical book is titled “Intelligent Computing: New Foundations” and the popular book is titled “Compassionate Intelligence: Smart Technology for a Better World”.
Omda aims to capture the essence of programming. It is one of the world’s simplest programming languages and yet is expressive, clear, and universal. It is a functional language based on a single programming construct and a single data structure. It is designed to be easy to reason about, reuse, and automatically generate.
Omex aims to capture the essence of specification. It is one of the world’s simplest specification languages and yet is expressive, clear, and universal. It integrates in a natural way with Omda.
Omai aims to capture the essence of semantics. It is built on rigorous mathematical foundations and yet makes it easy to specify a wide range of computational and real-world knowledge. It is expressive, clear, and universal.
Smart Lambda: The lambda calculus is the core of many programming languages and significant effort has been put into compiling it efficiently. We’re developing a new smart lambda approach that learns to improve its performance over time.
Smart Compilation: Today’s compilers transform programs into machine code using simple heuristics. But they don’t “understand” the programs they are compiling so they are intrinsically limited. We’re developing a new kind of compilation based on semantics and learning that is much more powerful and flexible.
Smart Scientific Computing: Most of today’s scientific computing is based on an approximate paradigm which requires human analysis to avoid ill-conditioned computation. This is an in inadequate basis for complex reliable systems. We’re developing a mathematically rigorous approach to scientific computing which uses learning and reasoning to dramatically improve both performance and accuracy.
Smart Simulation: Simulation is at the core of modelling and reasoning about computational and physical systems. Models range from cellular automata to differential equations to stochastic systems. We’re developing new rigorous approaches to dramatically speeding up simulations in each of these classes by using precise semantics combined with learning.
Smart Learning: Today’s machine learning systems are typically based on simple statistical models chosen by intuition, experimentation, and manual tuning. We are developing an automated meta-learning system that makes these choices automatically using rational decision making. New semantic learning provides a framework for automatically creating new concepts, theorems, and abstractions.
Smart Decision Making: The essence of intelligent systems is making good decisions in uncertain environments. We’re developing systems that adaptively improve decision making structures and representations.
Possibility Robotics: Today’s robots are based on large expensive actuators in fixed configurations. We are developing a new distributed approach to robotics which is much more flexible and inexpensive than the traditional approach.
Smart Contracts: Contracts are society’s programming language. Today they’re written in an imprecise, hard to read, and hard to write language. We’re developing a new framework that supports automatic contract creation, enforcement, and interpretation.
Smart Economics: The economy is society’s brain. The choices society makes, the project it supports, and the way it supports individuals are all governed by economic decisions. We’re developing a smarter framework for modelling economic behavior and making better decisions.
Smart Values: Decisions should be informed by human values. Today’s informal codes of human needs and values are insufficient for guiding future intelligent systems. Technologies that understand human values can be more responsive and provide more empathetic and engaging interfaces. We are developing new ways to elicit and represent human values to guide design.
Smart Governance: Laws are constraints on the actions of individuals and organizations. Today, laws are created by intuition and written in an imprecise language. We are creating tools for expressing laws in a precise semantic language, better understanding their likely impacts, and automatically designing laws to achieve desired outcomes.