How does ADEPT work?

Like building blocks of information.

Imagine a pile of building blocks with different shapes and colors.  ADEPT is like that pile of blocks -  a particular reality governed by rules and limitations, but also with the potential for creativity.  ADEPT looks at the structure of all information as if it were made up of connected blocks.

The shapes of blocks represent informational context, such as an item in a list or a category of items.

The colors of blocks represent informational content, such as a name, a number, a sound, or a picture.

Now imagine "building" a table that could represented your music collection or perhaps, even became your music collection.  What else could you build?  

The claim of ADEPT is that with the right set of building blocks you can build anything.


Topics to Explore

Property Graph Databases: let's play!

Start with how ADEPT can be implemented as a property graph database.  

Alyx: content is the variety of colors

Learn about Alyx: a collection of every unique piece of informational content.

LION: context is connecting the blocks

Unpack what it means to say that ADEPT is a Limited Iterative Ontological Notation (LION).

ADEPT Notation

Begin to familiarize yourself with ADEPT's terminology and rules.

Ontological Constructs

This is the next step once you have understood the concepts introduced on this page.

ADEPT Dictionary

Search this reference of ADEPT terminology and definitions.

Property Graphs

What is a property graph?

You see them all over the place these days - those cool spider-web-like graphics of dots and lines that inevitably show up in images having to do with social networks, knowledge graphs, databases, analytics or AI.  

A property graph, or graph database, is a way of modeling information as things (the dots) and relationships that connect things (the lines).  


Elements of a Property Graph


Graph Nodes (aka Vertices)

Nodes or Vertices are the "dots" in a property graph that represent things.  Nodes have a "type" which identifies the kind of thing it is, such as a person.  The database assigns unique identifiers (#101 and #102) to each node so it can be tracked.


Graph Properties

Properties store specific information pertaining to a particular node.  For instance, you could give a person node properties such as name and phone number.  In our example, we have given a "Name" property to our person nodes with the values of "Bill" and "Steve".  


Graph Relationships (aka Edges)

Relationships are the connections between nodes that are assigned a type.  "knows" is one such relationship type between two person-labeled nodes.  In this example the relationship communicates the fact that "Bill knows Steve". Relationships are typically "directed" - meaning that they represent a relationship going in only one direction between two nodes. A graph database typically tracks relationships through the unique identifiers of the nodes which it relates.  In other words, Node #101 has a "knows" type of relationship that goes to Node #102.

Property Graphs in ADEPT

Now that we've built it we break it down

If you have ever played blocks with a toddler, then you will know that the most fun thing about building with blocks is destroying what you've just built.  ADEPT does this all the time.  It pulls everything apart until there are no more connections and then examines what unique kinds of blocks were used.

Isolate all content

Next, we isolates all content, like the words "Bill", "Steve" and "knows", from the context of the property graph.  But it goes further! ADEPT also treats words like "Person", "Name", and "#101" as content to be isolated.  These are the "values" given to the concepts of label, property and unique identifier.  All of this content, considered as a big collection, is what is called Alyx, or the symbolic library.

Rebuild context as patterns

Those concepts of node, relationship, property, label, and identifier are next rebuilt into patterns using ADEPT logic and notation.  The patterns are the "informational building blocks" that could describe any property graph, not just our example.  

Use ADEPT logic and notation to define and constrain the patterns

ADEPT defines a limited number of patterns and rules to govern them.  To use the block analogy, there are only 40 different functional types of blocks in ADEPT. These are called rivulets. Each rivulet may have additional sub-types or varieties which are functionally equivalent but distinguishable as unique patterns.  In ADEPT, there are 153 of these varieties and they are called trickles.


ADEPT As a property Graph

We went from two dots and one arrow to this?!

At first glance, you are probably thinking that things just got a whole lot messier!

Actually, we are looking at the same exact information as before but now in the more "atomic" view of ADEPT. Let's explain:

  1. Each piece of content in the graph is now represented as a gray circle. These are the symbolic library called Alyx.
  2. Each piece of context in the graph is now represented as a blue circle.  They have tags like "Property Value" and "Node" but these are just there to help with this visualization, these concepts now only exist primarily within the patterns formed by the arrows.
  3. The pattern of arrows connecting the circles are also reflected in the ADEPT rivulet/trickle notations which look like "SET--" or SEH\/".
  4. The three letters in the abbreviation refer to a rivulet type and the punctuation following the three letters indicates a trickle sub-type or variety of the rivulet.

This little example has likely raised more questions than it has provided answers, but that's okay.  We are beginning to see what is going on within ADEPT even if the notation and rules can still be a bit overwhelming.

Before diving any further into this example and the questions it raises, let's step back and look at ADEPT from the outside-in rather than the inside-out.  Let's see what it means to characterize ADEPT as a LION.

Some key observations.

  1. Recall that there are 40 rivulets in ADEPT. Building a property graph only required the use of two of them: SET and SEH.
  2. Recall that there are 153 trickles in ADEPT. For the SET rivulet we only used 1 of its 7 trickles, called SET--, and for the SEH rivulet we only used 6 of its 12 trickles, called SEH-\, SEH\*, SEH\-, SEH\/, SEH*-, and SEH*\.
  3. Notice that although we had two nodes in our original property graph, ADEPT reused content nodes like "Name" and "Person" twice.  Overall it may seem like a waste of dots and arrows, but as this graph grows in size, this re-using feature will be very helpful - keyword search capability has been built in and we have reduced redundancy. 

Limited Iterative Ontological Notation (LION)


What does LION mean?

Explaining the four words found in the LION acronym provides a good high-level summary of the key features of ADEPT as a theory of everything.


To say that ADEPT is “limited” means that it restricts itself to a set of constraints, or rules, as we have already begun to see in our discussion of property graphs. These constraints may seem to be a counter-intuitive step in building a “theory of everything”, but they are quite essential. Otherwise, handling the inevitable complexity would quickly become overwhelming. In ADEPT, modeling complexity is actually straight-forward when you stick to the constraints. 

  • Despite the format of any content, it is all treated as an act of representation. It is a value assigned to the only property in ADEPT, which is called "variable". 
  • All context of an ADEPT node is limited to only 7 types of relationship, called channels.
  • An ADEPT node is limited to one or less incoming relationship for each of the 7 channels.
  • For each ADEPT node there are three distinct considerations of the incoming patterns of the channels that are used to assign its functional type, which is called a rivulet.
  • There are only 40 possible rivulets distinguishable by patterns of connection.
  • There are only 153 sub-types of the 40 rivulets, called trickles. All trickles of a particular rivulet (these vary in number) are functionally equivalent but distinguishable by patterns.
  • Permissible outgoing relationships are restricted for each channel based upon the originating rivulet type.  The groupings of rivulets that are permissible for a particular channel are called waves.
  • Though a wave determines what are permissible relationships, not every connection will have a logically determinate effect in defining the rivulet type of a destination node.  The divisions of waves into determinate and indeterminate sub-groupings are called currents. The presence of the indeterminate relationships explains the existence of the functionally-equivalent varieties of trickle for any rivulet


Complexity is born from simplicity through iteration. In ADEPT, everything that can be is a variation on iterative themes of pattern recognition. 

We have already introduced the variations in the rivulets and trickles; they are the "building blocks" of what can be in ADEPT. It is in a teleological sense, or starting with an ultimate purpose in mind, that makes the rivulet types “functional”. The 40 rivulets are distinct purposes, or perhaps “capacities” within ADEPT. Although each trickle shares this functional capacity with its siblings, it is distinguishable by the fact that it used a different pattern to end up at a common purpose. The ordering of complex iterative patterns of connectivity through a constrained notation is where ADEPT finds its expressiveness.

We can observe in our universe that deterministic natural laws are at work. It is not a big leap of reason or faith to consider that it is constrained iteration that allows us to discern these laws. ADEPT elucidates what these iterative patterns are, what limits them, what they mean, and how we can recognize and use them. 


Ontological is a fancy word for meaningful. So, why not just call it a “limited iterative meaningful notation”? 

Well, because LION is a better acronym than LIMN.

So where is the meaning found in ADEPT? While the functional rivulet types and the iterative patterns of channels, currents and waves are certainly infused with meaning, it is hard to say that this is the primary basis of meaning.

The answer is that meaning itself is iterative in ADEPT so there is actually no real starting point. Rather, we will need to dissect the logic that governs ADEPT and its patterns and then step back, and find the meaning.  This dissection will proceed with a look at two things:

  1. ADEPT's "building blocks", called the ontological constructs
  2. ADEPT's governing rules called trinary logic of secondary references


Great! We have limitation, iteration and ontology. What we finally need is a notation so as to know what we are talking about in the realm of pattern recognition. In order to make learning ADEPT terminology easier, a water metaphor has been used.  You have already begun to see these terms in use, but here is an explanation of their origins.

The water metaphor in ADEPT found its inspiration in a personal experience. Years ago, as young physicians, my wife and I had an opportunity to practice medicine for a brief time in Antigua, Guatemala (and I do mean practice- we were only medical residents at the time). While there we took Spanish language classes from a friendly instructor named Hugo. On the weekends, Hugo loved to share Guatemala with his students and once, he took my wife and I to visit a natural wonder called Semuc Champey. Our experience there became the metaphorical inspiration for the ADEPT notation. 

Semuc Champey, Guatemala, CA

Semuc Champey

Guatemalan natural wonder inspires water metaphor in ADEPT

Semuc Champey is a series of naturally formed infinity pools and cascading turquoise waterfalls that sits atop a limestone bridge in a steep walled valley cut by an underground segment of the raging river Cahabon. This little experience of paradise, where the interaction of water and limestone create a magical environment became for me a tangible representation of order born from chaos. Information became the metaphorical water, first in the turmoil of a river’s flow thrust underground, but then diverted into structures that naturally order the water into surfaces and pools which are channeled from one to the next through trickles, rivulets, currents and waves. This imagery became the notation of ADEPT: a systematic ordering of the seemingly chaotic into something manageable, intelligible and delightful.  

ADEPT Notation as metaphorical water


Nodes are called "Rivulets"

The 40 rivulet types explain how an ADEPT node is formed and where it can go.

Rivulets encapsulate the function of an ADEPT node.


Relationships are called "Channels"

The 7 channels represent the meaning of the information that flows though the relationship of one rivulet to another.


Ordering constraints are called "Pools"

Every rivulet belongs to a pool that determines 

which channel(s) it can connect through to form other rivulets.