Understanding and Programming Cyber-Physical Spaces

This website serves as a place for exploring ideas behind cyber-physical systems with Human-in-the-Loop, where software, physical processes, and human activities meet.

Simply, this is here referred to as cyber-physics: the merging of mathematical insight and software engineering pragmatism to allow for socio-technical places governed by digital-mechanical principles.

It is not only theoretically rich, but also practically applicable and empirically observable.

"It has often been said that a person does not really understand something until after teaching it to someone else. Actually a person does not really understand something until after teaching it to a computer, i.e. expressing it as an algorithm ... An attempt to formalize things as algorithms leads to a much deeper understanding than if we simply try to comprehend things in the traditional way." 

Knuth, D. E. (1996)

Modern cyber-physical environments blend people, machines, and networks. To model all this, languages must be cabable to express interactions across space, infrastructure, and human activity.

Visual and Formal Language

Algebra and geometry are complementary precise languages, bridging equations with diagrammatic insight.

Spatial Networks

Physical and virtual "entities" or "beings" are represented in spatial networks as nodes and their interactions as edges, showing socio-technical relationships.

Behavior and Topology

Behavioral invariants can be studied using topology, and in certain cases, behaviors can be composed subject to spatio–temporal bounds.

Multi-Resolution Data Structures

Multi-resolution structures enable analysis at both coarse and fine levels of detail.

Factoring by Equivalence Classes

Equivalence classes consolidate behavior into invariant forms. Factoring programs through these classes reduces redundancy by bundling computation along canonical paths (symmetry).

This formalization not only enables mathematical system design and analysis but serves as a cognitive tool to the understanding of cyber-physical environments in a constructive, explorative manner.

Cyber-Physical Spaces

Read more here →
"How to Program Smart Spaces: Building Interactive Worlds Where Code Meets Reality"

Read more here →
"A Mixed Reality Tool to Easily Set Up Indoor Tracking for Robots and Drones"

Rudolf Kaehr: "Double Cross Playing Diamonds", www.vordenker.de (Sommer Edition, 2017) J. Paul (Ed.), URL: http://www.vordenker.de/rk/rk_Double-Cross-Playing-Diamonds_2008.pdf

Multi-dimensional Digital Contextures

Multi-dimensional Digital Contexture refers to structured layers of digital interactions that unfold across both space and time, forming a kind of computational fabric. These contextures are not merely data. They carry informatic intent, structure, and behavior.

At the same time, they are deeply physical: situated in environments, shaped by motion and connectivity. In this view, software becomes not just an abstract set of instructions, but a spatially extended, temporally evolving phenomenon, where meaning and function emerge from the arrangement and transformation of digital matter in context.

The Architecture of Data

Executable Data Structures, whether viewed as runtime models, homoiconic representations (code as data), closures (behavior with data), or classes (data with behavior), represent just the other side of the same "multi-dimensional" coin. In some cases, data can be designed such that their form mirrors their meaning: not just syntax, but visible semantics.

This is especially true for diagram-based or network-like languages, where the structure is meant to be seen directly. Examples include tree-like hierarchies, or social networks rendered as spatial constellations of interacting bubbles.

Abstract Mathematics for Cyber-Physical Systems

From spatial structure to reactive behavior through Bigraphical Reactive Systems and Category Theory.

A mathematical model is required that not only captures the structural and dynamic properties of cyber-physical spaces, but also supports causal reasoning and facilitates some form of automated adaptation across heterogeneous domains. Such a model should serve as both a conceptual foundation and a practical framework for socio-technical systems in real-world contexts.

Logical Consistency under Spatial Manipulation

Like a fabric woven from logic, the computational space can stretch and shift with the physical world while its pattern of reasoning remains intact.


Equation Systems

The behavior is discretized and described by a rule-based language natively grounded on space, time, and energy.

Product Spaces for Distributed Embedded Computations

Permutation-invariant Process Coordination, Synchronization, and Parallelization (w.r.t. spacetime and energy)

Causality and Localizability

The capability to localize some causal structure is domain-specific. The stepsize of the actions determine the granularity of the causal graph and a kernel computes the deviation from the actual state.

Bounded Metaprogramming/
Templating

Formal proof methods are not only a design tool but also the motor of program execution.

Dual Structure of Behavior

A state–transition structure, together with a context structure that identifies where rules apply, allow for context analysis and detection.

Spatio-Temporal Program Composition

Operators define how to compose programs both in space and time, respecting causality and locality constraints.

Visual: 
Geometry and Algebra

A "visual algebra" serves both as a formal tool and an intuitive interface for reasoning about complexity.

Axiomatization of Bi-Spatial Structures

The bigraphical algebra allows to frame behavior as patterns of combination and symmetry. Operators describe how processes compose; equations capture invariants and identities; algebraic laws ensure predictability.


Stringent Testing: From Code to Experiment

"Software tools are essential for exploring the efficacy of the model, both for scientific analysis and for advanced software engineering."

R. Milner, The Space and Motion of Communicating Agents, 2009

Programming languages and tools are required that are built upon these bigraphical data structures grounded on basic category theory. Such languages must support both spatio-temporal analysis and programming in an integrated way, inherently offering features such as multi-modality, runtime modeling and execution, multi-level abstraction, resolution-aware modeling, and some form of "auto-parallelism."

Read more here →
www.bigraphs.org