Normalized Systems Theorems

These theorems are at the core of the Normalized Systems theory. The proof for them can be found in the Normalized Systems Theory book.

Postulate 1

An evolving information system should not have instabilities: a bounded amount of additional functional requirements cannot lead to an unbounded amount of additional (versions of) software primitives.

Theorem 1

A processing function can only contain a single task in order to achieve stability.

Theorem 2

A data structure that is passed through the interface of a processing function needs to exhibit version transparency in order to achieve stability.

Theorem 3

A processing function that is called by another processing function, needs to exhibit version transparency in order to achieve stability.

Theorem 4

Calling a processing function within another processing function, needs to exhibit state keeping in order to achieve stability.

Postulate 2

An evolving information system should not generate entropy: the introduction of additional data structure or processing function instantiations cannot lead to multiple microstates consistent with one macrostate.

Theorem 5

A processing function can only contain a single task in order to obtain isentropic software.

Theorem 6

For every instantiation of a data structure serving as an argument for a processing instantiation, its actual version and instance need to be exported to the observable macrostate, in order to obtain isentropic software.

Theorem 7

For every instantiation of a processing function, its actual version and the thread it is embedded in, need to be exported to the observable macrostate, in order to obtain isentropic software.

Theorem 8

Calling a processing function within another processing function needs to exhibit state keeping in order to achieve isentropic software.