Expand description
§eryon
Eryon is a research project aimed at harmonizing computation. Eryon is inspired from the Neo-Riemannian theory of music using a blend of abstract mathematics and computer science to develop a new paradigm for computation.
Eryon works by establishing the topological equivalence between a 2-simplex and the headspace ($Q\times\Sigma$) of a Universal Turing Machine (UTM). This allows us to bridge the two, rather alien worlds of computation and music theory using the triad as the basis for describing a topological unit of compute. As a result, we can begin to explore the implications of a UTM that is capable of making adjustment to its own headspace to gaurentee the completion of a given task and how these machines can interact with one another.
Modeling the UTM as a 2-simplex allows us to represent a set of machines as the tonnetz, a unique representation capable of describing the configuration of the cluster through space as well as the state of each instance through time.
Modules§
- actors
- the
actorsprovide define basic units of compute for the framework - error
- this module implements the core error type for the crate
- mem
- the topological memory system for the system
- ops
- this module implements additional operational traits used throughout the crate
- prelude
- rand
- Utilities for random number generation
- rand_
distr - Generating random samples from probability distributions.
- rstmt
- rstmt
- rt
- runtime modules for using the framework
- state
- the state module implements the
Statetype and its associated traits and types - traits
- this module define various traits common to the crate
- types
- this module defines the core types for the eryon framework
- utils
Macros§
- rulemap
- a macro to create a
HashMapof rules for a Turing machine. The macro takes a list of rules in the form of
Structs§
- Direction
Iter - An iterator over the variants of Direction
- Head
- The Head is formally defined to be a 2-tuple consisting of a state / symbol pair.
- Learned
Rule - Power
Iter - An iterator over the variants of Power
- State
- State is a generalized state implementation, representing the state of a system or object.
- Tail
- The Tail is a 3-tuple containing the direction, state, and symbol that an actor is instructed to execute whenever it assumes the head configuration assigned to the tail.
Enums§
- Direction
- Direction enumerates the various directions a head can move, namely: left, right, and stay.
- Error
- The
Errortype enumerates the core errors that are handled by the framework - Power
Traits§
- Decrement
- Decrement
Mut - Execute
- A trait denoting the ability to execute a given operation, transaction, etc.
- Execute
Mut - Increment
- Increment
Mut - Into
Direction IntoDirectionis a simple conversion trait for consuming types to turn into aDirection.- Numerical
- Percent
Difference - a trait for computing the percent difference between two values where the caller is considered the original value
- RawState
RawStateis a trait describing objects capable of being used as states in our library. The trait contains a single associated trait, the context, or inner value of the state.- Scalar
- Scalar
Complex - Shuffle
- A trait for shuffling a collection
- Symbolic
- Transform
Functions§
- triangle_
area - given the coordinates of the vertices of a triangle, calculate the area