1.3 KiB
1.3 KiB
type, ty
type | ty |
---|---|
theoretical |
The foundations of computation
Looking for answers for basic questions like:
- Computability?
- Power
\leftrightarrow
Programming constructs?
Which leads us to fundamental concepts like:
- State
- Transitions
- Non-determinism
- Undecideability
Models
Finite memory
Finite memory with stack
Unrestricted
Turing machines
Grammars
On a higher level, it seems like grammars and machines are very different, but parsing a language (a set of strings) is quite similar to computation.
State-based systems and glossary
An FSM can be a specification for OOP.
- States (
q_0,\ldots, q_n
) - Transitions (
a,b,c,\ldots,z
) - We can interpret the transitions as class methods and specify the sequences of allowed invocations - typestate
Notation
x \in X, X\subseteq Y
\forall x \in X: P(x), \exists x \in X: P(x)
R \subseteq X \times Y
is a relation betweenX
andY
xRy \equiv (x,y) \in R
G = (V, E)
, whereE \subseteq V\times V
is a directed graph
Part of Relations and Digraphs