1. Central Idea
Inference Associative Memory (IAM) was created in 1985 and first described in writing in 1988.
IAM is an architectural approach to machine memory and inference based on information entering a common associative system, developing relationships through its history, and using those relationships to produce later inference.
IAM does not require every kind of information to have its own predefined memory category. Sound, sight, text, temperature, measurements and other information can enter a common associative process.
2. Identical Machines
Two machines can begin with the same executable and the same nominal input and still develop different processing histories if the timing and ordering of events differ.
In IAM, history matters. A difference in when information becomes available, when a Short Term Memory (STM) position is released, or which associator acts first can change the resulting associative state.
3. No Randomness
IAM does not require a software randomness function to produce different responses. Differences can arise from deterministic differences in timing, ordering, memory availability and physical processing conditions.
This does not mean that every physical difference must change an output. The testable claim is narrower: physical and processing conditions can potentially alter event order, and event order can alter associative history.
4. Associative Memory
IAM treats incoming information as patterns entering a common associative process. Associations are part of the memory structure and can influence what information is encountered quickly and what inference can be returned.
Connections Like Dendrites
In IAM, an association can be thought of as a connection between pieces of information. These connections are conceptually similar to dendritic connections in a biological nervous system: they can form and reorganize as information is processed.
Association does not have to stop when IAM is not producing an external response. Connections can continue to form while the system is awake, during dreaming or sleep, or while other work is being performed.
This distinguishes processing information from producing a response. IAM can continue changing its associative memory even when there is no immediate input or output to the outside world.
Associations can change memory location
As associations are formed, information can move toward lower, more persistent memory levels. This means information that becomes common, frequently useful, or strongly associated can become located in a portion of memory that can be reached more quickly.
If commonly useful information can be located more quickly, the inference depending on that information can potentially be returned more quickly.
The important distinction is that this is not merely a search optimization imposed from outside the associative system. Memory movement is part of the proposed architecture's ongoing organization of information.
5. Acceptors
Acceptors are used as the mechanism by which information enters the system. They function conceptually like sensory input: they receive information and make it available to memory and associative processes.
The same fundamental acceptor mechanism can be used for different kinds of input. The information may be text, sound, temperature, an image, a measurement, or another source. The acceptor mechanism remains fundamentally the same. What changes is the information being accepted.
The doorway admits information; it does not have to determine what that information will ultimately mean.
The Flooding of STM
Acceptors are the entry point for information entering IAM. They can receive information substantially faster than the associators can complete the work required to process that information.
Initially, the acceptors can effectively “flood” STM with incoming information. This reflects an important difference in processing time: accepting an item and placing it into STM is much faster than searching 3D memory and completing the associative work required to process that item.
How an STM Slot Is Processed
- An acceptor receives an item of information.
- The item is placed into the first available empty STM array position.
- An associator processes the item and searches memory for an existing association or creates a new association.
- Only after the associator has completed that work does the associator free the STM slot.
- The released slot becomes available for a new incoming item. Multiple associators are running at the same time between Short Term Memory (STM) and Intermediate Term Memory (ITM)
The associator frees the slot only after it has processed the item and either found an existing association or created a new association.
STM Fullness Changes Processing Priority
Because acceptors can initially receive information faster than associators can complete their work, STM can eventually become full. When there are no available STM slots, that condition changes the relative priority of the processes:
- Acceptors: run at very low priority because there is nowhere to place another item.
- Associators: run at higher priority so that STM information can be processed and slots can be released.
As associators complete their work, they release STM positions. Those positions immediately become available to acceptors. The system therefore continuously moves between receiving new information and processing information already received.
The Important Consequence
STM is therefore not simply a FIFO queue. Its available space is dynamic. A newer item can occupy a slot that was previously occupied by older information after an associator has released that slot. With multiple associators operating concurrently, a newer item can also be processed before an older item that remains in another STM position.
First-fit determines where newly received information enters the currently available STM space. It does not, by itself, determine chronological processing order.
When STM Has Been Processed
If all of STM has been processed and there is no new information arriving through an acceptor to interrupt the associators, the associative process can continue into deeper memory relationships. In the architecture described by IAM, this allows the system to begin associative processing between 3D ITM and 3D LTM.
That deeper processing is not a permanent mode. A new item received by an acceptor can interrupt it. The system can then return its attention to receiving and processing the new information.
6. Processing Cycle
The relationship between accepting information and associating information is one of the central operating mechanisms of IAM. The two activities do not require the same amount of time.
Incoming information
Acceptors can rapidly place new information into available STM positions.
Associative processing
Associators take longer because they must search memory, find an association, or create one.
When STM becomes full, the absence of available slots naturally shifts priority: acceptors run at very low priority while associators receive higher priority. As associators complete their work, they free STM positions, allowing acceptors to resume placing new information.
If all current STM information has been processed and no new information arrives, deeper associative processing can continue. A new acceptor input can interrupt that activity and return processing toward STM.
7. Associator
Associators operate on information available to the associative memory. Multiple associators can operate concurrently, and their activity interacts with STM availability, memory updates and timing.
Because associators are not required to process a single strict queue, a newer item can be acted upon before an older item that is still occupying another STM position.
8. Example
Visual + sound
A visual event enters the system. A sound arrives shortly afterward. IAM does not need a rule saying that visual information belongs with sound information. The two enter the same associative environment.
Possible result
Their temporal and informational relationship may produce an association, or they may remain unassociated. The architecture does not require the modality itself to become a permanent memory compartment.
9. History
Time and order are part of IAM's associative history. Short-term memory records information as it enters available STM positions, while the subsequent release and reuse of those positions affects what can be processed next.
Temporal proximity can contribute to an association, but proximity alone does not guarantee one. What matters is that timing is available as part of the conditions under which information is stored and processed.
10. Timing
Short Term Memory (STM) is a 2D memory queue, and it is dynamic rather than a simple FIFO queue. Incoming information uses the first available empty array position. Once an item has been associated, its STM position is released immediately.
- An incoming item occupies the first currently available STM position.
- An associator processes an item.
- After association, that STM position is released.
- The released position immediately becomes available for new information.
- A newer item can therefore occupy an earlier, lower-numbered position.
STM array position is not equivalent to chronological age. First-fit determines where newly received information enters the currently available STM space.
11. Memory Levels
IAM uses shared memory across its memory levels rather than treating each level as an isolated database. There are four memory levels:
Short Term Memory (STM)
2D memory queue. STM holds incoming and recently received information for active processing. Its available positions change as associators complete their work and release slots.
Intermediate Term Memory (ITM)
3D memory array. ITM provides an intermediate level through which information can be consolidated and associated with longer-term information.
Long Term Memory (LTM)
3D memory array. LTM provides persistent long-term associative storage and participates in continuing association with ITM and Archival Memory.
Archival Memory (AM)
3D memory array. AM is the archival level in which established information and associations can persist and continue to be reorganized.
Short Term Memory is a 2D queue. Intermediate Term Memory, Long Term Memory, and Archival Memory are all 3D memory arrays.
Associators are always active
Associators are always active between the memory arrays. They do not switch completely off when their priority is reduced. Instead, their relative priorities vary according to the operating state of IAM.
Because the memory is shared, multiple associators and memory processes can access and update information concurrently. The difference between alert and sleep states is therefore primarily a difference in processing priority, not a change from “running” to “not running.”
Alert-state priority
When IAM is alert, the highest priorities are given to incoming information and to the associations between 2D STM and 3D ITM. The associations between 3D ITM and 3D LTM continue running at a lower priority. The associations between 3D LTM and 3D AM also continue running, but at an even lower priority.
Highest priority
Incoming information
and
2D STM ↔ 3D ITM
Lower priorities
3D ITM ↔ 3D LTM
then
3D LTM ↔ 3D AM
This priority structure allows new information to receive immediate attention while the deeper memory relationships continue to operate in the background.
Memory movement
As associations are made, information can move toward lower, more persistent memory. This can make information that becomes common, frequently useful, or strongly associated easier to locate.
If commonly useful information can be located more quickly, the inference depending on that information can potentially be returned more quickly.
12. Awake
In the alert state, all of the associators remain active, but their priorities are different. The highest priorities are given to incoming information and the associations between 2D Short Term Memory (STM) and 3D Intermediate Term Memory (ITM).
HIGHEST
HIGH
LOWER
LOWEST
The associations between 3D ITM and 3D Long Term Memory (LTM) continue running at a lower priority, while the associations between 3D LTM and 3D Archival Memory (AM) continue at an even lower priority.
Thus, alert operation does not stop the deeper associators. It gives incoming information and the STM-to-ITM process the greatest opportunity to act first.
As useful information becomes established in lower memory, locating that information can potentially become faster. Associations can therefore contribute to both memory organization and later inference while the system remains alert.
13. Sleep
IAM can enter sleep when the 2D Short Term Memory (STM) queue is full, when STM is empty, or when the system is receiving highly repetitive information.
Informally, the repetitive condition can be described as the system becoming “bored.” More formally, it can be described as a low-associative-novelty or repetition condition.
Priority changes during sleep
Sleep does not turn the associators off. All of the associators remain active between the memory arrays, but their priorities adjust. Incoming information is reduced to very low priority when there is no available STM position, while the associators receive greater priority so that they can process STM and free positions.
Alert
Highest: incoming information and 2D STM ↔ 3D ITM.
Lower: 3D ITM ↔ 3D LTM.
Even lower: 3D LTM ↔ 3D AM.
Sleep
Incoming information is given very low priority when STM is full, while associative processing receives increased priority for memory processing and consolidation.
As STM is processed and slots are released, deeper associative activity can receive more opportunity to run.
When the STM queue has been processed and there is no new incoming information to interrupt the associators, the system can continue deeper associative processing, including associations involving 3D LTM and 3D AM. A new item entering STM can interrupt this deeper processing and shift priority back toward incoming information and STM-to-ITM association.
New information entering the 2D STM queue can interrupt sleep and return the system toward alert operation.
Progressive consolidation
14. Dream
In the IAM model, the dream state provides an associative process between 3D Intermediate Term Memory (ITM) and 3D Long Term Memory (LTM).
Current or recently received information can therefore interact with established long-term memory. The associators remain active, but the priority balance has shifted from normal alert processing toward memory association and consolidation.
During sleep states, information is not necessarily preserved exactly as it was originally received. Associations may reorganize, strengthen, weaken, or create new relationships between stored information. As a result, an output (inference) derived from an original input may be different from the original input—or it may remain unchanged. The architecture does not require that every sleep cycle modify information; modification occurs when the associative process produces a different state.
A proposed architectural mode for exploring recent information against established long-term memory.
Because ITM is a 3D memory array and LTM is a 3D memory array, this is an association between two differently structured 3D memory levels a current ITM and a potenially older LTM and can strengthen or enhance a memory realtionship.
15. Deep Sleep
In deep sleep, IAM provides associative processing between 3D Long Term Memory (LTM) and 3D Archival Memory (AM).
Because both LTM and AM are 3D memory arrays, the LTM-to-AM associative process is expected to do more than simply preserve existing relationships. It can change the organization of AM associations as associations are formed and reorganized.
The LTM-to-AM process may also generate totally new associations between information that was previously unrelated. In practical terms, those new associations could correspond to new ideas: a relationship becomes available that did not previously exist in the associative history.
LTM and AM continue their associative processing at the deeper end of the priority structure, potentially reorganizing archival associations and generating novel relationships or “ideas.”
This is a proposed architectural behavior and should be treated as testable rather than assumed to occur in every implementation.
16. Inference
Inference in IAM is a consequence of the current associative memory state and the history that produced it. Inference is basically an associator running in reverse.
As associations become established and information moves toward memory locations that can be reached more quickly, retrieval can potentially become faster. Consequently, an inference that depends on commonly located information can potentially be returned more quickly.
Different histories can produce different associative states, and different associative states can produce different inferences.
17. Working Implementation
IAM has been initially implemented in PHP though other languages may certainly be used. This implementation turns the architecture from a conceptual description into a concrete system that can be inspected, instrumented, tested and measured.
The existence of a working implementation is not presented as proof that IAM is superior to another architecture. Its value is that the proposed mechanisms can be examined directly and subjected to experiments.
18. Experiment
The architecture provides several measurable questions: STM allocation and release, concurrent associators, shared-memory updates, temporal ordering, memory movement, retrieval speed, memory consolidation, sleep transitions, cross-modal associations and inference outcomes.
Deterministic environmental variation
Processor and peripheral timing, crystal timing, temperature, electrical resistance, fan speeds, dust accumulation and differences in electrical power supplies can potentially influence when operations occur. A physical timing difference can therefore alter associative history without a software randomness function.
This does not mean every small physical change must alter an output. The testable question is whether controlled differences in timing or environment can measurably change processing order, memory organization or inference.
Research questions
- Can cross-modal associations emerge without predefined modality-specific memory compartments?
- What are the consequences of first-fit STM allocation combined with immediate slot release?
- How does concurrent associator activity affect processing order?
- Does movement toward lower memory levels measurably improve retrieval time for common information?
- Does faster retrieval produce measurably faster inference?
- How do shared-memory concurrent updates affect association and consolidation?
- What associations are formed during DREAM between 3D ITM and 3D LTM?
- Does DEEP SLEEP change AM associations through LTM ↔ AM processing?
- Can LTM-to-AM processing generate measurable new associations between previously unrelated information?
- Can deterministic physical timing differences alter associative history without a software randomness function?
19. Central Principle
As associations are formed, memory is reorganized. Information that becomes common or strongly useful can move toward lower memory and become easier to locate. Faster location can contribute to faster inference. During deep sleep, LTM and AM can continue associative processing, potentially changing archival associations and generating new relationships that may become new ideas.
IAM therefore treats memory as an active, evolving associative system rather than simply a passive collection of stored items.
20. How IAM Came About
IAM was created in 1985 and first described in writing in 1988. The architecture developed from thinking about how information could enter a machine, remain available through memory, form associations over time, and produce inference from those relationships.
The emphasis here is on the architecture itself: acceptors, associators, shared memory, temporal history, dynamic STM allocation, memory movement, sleep-based consolidation and inference.
IAM is presented as an alternative architectural hypothesis with a working PHP implementation. Its proposed behaviors are intended to be examined through testing, measurement and comparison.
IAM in one statement
IAM was created as an alternative approach to machine memory in which incoming information enters a common associative system, temporal history becomes part of memory, associations reorganize memory over time, multiple processes can update shared memory concurrently, and inference emerges from the evolving history of those associations.
This page distinguishes architectural claims and proposed behaviors from results that would require experimental validation.