← Building a WallPROJECT WIRING DIAGRAMS · FORAY 160All side projects ↗

Essay 01 of 03 / revised September 2026

Build a house.
Keep the interfaces honest.

A roof needs more than a wall-shaped output. It needs a wall that is ready to receive it.

Explore the wiring ↓
?Illustration — geometry is not a structural calculation
A teaching model of a roofed structural shell.

THE COMPLETE WIRING DIAGRAM

Every connection. Every return.

Change the conditions ↓
Fit
Select a wire or port to follow its connection. Select a process to see its boundary.

Colours group related resources; exact port types determine compatibility. Every line is one actual wire. Coloured circles are typed ports. Crossing wires do not join. Left → right shows dependencies, not elapsed time. Drag the background to pan, or use the scrollbars.

Start with a small house shell. Open its wall-building module, follow the resources, and change the evidence at the roof handoff. The question is what a reusable block must preserve when it becomes part of a larger project.

END

Reusable work blocks

Recurring packages should connect across projects without hiding their requirements. This house is a first example, not the final use case.

WAY

Wiring + interpretation

A typed, acyclic diagram supplies the connections. An SMC supplies composition; explicit relations supply the small model’s accepted behaviour.

MEANS

Open it and challenge it

Collapse or expand the wall package. Try a missing release or a replacement with stronger requirements. Inspect the actual ports and results.

01 / THE WORKING EXAMPLE

What can pass this boundary?

The wall box represents the whole supporting wall assembly of a prepared, one-storey shell. Foundations, structural design, skills and site provision are assumed. The access box checks a supplied access record; it does not erect scaffolding. Nothing here issues a real construction release.

Inspect the composition

A release for a different drawing revision fails the readiness check.

Declared conditions
Challenge the model

Two people share the type BL; they still need distinct identities. This interface requires two people; a single-worker version would need different, serial wiring.

Computed handoffs

    These are model evaluations, not work performed on a site. A rejected relation has no accepted outer output; the trace only explains where its conditions failed.

    Outer boundary and exact wiring table

    Supplied to the composite

      Returned by the composite

        Sand, cement, water, bricks and lintels are represented as adequate package inputs, not quantities. Trusses, roof coverings and fasteners are bundled as RoofKit; the model installs that kit in the shell. Waste, unused material and detailed quantities are outside this example. The drawing is threaded through successive processes, not silently copied.

        Every wire in the selected diagram
        Source portTypeDestination port

        Accepted output record

        02 / THE MATHEMATICS YOU CAN SEE

        Three layers, with different jobs

        1

        The wiring is a recipe

        A box has named, typed input and output ports. Each port has exactly one attachment in the chosen syntax. Connections are directed and acyclic. A crossing does not join two wires; a branch would need an explicit operation.

        Operadic substitution: replace Walling_One_Storey with its internal diagram, matching every boundary port. The expanded picture is produced by that substitution in the code.

        Φ[Walling ← Ψ] = the expanded wiring

        2

        The SMC combines processes

        Inside the module, a worker-identity check supplies two distinct labour instances to mixing and setting out. They can be placed alongside each other with ⊗. Their outputs feed later work through sequential composition ∘. Wires that bypass a step act as identities.

        BL ⊗ S ⊗ C ⊗ H2O → Mix → BL ⊗ MBL ⊗ P ⊗ D → Set → BL ⊗ L ⊗ P ⊗ D
        ↓ routing + other inputs ↓Build wall → BuiltWall + returned resources

        The symbol ⊗ means a joint resource interface. Distinct workers are enforced by our explicit identity-check relation, not by Rel or tensor alone. It does not promise simultaneous execution, a duration, or spare capacity.

        3

        Relations give it meaning

        Here each type denotes model records; the checks explore a finite fixture family. Each implemented process is a partial function on the selected records, viewed as a relation in Rel. Tensor uses Cartesian product. Sequential composition hides a matching intermediate value:

        (x,z) ∈ S ∘ R ⇔ ∃y: (x,y) ∈ R and (y,z) ∈ S

        The implementation evaluates these deterministic relations. Missing release evidence gives no accepted output at the readiness box. The readiness type records a passed model guard, not a finding about concrete strength.

        Where the operad and the algebra meet

        The diagram is an operation on interface shapes. Its interpretation sends the constituent process relations to their composite relation: A(Φ)(R₁,…,Rₙ). Expanding the module and evaluating it, or evaluating the module first and then connecting it, should agree. That is the compositional promise being checked here.

        Compare the expanded and collapsed boundary results over the model’s finite fixture family.

        03 / WHAT THE EXPERIMENT TEACHES

        Matching the ports is the beginning

        Try a stronger replacement

        Select the revision-B-only wall package while the drawing is A. Its interface still fits. Its input requirements no longer do. Switch both the drawing and its release evidence to B and the example can proceed again.

        For substitution in a known context, a replacement must accept the inputs that context supplies and produce acceptable outputs. Mere inclusion of one relation in another is insufficient: an empty relation would satisfy inclusion while doing nothing.

        When is this worth the mechanics?

        A small table can describe all these connections. The value appears when a block recurs, when its interior changes, or when a boundary hides an obligation such as readiness. One checked module can then be reused without losing its interface.

        If the diagram merely repeats a fixed task list, the machinery may add little. This example preserves connections and a few static conditions. It does not preserve all construction knowledge or generate multiple schedules. Timing, shared-resource contention and uncertainty need further models.

        THE EARLIER WORKINGS, BROUGHT TOGETHER

        Two workers, one reusable boundary.

        The July 2024 bricklaying study supplied one worker to Mix and another to Set, both of type BL. The mixer returned directly; the setter continued into building. Some later drawings accidentally lost a worker when the work was collapsed. The opened and closed module above now retain both inputs and both returns. A colour or a type is not a count of people.

        Three distinct lessons

        1. This essay: keep the whole resource boundary when a module closes.
        2. One diagram, several meanings: distinguish a drawing from the algebra interpreting it; work through composition and its rules.
        3. How a course repeats: carry remaining materials and a growing wall state through repeated work.

        A different one-worker scenario

        The later serial Mix → Set → Lay drawing uses one worker. It is a useful alternative, but has a different boundary from two separately supplied workers. It cannot replace their package by simply hiding a port. The earlier serial resource-lane experiment remains available with that qualification.

        Multiple output ports do not force us to use relations: a function can return a tuple. We use partial functions here because some model inputs are rejected; the next essay explains broader relations.

        The wider shell still matters.

        The separate shell study began before the prepared wall assembly: excavation, foundations, walling, framing, roofing, fitting and inspection. Its distinctive insight was to return the excavator, and pass the same supplied scaffolding through Walling → Roofing → return. Fitting and Roofing form separate branches which meet at inspection.

        Full wider-shell diagram: land and excavator feed excavation; excavator returns; prepared site feeds foundation, walling, framing and roofing. Wall openings feed fitting. Roofing and fitting meet at conditional inspection. Scaffolding passes through walling and roofing then returns.
        28 connections: the original 27 resource/state connections plus an explicit Land input. Open the full-size figure · Editable Graphviz working

        This is a wider architectural study, not an executed extension of the controls above. Walls and openings are distinct model facets of one structure, not permission to duplicate a physical wall. Timber remains a Roofing input as in the source; a real framing package would need a fuller material boundary. Supplied scaffolding is tracked, not designed, erected or certified. The final outputs are conditional model records: neither weatherproofness nor an inspection certificate follows from connecting the boxes. Labour, construction physics, inspection criteria, costs, durations and waste remain to be specified for this wider model.

        Read the preservation and correction map for the old diagrams, mathematical working, duplicates and unresolved ideas.

        04 / SOURCES → CONCEPTS → THIS CONSTRUCTION

        The bridge back to the papers

        SourceWhat we useWhat we do not infer
        Patterson, Spivak & Vagner — Wiring diagrams as normal forms for computing in symmetric monoidal categories
        Definition 4.1; §5 (2021)
        Typed, acyclic wiring with bijective attachments; substitution and interpretation in an SMC.No physical feasibility from syntax, and no blanket equivalence between all operad algebras and arbitrary strict SMCs.
        Bakirtzis, Fleming & Vasilakopoulou — Categorical Semantics of Cyber-Physical Systems Theory
        §3.2 and §3.3.1–3.3.3
        Relate architecture to behaviour; compose static relations by hiding internal values.Their feedback-capable wiring category differs from our selected acyclic syntax. Static relations and assume–guarantee contracts are distinct.

        Our contribution: the house-shell interpretation, readiness record, explicit resource identities, executable substitution, finite comparisons and failure examples. These are proposed teaching constructions, not theorems about real construction or an implementation of Catlab.

        The broader foray also draws on Spivak’s modular-design explanations and Libkind, Patterson, Baas & Fairbanks’ operadic dynamics. They remain routes for later essays; this one implements no feedback, differential equations, shared-state dynamics or Petri-net semantics.

        What changed from the April essay?
        • Prose-only readiness became an explicit checked handoff from BuiltWall to ReadyWall.
        • Port direction, completeness, one-to-one use and cycles are checked separately from model conditions.
        • A real expandable wall module preserves its whole boundary, including both labour instances and returned tools/access.
        • “Weatherproof shell” became the narrower “roofed structural shell”; openings, services, enclosure and certification remain unmodelled.
        • Keyboard-accessible controls, readable narrow-screen diagrams, visible SMC structure and source-specific explanations replace hidden formalism and mouse-only inspection.

        What is still open?

        Which boundary information is enough for reuse under changing resources or time? When does a family of these modules outperform a simpler table? Which richer interpretation can preserve readiness and contention without overloading the interface? Those are directions for the foray, not results established by this essay.