Saturday, January 28, 2023

Visualising information flows of finite functions

One way that I can demonstrate that information flows is through visualisation. That information flows form a lattice can be seen intuitively by realising that if the information in $P_1$ determines the information in $Q_1$ and the information in $P_2$ determines the information in $Q_2$ then the combined information $P_1P_2$ determines the information in $Q_1Q_2$. That they form a lattice also means they can be displayed as Hasse diagrams, so you can see what they look like.

All visualisations will be done with Clojure and Graphviz. In order to create set theoretic functions, we need the data of an input set, an output set, and a Clojure function or map. This ensures that we can handle functions that are not surjective. But in the easier case where they are surjective, we can just get a function using the to-function method. The elements of the information flow lattices are partition pairs, which are vectors of disjoint families of sets.

Small functions:
(SetFunction. #{0} #{0} {0 0})
(SetFunction. #{0 1} #{0} {0 0, 1 0})
(SetFunction. #{0 1} #{0 1} {0 0, 1 1})
(SetFunction. #{0 1} #{0 1} {0 0, 1 0})
(SetFunction. #{0 1 2} #{0} {0 0, 1 0, 2 0})
(SetFunction. #{0 1} #{0 1 2} {0 0, 1 1})
(SetFunction. #{0 1 2} #{0 2} {0 0, 1 0, 2 2})
(SetFunction. #{0 1 2} #{0 1 2} {0 0, 1 1, 2 2})

Intermediate sized functions:
(to-function {0 0, 1 0, 2 0, 3 0})
(to-function {0 0, 1 0, 2 2, 3 2})
(to-function {0 0, 1 0, 2 0, 3 3})
(to-function {0 0, 1 1, 2 2, 3 2})
(to-function {0 0, 1 1, 2 2, 3 3})
(to-function {0 0, 1 0, 2 0, 3 0, 4 0})
(to-function {0 0, 1 0, 2 2, 3 2, 4 2})
(to-function {0 0, 1 0, 2 0, 3 0, 4 4})
(to-function {0 0, 1 0, 2 0, 3 3, 4 4})
(to-function {0 0, 1 1, 2 1, 3 3, 4 3})
(to-function {0 0, 1 1, 2 2, 3 3, 4 3})
(to-function {0 0, 1 1, 2 2, 3 3, 4 4})
Large or infinite functions:
By generality, functions larger then these have information flow lattices even if we cannot visualize them. The algebraic theory of information ensures that we can exist. Using mathematical techniques we can describe their properties even in the infinite case.

References:
[1] Hartmanis, J., & Stearns, R. E. (1966). Algebraic structure theory of sequential machines. Prentice-Hall.

[2] Lausmaa, T. (2005). Extropy-based quantitative evaluation of finite functions. Proceedings of the Estonian Academy of Sciences. Physics. Mathematics, 54(2), 67. https://doi.org/10.3176/phys.math.2005.2.01

No comments:

Post a Comment