# Assistant conversation JBG4LX

- Canonical URL: <https://m.sheaf.less.rest/JBG4LX>
- Resource IRI: <https://m.sheaf.less.rest/JBG4LX>
- Type: assistant conversation
- Mode: quick

## Transcript

### 1. User

read the barry smith stuff about granular partitions, mereotopology, objects and components, etc... also read the david ellerman stuff about partition logic etc... and the against fantology stuff etc... and then let's think about all this as concepts for an engine with physics and joints and stuff..

### 2. Assistant tool calls

#### Tool call: `list_documents`

```json
{}
```

### 3. Tool result: list_documents

FOLDERS
- Accounting Algebra & Property Theory
- Living Structure, Wholeness & Beauty
- Living Structure, Wholeness &amp; Beauty
- ontology
- Procedural Generation & Co-Creation
- Roads, Trails & Movement
- Scenario-Based & Behavioral Programming
- Technology, Scale & Conviviality
- Terrain, Hydrology & Erosion
- Water Simulation & Rendering

Accounting Algebra & Property Theory (4)
- #GANFP9 A Fundamental Duality in the Mathematical and Natural Sciences: From Logic to Biology - 2024 | David Ellerman | 53 pp.
  Micro abstract: Traces an overlooked subset–partition duality—from logic and category theory through entropy and quantum indefiniteness to selectionist and generative mechanisms in biology.
- #NBH3BE Algebraic Models for Accounting Systems - 2010 | Derek J. S. Robinson, José García Pérez, Robert A. Nehmer, Salvador Cruz Rambaud | World Scientific | 255 pp.
  Micro abstract: Develops accounting theory algebraically: balance vectors as modules, transactions as a group, and whole accounting systems as automata with quotients, homomorphisms, and decision algorithms for audit and control.
- #7ESDBJ Economics, Accounting, and Property Theory - 1982 | David P. Ellerman | Lexington Books | 110 pp.
  Micro abstract: Ellerman's vector-accounting monograph: double entry generalized to property vectors ("accounting without valuation"), grounding a property-theoretic account of appropriation, the firm, and goodwill.
- #C8FHDZ On implication and negation in partition logic - 2025 |  , David Ellerman | Open Journal of Mathematical Sciences | 9 pp. | doi:10.30538/oms2025.0250
  Micro abstract: Develops implication as a refinement-sensitive operation on set partitions, showing how relative negation yields local Boolean cores within the non-distributive algebra of partitions.

Living Structure, Wholeness & Beauty (9)
- #MH5J8D Beautimeter: Harnessing GPT for Assessing Architectural and Urban Beauty Based on the 15 Properties of Living Structure - 2025 | Bin Jiang | AI | 12 pp. | doi:10.3390/ai6040074
  Micro abstract: Presents Beautimeter, a GPT-based tool that scores buildings and urban scenes against Christopher Alexander’s 15 properties of living structure to assess their coherence and beauty.
- #XW22YY Generative Codes: The Path to Building Welcoming, Beautiful, Sustainable Neighborhoods - 2005 | Brian Hanson, Christopher Alexander, Maggie Moore Alexander, Michael Mehaffy, Randall Schmidt | Center for Environmental Structure | 21 pp.
  Micro abstract: Argues that living neighborhoods arise from generative codes: ordered, participatory steps that let buildings and public spaces unfold from local people, land, and context.
- #SKRF4C Geography as a Science of the Earth’s Surface Founded on the Third View of Space - 2022 | Bin Jiang | Annals of GIS | 14 pp. | doi:10.1080/19475683.2021.1966502
  Micro abstract: Recasts geography around an organismic view of space, using scaling and spatial dependence to understand—and deliberately create—places with greater living structure.
- #PXG56P Harmony-Seeking Computations: A Science of Non-Classical Dynamics Based on the Progressive Evolution of the Larger Whole - 2009 | Christopher Alexander | Unpublished manuscript | 66 pp.
  Micro abstract: Proposes harmony-seeking computation as a creative process that repeatedly strengthens latent centers in a configuration while preserving and deepening the larger whole.
- #MJKTBB Living Images: A Recursive Approach to Computing the Structural Beauty of Images or the Livingness of Space - 2023 | Bin Jiang, Chris de Rijke | Annals of the American Association of Geographers | 19 pp. | doi:10.1080/24694452.2023.2178376
  Micro abstract: Measures an image’s structural beauty by recursively extracting its nested substructures, revealing a compact hierarchy that also captures visual saliency.
- #3XSLTA Structural Beauty: A Structure-Based Computational Approach to Quantifying the Beauty of an Image - 2021 | Bin Jiang, Chris de Rijke | Journal of Imaging | 15 pp. | doi:10.3390/jimaging7050078
  Micro abstract: Proposes a quantitative measure of structural beauty based on how many substructures an image contains and how strongly they form a hierarchy across scales.
- #ZU8GZV Structure-Preserving Transformations - 2002 | Christopher Alexander | The Nature of Order, Book Two: The Process of Creating Life | 4 pp. | doi:10.2307/j.ctv27ftw6c.5
  Micro abstract: Explains structure-preserving transformations: incremental changes that extend the centers and relationships already present in a place rather than weakening its wholeness.
- #AULNWD The Nature of Poetic Order - 1998 | Richard P. Gabriel | Warren Wilson Alumni Conference, Mount Holyoke | 99 pp.
  Micro abstract: Gabriel's slide essay relating poetry's formal order to Christopher Alexander's ideas of generative structure, exploring how constraint and pattern produce living order in creative work.
- #BYG3BQ Wholeness as a Hierarchical Graph to Capture the Nature of Space - 2015 | Bin Jiang | International Journal of Geographical Information Science | 14 pp. | doi:10.1080/13658816.2015.1038542
  Micro abstract: Models spatial wholeness as a hierarchical graph of mutually reinforcing centers, using PageRank and scaling depth to quantify the life of parts and wholes.

ontology (36)
- #LRK6E2 A Taxonomy of Granular Partitions - 2001 | Barry Smith, Thomas Bittner | Spatial Information Theory: Foundations of Geographic Information Science | 16 pp. | doi:10.1007/3-540-45424-1_3
  Micro abstract: Formalizes partitions as tree-structured cognitive devices projected onto reality, then classifies how accurately, structurally, and completely their cells recognize objects, with applications to cadastral and geographic data.
- #FQCWKV A Theory of Granular Partitions - 2003 | Barry Smith, Thomas Bittner | Foundations of Geographic Information Science | 33 pp.
  Micro abstract: Formalizes granular partitions as hierarchical cell systems projected onto reality, combining cognitive selectivity with mereological structure for naming, classifying, mapping, and representation.
- #SF7KYZ About the Unreal - 2025 | Barry Smith, Jim Logan, John Beverley | Proceedings of the Joint Ontology Workshops (JOWO), Episode XI | 14 pp.
  Micro abstract: Models fiction, blueprints, simulations, and other information about unreal entities through logical combinations of actual classes, avoiding commitments to nonexistent dummy instances.
- #CGE2NC Against Fantology - 2005 | Barry Smith | Experience and Analysis | 22 pp.
  Micro abstract: Critiques the idea that first-order logic reveals reality’s ontology, tracing its atomism, timelessness, Booleanism, and reductionism before proposing a six-category ontology and an enhanced Davidsonian formal language.
- #JZG4PM Against Fantology Again - 2016 | Ingvar Johansson | The Theory and Practice of Ontology | 12 pp.
  Micro abstract: Extends the critique of fantology through default ontologization, arguing that Quine’s canonical notation is incoherent about classes and excludes intentional phenomena and distinct modes of existence.
- #E5CLFY Agglomerations - 1999 | Barry Smith | Spatial Information Theory: Cognitive and Computational Foundations of Geographic Information Science | 16 pp. | doi:10.1007/3-540-48384-5_18
  Micro abstract: Defines agglomerations as geographically dispersed yet unified aggregates—populations, cultures, organizations, and diasporas—and develops a realist mereotopology for their boundaries, identity, and change.
- #3CCZ4A Bodily Systems and the Spatial-Functional Structure of the Human Body - 2004 | Barry Smith, Igor Papakin, Katherine Munn | Ontologies in Medicine | 26 pp. | doi:10.3233/978-1-60750-945-5-39
  Micro abstract: Integrates anatomy and physiology by modeling the body as a nested spatial-functional hierarchy whose parts are demarcated as system elements through the functions they bear and realize.
- #7YZU95 Boundaries: An Essay in Mereotopology - 1997 | Barry Smith | The Philosophy of Roderick Chisholm | 32 pp.
  Micro abstract: Reconstructs and extends the Brentano–Chisholm mereotopology in which dependent, coincident boundaries account for contact and the continuum across points, lines, surfaces, and bodies.
- #3TZK66 Capabilities: An Ontology - 2024 | Barry Smith, David Limbaugh, Eric Merrell, John Beverley, Peter M. Koch | Proceedings of the Joint Ontology Workshops (JOWO), Episode X | 14 pp.
  Micro abstract: Defines a capability as a disposition in whose realization an organism or group has or had an interest, placing capabilities between dispositions and functions in Basic Formal Ontology.
- #XYERFR Carving Up Reality - 2004 | Barry Smith | Categories: Historical and Systematic Essays | 14 pp.
  Micro abstract: Explains how context-sensitive, coarse-grained partitions guide reference and perception while preserving transitive parthood and distinguishing fiat demarcations from boundaries grounded in reality.
- #88BVY3 Categories in Top-Level Ontologies: Revisiting the Aristotelian Background - Barry Smith, Ludger Jansen | 31 pp.
  Micro abstract: Reconstructs Aristotle’s categories as the philosophical basis of BFO, extending the ontological square with processes into a six-category framework for continuants, occurrents, dependence, and multiple scientific granularities.
- #9G4F42 CLASSIFYING PROCESSES: AN ESSAY IN APPLIED ONTOLOGY - 2012 | Barry Smith | Ratio | 21 pp. | doi:10.1111/j.1467-9329.2012.00557.x
  Micro abstract: Extends Basic Formal Ontology to scientific process data through process profiles—quality, rate, and cyclical aspects that ground measurements, time-series graphs, and representations of dynamic systems.
- #GSLMP8 Diagrams, Documents, and the Meshing of Plans - 2013 | Barry Smith | Visual Learning, vol. 3: How to Do Things with Pictures: Skill, Practice, Performance | 14 pp.
  Micro abstract: Shows how diagrams and evolving networks of documents mesh plans, obligations, and specialized labor to enable coordinated collective action beyond the limits of linear text.
- #M8BQ3S Do Mountains Exist? Towards an Ontology of Landforms - 2003 | Barry Smith, David M. Mark | Environment and Planning B: Planning and Design | 22 pp.
  Micro abstract: Argues that mountains are object-like in everyday thought but elevation fields in environmental science, motivating a geospatial ontology that supports both perspectives.
- #KSESR8 Drawing Boundaries - 2019 | Barry Smith | The Philosophy of GIS | 26 pp. | doi:10.1007/978-3-030-16829-2_7
  Micro abstract: Updates the distinction between human-demarcated fiat boundaries and physically grounded bona fide boundaries, tracing its uses in geography, property, ecology, and Basic Formal Ontology.
- #56MWAA Environmental Metaphysics - 2001 | Achille C. Varzi, Barry Smith | Metaphysics in the Post-Metaphysical Age: Proceedings of the 22nd International Wittgenstein Symposium | 12 pp.
  Micro abstract: Develops an ontology of token niches as tenant–medium–retainer structures, using physical and fiat boundaries to explain environmental fit, protection, movement, and niche construction.
- #K6JC2J Layers: A New Approach to Locating Objects in Space - 2003 | Barry Smith, Maureen Donnelly | Spatial Information Theory: Foundations of Geographic Information Science | 16 pp. | doi:10.1007/978-3-540-39923-0_4
  Micro abstract: Extends mereotopology with layers that distinguish material objects, holes, and processes from the spatial and spatiotemporal regions they occupy, supporting dynamic geospatial reasoning beyond static map overlays.
- #KG5TBB Making space: the natural, cultural, cognitive and social niches of human activity - 2021 | Barry Smith | Cognitive Processing | 11 pp. | doi:10.1007/s10339-021-01049-y
  Micro abstract: Shows how legal decisions, plans, historical reasoning, and language create fiat spatial and spatiotemporal entities, then draws limits and practical lessons for ontology-supported AI.
- #FJ5KCA More Things in Heaven and Earth - 1995 | Barry Smith | Grazer Philosophische Studien | 15 pp.
  Micro abstract: Develops an ontology of spatial regions and boundaries, arguing that political territories are historically created fiat objects through performative maps while also recognizing vague, overlapping, and incomplete geographic objects.
- #KY3Y9U Naïve Physics: An Essay in Ontology - 1994 | Barry Smith, Roberto Casati | Philosophical Psychology | 22 pp. | doi:10.1080/09515089408573121
  Micro abstract: Reconstructs naïve physics as a realist ontology of the common-sense world—objects, processes, stuffs, boundaries, media, and values—drawing on Gestalt psychology and phenomenology to broaden AI’s set-theoretic models.
- #TQPVBD New Foundations for Qualitative Physics - 1990 | Barry Smith, Jean Petitot | Evolving Knowledge in Natural Science and Artificial Intelligence | 13 pp.
  Micro abstract: Argues for a scientific ontology of the qualitative common-sense world, using morphological discontinuities to connect physical substrates, sensible qualities, Aristotelian categories, and ecologically constrained cognition.
- #B98HVX Objects and Their Environments: From Aristotle to Ecological Ontology - 2001 | Barry Smith | The Life and Motion of Socio-Economic Units | 26 pp. | doi:10.1201/9781482268096-14
  Micro abstract: Extends Aristotelian substance–accident ontology into a realist theory of behavioral settings and ecological niches as nested, bounded wholes in which organisms, objects, and activities mutually fit.
- #9GWUC8 On Classifying Material Entities in Basic Formal Ontology - 2012 | Barry Smith | Interdisciplinary Ontology: Proceedings of the Third Interdisciplinary Ontology Meeting | 13 pp.
  Micro abstract: Clarifies BFO’s material entities by distinguishing objects, aggregates, and fiat object parts, and analyzes objects through causal unity by covering, physical forces, or engineered assembly without claiming exhaustivity.
- #KYQGNH On Credentials - 2020 | Barry Smith, Giuseppe Lorini, Olimpia Giuliana Loddo | Journal of Social Ontology | 21 pp. | doi:10.1515/jso-2019-0034
  Micro abstract: Provides a social ontology of credentials as portable, inspectable institutional documents that certify identity or status and give bearers the practical deontic power to exercise rights, with a typology of their forms and functions.
- #BV47YZ On Drawing Lines on a Map - 1995 | Barry Smith | Spatial Information Theory: A Theoretical Basis for GIS | 10 pp. | doi:10.1007/3-540-60392-1_31
  Micro abstract: Builds a typology of spatial boundaries around the fiat–bona fide distinction, applying it to maps, political and property divisions, scattered objects, linguistic framing, and truthmakers.
- #D8LRQM Ontological Foundations for Geographic Information Science - 2004 | Barry Smith, David M. Mark, Max J. Egenhofer, Stephen C. Hirtle | A Research Agenda for Geographic Information Science | 8 pp. | doi:10.1201/9781420038330.ch12
  Micro abstract: Sets a research agenda for geospatial ontology, linking formal accounts of geographic objects, processes, scale, and vagueness to human concepts, interoperable data, and ontology-driven GIS.
- #GN66WW Ontologies of Common Sense, Physics and Mathematics - 2023 | Barry Smith, Jobst Landgrebe | arXiv | 32 pp. | doi:10.48550/arXiv.2305.01560
  Micro abstract: Proposes linked upper ontologies for common sense, physics, and mathematics, arguing that classical models connect real magnitudes to mathematics whereas modern physics relates measurements to entities lacking commonsense universals.
- #WYP3G6 Ontology and Geographic Kinds - 1998 | Barry Smith, David M. Mark | Proceedings of the 8th International Symposium on Spatial Data Handling (SDH ’98) | 7 pp.
  Micro abstract: Argues that geographic kinds are intrinsically spatial and boundary-centered, requiring mereology and topology to connect physical reality, cultural categorization, cognition, and GIS representation.
- #9YMD2E SNAP and SPAN: Towards Dynamic Spatial Ontology - 2004 | Barry Smith, Pierre Grenon | Spatial Cognition & Computation | 35 pp. | doi:10.1207/S15427633SCC0401_5
  Micro abstract: BFO's bicategorial framework: SNAP snapshot ontologies of continuants and a SPAN ontology of processes in spacetime, linked by trans-ontological relations to capture change — demonstrated on the ontology of geodynamics.
- #KWFTKJ Surrounding Space: The Ontology of Organism-Environment Relations - 2002 | Achille C. Varzi, Barry Smith | Theory in Biosciences | 29 pp. | doi:10.1078/1431-7613-00053
  Micro abstract: Develops a formal ontology of token niches as tenant–medium–retainer structures, extending static organism–environment fit into a dynamic account of vacant niches, movement, interaction, and niche construction.
- #DLY2WP The Cognitive Geometry of War - 1997 | Barry Smith | Current Issues in Political Philosophy: Justice in Society and World Order | 26 pp.
  Micro abstract: Argues that modern ideals of compact, contiguous national territory help drive conflict, and proposes perforated, non-contiguous, and geometrically flexible borders as alternatives to displacement and ethnic cleansing.
- #4QQD4A The Logic of Systems of Granular Partitions - 2005 | Barry Smith, Maureen Donnelly, Thomas Bittner | IFOMIS Reports | 23 pp.
  Micro abstract: Builds a sound S4-style modal logic for labeled, typed granular partitions, modeling refinement and cross-partition counterparts so differently selective views can reason about the same mereologically structured reality.
- #2F8T3H Toward a Realistic Science of Environments - 2009 | Barry Smith | Ecological Psychology | 11 pp.
  Micro abstract: Defends Gibsonian ecological realism: organisms directly perceive affordances in physically real niches, while granular partitions show how different species inhabit perspectives on one world, not separate constructed worlds.
- #DT9Y7X True Grid - 2002 | Barry Smith | Spatial Information Theory: Foundations of Geographic Information Science | 17 pp.
  Micro abstract: Generalizes Alberti’s perspectival grid into a realist theory of projection: pictures, maps, names, concepts, and databases are “true grids” when their cells preserve relevant structure and refer transparently to reality.
- #PHAFYA Truth and the Visual Field - 1997 | Barry Smith | Naturalizing Phenomenology: Issues in Contemporary Phenomenology and Cognitive Science | 8 pp.
  Micro abstract: Uses mereotopology and Gibsonian ecology to treat perception and language as carving transient fiat boundaries in reality, defining a judgment field as the truth-making portion of the world selected by a true sentence.
- #XZX6PE Vague Reference and Approximating Judgments - 2003 | Barry Smith, Thomas Bittner | Spatial Cognition and Computation | 20 pp.
  Micro abstract: Formalizes vague reference as multiple crisp candidate referents within granular partitions, then explains approximation as using familiar spatial or temporal reference grids to constrain vagueness without truth-value indeterminacy.

Procedural Generation & Co-Creation (14)
- #ABD2B8 Between Tech and Art: The Vegetation of Horizon Zero Dawn - 2018 | Gilbert Sanders, Guerrilla Games | Game Developers Conference (GDC) 2018 | 87 pp.
  Micro abstract: A production breakdown of Horizon Zero Dawn’s vegetation pipeline, covering global wind simulation, layered foliage motion, coverage-preserving alpha mipmaps, shading, asset LODs, placement, and cascaded shadows.
- #4TH488 Explainable AI for Designers: A Human-Centered Perspective on Mixed-Initiative Co-Creation - 2018 | Antonios Liapis, G. Michael Youngblood, Jichen Zhu, Rafael Bidarra, Sebastian Risi | 2018 IEEE Conference on Computational Intelligence and Games (CIG) | 8 pp. | doi:10.1109/CIG.2018.8490433
  Micro abstract: Defines explainable AI for game designers, mapping co-creative systems by their explainability, initiative, and domain overlap so explanations serve concrete design tasks.
- #9NQ94D Extracting Physics from Blended Platformer Game Levels - 2020 | Adam Summerville, Anurag Sarkar, Joseph C. Osborn, Sam Snodgrass | Joint Proceedings of the AIIDE 2020 Workshops (CEUR Workshop Proceedings, Vol. 2862) | 7 pp.
  Micro abstract: Infers playable jump physics from generated platformer levels, including hybrid physics models for levels that blend the geometry and style of multiple games.
- #66Q3W3 Ghost of Tsushima: Procedural Grass - 2021 | Eric Wohllaib, Sucker Punch Productions | Game Developers Conference (GDC) 2021 | 55 pp.
  Micro abstract: Explains Ghost of Tsushima’s compute-driven grass pipeline, from tiled placement and culling to indirect drawing, cubic Bézier blade geometry, variable LOD, wind animation, and material shading.
- #QHMFH2 Improved Alpha Testing Using Hashed Sampling - 2019 | Chris Wyman, Morgan McGuire | IEEE Transactions on Visualization and Computer Graphics | 12 pp. | doi:10.1109/TVCG.2017.2739149
  Micro abstract: Develops hashed alpha testing, a stable quasi-random thresholding method that preserves distant alpha-mapped foliage and hair while controlling flicker, anisotropy, and interactions with TAA and alpha-to-coverage.
- #7GR3AQ Procedural Content Generation through Quality Diversity - 2019 | Ahmed Khalifa, Antonios Liapis, Daniele Gravina, Georgios N. Yannakakis, Julian Togelius | 2019 IEEE Conference on Games (CoG) | 8 pp. | doi:10.1109/CIG.2019.8848053
  Micro abstract: Argues for quality-diversity algorithms in procedural generation, producing broad collections of varied, playable content while exposing the design space for exploration and co-creation.
- #CQBDX4 Procedural Content Generation via Machine Learning (PCGML) - 2018 | Aaron Isaksen, Adam Summerville, Amy K. Hoover, Andy Nealen, Christoffer Holmgård, Julian Togelius, Matthew Guzdial, Sam Snodgrass | IEEE Transactions on Games | 15 pp. | doi:10.1109/TG.2018.2846639
  Micro abstract: Defines and surveys PCGML: generating functional game content directly from models trained on existing examples, with uses spanning creation, completion, repair, critique, and compression.
- #EARFEK Procedural Generation of Villages on Arbitrary Terrains - 2012 | Adrien Bernhardt, Adrien Peytavie, Arnaud Emilien, Eric Galin, Marie-Paule Cani | The Visual Computer | 10 pp. | doi:10.1007/s00371-012-0699-7
  Micro abstract: Presents a three-stage procedural model that grows terrain-responsive village roads and settlements, partitions land into plausible parcels, and generates slope-adapted buildings with open shape grammars.
- #EDURTK Real-Time GPU Tree Generation - 2025 | Bastian Kuth, Carsten Faber, Dominik Baumeister, Max Oberberger, Pirmin Pfeifer, Quirin Meyer, Seyedmasih Tabaei | High-Performance Graphics – Symposium Papers | 10 pp. | doi:10.2312/hpg.20251168
  Micro abstract: Introduces a GPU work-graph pipeline that generates, animates, edits, and continuously LODs detailed seasonal trees every frame, replacing gigabytes of baked geometry with kilobytes of parameters.
- #GBXEP3 Realistic Modeling and Rendering of Plant Ecosystems - 1998 | Bernd Lintermann, Matt Pharr, Oliver Deussen, Pat Hanrahan, Przemyslaw Prusinkiewicz, Radomír Měch | Proceedings of SIGGRAPH ’98 | 12 pp. | doi:10.1145/280814.280898
  Micro abstract: Presents a foundational pipeline for authoring plant ecosystems through terrain design, ecological simulation, procedural plant models, approximate instancing, and efficient rendering of billion-primitive scenes.
- #BDBBL6 Real‐time Realistic Rendering and Lighting of Forests - 2012 | Eric Bruneton, Fabrice Neyret | Computer Graphics Forum | 11 pp. | doi:10.1111/j.1467-8659.2012.03016.x
  Micro abstract: Combines detailed z-field trees with terrain shader-maps to render immense forests in real time, preserving sun, sky, canopy, and ground-lighting effects through seamless, scale-consistent transitions.
- #PQ68ZH Responsive Real-Time Grass Rendering for General 3D Scenes - 2017 | Klemens Jahrmann, Michael Wimmer | Proceedings of the 2017 Symposium on Interactive 3D Graphics and Games (I3D ’17) | 10 pp. | doi:10.1145/3023368.3023380
  Micro abstract: Renders every grass blade as responsive tessellated geometry on arbitrary 3D surfaces, with per-blade wind, gravity, and collision physics plus aggressive culling that retains dense fields in real time.
- #WZ8DHP Runtime Evaluation of Procedural Content Generation in an Endless Runner Game Using Autonomous Agents - 2026 | Rishabh Kar | arXiv | 25 pp. | doi:10.48550/arXiv.2605.01783
  Micro abstract: Integrates procedural generation and validation in an endless runner, using aerial and ground agents to detect blocked or unnavigable content before the player reaches it.
- #NRBMD5 Towards Friendly Mixed Initiative Procedural Content Generation: Three Pillars of Industry - 2020 | Frederic Fol Leymarie, Gorm Lai, William Latham | Proceedings of the International Conference on the Foundations of Digital Games (FDG '20) | 4 pp. | doi:10.1145/3402942.3402946
  Micro abstract: Distills three requirements for industry-friendly co-creative PCG tools: preserve designer control, keep feedback loops short, and fit into existing production pipelines.

Roads, Trails & Movement (8)
- #G3TBNG A Sequential Two-Step Algorithm for Fast Generation of Vehicle Racing Trajectories - 2016 | J. Christian Gerdes, John Subosits, Nitin R. Kapania | Journal of Dynamic Systems, Measurement, and Control | 12 pp. | doi:10.1115/1.4033311
  Micro abstract: Generates near-optimal racing trajectories quickly by alternating between a minimum-time speed profile and a convex path update that reduces curvature.
- #B6P8L4 Active walker model for the formation of human and animal trail systems - 1997 | Dirk Helbing, Frank Schweitzer, Joachim Keltsch, Péter Molnár | Physical Review E | 34 pp. | doi:10.1103/physreve.56.2527
  Micro abstract: Models trail systems as self-organization: walkers reinforce attractive routes while unused traces fade, producing dendritic ant trails and low-detour pedestrian networks.
- #V4TQYB Interactive procedural street modeling - 2008 | Eugene Zhang, Gregory Esch, Guoning Chen, Pascal Müller, Peter Wonka | ACM Transactions on Graphics | 10 pp. | doi:10.1145/1360612.1360702
  Micro abstract: Lets designers generate and edit large street networks through tensor fields, combining procedural speed with brush-like global and local control over street patterns.
- #UYLTYJ Modelling the Evolution of Human Trail Systems - 1997 | Dirk Helbing, Joachim Keltsch, Péter Molnár | Nature | 11 pp. | doi:10.1038/40353
  Micro abstract: Shows how pedestrian trails emerge through feedback between destination-seeking walkers, existing paths, and vegetation recovery, yielding a compromise between directness and shared infrastructure.
- #GY93FG Mountain Trail Formation and the Active Walker Model - 2009 | J. P. Hague, S. J. Gilks | International Journal of Modern Physics C | 22 pp. | doi:10.1142/S0129183109014059
  Micro abstract: Extends the active-walker model to steep terrain, explaining zigzag mountain trails through slope avoidance, directional persistence, and mutual reinforcement by ascending and descending walkers.
- #LXV9AT Principles of Trail Layout and Design - 2019 | California State Parks | California State Parks Trails Handbook | 64 pp.
  Micro abstract: A field-oriented guide to durable trail design, emphasizing curvilinear alignment, natural drainage, sustainable grades, control points, and close reading of landform and soils.
- #XDEFZS Procedural Generation of Roads - 2010 | A. Peytavie, E. Galin, E. Guérin, N. Maréchal | Computer Graphics Forum | 10 pp. | doi:10.1111/j.1467-8659.2009.01612.x
  Micro abstract: Automatically routes and constructs roads with an anisotropic shortest-path method that weighs slope and obstacles while treating surface segments, bridges, and tunnels consistently.
- #ARP5U7 The Topography of Minoan Peak Sanctuaries - 1983 | A. A. D. Peatfield | The Annual of the British School at Athens | 8 pp. | doi:10.1017/s0068245400019729
  Micro abstract: Argues that Minoan peak sanctuaries were chosen for visibility and proximity to local settlements, forming a beacon-like sacred network whose contraction tracked settlement abandonment rather than cultic collapse.

Scenario-Based & Behavioral Programming (8)
- #P2W4J5 Adaptive Behavioral Programming - 2011 | David Harel, Nir Eitan | 8 pp. | doi:10.1109/ictai.2011.109
  Micro abstract: Adds reinforcements to live sequence charts and BPJ so scenario-based programs can learn from their environment, specifying goals to pursue and scenarios to avoid, with modular learning decompositions.
- #XQ5NKX Challenges in Modeling and Unmodeling Emergence, Rule Composition, and Networked Interactions in Complex Reactive Systems - 2023 | Assaf Marron, David Harel, Guy Frankel, Irun Cohen, Smadar Szekely | 8 pp. | doi:10.5220/0011728900003402
  Micro abstract: Position paper on modeling emergence, rule composition, and networked interactions in complex reactive systems, introducing "unmodeling"—explicitly excluding entities and behaviors from model execution.
- #D4VB7S Distributing Scenario-Based Models: A Replicate-and-Project Approach - 2017 | Assaf Marron, Daniel Gritzner, David Harel, Guy Katz, Joel Greenyer, Shlomi Steinberg | MODELSWARD 2017 | 16 pp. | doi:10.5220/0006271301820195
  Micro abstract: Distributes scenario-based models by replicating the full specification on every component and projecting it per component, mimicking centralized behavior while sharply reducing synchronization.
- #CSJARA Enhancing Scenario-Based Modeling Using Large Language Models - 2026 | Assaf Marron, David Harel, Guy Katz, Smadar Szekely | Communications in Computer and Information Science | Springer Nature Switzerland | pp. 43-68 | 26 pp. | doi:10.1007/978-3-031-96841-9_3
  Micro abstract: Extended methodology for combining LLM chatbots with scenario-based modeling: iterative generation of stand-alone scenarios checked by analysis and human review, framed as a step toward Wise Computing.
- #3JCRAD On Augmenting Scenario-Based Modeling with Generative AI - 2024 | Assaf Marron, David Harel, Guy Katz, Smadar Szekely | MODELSWARD 2024 | 12 pp. | doi:10.5220/0012427100003645
  Micro abstract: Outlines a structured method for using generative-AI chatbots in modeling: iteratively generate scenario-based model fragments, then analyze and inspect them to converge on an accurate system model.
- #QV3BWZ On tracing reactive systems - 2011 | David Harel, Shahar Maoz | Software &amp; Systems Modeling | 22 pp. | doi:10.1007/s10270-010-0151-2
  Micro abstract: Introduces model-based trace visualization and exploration for reactive systems, using scenario-based (LSC) abstractions and the Tracer prototype, demonstrated on a PacMan game.
- #TDS4H2 Relaxing Synchronization Constraints in Behavioral Programs - 2013 | Amir Kantor, David Harel, Guy Katz | LPAR 2013 (Logic for Programming, Artificial Intelligence, and Reasoning) | 17 pp. | doi:10.1007/978-3-642-45221-5_25
  Micro abstract: Proposes eager execution for behavioral programs: fast b-threads run ahead when synchronization outcomes are predictable, improving performance, modularity, and distributability, shown in a C++ BP framework.
- #M5788P Towards Behavioral Programming in Distributed Architectures - 2015 | Amir Kantor, Assaf Marron, David Harel, Gera Weiss, Guy Katz, Guy Wiener | Science of Computer Programming | 58 pp. | doi:10.1016/j.scico.2014.03.003
  Micro abstract: Extends behavioral programming to distributed architectures: b-threads as Erlang processes, eager execution to relax synchronization, and modular distributed execution, demonstrated on simulations and a quadrotor.

Technology, Scale & Conviviality (2)
- #WYH36B The City as Convivial Centre - 1974 | Leopold Kohr | Tract, no. 12 (Gryphon Press) | 18 pp.
  Micro abstract: Kohr's essay arguing that cities exist for convivial life rather than economic function, and that human-scale size is what lets a city serve as a centre of leisure, culture, and encounter.
- #67REFX The Question Concerning Technology - 1977 | Martin Heidegger | The Question Concerning Technology and Other Essays (Harper & Row) | 23 pp.
  Micro abstract: Heidegger's essay on the essence of technology as Enframing (Gestell), a mode of revealing that reduces the world to standing-reserve, and on art as a possible saving power.

Terrain, Hydrology & Erosion (8)
- #NV2YRW FastFlow: GPU Acceleration of Flow and Depression Routing for Landscape Simulation - 2024 | Aryamaan Jain, Bernhard Kerbl, Brandon Finley, Guillaume Cordonnier, James Gain | Computer Graphics Forum | 13 pp. | doi:10.1111/cgf.15243
  Micro abstract: A GPU framework for routing surface flow through terrain and its depressions fast enough to make erosion, river, lake, and ecosystem simulations interactive.
- #2284QZ From features to fingerprints: A general diagnostic framework for anthropogenic geomorphology - 2019 | Damian Evans, Erle C Ellis, Giulia Sofia, Paolo Tarolli, Wenfang Cao | Progress in Physical Geography: Earth and Environment | 34 pp. | doi:10.1177/0309133318825284
  Micro abstract: Integrates geomorphology, archaeology, and high-resolution remote sensing into a framework for reading anthropogenic landforms as landscape-scale sociocultural fingerprints.
- #96ZMGK Large Scale Terrain Generation from Tectonic Uplift and Fluvial Erosion - 2016 | Adrien Peytavie, Bedrich Benes, Guillaume Cordonnier, Jean Braun, Marie-Paule Cani, Éric Galin, Éric Guérin | Computer Graphics Forum | 11 pp. | doi:10.1111/cgf.12820
  Micro abstract: Generates large, controllable mountain terrains by coupling user-painted tectonic uplift with fluvial erosion, then turning the resulting stream graph into detailed landforms.
- #K82AS7 Legacy sediment: Definitions and processes of episodically produced anthropogenic sediment - 2013 | L. Allan James | Anthropocene | 11 pp. | doi:10.1016/j.ancene.2013.04.001
  Micro abstract: Broadens legacy sediment to episodically produced anthropogenic alluvium and colluvium, and explains its deposition, storage, and remobilization through sediment delivery–transport capacity dynamics.
- #DWXKYQ Physically-based analytical erosion for fast terrain generation - 2024 | Boris Gailleton, Guillaume Cordonnier, Petros Tzathas, Philippe Steer | Computer Graphics Forum | 14 pp. | doi:10.1111/cgf.15033
  Micro abstract: Turns the stream power law into an interactive terrain tool, replacing thousands of erosion time steps with analytical solutions and a direct control for landscape age.
- #MTDKDE Priority-Flood: An Optimal Depression-Filling and Watershed-Labeling Algorithm for Digital Elevation Models - 2014 | Clarence Lehman, David Mulla, Richard Barnes | Computers & Geosciences | 17 pp. | doi:10.1016/j.cageo.2013.04.024
  Micro abstract: Introduces Priority-Flood, a simple, optimal algorithm that removes drainage-blocking depressions from elevation models and can also derive watersheds and flow directions.
- #AK7NGE Procedural Riverscapes - 2019 | A. Peytavie, B. Benes, E. Galin, E. Guérin, J. Gain, T. Dupont, Y. Cortial | Computer Graphics Forum | 12 pp. | doi:10.1111/cgf.13814
  Micro abstract: Builds editable, animated riverscapes from bare terrain by carving hydrologically plausible channels and blending real-time procedural water primitives instead of simulating fluids.
- #DMTA8Y Terrain Generation Using Procedural Models Based on Hydrology - 2013 | Adrien Peytavie, Bedřich Beneš, Jean-David Génevaux, Éric Galin, Éric Guérin | ACM Transactions on Graphics | 10 pp. | doi:10.1145/2461912.2461996
  Micro abstract: Generates controllable, multiscale terrain from a sketched drainage network, representing rivers and landforms as an editable hierarchy of continuous procedural primitives.

Water Simulation & Rendering (12)
- #RBS5K6 A Layered Particle-Based Fluid Model for Real-Time Rendering of Water - 2010 | Daniel Scherzer, Florian Bagar, Michael Wimmer | Computer Graphics Forum | 7 pp. | doi:10.1111/j.1467-8659.2010.01734.x
  Micro abstract: Renders particle-based water and volumetric foam in real time using perspective-aware surface smoothing, physically guided foam formation, and layered depth compositing.
- #C4AY2M A Survey of Ocean Simulation and Rendering Techniques in Computer Graphics - 2011 | B. Crespin, D. Ghazanfarpour, E. Darles, J.-C. Gonzato | Computer Graphics Forum | 17 pp. | doi:10.1111/j.1467-8659.2010.01828.x
  Micro abstract: Surveys ocean graphics from spectral deep-water models to near-shore fluid simulation, then covers the foam, spray, and light transport needed for convincing rendering.
- #WZMZGY Advected river textures - 2009 | Dirk Arnold, Stephen Brooks, Tim Burrell | Computer Animation and Virtual Worlds | 11 pp. | doi:10.1002/cav.288
  Micro abstract: Combines a 2D Navier–Stokes solver, hydrostatic pressure columns, and advected procedural textures to render detailed, terrain-responsive rivers at real-time frame rates.
- #92XRH7 Lagrangian Texture Advection: Preserving both Spectrum and Velocity Field - 2011 |  Qizhi Yu, E. Bruneton, F. Neyret, N. Holzschuch | IEEE Transactions on Visualization and Computer Graphics | 13 pp. | doi:10.1109/tvcg.2010.263
  Micro abstract: Advects fluid textures with deformable particle grids, preserving both the input texture’s visual spectrum and exact motion along the velocity field without cumulative stretching.
- #8SERGP Real-time Breaking Waves for Shallow Water Simulations - 2007 | Markus Gross, Matthias Müller-Fischer, Nils Thürey, Simon Schirm | 15th Pacific Conference on Computer Graphics and Applications (Pacific Graphics 2007) | 8 pp. | doi:10.1109/PG.2007.33
  Micro abstract: Adds real-time overturning waves to shallow-water heightfields by detecting steep fronts and spawning connected particle sheets that collapse into splashes and foam.
- #CWC7H9 Real-time Rendering of Enhanced Shallow Water Fluid Simulations - 2013 | Antonio Susín, Jesús Ojeda | Computers & Graphics | 9 pp.
  Micro abstract: Builds a real-time rendering pipeline for shallow-water simulations, adding fine surface detail, advected foam, photon-based caustics, and screen-space reflection and refraction.
- #MVUJ8Z Real-time Rendering of River Networks - 2010 | Quintijn Hendrickx, Rafael Bidarra, Ruben M. Smelik | Proceedings of the ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games | 1 pp.
  Micro abstract: Renders branching river networks efficiently with quadratic Bézier curves, GPU distance fields, and streaming normal maps instead of dense geometry or particle simulation.
- #5MGCZ5 Real-time River Representation by Dynamic Control of Data on Waves - 2008 | Makoto Kosugi, Nobuhiko Mukai, Yasuhiro Kato | 4 pp. | doi:10.3169/itej.62.2063
  Micro abstract: Dynamically switches river-wave models by viewing distance, preserving nearby reflection and wave detail while retaining wind-driven motion across the full landscape.
- #XDESU9 Scalable real‐time animation of rivers - 2009 | Eric Bruneton, Fabrice Neyret, Nicolas Holzschuch, Qizhi Yu | Computer Graphics Forum | 11 pp. | doi:10.1111/j.1467-8659.2009.01363.x
  Micro abstract: Animates rivers across vast terrains by computing steady flow locally and advecting fine surface detail only where visible, at a screen-space sampling density.
- #869NHK Very Fast Real-Time Ocean Wave Foam Rendering Using Halftoning - 2011 | Ian Parberry, Jennifer R. Alford, Mary Yingst | Proceedings of the 6th International North American Conference on Intelligent Games and Simulation (GAMEON-NA) | 7 pp.
  Micro abstract: Uses a spectrally controlled halftone mask to make texture-based ocean foam dissipate as clumped bubbles that pop, rather than merely fading transparently.
- #A2QB8L Water Flow in Portal 2 - 2010 | Alex Vlachos | ACM SIGGRAPH 2010 Course: Advances in Real-Time Rendering in 3D Graphics and Games | 54 pp.
  Micro abstract: Explains Portal 2’s production-friendly water shader: artist-painted flow maps advect layered normal maps, while offsets and noise suppress repetition and pulsing on limited hardware.
- #PBM2TC Water surface wavelets - 2018 | Chris Wojtan, Matthias Müller-Fischer, Miles Macklin, Nuttapong Chentanez, Stefan Jeschke, Tomáš Skřivan | ACM Transactions on Graphics | 13 pp. | doi:10.1145/3197517.3201336
  Micro abstract: Represents water waves as spatially varying directional amplitudes, enabling vast interactive simulations with fine detail, moving obstacles, solid coupling, and direct artistic control.

Unfiled (1)
- #3CV92Z moppe

### 4. Assistant tool calls

#### Tool call: `get_document`

```json
{
  "id": "FQCWKV"
}
```

#### Tool call: `get_document`

```json
{
  "id": "LRK6E2"
}
```

#### Tool call: `get_document`

```json
{
  "id": "7YZU95"
}
```

#### Tool call: `get_document`

```json
{
  "id": "9GWUC8"
}
```

#### Tool call: `get_document`

```json
{
  "id": "3CCZ4A"
}
```

#### Tool call: `get_document`

```json
{
  "id": "CGE2NC"
}
```

#### Tool call: `get_document`

```json
{
  "id": "GANFP9"
}
```

#### Tool call: `get_document`

```json
{
  "id": "C8FHDZ"
}
```

#### Tool call: `get_document`

```json
{
  "id": "KY3Y9U"
}
```

### 5. Tool result: get_document

DOCUMENT #FQCWKV
Title: A Theory of Granular Partitions

Outline:
  - 1 #QCRBYG CHAPTER 1
    - 1.1 #V7KTGZ A Theory of Granular Partitions
      - 1.1.1 #HADPD5 1 INTRODUCTION
      - 1.1.2 #BHVZQQ 2 TYPES OF GRANULAR PARTITIONS
      - 1.1.3 #A74QRX 3 GRANULAR PARTITIONS AS SYSTEM OF CELLS
        - 1.1.3.1 #PP6B9Q 3.1 A bipartite theory
        - 1.1.3.2 #ML3GN4 3.2 The subcell relation
        - 1.1.3.3 #2LJNRR 3.3 Existence of a maximal cell
        - 1.1.3.4 #7Y2V3Z 3.4 Finite chain condition
        - 1.1.3.5 #7UH4UA 3.5 Partition-theoretic sum and product of cells
        - 1.1.3.6 #Q65BLD 3.6 Trees
      - 1.1.4 #PYMKJQ 4 GRANULAR PARTITIONS IN THEIR PROJECTIVE RELATION TO REALITY
        - 1.1.4.1 #CBV5HG 4.1 Projection
        - 1.1.4.2 #X57HET 4.2 Location
        - 1.1.4.3 #K2LWW7 4.3 Transparency
        - 1.1.4.4 #7BK7KZ 4.4 Functionality constraints (constraints pertaining to correspondence to objects)
          - 1.1.4.4.1 #DR2XFU 4.4.1 Projection is functional: the confused schoolboy
          - 1.1.4.4.2 #NBA7LN 4.4.2 Location is functional: the Morning Star and the Evening Star
      - 1.1.5 #ZSJP4W 5 CORRESPONDENCE OF MEREOLOGICAL STRUCTURE
        - 1.1.5.1 #AG35RL 5.1 Recognizing mereological structure
        - 1.1.5.2 #BV9UTU 5.2 The domain of a partition
        - 1.1.5.3 #N5T557 5.3 The granularity of granular partitions
      - 1.1.6 #8X3P8G 6 STRUCTURAL PROPERTIES OF CORRECT REPRESENTATIONS
        - 1.1.6.1 #N33X7A 6.1 Mereological monotony
        - 1.1.6.2 #Z2LAY5 6.2 Completeness
        - 1.1.6.3 #MJ87KT 6.3 Exhaustiveness
        - 1.1.6.4 #Z2PHR2 6.4 Comprehension axioms
        - 1.1.6.5 #UDYCVD 6.5 Redundancy
      - 1.1.7 #ZK25N3 7 FULLNESS AND CUMULATIVENESS
        - 1.1.7.1 #Q76SY7 7.1 Fullness
        - 1.1.7.2 #FH6U8D 7.2 Empty space
        - 1.1.7.3 #B7BPVR 7.3 Empty space and knowledge
        - 1.1.7.4 #2KRYYK 7.4 Fullness and emptiness
        - 1.1.7.5 #PUSKWJ 7.5 Cumulativeness
        - 1.1.7.6 #TSKFB6 7.6 Classes of partitions regarding fullness and cumulateness
      - 1.1.8 #FU66UM 8 IDENTITY OF GRANULAR PARTITIONS
      - 1.1.9 #Q4TMPJ 9 RELATED WORK
      - 1.1.10 #G5GBKW 10 CONCLUSIONS
      - 1.1.11 #GWH2MS ACKNOWLEDGMENTS
    - 1.2 #XDPMTZ REFERENCES

### 6. Tool result: get_document

DOCUMENT #LRK6E2
Title: A Taxonomy of Granular Partitions

Outline:
  - 1 #T5AX2N A taxonomy of partitions
    - 1.1 #L5C6TM 1 Introduction
    - 1.2 #344SV5 2 Partitions as system of cells
      - 1.2.1 #DHBY9A 2.1 Partitions
      - 1.2.2 #SSS9XX 2.2 Trees
      - 1.2.3 #5HUQ4L 2.3 Partition-theoretic sum and maximal cells
    - 1.3 #LUBMXE 3 Partitions in their projective relation to reality
      - 1.3.1 #MJWMAB 3.1 Projection
      - 1.3.2 #GWHAKM 3.2 Location
      - 1.3.3 #HZFX5K 3.3 Recognizing and preserving mereological structure
      - 1.3.4 #XUZC23 3.4 Granularity
    - 1.4 #29FPE8 4 Varieties of transparent partitions
      - 1.4.1 #SDBYVV 4.1 Functionality constraints
      - 1.4.2 #9P5HEV 4.2 Structural constraints
      - 1.4.3 #86MMAX 4.3 Completeness and exhaustiveness
      - 1.4.4 #M3373H 4.4 Redundancy
    - 1.5 #A8Q3M9 5 Partitions of geographic space
      - 1.5.1 #J6DM8J 5.1 The perfect cadastre
      - 1.5.2 #4VMJX6 5.2 Categorical coverages
      - 1.5.3 #DZJSHP 5.3 A partition recognizing water bodies
    - 1.6 #VCGW8Z 6 Summary and conclusions
    - 1.7 #5VZSS8 Acknowledgements
    - 1.8 #MA9RT3 Bibliography

### 7. Tool result: get_document

DOCUMENT #7YZU95
Title: Boundaries: An Essay in Mereotopology

Outline:
  - 1 #RBUH86 Boundaries: An Essay in Mereotopology1
    - 1.1 #G3GGCD Introduction
    - 1.2 #DKMEJR The Brentano-Chisholm Theory of the Continuum
    - 1.3 #QTKRQM Set Theory
    - 1.4 #S83P9V Mereology
    - 1.5 #5FAE8D Plerosis
    - 1.6 #A5EDZ6 The Formalization of the Brentano-Chisholm Theory
      - 1.6.1 #2ZAUBH Coincidence
      - 1.6.2 #WDHJXQ Bodies
    - 1.7 #P8BRYH Boundaries
      - 1.7.1 #AFLGKV If There Be Monsters
    - 1.8 #836SUT Varieties of Connectedness
      - 1.8.1 #ZQP35X Touching
      - 1.8.2 #CC4MY2 Contact
      - 1.8.3 #4MYQQ8 Boundary Of
      - 1.8.4 #E4UVCT Connectedness for Boundaries
      - 1.8.5 #R3Y3M2 Substance
      - 1.8.6 #5T4RSH Dimensions
    - 1.9 #X4V2VT Points, Lines and Surfaces
    - 1.10 #9XRHUY References

### 8. Tool result: get_document

DOCUMENT #9GWUC8
Title: On Classifying Material Entities in Basic Formal Ontology

Outline:
  - 1 #R3ZTH8 On Classifying Material Entities in Basic Formal Ontology
    - 1.1 #RVYUE8 1 Introduction
    - 1.2 #6AGD85 2 Continuant
    - 1.3 #PWWRJ5 3 Material entity
    - 1.4 #KCTEZX 4 Object
      - 1.4.1 #GL4M8F 4.1 Natural and engineered units of matter
      - 1.4.2 #MCU2BM 4.2 Three focal examples
        - 1.4.2.1 #2QYSRV CU1: Causal unity via physical covering
        - 1.4.2.2 #GBAQSZ CU2: Causal unity via internal physical forces
        - 1.4.2.3 #KNXK3W CU3: Causal unity via engineered assembly of components
      - 1.4.3 #HH2GYF 4.3 Objects can have other objects as parts
      - 1.4.4 #BT93NX 4.4 Conjoined twins
    - 1.5 #2U9457 5 Object aggregate
    - 1.6 #9D446H 6 Fiat object part
    - 1.7 #QCN4RH 7 Treatment of Problem Cases
    - 1.8 #584H4S Acknowledgments
    - 1.9 #3DFD6X References

### 9. Tool result: get_document

DOCUMENT #3CCZ4A
Title: Bodily Systems and the Spatial-Functional Structure of the Human Body

Outline:
  - 1 #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
    - 1.1 #3GTB9R 1. Introduction
      - 1.1.1 #39W7VS 1.1 Incorporating Function
    - 1.2 #CVF4S5 2. Bodily Systems in the Medical Domain
      - 1.2.1 #LZ6KD4 2.1 Systems in the FMA
      - 1.2.2 #3BHHEB 2.2 Partitions of the Body
      - 1.2.3 #9UT3KZ 2.3 A Brief Summary
    - 1.3 #W88WGC 3. Defining 'System'
      - 1.3.1 #MGXDF7 3.1 Systems as Dynamic
      - 1.3.2 #WFEGGZ 3.2 The Body's Modular Hierarchy
      - 1.3.3 #8JPM6X 3.3 Relatively Isolated Systems
      - 1.3.4 #AJU36J 3.4 SNAP and SPAN in Bodily Systems
      - 1.3.5 #95YMHC 3.5 Elements
      - 1.3.6 #5S5KVF 3.6 Granular Partitions and System Elements
      - 1.3.7 #LWLW7G 3.7 Functions in Bodily Systems
        - 1.3.7.1 #8NSNR6 SNAP
        - 1.3.7.2 #J4EPE3 SPAN
      - 1.3.8 #JHMTY4 3.8 The Body as Spatial-Functional Hierarchy
    - 1.4 #YN2YMY 4. 'Element' Defined
    - 1.5 #EU2W22 5. Elements, Functions, and Criticality
      - 1.5.1 #986L3N 5.1 Evaluating Functionings
      - 1.5.2 #EJ245A 5.2 Critical Functions
      - 1.5.3 #P4AJMJ 5.3 Degrees of Criticality
      - 1.5.4 #P8ECVR 5.4 Critical Functions and the Spatial-Functional Hierarchy
    - 1.6 #YHJXXN 6. How the Body is Demarcated into Bodily Systems
      - 1.6.1 #AX2FGM 6.1 Bodily Systems as Fiat Objects
      - 1.6.2 #WGQZDU 6.2 Critical Systems
    - 1.7 #4AVMTN 7. Conclusion
    - 1.8 #JPXCVX References

### 10. Tool result: get_document

DOCUMENT #CGE2NC
Title: Against Fantology

Outline:
  - 1 #SFAYRE Against Fantology
    - 1.1 #J6X7B4 1. Introduction
    - 1.2 #WMS82X 2. History
    - 1.3 #K8PYLN 3. The Secret Doctrine
    - 1.4 #KFAUX3 4. The Spreadsheet Ontology
    - 1.5 #V2DRED 5. The Picture Theory
    - 1.6 #77SZY4 6. The Special Case of Mathematics
    - 1.7 #T3V2BX 7. First-Order Logic as Characteristica Universalis
    - 1.8 #C2K4WC 8. All Generality Belongs to the Predicate
    - 1.9 #QNF4XD 9. Reality is Made of Atoms ('Bare Particulars')
    - 1.10 #DXU96N 10. ... and Sets
    - 1.11 #PVQQC7 11. Particulars are Unknowable
    - 1.12 #5JU942 12. Predication is Functional Application
    - 1.13 #WKX2QZ 13. The Vanishing Copula
    - 1.14 #8EKBDV 14. All Particulars are Bare Particulars
    - 1.15 #QK6C6U 15. A Peculiar Insensitivity to Time
    - 1.16 #63LUN3 16. Poor Treatment of Relations
    - 1.17 #W2NUZ7 17. Booleanism
    - 1.18 #MW9JFA 18. No Room for Dependent Continuants
    - 1.19 #ZAUEPE 19. A New, Enhanced Davidsonism
    - 1.20 #CCHP6D 20. Predicates Do Not Represent
    - 1.21 #HKGX5U Acknowledgements
    - 1.22 #HLYX3V References

### 11. Tool result: get_document

DOCUMENT #GANFP9
Title: A Fundamental Duality in the Mathematical and Natural Sciences: From Logic to Biology

Outline:
  - 1 #HY74XE A Fundamental Duality in the Mathematical and Natural Sciences: From Logic to Biology
    - 1.1 #ST2HVQ Abstract
  - 2 #FLB78P Contents
  - 3 #MEVK4Z 1 Introduction: A Fundamental Duality in the Sciences
  - 4 #ZJN679 2 Methods: The Dual Logics of Subsets and Partitions
  - 5 #DGJK69 3 Results
    - 5.1 #3EY9FC 3.1 The Fundamental Duality as the Reverse-the-Arrows in Category Theory
      - 5.1.1 #8FLPXH 3.1.1 The Elements-and-Distinctions Definition of Functions
      - 5.1.2 #4EJ7VK 3.1.2 Subsets and Partitions as Morphisms
    - 5.2 #4V3BVP 3.2 The Canonical Morphisms in Universal Mapping Properties in Sets
      - 5.2.1 #BB55N6 3.2.1 Coproduct in Sets
      - 5.2.2 #TPPZXR 3.2.2 Product in Sets
      - 5.2.3 #QHXNHR 3.2.3 The Duality in Sets
    - 5.3 #6UWNUS 3.3 Probability and Information: The Quantitative Versions of the Dual Logics
      - 5.3.1 #BCJ8ZC 3.3.1 Probability Theory
      - 5.3.2 #LT9UAS 3.3.2 Logical Entropy
      - 5.3.3 #F9M3T6 3.3.3 The Relationship to Shannon Entropy
    - 5.4 #H59FZG 3.4 The Dual Creation Stories: Ex Nihilo and Big Bang
    - 5.5 #XQMUBJ 3.5 Classical Metaphysics
    - 5.6 #MUCGHX 3.6 Quantum Mechanics Math as the Hilbert Space Version of Partition Math
      - 5.6.1 #M7ZGQQ 3.6.1 Introduction: A Logical Basis for Superposition
      - 5.6.2 #U886EP 3.6.2 Quantum States
      - 5.6.3 #AZQEU9 3.6.3 Quantum Observables
      - 5.6.4 #2QCJ8W 3.6.4 Quantum Measurement
      - 5.6.5 #LVRMM9 3.6.5 The Objective Indefiniteness Interpretation of QM
      - 5.6.6 #THR8RK 3.6.6 Commuting, Non-commuting, and Conjugate Operators
      - 5.6.7 #J4NVLA 3.6.7 Group Representation Theory
    - 5.7 #UXVXWD 3.7 Selectionist and Generative Mechanisms in the Life Sciences
      - 5.7.1 #KZZHDH 3.7.1 Introduction: The Basic Ideas
      - 5.7.2 #R53RQ8 3.7.2 Partitions and Codes
      - 5.7.3 #3H794M 3.7.3 The genetic code
      - 5.7.4 #B6N2ZZ 3.7.4 The Principles &amp; Parameters Mechanism for Language Acquisition
      - 5.7.5 #Y84EKA 3.7.5 Embryonic stem cell development
      - 5.7.6 #MBBW95 3.7.6 Selectionist and Generative Mechanisms Redux
  - 6 #L62FZR 4 Discussion and Conclusions
  - 7 #FZCQ66 5 Declarations
  - 8 #ANBS9T References

### 12. Tool result: get_document

DOCUMENT #C8FHDZ
Title: On implication and negation in partition logic

Outline:
  - 1 #L8JZAG On implication and negation in partition logic
    - 1.1 #ZZPBEJ 1. Introduction: The Boolean logic of subsets and the logic of partitions
    - 1.2 #7WB5RZ 2. The logic of partitions
    - 1.3 #9DDUBK 3. Implication and negation in partition logic
    - 1.4 #FEMQRA 4. Three more equivalent ways to define implication for partitions
      - 1.4.1 #8P96YU 4.1. The adjunctive definition
      - 1.4.2 #WUWW5V 4.2. The graph-theoretic definition
      - 1.4.3 #H2YZ4E 4.3. The ditset definition
    - 1.5 #KS4RBJ 5. Relative negation in partition logic
    - 1.6 #LEZCCF 6. Valid formulas
    - 1.7 #GNBDTD 7. Concluding remarks
    - 1.8 #87DAFA References

### 13. Tool result: get_document

DOCUMENT #KY3Y9U
Title: Naïve Physics: An Essay in Ontology

Outline:
  - 1 #984VXE Naïve Physics: An Essay in Ontology
    - 1.1 #LERGJV ► To cite this version:
  - 2 #6AAQJL Naive Physics: An Essay in Ontology(1)
    - 2.1 #N99NM2 Introduction
    - 2.2 #3M8H6K I. GESTALT THEORY AND THE HISTORY OF NAIVE PHYSICS
      - 2.2.1 #KLB9F2 Avenarius and Mach
      - 2.2.2 #3QP57R Köhler, Lipmann, Bogen
      - 2.2.3 #AN4X5A Gibson
      - 2.2.4 #JH2FDB The Austro-Italian School of Gestalt Theory
      - 2.2.5 #ZSU3C6 Phenomenology
    - 2.3 #Z2JSWR II. NAIVE PHYSICS AND ARTIFICIAL INTELLIGENCE
      - 2.3.1 #YCP6DT Historical Antecedents
      - 2.3.2 #QKV6B5 Critique of Artificially Intelligent Naive Physics
    - 2.4 #BQHK5F III. BRANCHES OF NAIVE PHYSICS
      - 2.4.1 #CYFWW4 1. Objects, Natural Units and Natural Kinds
      - 2.4.2 #LZAZAB 2. Events, Processes and Causality
      - 2.4.3 #272Z8G 3. Stuffs, States of Matter, Qualities
      - 2.4.4 #5ZPALD 4. Surfaces, Limits, Boundaries, Media
      - 2.4.5 #AX6HDN 5. Motivation, Requiredness, Value
    - 2.5 #LS7S69 Conclusion
    - 2.6 #NUXU89 References
    - 2.7 #DA9YQJ Endnotes

### 14. Assistant tool calls

#### Tool call: `read`

```json
{
  "blocks": [
    "HADPD5",
    "BHVZQQ",
    "A74QRX",
    "PYMKJQ",
    "ZSJP4W",
    "8X3P8G"
  ],
  "expand": true
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "RVYUE8",
    "KCTEZX",
    "2U9457",
    "9D446H"
  ],
  "expand": true
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "836SUT"
  ],
  "expand": true
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "W88WGC",
    "YN2YMY",
    "EU2W22"
  ],
  "expand": true
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "K8PYLN",
    "T3V2BX",
    "QK6C6U",
    "63LUN3",
    "MW9JFA",
    "ZAUEPE",
    "CCHP6D"
  ],
  "expand": true
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "MEVK4Z",
    "ZJN679",
    "UXVXWD",
    "L62FZR"
  ],
  "expand": true
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "ZZPBEJ",
    "7WB5RZ",
    "9DDUBK",
    "KS4RBJ",
    "GNBDTD"
  ],
  "expand": true
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "BQHK5F"
  ],
  "expand": true
}
```

### 15. Tool result: read

DOCUMENT #FQCWKV
A Theory of Granular Partitions

SECTION #HADPD5 1 INTRODUCTION

EXCERPT #69ZSRH p. 0
  Imagine that you are standing on a bridge above a highway checking off the makes and models of the cars that are passing underneath. Or that you are a postal clerk dividing envelopes into bundles; or a laboratory technician sorting samples of bacteria into species and subspecies. Or imagine that you are making a list of the fossils in your museum, or of the guests in your hotel on a certain night. In each of these cases you are employing a certain grid of labeled cells, and you are recognizing certain objects as being located in those cells. Such a grid of labeled cells is an example of what we shall call a granular partition . We shall argue that granular partitions are involved in all naming, listing, sorting, counting, cataloguing and mapping activities. Division into units, counting and parceling out, mapping, listing, sorting, pigeonholing, cataloguing are activities performed by human beings in their traffic with the world. Partitions are the cognitive devices designed and built by human beings to fulfill these various listing, mapping and classifying purposes.

EXCERPT #E6ENWK p. 0
  In almost all current work in areas such as common-sense reasoning and natural language semantics it is the naïve portion of set theory that is used as basic framework. The theory of granular partitions as it is developed in this paper is intended to serve as an alternative to set theory both as a tool of formal ontology and as a framework for the representation of human cognition. Kinds, sorts, species and genera are standardly treated as sets of their instances; subkinds as subsets of these sets. Set theory nicely does justice to the granularity that is involved in our sorting and classification of reality by giving us a means of treating objects as elements of sets, i.e. as single whole units within which further parts are not recognized. But set theory also has its problems, not the least of which is that it supports no distinction between natural totalities (such as the species cat ) and such ad hoc totalities as, for example, {the moon, Napoleon, justice}.

EXCERPT #DBQTZ5 p. 0
  Set theory has problems, too, when it comes to dealing with time, and with the fact that biological species and similar entities may remain the same even when there is a turnover in their instances. For sets are identical if and only if they have the same members. If we model the species cat as the set of its instances, then this means that cats form a different species every time a cat is born or dies. If, similarly, we identify an organism as the set of its cells, then this means that it becomes a different organism whenever cells are gained or lost.

EXCERPT #HRH283 p. 0

EXCERPT #A5236K p. 1

EXCERPT #BK4ZC8 p. 1

EXCERPT #WB8YQ3 p. 1
  Set theory has problems also when it comes to dealing with the relations between granularities. An organism is a totality of cells, but it is also a totality of molecules, and it is also a totality of atoms. Yet the corresponding sets are distinct, since they have distinct members.

EXCERPT #WK3C5Q p. 1
  More recently, attempts have been made to solve some of these problems by using mereology or the theory of part and whole relations (Smith, 1998) as a framework for ontological theorizing. Mereology is better able to do justice in realistic fashion to the relations between wholes and their constituent parts at distinct levels of granularity. All the above-mentioned totalities (of cells, molecules, atoms) are, when treated mereologically, one and the same. Mereology also has the advantage over set theory when it comes to serving as a tool for the sort of middle-level ontological theorizing which the study of common-sense reasoning requires. For mereology does not require that, in order to quantify over wholes of given sorts, one must first of all specify some level of ultimate parts (the Urelemente of set theory) from out of which all higher-level entities are then constructed.

EXCERPT #NUZZBX p. 1
  But mereology, too, has its problems. Thus it, too, has no way of dealing with entities which gain and lose parts over time and it has no way of distinguishing intrinsically unified wholes from ad hoc aggregations. Above all, its machinery for coping with the phenomenon of granularity brings problems of its own, for if we quantify over wholes, in a mereological framework, then we thereby quantify over all the parts of such wholes, at all levels of granularity. The selectivity of intentionality means however that we are often directed cognitively to coarse-grained wholes whose finer-grained parts are traced over: when I think of Mary I do not think of all the molecules in Mary's arm. Mereology has no means of mimicking the advantages of set-theory when it comes to dealing with such phenomena, and it is no small part of our project here to rectify this defect. The theory of granular partitions is the product of an effort to build a more realistic, and also a more general and flexible, framework embodying the strengths of both set theory and mereology while at the same time avoiding their respective weaknesses.

DOCUMENT #FQCWKV
A Theory of Granular Partitions

SECTION #BHVZQQ 2 TYPES OF GRANULAR PARTITIONS

EXCERPT #J5QPU5 p. 1
  Some types of granular partitions are flat: they amount to nothing more than a mere list. Others are hierarchical: they consist of cells and subcells, the latter being nested within the former. Some partitions are built in order to reflect independently existing divisions on the side of objects in the world (the subdivision of hadrons into baryons and mesons, the subdivision of quarks into up , down , top , bottom , charm , strange ). Other partitions—for example the partitions created by nightclub doormen or electoral redistributing commissions—are themselves such as to create the corresponding divisions on the side of their objects, and sometimes they create those very objects themselves. Quite different sorts of partitions—having cells of different resolutions and effecting unifying and slicings and reapportionings of different types—can be applied simultaneously to the same domain of objects. The people in your building can be divided according to gender, social class or social security number. Or they can be divided according to tax bracket, blood type, current location or Erdős number. Maps, too, can impose subdivisions of different types upon the same domain of spatial reality, and the icons which they employ represent objects in granular fashion (which means that they do not represent the corresponding object parts). Maps will turn out to be important examples of granular partitions in the sense intended here.

EXCERPT #4529UT p. 2

EXCERPT #MPLG8Q p. 2

EXCERPT #6Z9MS8 p. 2
  The theory of partitions is, as will by now be clear, highly general, and this generality brings with it a correspondingly highly general reading of the term ‘object’. Here we take an object to be any portion of reality: an individual, a part of an individual, a class of individuals (for example a biological species), a spatial region, a political unit (county, polling district, nation), or even (for present purposes) the universe as a whole. An object in the partition-theoretic sense is everything (existent) that can be recognized by some cell of a partition.

EXCERPT #5DJVRW p. 2
  Objects can be either of the bona fide or of the fiat sort (Smith, 2001a). Bona fide objects, for example the moon, your armchair, this piece of cheese, are objects which exist (and are demarcated from their surroundings) independently of human partitioning activity. Fiat objects are objects which exist (and are demarcated from their surroundings) only because of such partitioning activity. Examples are: census tracts, your right arm, the Western Hemisphere.

EXCERPT #33X78H p. 2
  In some cases partition cells recognize pre-existing fiat objects, in other cases the latter are created through the very projection of partition cells onto a corresponding portion of reality. Examples are the partitions creating the States of Wyoming and Montana, or the partitions of a population into persons belonging to distinct tax brackets created by tax legislation. Once fiat objects have been created in this way subsequent partitions may simply recognize them (without any object-creating effect), just as there are partitions which simply recognize bona fide objects.

EXCERPT #5TX4XD p. 2
  Our notion of granular partition is only distantly related to the more familiar notion of a partition defined in terms of equivalence classes. Our partitions can include more structure in the form of hierarchically arranged subcells and supercells. Moreover, it is possible to define a partition in terms of an equivalence relation only where the relevant domain has already been divided up into units (the elements of the set with which we begin). The very process of division into units—for example through the imposition of fiat subdivisions or fiat discretizations upon continuous gradations—is however one of the things which our present theory is designed to illuminate.

EXCERPT #HKG7HN p. 2
  In Smith and Brogaard (2002b) the notion of granular partition was introduced as a generalization of David Lewis’s (1991) conception of classes as the mereological sums of their constituent singletons. Granular partitions, too, can in first approximation be conceived as the mereological sums of their constituent cells . The cells within a granular partition may however manifest a range of properties which the singletons of set theory lack. This is because, where a singleton is defined in the obvious way in terms of its member, each cell of a granular partition is defined by its label , and this means: independently of any object which might fall within it. The cells of a partition are what they are independently of whether there are objects located within them. A map of Middle Earth is different from a map of the Kingdom of Zenda, even though there is in both cases precisely nothing on the side of reality upon which these maps would be projected. ‘The Morning Star’ and ‘The Evening Star’ were for a long time used as labels for two distinct cells in astronomers' partitions of the heavenly bodies, even though, as it later turned out, it is one the same object that is located in each.

EXCERPT #GVPXKQ p. 3

EXCERPT #MV5ENJ p. 3

EXCERPT #A565XT p. 3
  If one thinks that there are dodos, then one makes a different sort of error from the error which one makes if one thinks that there is an intra-Mercurial planet. (Set theory, it almost goes without saying, lacks the machinery to deal with such different sorts of error.)

EXCERPT #VMY554 p. 3
  Just as when we point our telescope in a certain direction we may fail to find what we are looking for, so when we point our partition in a certain direction it may be that there are no objects located in its cells. There may, in this sense, be empty cells within a partition (and even, in the most general version of our theory, partitions all of whose cells are empty). But this does not mean that the theory of partitions recognizes some counterpart of the set theorist's empty set (an entity that is contained as a subset within every set). For the empty set is empty by necessity; a cell in a partition, in contrast, is at best empty per accidens ; it is empty because of some failure on our part in our attempts to partition the reality beyond.

EXCERPT #F2PZG6 p. 3
  The theory of partitions is thus more powerful than set theory, in that it is better able to do justice to the various ways in which human beings are related, cognitively, to objects in reality. In many ways, however, partition theory is also much weaker than set theory. For the axioms of set theory imply the existence of an entire hierarchy of sets, sets of sets, and so on, ad infinitum , reflecting the fact that they were designed to yield an instrument of considerable mathematical power. Partition theory, in contrast, is like mereology in that it is attuned to purposes other than those of mathematics. More specifically, it is designed to do justice to the sometimes ad hoc ways in which cognitive classificatory instruments are constructed by human beings for specific human purposes.

EXCERPT #HJ52QA p. 3
  Partition theory differs from set theory also in this: that it puts partitions and objects in two entirely separate realms. Partitions themselves are never objects, and there are no partitions of partitions. Thus partition theory has no counterpart of sets of sets or of the distinction between two ways in which one set can be contained within another (on the one hand as element, on the other hand as subset). Partition theory can thus provide a framework for theorizing about the relations between cognitive artifacts such as lists and maps and the reality to which such artifacts relate in such a way that debates for example concerning the status of the hierarchy of transfinite sets can be avoided.

DOCUMENT #FQCWKV
A Theory of Granular Partitions

SECTION #A74QRX 3 GRANULAR PARTITIONS AS SYSTEM OF CELLS

SECTION #PP6B9Q 3.1 A bipartite theory

EXCERPT #WKHH8J p. 3
  In the present paper we present the basic formal theory of granular partitions, leaving for a later work the presentation of the theory of cell-labeling (and, more generally, of the cognitive aspects of partitions as we here understand them). Our formal theory has two orthogonal and independent parts: (A) a theory of the relations between cells, sub-cells, and the partitions in which they are contained; (B) a theory of the relations between partitions and objects in reality. The counterpart of (A) in a set-theoretic context would be the study of the relations among subsets of a single set; the counterpart of (B) would be the study of the relations between sets and their members. These set-theoretical counterparts of (A) and (B) are, be it noted, not independent. This is because the standard subset relation of set theory is itself defined in terms of the set-membership relation ( x is a subset of y means: all the members of x are members of y ). In the context of partition theory, in contrast, the corresponding relations are defined independently of each other. Partition theory thus departs from the extensionalism of set theory (i.e. from the assumption that each set is defined exclusively by its members). A cell is defined by its position within a partition and by its relations to other cells, and it is this which gives rise to the relations treated of by theory (A). What objects in reality are located in a cell—the matter of theory (B)—is then a further question, which is answered, in different ways from case to case. Briefly, we can think of cells as being projected onto objects in something like the way in which flashlights are projected upon the objects which fall within their purview.

EXCERPT #NWA7UG p. 4

EXCERPT #MPLX4R p. 4

EXCERPT #GNULNM p. 4
  Consider the left part of Figure 1. Theory A governs the way we organize cells into nesting structures and the way we label cells. Theory B governs the way these cell-structures project onto reality indicated by the arrows connecting the left and the right parts of the Figure. Our strategy in what follows will be first of all to define a series of master conditions belonging to theory (A) and theory (B) respectively, and which—for the purposes of the present paper—all partitions will be assumed to satisfy. In later sections we will add further conditions, satisfied by some partitions but not by others.

EXCERPT #MY7QSY p. 4
  Figure 1: Relationships between cells and objects. The diagram shows a hierarchical structure on the left and a set of objects on the right. On the left, a large box labeled 'Food' contains two smaller boxes: 'Fruits' and 'Vegetables'. On the right, a large oval contains two smaller ovals. The top oval contains a strawberry and a slice of orange. The bottom oval contains a carrot and a green pea. Arrows point from the 'Food' box to the top oval, from the 'Fruits' box to the top oval, and from the 'Vegetables' box to the bottom oval.

EXCERPT #QL9UMG p. 4
  Figure 1: Relationships between cells and objects

SECTION #ML3GN4 3.2 The subcell relation

EXCERPT #WNUYY8 p. 4
  Theory (A) is effectively a theory of well-formedness for partitions; it studies properties partitions have in virtue of the relations between and the operations performed upon the cells from out of which they are built, independently of any linkage to reality beyond. Cells in partitions may be nested one inside another in the way in which, for example, the species crow is nested inside the species bird , which in turn is nested inside the genus vertebrate in standard biological taxonomies. When one cell is nested inside another in this way we say that the former is a sub-cell of the latter. Note that the subcell relation can hold between two cells independently of whether there are any objects located in them (as for example in relation to the cells labeled ‘male dodos’ and ‘dodos’ in a classification of extinct animals).

EXCERPT #ZEZ3WD p. 5

EXCERPT #4HGPZH p. 5

EXCERPT #H6HWVT p. 5
  We use z, z_1, z_2, \dots as variables ranging over cells and A, A_1, A_2, \dots as variables ranging over partitions ('cell' is ' Zelle ', partition is ' Aufteilung ' in German). We write z_1 \subseteq_A z_2 in order to express the fact that z_1 stands in a sub-cell relation to z_2 within the partition A . (Where confusion will not result we will drop the explicit reference to the partition A and write simply ' \subseteq '). We can then state the first of several master conditions on all partitions as follows:

EXCERPT #65G2QA p. 5
  MA1: The subcell relation \subseteq is reflexive, antisymmetric, and transitive.

EXCERPT #L6RSKU p. 5
  This means that within every partition: each cell is a subcell of itself; if two cells are subcells of each other then they are identical; and if cell z_1 is a sub-cell of z_2 and z_2 a sub-cell of z_3 , then z_1 is in its turn a sub-cell of z_3 . We can think of the sub-cells of a cell within a given partition as special sorts of parts of the cell; they are those parts which are included within this same partition as cells in their own right.

SECTION #2LJNRR 3.3 Existence of a maximal cell

EXCERPT #T8947K p. 5
  We define a maximal cell of a partition A as a cell satisfying:

EXCERPT #T6CT88 p. 5
  \text{DMax: } M(z_1, A) \equiv Z(z_1, A) \text{ and } \forall z : Z(z, A) \rightarrow z \subseteq z_1.

EXCERPT #GY7ZKV p. 5
  Here ' Z(z, A) ' means that z is a cell in the partition A . (Again: we shall normally omit the condition Z(z, A) where confusion will not result.) We now demand as a further master condition that

EXCERPT #8XBHK9 p. 5
  MA2: Every partition has a unique maximal cell in the sense of DMax.

EXCERPT #YV2YJH p. 5
  The motivation for MA2 is very simple: it turns on the fact that a partition with two maximal cells would either be in need of completion by some extra cell representing the result of combining these two maximal cells together into some larger whole; or it would not be one partition at all, but rather two separate partitions, each of which would need to be treated in its own right within the framework of our theory.

EXCERPT #JUK5UT p. 5
  We also call the unique maximal cell of a partition its root, r(A) . The maximal cell of a partition is such that all the cells in the partition are included in it as subcells. MA2 implies that there are no partitions which are empty tout court in that they have no cells at all.

SECTION #7Y2V3Z 3.4 Finite chain condition

EXCERPT #U778G3 p. 5
  The transitivity of \subseteq generates a nestedness of cells inside a partition in the form of chains of cells satisfying z_1 \supset z_2 \supset \dots \supset z_n , with z_1 as root. We shall call the cells at the ends of such chains minimal cells or leaves , and define:

EXCERPT #E6TDJR p. 5
  \text{DMin: } \text{Min}(z_1, A) \equiv Z(z_1, A) \text{ and } \forall z : Z(z, A) \rightarrow (z \subseteq z_1 \rightarrow z = z_1)

EXCERPT #7U6BRX p. 5
  Another important aspect of a partition is then:

EXCERPT #Q7V22F p. 5
  MA3: Each cell in a partition is connected to the root via a finite chain of immediate succeeding cells.

EXCERPT #Y6NBST p. 6

EXCERPT #YNCVKU p. 6

EXCERPT #42XLXH p. 6
  A cell z_2 is the immediate successor of the cell z_1 if and only if z_1 \subseteq z_2 and there does not exist a cell z_3 such that z_1 \subset z_3 \subset z_2 holds.

EXCERPT #V8Y6J9 p. 6
  MA3 does not rule out the possibility that a given cell within a partition might have infinitely many immediate subcells (also called daughter cells). Enforcing finite chains thus leaves open the issue as to whether partitions themselves are finite.

EXCERPT #A3DWW7 p. 6
  If, in counting off the cars passing beneath you on the highway, your checklist includes one cell labeled red cars and another cell labeled Chevrolets , we will rightly feel that there is something amiss with your partition. One problem is that you will almost certainly be guilty of double counting. Another problem is that there is no natural relationship between these two cells, which seem rather to belong to distinct partitions. As a step towards rectifying such problems we shall insist that all partitions must satisfy a condition according to which every pair of distinct cells within a partition stand to each other either in the subcell relation or in the relation of disjointness. In other words:

EXCERPT #S9EHE6 p. 6
  MA4: If two cells within a partition overlap, then one is a subcell of the other.

EXCERPT #W6SNQ2 p. 6
  Or in symbols:

EXCERPT #LUGM8N p. 6
  \exists z : (z \subseteq z_1 \text{ and } z \subseteq z_2) \rightarrow z_1 \subseteq z_2 \text{ or } z_1 \supset z_2.

EXCERPT #FCR6PU p. 6
  (Here and in what follows initial universal quantifiers are taken as understood.) From MA3 and MA4 we can prove by a simple reductio that the chain connecting each cell of a partition to the root is unique.

SECTION #7UH4UA 3.5 Partition-theoretic sum and product of cells

EXCERPT #B89UGH p. 6
  The background to all our remarks in this paper is mereology. We take the relation \leq meaning ‘part of’ as primitive, and define the relation of overlap between two entities simply as the sharing of some common part. \leq is like \subseteq in being reflexive, anti-symmetric and transitive, but the two differ in the fact that \subseteq is a very special case of \leq .

EXCERPT #ARR99R p. 6
  The subcells of a cell are also parts of the cell (just as, for David Lewis, 1991, each singleton is a part of all the sets in which it is included). What happens when we take the mereological products and sums of cells existing within a partition? In regard to the mereological product, z_1 * z_2 , of two cells matters are rather simple. This product exists only when the cells overlap mereologically, i.e. only when they have at least one subcell in common. This means that the mereological product or intersection of two cells, if it exists, is in every case just the smaller of the two cells.

EXCERPT #GY92C8 p. 6
  In regard to the mereological sum of cells z_1 + z_2 , in contrast, it is a more difficult situation which confronts us. Given any pair of cells within a given partition, the corresponding mereological sum does indeed exist—simply in virtue of the fact that the axioms of mereology allow unrestricted sum-formation. (This is a trivial matter, for the mereologist: if you got the parts, whatever they are, then you got the whole.) But only in special cases will this mereological sum be itself a cell within the partition in question. This occurs for example when cells labeled ‘male rabbit’ and ‘female rabbit’ within a partition have as their sum the cell labeled ‘rabbit’. There is, in contrast, no cell in our standard biological partition of the animal kingdom labeled rabbits and jellyfish , and there is no cell in our standard geopolitical partition of the surface of the globe labeled Hong Kong and Algeria .

EXCERPT #YYWXMV p. 7

EXCERPT #ZJUG9F p. 7

EXCERPT #KLP7NJ p. 7
  To make sense of these matters we need to distinguish the mereological sum of two cells from what we might call their partition-theoretic sum. We can define the former as just the result of taking the two cells together in our thoughts and treating the result as a whole. We can define the latter as follows. The partition-theoretic sum z_1 \cup z_2 of two cells in a partition is the smallest subcell within the partition containing both, z_1 and z_2 , as subcells; i.e., it is the least upper bound of z_1 and z_2 with respect to \subseteq . (By MA2 and MA4 we know that this is always defined and that it is unique.) This partition-theoretic sum is in general distinct from the mereological sum of the corresponding cells. (The partition-theoretic sum of the cells labeled rabbit and lion is the cell labeled mammal in our partition of the animal kingdom.) The best we can say in general is that z_1 + z_2 is at least part of z_1 \cup z_2 (Smith, 1991). Note, on the other hand, that if we analogously define the partition-theoretic product, z = z_1 \cap z_2 , of two cells within a given partition as the largest subcell shared in common by z_1 and z_2 , i.e., as their greatest lower bound with respect to \subseteq , then it turns out that this coincides with the mereological product already defined above.

EXCERPT #HQF2W3 p. 7
  Mereological sum and product apply to both cells and objects; partition-theoretic sum applies only to cells. Here we use the symbols for the two groups of relations as shown in Table 1:

EXCERPT #RD3HKS p. 7
  Partition-theoretic (for cells) Mereological (for cells and for objects) Sum \cup + Product \cap * Inclusion \subseteq \leq Proper Inclusion \subset <

EXCERPT #MCRYTG p. 7
  Table 1: Partition-theoretic and mereological relations and operations.

EXCERPT #AEBCNE p. 7
  When restricted to cells within a given partition \subseteq and \leq coincide, and so also do \cap and * . We can think of \subseteq as the result of restricting \leq to the natural units picked out by the partition in question. We can think of set theory as amounting to the abandonment of the idea that there is a distinction between natural units and arbitrary unions. Set theory, indeed, derives all its power from this abandonment.

SECTION #Q65BLD 3.6 Trees

EXCERPT #YS4DKV p. 7
  Philosophers since Aristotle have recognized that the results of our sorting and classifying activities can be represented as those sorts of branching structures which mathematicians nowadays called trees. Trees are directed graphs without cycles. They consist of nodes or vertices and of directed edges that connect the nodes. That the edges are directed means that the vertices connected by an edge are related to each other in a way that is analogous to an ordered pair. Here we are interested specifically in rooted trees, which is to say: trees with a single topmost node to which all other vertices are connected, either directly or indirectly, via edges. In a rooted tree, every pair of vertices is connected by one and only one chain (or sequence of edges). We shall think of the directedness of an edge as proceeding down the tree from top to bottom (from ancestors to descendants). That a tree is without cycles means that, if we move along its edges, then we will always move down the tree and in such a way that, however far we travel, we will never return to the point from which we started.

EXCERPT #GW2XL6 p. 8

EXCERPT #WD4N32 p. 8

EXCERPT #TEZ8RZ p. 8
  The connection between partitions and trees will now be obvious: it is a simple matter to show that every finite partition can be represented as a rooted tree of finite depths and vice versa (Mark, 1978). To construct a tree from a finite partition we create a graph by mapping the cells z_i of the partition onto nodes v_i within the graph and by introducing a directed edge from vertex v_i to v_j if and only if the cell z_i has cell z_j as an immediate subcell. That this is always possible follows from the fact that the subcell relation is well defined (by MA1) and from the fact that chains of immediate cells are always finite (MA3). We can easily show also that the resulting graph is a rooted tree, which follows from MA2; that the graph structure is connected (from MA2), and acyclical (from MA4); and that there is a unique path between any two vertexes (from MA2, MA3 and MA4). The complementary reconstruction of a partition from its tree representation is no less trivial.

EXCERPT #7ZTAF7 p. 8
  We can represent a partition not only as a tree but also as a simple sort of Venn diagram. In a Venn diagram partition cells are represented as topologically simple and regular regions of the plane. Our partitions are Venn diagrams within which regions do not intersect. (Conversely every array of non-intersecting, possibly nested regions in the plane can be transformed into a tree in such a way that each region is represented by a node in the tree, and each directed link in the tree represents an immediately contains relation between a corresponding pair of nested regions.) In the remainder we will often think of partitions as such planar maps (that is as Venn diagrams without overlapping), and the minimal cells correspond to the smallest regions within such diagrams.

EXCERPT #LWFBJS p. 8
  Tree and Venn-diagram representations of granular partitions are not equivalent. To see this consider Figure 2. Even if we ignore the labeling it is obvious that the two Venn-diagrams represent two distinct partitions. The mammal-partition contains ‘empty space’ and the first-couple-partition is full in the sense that it does not contain ‘empty space’. This distinction, however, can not be made in terms of the corresponding tree representations. In order to represent it in the tree we needed consider labeled trees with nodes labeled full or not-full . We will discuss these issues in more detail in our section on fullness and cumulativeness of granular partitions.

EXCERPT #WCLBUC p. 8
  Figure 2 consists of three sub-diagrams labeled (a), (b), and (c). (a) A Venn diagram showing a large rectangle labeled 'mammals'. Inside this rectangle are two smaller, non-overlapping rectangles labeled 'cats' and 'dogs'. (b) A Venn diagram showing a large rectangle labeled 'First Couple'. Inside this rectangle are two smaller, adjacent rectangles labeled 'George W.' and 'Laura'. (c) A tree diagram. It has a single root node at the top. Two directed edges point from the root node to two child nodes at the bottom. The nodes are represented by small circles. Figure 2: Venn-diagram and tree representations of granular partitions. (a) Venn diagram for 'mammals' containing two non-overlapping boxes labeled 'cats' and 'dogs'. (b) Venn diagram for 'First Couple' containing two adjacent boxes labeled 'George W.' and 'Laura'. (c) A tree diagram with a root node at the top and two child nodes at the bottom, connected by directed edges pointing downwards.

EXCERPT #FELKBJ p. 8
  Figure 2: Venn-diagram and tree representations of granular partitions.

EXCERPT #Q8K7NN p. 9

EXCERPT #7X7AZ9 p. 9

DOCUMENT #FQCWKV
A Theory of Granular Partitions

SECTION #PYMKJQ 4 GRANULAR PARTITIONS IN THEIR PROJECTIVE RELATION TO REALITY

SECTION #CBV5HG 4.1 Projection

EXCERPT #WWH2RS p. 9
  Partitions are more than just systems of cells. They are constructed to serve as inventories or pictures or maps of specific portions of reality, and in this they are analogous to windows , or to the latticed grills purported to have been used by Renaissance artists as aids to the faithful representation of objects in reality (Smith, 2001b). They are analogous also to propositions ( Elementarsätze ) as described by Wittgenstein in the Tractatus (1961). A proposition, for Wittgenstein, is built out of simple signs (names) arranged in a certain order. Each name, Wittgenstein tells us, stands in a projective relation to a corresponding object in the world: it cannot fail to strike its target. If a proposition is true, then its simple signs stand to each other within the proposition as the corresponding objects stand to each other in the world. It is in this sense that a true atomic proposition is a picture, as Wittgenstein puts it, of a state of affairs in reality. That a proposition is a complex of names arranged in a certain order is in our present context equivalent to the thesis that a partition is a complex of cells arranged in a certain order.

EXCERPT #U74BS4 p. 9
  A partition is a complex of cells in its projective relation to the world (compare Tractatus , 3.12). This relation may be effected either directly by the user of the partition—for example in looking through the cells of the grid and recording what objects are detected on the other side—or indirectly, with the help of proper names or other referring devices such as systems of coordinates or taxonomic labels.

EXCERPT #YVX3PD p. 9
  For Wittgenstein it is guaranteed a priori for every name that there is some unique object onto which the name is projected. From the perspective of the theory of granular partitions, in contrast, projection may fail. That is, a partition may be such that—like the partition cataloguing Aztec gods—there are no objects for its cells to project onto. Works of fiction and also not yet realized plans may be conceived as involving partitions of this kind.

EXCERPT #RSR7VC p. 9
  In this paper, however, we are interested primarily in partitions which do not project out into thin air in this way. We write ' P(z, o) ' as an abbreviation for: cell z is projected onto object o . We can also, if the context requires it, write ' P_A(z, o) ' to indicate that the projection of z onto o obtains in the context of partition A . In what follows we shall assume that a unique such projection is defined for each partition. In a more general theory we can weaken this assumption, for example by allowing projections to vary with time while the partition remains fixed (Smith and Brogaard, 2002a). Such variation of projection for a fixed partition is involved in all sampling activity. Consider, for example, what happens when we use a territorial grid of cells to map the presence of one or more birds of given species in given areas from one moment to the next.

SECTION #X57HET 4.2 Location

EXCERPT #XMZVGJ p. 9
  If projection is successful, then the object upon which a cell is projected is located in that cell. The use of the term 'location' reflects the fact that one important inspiration of our work is the study of location relations in spatial contexts. One motivating example of a location relation within our theory is the relation between a spatial object such as a railway station and an icon on a map. Other motivating examples are of a non-spatial sort: they include the relation between an instance (Tibbles) and its kind (cat) or the relation between a customer and the corresponding record in a database. Indeed they include the relation between you and your name.

EXCERPT #3HW73L p. 10

EXCERPT #HYZKEA p. 10

EXCERPT #U9KSJL p. 10
  We can compare a partition with a rig of spotlights projecting down onto an orchestra during the performance of a symphony. Each cell of the partition corresponds to some spotlight in the rig. Some cells (spotlights) will project upon single players, others onto whole sections of the orchestra (string, wind, percussion, and so forth). One cell (spotlight) will project upon the orchestra as a whole. Note that the spotlights do not hereby create the objects which they cast into relief. When once the rig has been set, and the members of the orchestra have taken their places, then it will be an entirely objective matter which objects (individuals and groups of individuals) are located in which illuminated cells.

EXCERPT #VPJCZD p. 10
  In what follows we make the simplifying assumption that objects are exactly located at their cells (that spotlights never partially illuminate single players or sections). Compare the way in which Wyoming is exactly located at the cell 'Wyoming' in the partition of the US into States or the way in which your brother Norse is exactly located at the cell 'Norse' in your partition (list) of your family members. In a more general theory we liberalize the location relation in such a way as to allow also for partial or rough location (Casati and Varzi, 1995; Bittner and Stell, 1998).

SECTION #K2LWW7 4.3 Transparency

EXCERPT #LUMNTD p. 10
  When projection succeeds, then location is what results. Projection and location thus correspond to the two directions of fit—from mind to world and from world to mind—between an assertion and the corresponding truthmaking portion of reality (Searle, 1983; Smith, 1999). Projection is like the relation which holds between your shopping list and the items which, if your shopping trip is successful, you will actually buy. Location is like the relation which obtains between the items you have bought and the new list your mother makes after your return, as she checks off those items which you have in fact succeeded in bringing back with you.

EXCERPT #MNNNLQ p. 10
  The formula ' L(o, z) ' abbreviates: object o is located at cell z . (And again where this is required we can write ' L_A(o, z) ' for: o is located at z in partition A .) Location presupposes projection: an object is never located in a cell unless the object has already been picked out as the target of the projection relation associated with the relevant partition. But successful projection—by which is meant the obtaining of the projection relation between a cell and an object—also presupposes location, so that where both L and P obtain they are simply the converse relations of each other. We have now reached the point where we can formulate the first of our master conditions on partitions from the perspective of theory (B):

EXCERPT #UGY4SK p. 10
  \text{MB1: } L(o, z) \rightarrow P(z, o)

EXCERPT #GQ8CDF p. 10
  \text{MB2: } P(z, o) \rightarrow L(o, z)

EXCERPT #636PHE p. 10
  (Successful) projection and (successful) location are simple converses of each other. (We formulate this principle as two separate conditions in order to leave room for a more general theory in which these two relations are teased apart.)

EXCERPT #EPFJLN p. 11

EXCERPT #SLZCMJ p. 11

EXCERPT #WDGLU3 p. 11
  MB1 and MB2 tell us that a partition projects a given cell onto a given object if and only if that object is located in the corresponding cell. Very many partitions—from automobile component catalogues to our maps of states and nations—have this quality without further ado.

EXCERPT #TCS955 p. 11
  We shall call partitions which satisfy MB1 and MB2 transparent partitions, a notion which we can define in the obvious way as follows:

EXCERPT #XUGKGD p. 11
  \text{DTr: } \text{Tr}(A) \equiv \forall z \forall o : P_A(z, o) \leftrightarrow L_A(o, z)

EXCERPT #CPKU8R p. 11
  MB1 and MB2 jointly ensure that objects are actually located at the cells that project onto them. Notice however that a transparent partition, according to our definition, may still have empty cells. Such cells may for example be needed in the context of scientific partitions in order to leave room for what, on the side of the objects, may be discovered in the future. (Compare the cells labeled Ununnilium, Ununonium and Ununbium in the Periodic Table of the Elements.) Empty cells may similarly be needed to cover up for temporary lapses in memory. You are attempting to account for the people at your party last night. Your partition consists of six cells labeled: John, Mary, Phil, Chris, Sally, and anyone else (for people you might have forgotten). Assume that John, Mary, Phil, Chris and Sally is a complete listing of all the people at the party. Your anyone else cell is then empty.

SECTION #7BK7KZ 4.4 Functionality constraints (constraints pertaining to correspondence to objects)

SECTION #DR2XFU 4.4.1 Projection is functional: the confused schoolboy

EXCERPT #VDTBBU p. 11
  The property of transparency is still rather weak. Thus transparency is consistent with ambiguity on the side of the cells in relation to the objects they target, that is with the case where one cell projects onto two distinct objects. An example of the sort of problem we have in mind is the partition created by a lazy schoolboy studying the history of the Civil War in England. This partition has one cell labeled ‘Cromwell’—and so it does not distinguish between Oliver and his son Richard. Another example might be the partition utilized by those who talk of ‘China’ as if the Republic of China and the People’s Republic of China were one single object.

EXCERPT #QDCMEB p. 11
  To eliminate such ambiguity we lay down a requirement to the effect that each partition must be such that its associated projection is a functional relation:

EXCERPT #HMW7ZL p. 11
  \text{MB3: } P(z, o_1) \text{ and } P(z, o_2) \rightarrow o_1 = o_2

EXCERPT #5VYAXN p. 11
  For partitions satisfying MB3, cells are projected onto single objects (one rather than two). Consider the left part of Figure 3. The dotted arrow can occur in partitions satisfying merely MB1–2 but not in partitions also satisfying MB3. Notice, though, that projection might still be a partial function, since MB3 does not rule out the case where there are empty cells.

EXCERPT #NCC9WF p. 11
  To impose the functionality of projection on all partitions is in one respect trivial. For we can very easily convert a partition A which does not satisfy MB3 into one which does. If z is a cell in A which does not satisfy MB3, then we create this new partition A' by adjusting A in such a way that z now projects upon the mereological sum of the objects its projects upon in A . This account seems, indeed, to do justice to what is involved in the confused schoolboy case, namely that Richard and Oliver are run together, somehow, into one composite human being.

EXCERPT #MKWBFV p. 12

EXCERPT #J6MVLC p. 12

EXCERPT #M2SLL7 p. 12
  Figure 3: Two diagrams illustrating transparent partitions. The left diagram shows a partition with cells Z1, Z2, and Z3. Z1 is connected to object O1 by a solid double-headed arrow, and Z2 is connected to O1 by a dotted arrow. Z3 is not connected to any object. The right diagram shows a partition with cells Z1, Z2, and Z3. Z1 is connected to object O1 by a solid double-headed arrow, and Z2 is connected to O1 by a dotted arrow. Z3 is not connected to any object. In both diagrams, O2 is present but has no connections.

EXCERPT #9P38AA p. 12
  Figure 3: Transparent partitions in which projection is not functional (left); location is not functional (right)

EXCERPT #CYXNEY p. 12
  In the remainder of this paper we use the notation o = p(z) instead of P(z, o) whenever we assume that projection is functional.

SECTION #NBA7LN 4.4.2 Location is functional: the Morning Star and the Evening Star

EXCERPT #P8FJJ3 p. 12
  Consider a partition having root cell labeled ‘heavenly bodies’ and three subcells labeled: ‘The Morning Star’, ‘The Evening Star’, and ‘Venus’, respectively. As we know, all three subcells project onto the same object. This partition is perfectly consistent with the conditions we have laid out thus far. Its distinct subcells truly, though unknowingly, project onto the same object. It is not unusual that we give different names (or class-labels) to things in cases where we do not know that they are actually the same. A good partition, though, should clearly be one in which such errors are avoided.

EXCERPT #G2B4G8 p. 12
  Partitions manifesting the desired degree of correspondence to objects in this respect must in other words be ones in which location, too, is a functional relation:

EXCERPT #Q22H66 p. 12
  \text{MB4: } L(o, z_1) \text{ and } L(o, z_2) \rightarrow z_1 = z_2

EXCERPT #TMNHE5 p. 12
  In partitions that satisfy MB4, location is a function, i.e., objects are located at single cells (one rather than two). Consider the right part of Figure 3. The dotted arrow can occur in partitions satisfying MB1–2, not however in partitions also satisfying MB4. As MB3 rules out co-location (overcrowding), so MB4 rules out co-projection (redundancy). Note that natural analogues of co-location and co-projection are not even formulable within a set-theoretic framework.

DOCUMENT #FQCWKV
A Theory of Granular Partitions

SECTION #ZSJP4W 5 CORRESPONDENCE OF MEREOLOGICAL STRUCTURE

EXCERPT #3WTGJC p. 12
  MB1 and MB2 are, even when taken together with MB3 and MB4, still very weak. They tell us only that, if a cell in a partition projects upon some object, then that object is indeed located in the corresponding cell. They do not tell us what happens in case a cell fails to project onto anything at all. MB1–4 thus represent only a first step along the way towards an account of correspondence to reality for partitions. Such correspondence will involve the two further dimensions of structural mapping and of completeness .

EXCERPT #TUVP2X p. 13

EXCERPT #6G5B5P p. 13

SECTION #AG35RL 5.1 Recognizing mereological structure

EXCERPT #6EQC5N p. 13
  An object o is recognized by a partition if and only if the latter has a cell in which that object is located (Smith and Brogaard, 2002b). Intuitively, recognition is the partition-theoretic analogue of the standard set-membership relation. Partitions embody the selective focus of our mapping, classifying, and listing activities. To impose a partition on a given domain of reality is to foreground certain objects and features in that domain and trace over others. Note hereby that we trace over not only the objects which surround that which is foregrounded, as according to the usual understanding of the foreground/background structure; for we also trace over those parts of the foregrounded object which fall beneath the threshold of our concerns. Partitions are granular in virtue precisely of the fact that a partition can recognize an object without recognizing all its parts.

EXCERPT #U8RZRZ p. 13
  Partitions—think again of Venn diagrams—are designed to reflect the part-whole structure of reality through the fact that the cells in a partition are themselves such as to stand in relations of part to whole. Given the master conditions expressed within the framework of theory (A) above, partitions have at least the potential to reflect the mereological structure of the domain onto which they are projected. And in felicitous cases this potential is realized.

EXCERPT #SDMSTN p. 13
  That we distinguish between the recognition (foregrounding, selection) of objects on the one hand and the reflection of mereological structure on the other hand is not an arbitrary matter. In Tractarian semantics we distinguish between projection and isomorphism. In set theory we distinguish, for any given set, between a domain of elements and the set-theoretic structure imposed on this domain. Just as it is possible to have sets consisting entirely of Urelemente (together with a minimal amount of set-theoretic packaging), so it is possible to have partitions built exclusively out of minimal cells (and one root cell). Such partitions amount, simply, to lists of the things that are recognized by their cells, with no mereological structure on the side of these objects being brought into account.

EXCERPT #KSQGGQ p. 13
  Figure 4 consists of three diagrams labeled (a), (b), and (c). Each diagram shows a partition structure on the left and objects on the right. In (a), a rectangular box is divided into two horizontal cells labeled z_1 and z_2 . z_1 has a double-headed arrow pointing to a circle labeled o_1 , and z_2 has a double-headed arrow pointing to a circle labeled o_2 . In (b), a rectangular box is divided into two horizontal cells labeled z_1 and z_2 . z_1 has a double-headed arrow pointing to a large circle labeled o_1 , and z_2 has a double-headed arrow pointing to a circle labeled o_2 . In (c), a rectangular box is divided into two horizontal cells labeled z_1 and z_2 . z_1 has a double-headed arrow pointing to a circle labeled o_1 , and z_2 has a double-headed arrow pointing to a circle labeled o_2 . Additionally, a smaller rectangular box is shown inside the main box, containing the cell z_2 . Figure 4: Three diagrams (a), (b), and (c) illustrating different partition structures. (a) shows a partition with two cells, z1 and z2, each containing one object, o1 and o2 respectively. (b) shows a partition with two cells, z1 and z2, where z1 contains o1 and z2 contains o2. (c) shows a partition with two cells, z1 and z2, where z1 contains o1 and z2 contains o2, but z1 is also a cell in the partition.

EXCERPT #2X58T7 p. 13
  Figure 4: Transparent partitions with more or less desirable properties

EXCERPT #FK29WN p. 13
  Figure 4(a) and 4(b) represent partitions consisting of two minimal cells z_1 and z_2 projecting onto objects o_1 and o_2 . Case (a), a simple list, is unproblematic. Case (b) we shall also allow. This is in keeping with the notion that minimal cells are the (relative) atoms of our system, and we take this to mean that they should be neutral with regard to any mereological structure on the side of their objects. An example of type (b) would be a list of regions represented at a conference to discuss measures against terrorism, a conference including representatives from both Germany and Bavaria.

EXCERPT #4DNNHA p. 14

EXCERPT #49FX62 p. 14

EXCERPT #DWP65F p. 14
  Cases like (c), in contrast, represents projections in which, intuitively, something has gone wrong. All three cases satisfy the master conditions we have laid down thus far, for the latter allow both for disjoint cells to be projected onto what is not disjoint (b) and also for disjoint objects to be located in cells which are not disjoint (c). Cases like (c) on the other hand seem to fly in the face of a fundamental principle underlying the practice of hierarchical classification, namely that objects recognized by species lower down in a hierarchical tree should be included as parts in whatever is recognized by the genera further up the tree. To exclude cases like (c) we shall impose a condition to the effect that mereological structure within a partition should not misrepresent the mereological relationships between the objects which the corresponding cells are projected onto. We first of all define the following relation of representation of mereological structure between pairs of cells:

EXCERPT #27W8LH p. 14
  \text{DS1: } RS(z_1, z_2) \equiv \forall o_1, o_2 : (L(o_1, z_1) \text{ and } L(o_2, z_2) \text{ and } z_1 \subseteq z_2) \rightarrow o_1 \leq o_2

EXCERPT #EV7HAU p. 14
  If z_1 is a subcell of z_2 then any object recognized by z_1 must be a part of any object recognized by z_2 . A partition is then mereologically structure-preserving if and only if each pair of cells within the partition satisfies DS1:

EXCERPT #79BK4X p. 14
  \text{DS2: } RS(A) \equiv \forall z_1, z_2 : (Z(z_1, A) \text{ and } Z(z_2, A)) \rightarrow RS(z_1, z_2).

EXCERPT #9E6SHG p. 14
  We can now impose a new master condition:

EXCERPT #LPGW47 p. 14
  MB5: All partitions are mereologically structure-preserving in the sense of DS2.

EXCERPT #WEQYT3 p. 14
  Note that even MB5 is still very weak. Its effect is entirely negative, since it merely ensures that partitions do not misrepresent the mereological relationships between their objects. Partitions might still be entirely blind to (trace over) such relationships. Two minimal cells might project onto objects which stand to each other in any one of the possible mereological relations (identity, proper parthood, disjointness, overlap), and all pairs of cells are likewise neutral as to the mereological relations between the objects onto which they are projected provided only that they do not stand to each other in the subcell relation. This means that, given such cells, we are entitled to infer nothing at all about the mereological relations among the corresponding objects.

EXCERPT #J93XYY p. 14
  Consider, for example, a partition that contains cells, z_1 and z_2 , that recognize John and his arm, respectively, so that L(\text{John}, z_1) and L(\text{John's arm}, z_2) . Then cell z_1 need not be a proper subcell of the cell z_2 , for the partition may not know that the object located in z_2 is properly designated as John's arm. Or consider a partition containing two cells that recognize, respectively, mammals and whales. Suppose that this is a partition constructed at a time when the status of whales as mammals was not yet recognized. The cell labeled whales is not, then, included as a subcell of the cell labeled mammals . But the partition can still satisfy our conditions laid down so far. This is so, for example, if the cell that recognizes whales is a subcell of the cell recognizing animals but not a subcell of any other subcell of the cell recognizing animals (Partition A_1 in Figure 5). If the cell that recognizes whales were also a subcell of the cell that recognizes fish, for example, then the partition would misrepresent the mereological relationship between these two species and so violate MB5 (Partition A_2 in Figure 5).

EXCERPT #S6R9WD p. 15

EXCERPT #YDDBDK p. 15

EXCERPT #AWFSH2 p. 15
  The diagram illustrates two partitions, A_1 and A_2 , of a domain. In the center is a Venn diagram with two overlapping circles. The left circle contains a smaller circle, and the right circle contains a smaller circle. Arrows point from these inner circles to the labels 'Fish' and 'Whales' in the boxes on either side. In A_1 , the boxes are nested: 'Fish' is inside 'Whales', which is inside 'Mammals', which is inside 'Animals'. In A_2 , 'Whales' is inside 'Fish', which is inside 'Mammals', which is inside 'Animals'. The labels A_1 and A_2 are at the bottom of each respective box structure. Figure 5: Comparison of two partitions A1 and A2. Partition A1 correctly represents the mereological structure where Fish, Whales, and Mammals are subcells of Animals. Partition A2 incorrectly places Whales as a subcell of Fish, violating MB5.

EXCERPT #VJWLK5 p. 15
  Figure 5: Partition A_1 does not misrepresent the mereological structure of the underlying domain. Partition A_2 places whales incorrectly in relation to fish and mammals

EXCERPT #Y9WSTP p. 15
  Partitions may trace over mereological relationships between the objects they recognize, but MB5 is strong enough to ensure that, if a partition tells us something about the mereological relationships on the side of the objects which it recognizes, then what it tells us is true. Notice that partition A_2 still satisfies MB1–4.

EXCERPT #8UGJN8 p. 15
  Consider a domain of objects consisting of two regions, x and y , that properly overlap in the region v , so that x * y = v with v < x and v < y . Consider now a partition with cells z_1 and z_2 recognizing x and y , respectively, so that L(x, z_1) and L(y, z_2) . Assume further that z_1 and z_2 do not stand in any subcell relation to each other, i.e., their partition-theoretic intersection is empty. Only four possibilities regarding the representation of v now remain: (1) our partition does not recognize v at all; (2) it recognizes v but traces over its mereological relationships to x and y ; (3) it recognizes v through a subcell of z_1 but it traces over the fact that v could equally well be recognized by a subcell of z_2 ; (4) it recognizes v through a subcell of z_2 but it traces over the fact that v could equally well be recognized by a subcell of z_1 . The fifth possibility—of allowing sub-cells of both z_1 and z_2 to recognize v is excluded by the tree structure of granular partitions.

EXCERPT #QXS48S p. 15
  Let x and y be two neighboring countries which disagree about the exact location of their common boundary and let v be the disputed area. The inhabitants of country x consider v to be part of x , the inhabitants of country y consider v to be part of y . Possibility (1) then corresponds to the view of some third country at the other side of the globe who recognizes the countries x and y but does not care about their border dispute. (2) corresponds to the view of an observer who recognizes that there is a disputed area but who is neutral about the status of the disputed area. (3) corresponds to the view of country x and (4) to that of country y .

EXCERPT #88RXG2 p. 16

EXCERPT #QUHNHL p. 16

EXCERPT #GRAXVG p. 16
  Another example of case (2) is provided by Germany and Luxemburg, which overlap at their common border on the River Our. The river is part of both countries. Mapmakers normally have no facility to represent cases such as this, and so they either adopt the policy of not representing such common regions at all (the border is represented as a line which we are to imagine as being without thickness), or they recognize the region constituted by the river on the map but trace over its mereological properties. Larger-scale maps often embrace a third alternative, which is to misrepresent the relations between Germany and Luxemburg by drawing the boundary between the two countries as running down the center of the river.

SECTION #BV9UTU 5.2 The domain of a partition

EXCERPT #AP7JQM p. 16
  That upon which a partition is projected is a certain domain of objects in reality (the term ‘domain’ being understood in the mereological sense). We shall conceive the domain of a partition as the mereological sum of the pertinent objects. It is, as it were, the total mass of stuff upon which the partition sets to work: thus it is stuff conceived as it is prior to any of the divisions or demarcations effected by the partition itself. The domains of partitions will comprehend not only individual objects and their constituents (atoms, molecules, limbs, organs), but also groups or populations of individuals (for example biological species and genera, battalions and divisions, archipelagos and diasporas) as well as their constituent parts or members. Domains can comprehend also extended regions (continua) of various types. Spatial partitions, for example maps of land use or soil type (Frank et al., 1997), are an important family of partitions with domains of this sort. There are also cases where partitions impose upon continuous domains a division into discrete units for example by creating temperature or frequency bands.

EXCERPT #NRXSYQ p. 16
  We are now able to specify what we mean by ‘domain of a partition.’ Our representation of partitions as trees and our condition on reflection of structure (MB5) ensure that all partitions trivially reflect the fact that the objects recognized by their cells are parts of some mereological sum. For MB5 is already strong enough to ensure that everything that is located at some cell of a partition is part of what is located at the corresponding root cell. If any cell pointed outside of what is located at the root cell it would misrepresent the mereological structure of the corresponding domain.

EXCERPT #4V93NR p. 16
  We can thus define the domain of a partition simply as the object (mereological whole) onto which its root cell is projected. By functionality of projection and location there can be only one such object.

EXCERPT #2UQBCC p. 16
  \text{DD: } D(A) = p(r(A))

EXCERPT #NVDHM6 p. 16
  We now demand as a further master condition that every partition has a non-empty domain in the sense of DD:

EXCERPT #B3UQ8W p. 16
  \text{MB6: } \exists x : x = D(A)

EXCERPT #DWN8G7 p. 16
  We then say that a partition represents its domain correctly if and only if MA1–5 and MB1–6 hold. Note that this condition of correctness is still rather easily satisfied. (It is achieved already in every simple list, provided only that the list involves no double counting and no ambiguous reference of the sort involved in the Oliver and Richard Cromwell case.)

EXCERPT #45T3DF p. 17

EXCERPT #RCHQL7 p. 17

EXCERPT #Y9AZCN p. 17
  If there is a single maximal object (the whole universe), then one correct representation thereof is provided by a partition consisting of just one cell labeled 'everything' (we might call this the Spinoza partition). A partition with just three cells: a root cell, labeled animals , and two subcells, labeled dogs and cats , represents its domain correctly; it just falls far short of a certain desirable completeness. Correct representations, as we see, can be highly partial.

SECTION #N5T557 5.3 The granularity of granular partitions

EXCERPT #8AHCEZ p. 17
  A correct representation, as we see, is not necessarily a complete representation. Indeed, since partitions are cognitive devices, and cognition is not omniscient, it follows that no partition is such as to recognize all objects. There is no map of all the objects in the universe. The complexity of the universe is much greater than the complexity of any single cognitive artifact. This feature of partiality is captured already by our terminology of granular partitions. Partitions characteristically do not recognize the proper parts of the whole objects which they recognize; for example they do not recognize parts which fall beneath a certain size.

EXCERPT #K8M339 p. 17
  It is the cells of a partition which carry with them this feature of granularity. Because they function like singletons in set theory, they recognize only single whole units, the counterparts of set-theoretic elements or members. If a partition recognizes not only wholes but also one or more parts of such wholes, then this is because there are additional cells in the partition which do this recognizing job. Consider, for example, a partition that recognizes human beings and has cells that project onto John, Mary, and so forth. This partition does not recognize parts of human beings—such as John's arm or Mary's shoulder—unless we add extra cells for this purpose. Even if a partition recognizes both wholes and also some of their parts, it is not necessarily the case that it also reflects the mereological relationships between the two. Imagine we are forensic scientists examining photographs taken at a crime scene and that these photographs generate a partition with cells recognizing John, Mary, and an arm. It may then be the case that the state of our knowledge is such that the cell recognizing the arm is not a subcell of the cell recognizing either John or Mary. Or let the arm be Kashmir and let John and Mary be India and Pakistan, respectively.

EXCERPT #67AZ9F p. 17
  In relation to this granularity of partitions, we can once more call in the aid of Wittgenstein:

EXCERPT #MBN5M9 p. 17
  In the proposition there must be exactly as many things distinguishable as there are in the state of affairs, which it represents. They must both possess the same logical (mathematical) multiplicity ... (4.04)

EXCERPT #LKDS8L p. 17
  Wittgenstein himself takes care of the issue of granularity by insisting that the world is made up of discrete simples, and by insisting further that all partitions (for Wittgenstein: propositions) picture complexes of such simples. (A similar simplifying assumption is proposed by Galton, 1999.) This is a simplifying assumption, which our present theory of granular partitions will enable us to avoid. For the latter admits partitions of arbitrary granularity including partitions which reflect distinct cross-cuttings of the same domain of reality (Smith and Brogaard, 2002a). The theory of granular partitions enables us moreover to remain neutral as to the existence of any ultimate simples in reality from out of which all other objects would be constructed via summation. This is due to the fact that partitions are by definition top-down structures. The duality with trees puts special emphasis on this aspect: we trace down from the root until we reach a leaf. A leaf has no further parts within the partition to which it belongs. But it need not necessarily project upon something that itself has no parts. The fact that there are leaves simply indicates that a partition does not care about (traces over) what lies beneath a certain level of granularity on the side of its objects. An object located at a minimal cell is an atom only relative to the partition involved.

EXCERPT #ZLPCEA p. 18

EXCERPT #UZBU4A p. 18

EXCERPT #6JYN99 p. 18
  Partitions are cognitive devices which have the built-in capability to recognize objects and to reflect certain features of the latter's mereological structure and to ignore (trace over) other features of this structure. We can now see that they can perform this task of tracing over in two ways: (1) by tracing over mereological relations between the objects which they recognize; (2) by tracing over (which means failing to recognize) parts of those objects. (2) is (unless atomism is true) a variety of tracing over that must be manifested by every partition. A third type of tracing over arises in reflection of the fact that partitions (we leave to one side here the Spinoza partition) are partial in their focus. In foregrounding some regions of reality each partition thereby traces over everything that lies outside its domain.

EXCERPT #S3783T p. 18
  Consider a simple biological partition of the animal kingdom including a cell projecting on the species dog ( Canis familiaris ). Our definition of the domain of a partition and our constraint on functionality of projection implies that, besides the species dog also your dog Fido, and also Fido's DNA-molecules, proteins, and atoms are parts of the domain of this partition. But the latter are of course not recognized by the partition itself. It is cases such as this which illustrate why mereology requires supplementation by a theory like the one presented here. Partition theory allows us to define a new, restricted notion of parthood that takes granularity into account (compare Degen et al., 2001). This restricted parthood relation is an analogue of partition-theoretic inclusion, but on the side of objects:

EXCERPT #BPLZNT p. 18
  \text{DRP: } x \leq_A y \equiv \exists z_1, z_2 : L_A(x, z_1) \text{ and } L_A(y, z_2) \text{ and } z_1 \subseteq z_2

EXCERPT #ZG4S5W p. 18
  This means that x is a part of y relative to partition A if and only if: x is recognized by a subcell of a cell in A which recognizes y . From this we can infer by MB5 that x is a part of y also in the unrestricted or absolute sense.

EXCERPT #5RH5NF p. 18
  The usual common-sense (i.e., non-scientific) partition of the animal kingdom contains cells recognizing dogs and mammals, but no cells recognizing DNA molecules. Relative to this common-sense partition, DNA molecules are not parts of the animal kingdom in the sense defined by DRP, though they are of course parts of the animal kingdom in the usual, non-relativised sense of 'part'.

EXCERPT #WHXX7M p. 19

EXCERPT #CPDVGU p. 19

DOCUMENT #FQCWKV
A Theory of Granular Partitions

SECTION #8X3P8G 6 STRUCTURAL PROPERTIES OF CORRECT REPRESENTATIONS

EXCERPT #BTP4X9 p. 19
  In this section we discuss some of the more fundamental varieties of those partitions which satisfy the master conditions set forth above. We classify such partitions according to: (1) degree of structural fit; (2) degree of completeness and exhaustiveness; (3) degree of redundancy.

SECTION #N33X7A 6.1 Mereological monotony

EXCERPT #LERVWW p. 19
  We required of partitions that they at least not misrepresent the mereological structure of the domain they recognize. This constraint is to be understood in such a way that it leaves room for the possibility that a partition is merely neutral about (traces over) some or all aspects of the mereological structure of its target domain. Taking this into account, we can order partitions according to the degree to which they actually do represent the mereological structure on the side of the objects onto which they are projected. At the maximum degree of structural fit we have those partitions which completely reflect the mereological relations holding between the objects which they recognize.

EXCERPT #SUGEJM p. 19
  Such a partition satisfies a condition to the effect that if o_1 is part of o_2 , and if both o_1 and o_2 are recognized by the partition, then the cell at which o_1 is located is a subcell of the cell at which o_2 is located. Such partitions satisfy the weak converse of MB5. Formally we can express this constraint on mereological structure (CM) as follows:

EXCERPT #8AKENB p. 19
  \text{CM: } L(o_1, z_1) \text{ and } L(o_2, z_2) \text{ and } o_1 \leq o_2 \rightarrow z_1 \subseteq z_2

EXCERPT #UEVR3R p. 19
  A partition satisfying CM is mereologically monotonic . This means that it recognizes all the restricted parthood relations obtaining in the pertinent domain of objects. A very simple example is given by a flat list (a partition having only minimal cells together with a root) projected one-for-one upon a collection of disjoint objects.

SECTION #Z2LAY5 6.2 Completeness

EXCERPT #HBLRER p. 19
  So far we have allowed partitions to contain empty cells, i.e., cells that do not project onto any object. We now consider partitions which satisfy the constraint that every cell recognizes some object:

EXCERPT #B3CD9H p. 19
  \text{CC: } Z(z, A) \rightarrow \exists o : L(o, z)

EXCERPT #K3VEH3 p. 19
  We say that partitions that satisfy CC project completely . Notice that this condition is independent of the functional or relational character of projection and location. Of particular interest, however, are partitions that project completely and in such a way that projection is a total function (partitions which satisfy both MB3 and CC). An example is a map of the United States representing its constituent states. There are no no-man's lands within the territory projected by such a map and every cell projects uniquely onto just one state.

EXCERPT #AK73Y7 p. 20

EXCERPT #SE556J p. 20

SECTION #MJ87KT 6.3 Exhaustiveness

EXCERPT #57YSSL p. 20
  So far we have accepted that there may be objects in our target domain that are not located at any cell. This feature of partitions is sometimes not acceptable: governments want all their subjects to be located in some cell of their partition of taxable individuals. They want their partitions to satisfy a completeness constraint to the effect that every object in the domain is indeed recognized. In this case we say that location is complete . Alternatively we say that the partition exhausts its domain. Unfortunately, we cannot use

EXCERPT #RUNVL3 p. 20
  (*) \quad o \leq D(A) \rightarrow \exists z : Z(z, A) \text{ and } L(o, z)

EXCERPT #8TY5EZ p. 20
  to capture the desired constraint. The tax authorities do not (as of this writing) want to tax the separate molecules of their subjects. Trivially, we have:

EXCERPT #JNU8T4 p. 20
  o \leq_A D(A) \rightarrow \exists z : Z(z, A) \text{ and } L(o, z)

EXCERPT #NAU6CM p. 20
  but this is much too weak, since it asserts only that every object within a given domain that is recognized by a partition is indeed recognized by that partition. It will in fact be necessary to formulate several restricted forms of exhaustiveness, each one of which will approximate in different ways to the (unrealizable) condition expressed in (*).

EXCERPT #BWVEBL p. 20
  One such exhaustiveness condition might utilize a sortal predicate (schema) \varphi that singles out the kinds of objects our partition is supposed to recognize (for example, in the case of the partition of taxable individual human beings, rather than proper parts of human beings). We now demand that the partition A recognize all of those objects in its domain which satisfy \varphi :

EXCERPT #38NPUW p. 20
  CE_\varphi: \quad o \leq D(A) \text{ and } \varphi(o) \rightarrow \exists z : Z(z, A) \text{ and } L(o, z)

EXCERPT #NY7FTB p. 20
  Let \Delta be some domain and let A be a partition such that \Delta = D(A) . Since we can very simply use any predicate to define a partition over any domain – by setting

EXCERPT #SV5RVT p. 20
  L_A(o, z) \equiv o < \Delta \text{ and } \varphi(o)

EXCERPT #78A9A9 p. 20
  – we can also think of CE_\varphi as asserting the completeness of one partition relative to another. Note that the idea underlying CE_\varphi is closely related to the idea of granularity. Thus for some purposes we might find it useful to formulate condition \varphi as a restriction on object size.

EXCERPT #3R2EXU p. 20
  The tax office probably does not care too much about empty cells in its partition, nor is it bothered too much by the idea of charging you twice. The main issue is to catch everything above a certain resolution at least once. This is the intuition behind constraints like CE_\varphi . If you are a law-abiding citizen, you will accept CE_\varphi (where ' \varphi ' stands for 'is a citizen'), but you will insist that the partition not locate you in two separate cells, i.e., that you are not charged twice. This means that you want the tax partition to satisfy CE_\varphi and MB4. There might be a pedantic clerk in the tax office who does not rest until he has made sure that all empty cells have been removed. Partitions that will satisfy you, the government, and the clerk in the tax office must satisfy CC, CE_\varphi , and MB1–5. Projection and location are then total functions (relative to a selected predicate \phi ) and one is the inverse of the other. Under those circumstances projection and location are bijective functions. Notice that neither of the following holds:

EXCERPT #UL3T42 p. 21

EXCERPT #M7XBQT p. 21

EXCERPT #AJ57LQ p. 21
  (**) if MB4 and CE_\phi and CC then MB3 (***) if MB3 and CE_\phi and CC then MB4

EXCERPT #DBK6NZ p. 21
  Counterexamples are given in Figure 6 (a) and (b), respectively, where each depicted object is assumed to satisfy \phi .

EXCERPT #Q373MD p. 21
  (a) (b) Figure 6: Two diagrams illustrating counterexamples. (a) shows a box labeled Z1 with two arrows pointing to two circles labeled O1 and O2. (b) shows a box divided into two sections, Z1 and Z2, with two arrows pointing from Z1 to one circle labeled O1 and two arrows pointing from Z2 to the same circle O1.

EXCERPT #ARFCAR p. 21
  Figure 6: Functionality of projection and location are independent of completeness and exhaustiveness

SECTION #Z2PHR2 6.4 Comprehension axioms

EXCERPT #ULHWGW p. 21
  The following is the partition-theoretic equivalent of the unrestricted set-theoretic comprehension axiom. For each predicate \phi there is a partition A(\phi) whose location relation is defined as follows:

EXCERPT #EAH7UK p. 21
  \exists z : L_{A(\phi)}(o, z) \text{ iff } \phi(o)

EXCERPT #Z5TGRP p. 21
  Under what conditions on \phi can this be allowed?

EXCERPT #LHCVNL p. 21
  One type of restriction that is relevant to our purposes would allow \phi to be unrestricted but affirm additional restrictions on objects, for example in terms of spatial location. Thus we might define a family of spatial partitions A(\phi, r) , where r is some pre-designated spatial region, in such a way that

EXCERPT #LU9ZP4 p. 21
  \exists z : L_{A(\phi, r)}(o, z) \text{ iff } \phi(o) \text{ and } o \text{ is spatially located in } r.

EXCERPT #9TTP8P p. 21
  Something like this is in fact at work in the taxation partition (the tax office is interested in human beings bearing a special relation to a specific geographic location), as also in the partitions used by epidemiologists, ornithologists and others who are interested in (types of) objects at specific sites.

SECTION #UDYCVD 6.5 Redundancy

EXCERPT #FCZH8P p. 21
  Partitions are natural cognitive devices, for example they are lists, maps, and so forth, used by human beings to serve various practical purposes. This means that partitions will normally be called upon to avoid certain sorts of redundancy. Here we distinguish what we shall call correspondence redundancy and structural redundancy. Necessarily empty cells (cells whose labels tell us ex ante that no objects can be located within them) represent one type of correspondence redundancy, which is excluded by condition CC.

EXCERPT #RZ296A p. 22

EXCERPT #W93K2L p. 22

EXCERPT #KMHAMH p. 22
  Another type of correspondence redundancy we have addressed already in our discussion of the functionality of location. This occurs in a partition with two distinct cells whose labels would tell us, again ex ante , that they must necessarily project upon the very same object. Clearly, and most simply, a partition should not contain two distinct cells with identical labels.

EXCERPT #V8VDTU p. 22
  The following case is not quite so trivial. Consider a partition with a cell labeled vertebrates which occurs as a subcell of the cell labeled chordates in our standard biological classification of the animal kingdom. Almost all chordates are in fact vertebrates. Suppose (for the sake of argument) that biologists were to discover that all chordates must be vertebrates. Then such a discovery would imply that, in order to avoid structural redundancy, they would need to collapse into one cell the two cells (of chordates and vertebrates) which at present occupy distinct levels within their zoological partitions.

EXCERPT #HHRA9L p. 22
  A constraint designed to rule out such structural redundancy would be:

EXCERPT #MNS6E5 p. 22
  CR: A cell in a partition never has exactly one immediate descendant.

EXCERPT #WL34DQ p. 22
  This rules out partition-theoretic analogues of the set theorist's \{\{a\}\} .

### 16. Tool result: read

DOCUMENT #9GWUC8
On Classifying Material Entities in Basic Formal Ontology

SECTION #RVYUE8 1 Introduction

EXCERPT #JVVWEV p. 0
  BFO is one of three leading public domain upper-level ontologies used in scientific and other contexts, 1 alongside DOLCE (the Domain Ontology for Linguistic and Cognitive Engineering) [Gangemi et al. 2002] and SUMO (the Suggested Upper Merged Ontology) [Niles and Pease 2001]. BFO differs from the latter, however, in being a strict upper level ontology. Unlike DOLCE and SUMO, it does not contain its own representations of physical, chemical, biological, psychological, or other types of entities which would properly fall within the domains of the special sciences. BFO is therefore, in contrast to these other ontologies, very small, and thus more manageable as an artifact designed for purposes of ontological engineering. As will become clear, however, even a small ontology can bring large challenges from a logico-metaphysical point of view.

EXCERPT #32U3AK p. 0
  BFO is concerned only with what exists (which means in practice: only with those sorts of entities for which we have good – for example empirical-scientific reason to believe that they exist; thus not with unicorns, sprites, or absent fingers). BFO then adopts an approach to ontology which sees what exists as being divided along three orthogonal dimensions.

EXCERPT #DEB2T2 p. 0
  First, BFO recognizes a dichotomy between occurents and continuants . The former are either processual entities (events, actions, procedures ...) which unfold over a

EXCERPT #L8D9HM p. 0
  1 The BFO website at http://www.ifomis.org/bfo/ contains a list of some 98 projects and research groups using BFO as a top-level ontology to support semantic interoperability.

EXCERPT #VJBFQX p. 1

EXCERPT #RTLK4G p. 1
  span of time from their beginning to their ending, or they are the beginnings and endings themselves (their process boundaries) or the spans of time (and of spacetime) which such entities occupy. The latter are the participants in such processes, entities that endure during the period of their existence, and the spatial boundaries of such entities, as well as the spatial regions in which they are located.

EXCERPT #NRBG54 p. 1
  Second, BFO recognizes a dichotomy between independent and dependent entities. Cells and organs are independent continuants; a quality of a cell (for example: its mass or volume) is a dependent continuant – this mass and this volume are dependent on the cell in the sense that, should the latter cease to exist, then so also would the former.

EXCERPT #6CMGQP p. 1
  Third, BFO rests on a distinction between instances (individuals, tokens, particulars) and universals (generals, types, kinds). It furnishes formal specifications for the high-level formal universals (called ‘categories’ in what follows) which can be defined in terms of these three dichotomies, and also of a set of relations which link them [Smith et al. 2005]. The terms in BFO and in the domain ontologies based on BFO consist of preferred labels representing what is general in reality. Universals are most clearly illustrated by considering the general terms – such as ‘electron’ or ‘cell’ – employed by scientific theories in the formulation of general truths [Smith and Ceusters 2010]. However, universals include also the general entities referred to by general terms employed in domains such as engineering, commerce, administration and intelligence analysis. BFO was designed to work with entities within the province of the natural sciences, especially biology, its coverage domain embraces also social and psychological entities such as military units and counterinsurgency operations, mortgage contracts and relations of ownership, poems and experimental protocols.

EXCERPT #APY4MK p. 1
  We use ‘universal’ and ‘type’ in what follows as synonyms. Universals exist at various levels of generality, starting at the most general and domain-neutral level treated of by BFO, and proceeding from there to less general universals such as person , vehicle , disease , and so forth.

DOCUMENT #9GWUC8
On Classifying Material Entities in Basic Formal Ontology

SECTION #KCTEZX 4 Object

SECTION #GL4M8F 4.1 Natural and engineered units of matter

EXCERPT #J6Q6U5 p. 3
  BFO rests on the presupposition that at multiple micro-, meso- and macroscopic scales reality exhibits certain stable, spatially separated or separable material units, combined, or combinable, into aggregates of various sorts (for example organisms into what are called ‘populations’). Such units play a central role in almost all domains of natural science from particle physics to cosmology. Many scientific laws govern the units in question, employing general terms (such as ‘molecule’ or ‘planet’) referring to the types and subtypes of units, and also to the types and subtypes of the processes through which such units develop and interact. The division of reality into such natural units is at the heart of biological science. So too is the fact these units may form higher-level units (as cells form multicellular organisms) and that they may also form aggregates of units, for example, as cells form portions of tissue and organs form families, herds, breeds, species, and so on.

EXCERPT #43KXLV p. 3
  At the same time, the division of certain portions of reality into engineered units (manufactured artifacts) is the basis of modern industrial technology, which rests on the distributed mass production of engineered parts through division of labor and on their assembly into larger, compound units such as cars and laptops. The division of portions of reality into units is one starting point for the phenomenon of counting .

EXCERPT #VYYVSZ p. 3

EXCERPT #JDBGK3 p. 4

EXCERPT #G34QCZ p. 4
  Examples of units of special importance for the purposes of natural science include: atom, molecule, organelle, cell, organism, grain of sand, planet, star. These material entities are candidate examples of what are called ‘objects’ in BFO 2.0. Such units are sometimes referred to as ‘grains’ [Jansen and Schulz 2011], and are associated with specific ‘levels of granularity’ in what is seen as a layered structure of reality, with units at lower and more fine-grained levels being combined as parts into grains at higher, coarse-grained levels. Our proposals here are consistent with, but are formulated independently of such granularity considerations.

SECTION #MCU2BM 4.2 Three focal examples

EXCERPT #P5SFQJ p. 4
  The following elucidation documents a set of conditions to be used when deciding whether entities of a given type should be represented as objects in the BFO sense. It rests on three candidate groups of focal examples, namely:

EXCERPT #U88CXR p. 4
  1. organisms, cells and biological entities of certain other sorts, including organs 2. portions of solid matter such as rocks and lumps of iron 3. engineered artifacts such as watches and cars.

EXCERPT #PMCMSB p. 4
  Material entities under all of these headings are all causally relatively isolated entities in Ingarden’s sense [Ingarden 1970, Smith and Brogaard 2003]. This means that they are both structured through a certain type of causal unity and maximal relative to this type of causal unity.

EXCERPT #5XY8H8 p. 4
  We first characterize causal unity in general. We then distinguish three types of causal unity corresponding to the three candidate families of objects listed above (cells and organisms, solid portions of matter, machines and other engineered artifacts). We then describe what it is for an entity to be maximal relative to one or other of these types, and formulate in these terms an elucidation of what BFO means by ‘object’.

EXCERPT #2Z9SQ4 p. 4
  a is causally unified means: a is a material entity such that its material parts are tied together in such a way that, in environments typical for entities of the type in question,

EXCERPT #P2YZAG p. 4
  • if b is a part a in the interior of a at t that is larger than a certain threshold size (which will be determined differently from case to case, depending on factors such as porosity of external cover) and if b is moved in space to be at t' at a location on the exterior of the spatial region that had been occupied by a at t , then either a ’s other parts will be moved in coordinated fashion or a will be damaged (be affected, for example, by breakage or tearing) in the interval between t and t' . • causal changes in one part of a can have consequences for other parts of a without the mediation of any entity that lies on the exterior of a .

EXCERPT #PYP7SJ p. 5

EXCERPT #3UJXJ8 p. 5
  Material entities with no proper material parts (some smallest microparticle) would satisfy these conditions trivially. Candidate examples of types of causal unity for material entities of more complex sorts are as follows (this is not intended to be an exhaustive list):

SECTION #2QYSRV CU1: Causal unity via physical covering

EXCERPT #MYJXA3 p. 5
  Here the parts in the interior of the unified entity are combined together causally through a common membrane or other physical covering – what the FMA refers to as a ‘bona fide anatomical surface’ [Rosse and Mejino 2007]. The latter points outwards toward and may serve a protective function in relation to what lies on the exterior of the entity.

EXCERPT #JNA4B9 p. 5
  Note that the physical covering may have holes (for example pores in your skin, shafts penetrating the planet’s outer crust, sockets where conduits to other entities are connected allowing transport of electric current or of liquids or gases). The physical covering is nonetheless connected in the sense that (a) between every two points on its surface a continuous path can be traced which does not leave this surface, and also (b) the covering serves as a barrier preventing entities above a certain size threshold from entering from the outside or escaping from the inside.

EXCERPT #Y4W6QY p. 5
  Some organs in the interior of complex organisms manifest a causal unity of this type. Organs can survive detachment from their surroundings, for example in the case of transplant, with their membranes intact. The FMA defines ‘organ’ as follows:

EXCERPT #ABL3DK p. 5
  An anatomical structure which has as its direct parts portions of two or more types of tissue or two or more types of cardinal organ part which constitute a maximally connected anatomical structure demarcated predominantly by a bona fide anatomical surface. Examples: femur, biceps, liver, heart, skin, tracheobronchial tree, ovary. [Rosse and Mejino 2007]

SECTION #GBAQSZ CU2: Causal unity via internal physical forces

EXCERPT #N4DQ9T p. 5
  Here the material parts of a material entity are combined together causally by sufficiently strong physical forces, for example, by fundamental forces of strong and weak interaction, by covalent or ionic bonds, by metallic bonding, or more generally by forces of a type which makes the overall sum of forces strong enough to act in such a way as to hold the object together relative to the strength of attractive or destructive forces in its ordinary environmental neighborhood. (Few solid portions of matter in our everyday environment would survive very long on the face of a neutron star, but luckily that is not our everyday environment.) In the case of larger portions of matter the constituent atoms are tightly bound to each other in a geometric lattice, either regularly (as in the case of portions of metal) or irregularly (as in an amorphous solid such as a portion of glass). Examples: atoms, molecules, grains of sand, lumps of iron.

SECTION #KNXK3W CU3: Causal unity via engineered assembly of components

EXCERPT #KX52RU p. 5
  Here the material parts of a material entity are combined together via mechanical assemblies joined for example through screws or other fasteners. The assemblies often involve parts which are reciprocally engineered to fit together, as in the case of dovetail joints, balls and bearings, nuts and bolts. A causal unity of this sort can be interrupted for a time, as when a watch is disassembled for repair, and then recreated in its original state. The parts of an automobile, including the moving parts, constitute an object because of their relative rigidity: while these parts may move with respect to each other, a given gear cannot move e.g., 10 ft., while the other parts do not.

EXCERPT #Q4D75L p. 5

EXCERPT #VQ9PTE p. 6

EXCERPT #7KGDWQ p. 6
  We can now elucidate what it means for a material entity to be maximal relative to one or other of these three types of causal unity as follows:

EXCERPT #QL4GXF p. 6
  To say that a is maximal relative to some criterion of causal unity CU_n means:

EXCERPT #BEA6QU p. 6
  a is causally unified relative to CU_n at t & if (for some t and b , a is a part of b at t & b is causally unified relative to the same CU_n ) then ( a and b are identical)

EXCERPT #Z5WRSZ p. 6
  Examples of maximality relative to the causal unity criterion CU_1 are: a cell or organism is maximal; your lower torso falls short of maximality; a pair of cells exceeds maximality; relative to CU_2 : a continuous dumbbell-shaped lump of iron is maximal; the connecting portion falls short of maximality; a pair of such dumbbell-shaped lumps exceeds maximality; and relative to CU_3 : an armored vehicle is maximal; the portions of armor of an armored vehicle falls short of maximality; a pair of armored vehicles exceeds maximality.

SECTION #HH2GYF 4.3 Objects can have other objects as parts

EXCERPT #DS4CF6 p. 6
  We cannot define ‘object’ in BFO simply by asserting that an entity is an object if and only if it is maximal relative to some causal unity criterion, however. This is because objects under all three of the identified headings may have other, smaller objects as parts. A spark plug is an object; when inserted into a car to replace a defective plug, it remains an object, but ceases to be maximal. Importantly, however, the spark plug as installed still instantiates a universal many instances of which are maximal. This suggests that we define object as follows:

EXCERPT #39LUAJ p. 6
  a is an object =Def. a is a material entity which manifests causal unity of one or other of the types CU_n listed above & is of a type instances of which are maximal relative to this criterion of causal unity.

EXCERPT #49QPX6 p. 6
  Objects can be joined to other objects, not only through engineering but also in biology, as for example in Fig. 2.

EXCERPT #N5VLNU p. 7

EXCERPT #7S8YMM p. 7
  Diagram of cell-cell and cell-matrix junctions. The diagram shows two adjacent cells with various junctional complexes. From top to bottom: Tight junction (green rings), Adhesion belt (pink rings), Desmosome (blue filaments), Gap junction (narrow channels), Integrin (blue Y-shapes), Selectin (red Y-shapes), and CAM (cyan Y-shapes). At the bottom, Focal adhesion (red filaments) and Hemidesmosome (blue filaments) are shown connecting the cell to the extracellular matrix. A Membrane proteoglycan (blue Y-shape) is also shown on the right side of the cell membrane.

EXCERPT #KZFSQF p. 7
  Fig. 2. An example of cell adhesion 2

EXCERPT #L33BJ7 p. 7
  Each object is such that there are entities of which we can assert unproblematically that they lie in its interior, and other entities of which we can assert unproblematically that they lie in its exterior. This may not be so for entities lying at or near the boundary between the interior and exterior. This means that two objects – for example the two cells depicted in Fig. 2 – may be such that there are material entities crossing their boundaries which belong determinately to neither cell. Something similar obtains in certain cases of conjoined twins (see below).

EXCERPT #2M34A8 p. 7
  Some instances of any given BFO: object universal – for example cell or organism or laptop – are separated by spatial gaps from other instances of this same object universal. The spatial gaps may be filled by a medium, for example of air or water. (There are cells not attached to other cells; there are spatially separated organisms, such as you and me. Peas in a pea pod are initially attached to the interior of the pea pod covering. Sperm initially float freely from each other; some sperm become fused with oocytes through a membrane fusion process.)

EXCERPT #RAY3C6 p. 7
  Objects may contain other objects as part, for example:

EXCERPT #K4C2L7 p. 7
  • by containing atoms and molecules as parts; • by containing cells as parts, for instance the collection of blood cells in your body; • by containing objects which are bonded to other objects of the same type in such a way that they cannot (for the relevant period of time) move separately, as in the case of the cells in your epithelium or the atoms in a molecule;

EXCERPT #P6CHM7 p. 7
  2 http://php.med.unsw.edu.au/cellbiology/index.php?title=File:Cell_adhesion_summary.png

EXCERPT #6U5CY7 p. 7

EXCERPT #869MSQ p. 8

EXCERPT #V5273U p. 8
  • by containing objects which are connected by conduits or tracts which may themselves have covering membranes.

SECTION #BT93NX 4.4 Conjoined twins

EXCERPT #5Z7FSS p. 8
  Some objects may change type from one time to the next (a fetus becomes a baby, which in turn becomes a child). Objects may also fuse or be separated. Two boats may be combined to form a single multihulled boat. Conjoined twins may be successfully separated.

EXCERPT #THZ65W p. 8
  Whether each one of a pair of conjoined twins is or is not an object is not a trivial question, and the treatment of this case ontologically should be viewed as an experimental matter, with different alternatives tested to see which yield the most coherent solution for different sorts of cases. Different types of conjoined twins will need to be treated differently, and in cases where twins do not share vital organs an identification of each one of the pair as an object will yield a workable solution. Certainly, the maximal CU_1 -causally unified material entity here is the whole which they together form; accepting each twin as an object even prior to separation – thus as an instance of the material universal human being – is, however, consistent with our elucidation of BFO:object .

DOCUMENT #9GWUC8
On Classifying Material Entities in Basic Formal Ontology

SECTION #2U9457 5 Object aggregate

EXCERPT #APXCBU p. 8
  An object aggregate is a material entity consisting exactly of a plurality of objects as continuant parts.

EXCERPT #3HVYXB p. 8
  More formally:

EXCERPT #FDPLTL p. 8
  If a is an object aggregate , then if a exists at t , there are objects o_1, \dots, o_n at t such that:

EXCERPT #293QDH p. 8
  for all x ( x part of a at t iff x overlaps some o_i at t )

EXCERPT #TXDQBF p. 8
  An entity a is an object aggregate if and only if there is a mutually exhaustive and pairwise disjoint partition of a into objects [Bittner and Smith 2008]. Examples are: a symphony orchestra, the aggregate of bearings in a constant velocity axle joint, the nitrogen atoms in the atmosphere, a collection of cells in a blood biobank.

EXCERPT #WBJBPD p. 8
  The objects which form the proximal parts of an aggregate – those parts which determine the aggregate as an aggregate – are called its member parts (sometimes referred to as ‘granular parts’).

EXCERPT #KEE4MD p. 8
  Different sorts of examples will satisfy further conditions, for example an organization is an aggregate whose member parts have roles of specific types (for example in a jazz band, a chess club, a football team); a swarm of bees is an aggregate of members who are linked together through natural bonds.

EXCERPT #HRQCDS p. 8
  Object aggregates may be defined through physical attachment (the aggregate of atoms in a lump of granite), or through physical containment (the aggregate of molecules of carbon dioxide in a sealed container, the aggregate of blood cells in your body). Object aggregates may be defined by fiat – for example in the case of the aggregate of members of an organization, or via attributive delimitations such as: the patients in this hospital, the restaurants in Palo Alto, your collection of Meissen ceramic plates.

EXCERPT #H9RXSE p. 9

EXCERPT #MKXG33 p. 9
  [Bittner et al. 2004] provide a formal treatment of aggregates (there called ‘collections’) that is consistent with the above. However, the formalization provided assumes that membership in a collection is fixed over time. As is true for all material entities (for example: you), object aggregates may gain and lose parts while remaining numerically identical (one and the same individual) over time, and for some aggregates, especially in cases where membership is determined by fiat (for example a baseball team, a congressional committee) membership may change with time.

DOCUMENT #9GWUC8
On Classifying Material Entities in Basic Formal Ontology

SECTION #9D446H 6 Fiat object part

EXCERPT #KHRK34 p. 9
  Clearly not all material entities form separated or separable natural units in the way described above [Smith and Mark 2003], and so there is – in dealing with limbs demarcated within a body, mountains demarcated within mountain ranges, and so forth – a need for some way to do justice to those material entities here called fiat object parts.

EXCERPT #CLJPY2 p. 9
  A satellite image of Mount Everest and the surrounding Himalayan region. The mountain's snow-covered peaks and ridges are prominent against the darker, forested valleys. A small black arrow points to a specific location on the mountain's slope, likely indicating a particular feature or point of interest discussed in the text.

EXCERPT #6BKJRP p. 9
  Fig. 3. Mount Everest from space

EXCERPT #58NP5J p. 9
  We define:

EXCERPT #V8BKPC p. 9
  a is a fiat object part = Def. a is a material entity that is a proper part of an object and that is not itself an object .

EXCERPT #HFZ5VD p. 9

EXCERPT #45QY77 p. 10

EXCERPT #ZRNZL5 p. 10
  Examples are: the upper and lower lobes of the left lung, the dorsal and ventral surfaces of the body, the Western hemisphere of the Earth, the FMA: regional parts of an intact human body.

EXCERPT #B7HK3V p. 10
  Since fiat object parts are material entities , they are also extended in space in three dimensions (in contrast to fiat continuant boundaries , introduced below).

EXCERPT #WZV3Q7 p. 10
  Fiat object parts are contrasted with bona fide object parts, which are themselves objects (for example: a cell is a bona fide object part of a multi-cellular organism), and are marked by bona fide boundaries, or in other words, by physical discontinuities (for example: between the surface of your skin, or your laptop, and the surrounding body of air) [Smith 2001]. Most examples of fiat object parts are associated with theoretically drawn divisions (for example: the division of the brain into regions or the division of the planet into hemispheres), or with divisions drawn by cognitive subjects for practical reasons, such as the division of a cake (before slicing) into (what will become) slices (member parts of an object aggregate ). However, this does not mean that fiat object parts are dependent for their existence on divisions or delineations effected by cognitive subjects. If, for example, it is correct to conceive geological layers of the Earth as fiat object parts of the Earth, then even though these layers were first delineated in recent times, still they existed long before such delineation and what holds of these layers (for example that the oldest layers are also the lowest layers) did not begin to hold because of our acts of delineation.

### 17. Tool result: read

DOCUMENT #7YZU95
Boundaries: An Essay in Mereotopology

SECTION #836SUT Varieties of Connectedness

EXCERPT #FH7DGQ p. 20
  A pair of spatial entities are in contact each other directly when their respective boundaries, in whole or in part, coincide. Chisholm defines direct contact as follows (1992/93, p. 16):

EXCERPT #GBQTQR p. 20
  x is in direct spatial contact with y := a constituent of x spatially coincides with a constituent of y. (1992/93, p. 16)

EXCERPT #3F3A5J p. 20
  Unfortunately, however, this definition does not work in the general case. Thus for example it cannot capture the case in which a point-boundary x inside the interior of a body y is in direct contact with the punctured neighborhood y - \sigma z(z \sim x) . We can, however, define a relation of direct contact for bodies:

EXCERPT #AFKMVG p. 20
  DDCOK.      xDCOKy := Kx \wedge Ky \wedge \exists vw(v < x \wedge w < y \wedge v \sim w \wedge v \neq w) (bodily direct contact)

EXCERPT #X2UFTS p. 20
  22 See, again, Steen and Steebach 1978.

EXCERPT #SPMZRV p. 20
  23 For a discussion of such non-additive summation principles see Smith 1991.

EXCERPT #5YJ5MY p. 20

EXCERPT #4RED2T p. 21
  Note, however, that this definition imposes no constraint of connectedness on either x or y or their sum. Consider the case where x is the mereological sum of a banana and a point on an apple, y the mereological sum of some coincident point on the same apple together with a second banana some miles distant from the first. We then have x\text{DCOK}y even though the whole x \cup y is not connected.

EXCERPT #5WW339 p. 21
  At this point Chisholm writes:

EXCERPT #YVR7ND p. 21
  A thing that turns back on itself (e.g. a tire, a hoop, or a doughnut) is in contact with itself. Lines and surfaces can turn back on themselves. (1992/93, p. 17)

EXCERPT #Y2BVSN p. 21
  A pliable rod, it seems clear, can be turned back upon itself in some special sense (the two ends can be brought into contact with each other). But surely the sense in which a doughnut is in contact with itself applies to all connected bodies (consider v in \text{DDCOK} as the right boundary of the left hemisphere of a sphere, w as the left boundary of the right hemisphere of the same sphere). Indeed it follows from our considerations on internal boundaries above that x\text{DCOK}x holds for every body x , since every body is large or thick enough to contain at least two coincident entities as parts.

SECTION #ZQP35X Touching

EXCERPT #6SNMDD p. 21
  In fact, to do justice to what Chisholm has in mind, we must therefore distinguish touching as a special case of direct contact which applies only to coincident parts of external boundaries of mutually discrete bodies: an entity x touches an entity y if each is such that it can exist without detriment even should the other be destroyed. We might, accordingly, introduce a new primitive ‘exists’ (symbolized by ‘ E! ’) and formulate a definition along the lines of:

EXCERPT #K33C7U p. 21
  DTO. x \text{ TO } y := x \text{ DCOK } y \wedge \neg xOy \wedge \forall z(z \leq y \rightarrow \Diamond_x \neg E!z) \wedge \forall z(z \leq x \rightarrow \Diamond \neg E!z) (touching)

EXCERPT #QN6XK7 p. 21
  ( x touches y iff x and y are discrete bodies in direct contact and, given any part z of y , x is possibly such that z does not exist and, given any part z of x , y is possibly such that z does not exist).

EXCERPT #HUQF7Q p. 21
  Thus imagine a pair of exactly similar hemispheres h_1 and h_2 which touch each other in such a way that the flat portions of each coincide in a horizontal plane. Imagine, on the other hand, a single sphere s , of identical proportions. s has running through its central horizontal plane a boundary in full plerosis that is in many respects similar to the sum of coincident boundaries, each in half plerosis, existing where h_1 and h_2 touch. The former differs from the latter, now, in that we can separate this sum of coincident boundaries without detriment to either half of the pair. The two correspondingly coincident boundaries in the solid sphere cannot, correspondingly, be cut apart: they belong together intrinsically (as a matter of necessity).

EXCERPT #H4URR4 p. 21

SECTION #CC4MY2 Contact

EXCERPT #NR6SUM p. 22
  Bodies are in contact in the broader sense when they and all their parts are connected to one another, possibly via others, in such a way as to establish a seamless chain of direct contact. Chisholm seeks to define contact in this wider sense as the successor-relation of direct contact as follows:

EXCERPT #3KP7FM p. 22
  x is in spatial contact with y := x belongs to every class C which contains y and anything that is in direct spatial contact with any member of C (1992/93, p. 17)

EXCERPT #TQEG67 p. 22
  Here we take a different tack, one surely more in keeping with the remainder of the present theory, and define first of all what it is for a body to be connected :

EXCERPT #B2GTUC p. 22
  DCNK. CNKx := Kx \wedge \forall yz[(Ky \wedge Kz \wedge x = y \cup z) \rightarrow yDCOKz] (connectedness for bodies) 24

EXCERPT #4GGVUE p. 22
  ( x is a connected body iff all partitions of x into a pair of bodies y and z are such that y is in direct contact with z ).

EXCERPT #2246DF p. 22
  We go on to set as a definition of bodily contact :

EXCERPT #VUA3RF p. 22
  DCOK. xCOKy := Kx \wedge Ky \wedge \exists z (CNKz \wedge x \cup y \leq z) (bodily contact)

EXCERPT #HL38VA p. 22
  24 We might seek to define connectedness for boundaries analogously by means of:

EXCERPT #7UFSQW p. 22
  CNBx := Bx \wedge \forall yz[(By \wedge Bz \wedge x = y \cup z) \rightarrow \exists vw(v \leq y \wedge w \leq z \wedge v \neq w \wedge v \sim w)]

EXCERPT #DLCETZ p. 22
  This will not work, however, as can be seen if we take a connected line x , and define y as the result of subtracting from x the sum z of all points in x coincident with a given interior point. We must return to this issue later, when we have a notion of sameness of dimension (and when we are in a position to eliminate punctured entities and other similar monsters from the class of boundaries).

EXCERPT #MVRYRD p. 22

EXCERPT #EMS6Z7 p. 23
  (bodies x and y are in bodily contact iff their sum is part of some connected body).

EXCERPT #RP6BFW p. 23
  My left hand and my right hand are in contact with each other in this sense as long as they remain attached to my body; they are in direct contact only if they touch each other.

EXCERPT #PE9WX4 p. 23
  A further sort of contact, illustrated by the case of two coincident surfaces, s_1 and s_2 , where every part of s_1 is in contact with some part of s_2 and vice versa, is called by Chisholm total contact :

EXCERPT #D8HHN5 p. 23
  xTCOy := \forall z(z \leq y \rightarrow \exists w[w \leq x \wedge z \sim w]) \wedge \forall z(z \leq x \rightarrow \exists w[w \leq y \wedge z \sim w])

EXCERPT #45FYR5 p. 23
  ( x is in total contact with y iff x and y are in contact and all parts of x and y are in contact with corresponding parts of y and x ).

EXCERPT #EXLL84 p. 23
  Total contact is clearly impossible between entities that have any sort of thickness. (Such thickness would, as it were, shield certain interior parts from contact with the other entity.) Accordingly, Chisholm asserts as axiom:

EXCERPT #RGYV4K p. 23
  xTCOy \rightarrow x \sim y.

SECTION #4MYQQ8 Boundary Of

EXCERPT #DMLLXW p. 23
  Rushing in where Chisholm fears to tread, we may now define a series of further mereotopological concepts on the basis of the notions defined thus far. Thus we may define the relational concept x is a boundary of the body y , where x is to be conceived as an exterior boundary – and thus as a boundary in the surface of y (which may mean: in the surface of an internal cavity of y ):

EXCERPT #K9LJFX p. 23
  DBK. \ xBKy := Bx \wedge x < y \wedge Ky \wedge \Diamond_y \exists z[y TO z \wedge \exists w(w < z \wedge x \sim w)] (boundary of body)

EXCERPT #DSKWQ4 p. 23
  ( x is a boundary of a body y iff x is a boundary and a part of y and y is possibly such as to touch some z with part of which x is coincident).

EXCERPT #KQHKKV p. 23
  We may then define the notion of a maximal (exterior) boundary (complete boundary or ‘envelope’) of a body as follows:

EXCERPT #Q68J2Q p. 23

EXCERPT #Y6SAGD p. 24
  \text{DCBK.} \quad x \text{ CBK } y := x \text{ BK } y \wedge \forall z (z \text{ BK } y \rightarrow z \leq x) \quad (\text{envelope})

SECTION #E4UVCT Connectedness for Boundaries

EXCERPT #8TTUM3 p. 24
  We may define connectedness for boundaries as follows:

EXCERPT #9H3EWA p. 24
  \begin{aligned} \text{DCNB.} \quad \text{CNBx} &:= \text{Bx} \wedge \forall yz (y \cup z = x \wedge \forall uv [(Ku \wedge Kv \wedge y \text{ BK } u \wedge z \text{ BK } v) \rightarrow u \\ \text{DCOK } v]) &\quad (\text{connectedness for boundaries})^{25} \end{aligned}

EXCERPT #E8PW3Q p. 24
  (a boundary is connected iff any partition into y and z is such that if y is a boundary of body u and z is a boundary of body v then u and v are in direct contact)

EXCERPT #GQRWZB p. 24
  We may then define connectedness in general as follows:

EXCERPT #KTNBU4 p. 24
  \text{DCN.} \quad \text{CNx} := \text{CNKx} \vee \text{CNBx} \quad (\text{connectedness})

EXCERPT #UWSRF8 p. 24
  In addition, and at the risk of some redundancy, we can assert the following principles for boundaries:

EXCERPT #UB5Y7S p. 24
  \text{AB3.} \quad (x \text{ B } y \wedge y \text{ B } z) \rightarrow x \text{ B } z \quad (\text{transitivity})

EXCERPT #9K7SQ8 p. 24
  \text{AB4.} \quad (x \text{ B } z \wedge y \text{ B } z \wedge x \sim y) \rightarrow x \text{ coincident boundaries of identicals are identical}

EXCERPT #ABBV9H p. 24
  \text{AB5.} \quad (x \text{ B } z \wedge y \text{ B } z) \rightarrow x \cup y \text{ B } z \quad (\text{finite union})

EXCERPT #DNWPGU p. 24
  We can prove:

EXCERPT #XF9S8E p. 24
  25 With the help of this concept of connectedness for boundaries, the definition of x \text{ BK } y would enable us to formulate the equivalent of the “second Brentanian thesis” of Smith 1993, which affirms, for connected boundaries, the existence of connected bodies which they are the boundaries of:

EXCERPT #LYECLC p. 24
  (\text{Bx} \wedge \text{CNBx}) \rightarrow \exists y (x \text{ BK } y \wedge \text{CNKy}).

EXCERPT #JF8Z4H p. 24

EXCERPT #NRGDHJ p. 25
  TB1. x B y \rightarrow \neg y B x (antisymmetry)

EXCERPT #WZQKUW p. 25
  from which it follows trivially that it is never the case that x B x .

SECTION #R3Y3M2 Substance

EXCERPT #DG5JLY p. 25
  Our gloss on the primitive concept of body told us that bodies can fall short of being substances in two different ways: (1) in being too big, they contain two or more bodies as non-connected parts; (2) in being too small: they are parts of larger connected bodies (as one solid metal sphere may be discriminable inside a second, larger sphere). 26

EXCERPT #LRUEHL p. 25
  To exclude the first sort of counterexample we shall need to insist, following Chisholm, 27 that substances are connected bodies. To exclude counterexamples of the second sort we shall need to require in addition that substances are maximally connected bodies. This yields as candidate definition:

EXCERPT #38TF9W p. 25
  Sx := CNKx \wedge \forall y(x < y \rightarrow \neg CNKy)

EXCERPT #G85XT8 p. 25
  We still, however, need to take account of the possibility that one substance might touch (be more or less momentarily in contact with) another. (The mereological sum of two such substances is connected, by our definition of CNK above.) Accordingly we set:

EXCERPT #2YHQBJ p. 25
  DS. Sx := CNKx \wedge \forall y[(x < y \wedge CNKy) \rightarrow \exists t(x \cup t = y \wedge x \text{ TO } t)] (substance)

EXCERPT #MHQ6XT p. 25
  (a substance is a connected body which is such that if it serves as part of a larger connected body then this only because it touches some second body).

EXCERPT #5WGX2J p. 25
  26 Every substance contains substantials which are in this sense too small. Thus my arm is a substantial in relation to me as substance. See Smith 1997.

EXCERPT #ZXHUYK p. 25
  27 Chisholm gives the definition (1992/93, p. 17):

EXCERPT #WL3H8L p. 25
  Sx := Kx \wedge \forall y[y < x \wedge Ky \rightarrow \exists z(z < x \wedge z \neq y \wedge yCOz)]

EXCERPT #EG8SUQ p. 25
  (a substance is a body all of whose proper bodily parts are in contact with some other proper parts).

EXCERPT #LMB9AD p. 25
  This is too weak however. Even collectives made up of several separate bodies are such that all parts y are in contact either with their own respective proper parts or, in case y is a point which has no proper parts, with the surrounding portion of the relevant body.

EXCERPT #BEAVWA p. 25

EXCERPT #NNBNMX p. 26
  Note that DS is consistent with the fact that substances may have holes of various shapes and sizes.

SECTION #5T4RSH Dimensions

EXCERPT #AUL9GX p. 26
  Boundaries can be classified according to the number of their dimensions. Thus we can distinguish one-, two- and three-dimensional continua and we can even contemplate continua of higher numbers of dimensions. From Brentano's point of view, a continuum

EXCERPT #TJM63V p. 26
  is to be designated as one-dimensional if it has no other boundaries than such as are not themselves continuous. ... The spatial line, too, has no boundaries other than non-extended ones, namely the spatial points, and it is for this reason that Euclid defined the point as that which has no parts. The surface, in contrast, belongs with the two-dimensional continua since its boundaries comprehend not only points but also lines. And a body is to be designated as a three-dimensional continuum since not only is the whole body bounded by a surface but so also each one of its parts is separated from the remainder by a surface that is a two-dimensional boundary. (1988, p. 10)

EXCERPT #F8PCN4 p. 26
  Chisholm's approach to the problem of dimension is to begin by defining surface as follows:

EXCERPT #HAZN4N p. 26
  SFx := Bx \wedge \Diamond_x \neg \exists y (x < y \wedge By)

EXCERPT #SZYCFZ p. 26
  (a surface is a boundary – an envelope – which is possibly such that it is not a proper part of a boundary).

EXCERPT #5BWK5V p. 26
  One problem with this definition, conceived as a definition of what we normally think of as two-dimensional boundaries, turns on the fact that there might be what Brentano calls 'topoids' of four or more dimensions, whose boundaries would satisfy the definition yet would not be surfaces in the intended (two-dimensional) sense. This we might solve by means of an axiom ruling out such cases, for example by setting as axiom:

EXCERPT #RW3SXG p. 26
  \forall x \exists y (Ky \wedge x \leq y)

EXCERPT #VVC275 p. 26
  This will serve our purposes, however, only if we know in advance that bodies have always exactly three dimensions. This in its turn cannot be stipulated as an axiom unless we already have a concept of dimension at our disposal. No simple way out of this impasse presents itself, though for the moment we can follow Chisholm and impose (in effect) the requirement that the range of variables of our theory be restricted to spatial objects of three or less than three dimensions.

EXCERPT #8T45CH p. 26

EXCERPT #XM97L7 p. 27
  Another problem with Chisholm's proposed definition of surface is that it does not do justice to what we might call open surfaces, surfaces which are arbitrarily delineated sub-regions of other, larger surfaces.

EXCERPT #5BU2HA p. 27
  A better definition can be achieved if we use an earlier proposal (advanced by Chisholm in his 1989, p. 88) and define surfaces by appealing to the fact that a surface, unlike other boundaries, can coincide at most with one other surface (where points and lines can coincide with an infinity of other points and lines). We then have (provisionally and tentatively):

EXCERPT #YFH6RT p. 27
  \text{DSF.} \quad \text{SFx} := \text{Bx} \wedge \Box_x \forall yz[(x \sim y \wedge y \sim z) \rightarrow (z = x \vee z = y)]

### 18. Tool result: read

DOCUMENT #3CCZ4A
Bodily Systems and the Spatial-Functional Structure of the Human Body

SECTION #W88WGC 3. Defining 'System'

EXCERPT #XTN38M p. 5
  The task of reference ontology is not to replace medical science. Rather, its job is to provide a framework within which medical knowledge can be formalized in a way that supports causally predictive theories, and at the same time counteracts the effects of terminological and other inconsistency and imprecision in a way that makes possible the integration of data deriving from heterogeneous life science sources. Such a framework must start out from the ways knowledge is formulated in the medical literature, and one indication of whether we are on the right track with our definition of 'system' will be the degree to which it yields a roster of systems that is very like the standard rosters.

EXCERPT #K8A7GJ p. 5
  Of course this cannot be a criterion for the soundness of our definition. But we think it is reasonable to assume, in the absence of countervailing evidence, that medical scientists have good reasons for subdividing the body in certain ways, even if these reasons are not explicitly stated. As we have seen, however, we need to go beyond textbook formulations if we are to achieve the sort of formal clarity we need for the purposes of reference ontology.

EXCERPT #2FL3C2 p. 6
  How, then, are we to define the notion of a bodily system? The discipline of systems theory – which is prima facie the obvious place to look – is in fact of little help to us here, since its definition of a system as a complex of interacting parts [13] is far too general for our purposes and is made more specific only by the use of mathematical tools which leave unanswered precisely those questions pertaining to the specific domain of biological systems which we are called upon to answer.

EXCERPT #TF2HH2 p. 6
  We can make some progress, on the other hand, if we examine how the word ‘system’ is most commonly used in both technical and non-technical contexts by speakers of English. The Oxford English Dictionary defines ‘system’ under the principal heading of ‘an organized or connected group of objects,’ or more precisely: ‘A set or assemblage of things connected, associated, or interdependent, so as to form a complex unity; a whole composed of parts in orderly arrangement according to some scheme or plan.’ Under the heading ‘Biology’ it gives: ‘A set of organs or parts in an animal body of the same or similar structure, or subserving the same function, as the nervous, muscular, osseous, etc. systems, the digestive, respiratory, reproductive, etc. systems.’

SECTION #MGXDF7 3.1 Systems as Dynamic

EXCERPT #434NUB p. 6
  One might be critical of such definitions on the grounds that a system is not a mere set or aggregate, but rather something dynamic (think of the hydraulic system in your car). We can do justice to such criticisms, however, by distinguishing systems themselves from the processes in which they are involved. [14] As we shall see, systems are able to carry out certain specific kinds of processes, only because they have a certain kind of physical structure. [15] Systems on this view are dynamic in nature in just the way that organisms are. Indeed organisms are systems on the analysis we shall defend.

EXCERPT #RUTQVB p. 6
  Each of the bodily systems listed in Tables 1 and 2 consists of a certain organized group of objects – such as organs, associated tissues, and populations of cells – with which specific kinds of processes are associated. There are of course many organized collections of parts of the body with which processes can be associated, including some of the bodily ‘regions’ mentioned above. In order to make our analysis of system work, therefore, and to yield the sorts of answers we need for our questions about bodily systems, we will need to provide a specification of the particular kinds of processes to which systems give rise. Roughly, they are those processes which are the realizations of functions on behalf of the systems in question. Hence in what follows we shall need to provide also an analysis of function .

EXCERPT #H2DRLZ p. 6
  We will distinguish between a part of the body, and an element of a body system, as follows. When we refer to a part of the body, we mean a proper part in the mereological sense. Examples are: the hand, the solar plexus, the thyroid, the right half of the liver, the whole liver, a white blood cell. A part is identified only by its mereological relation to the body. An element, in contrast, is a mereological part of the body, in fact an aggregate of mereological parts, that has in addition a specific function in its own right. The notion of element can be understood, roughly, as a generalization of notions such as organ , cell , and indeed of bodily system itself. Examples of elements are: the heart, a skin cell, a bicep muscle, the digestive system. Note that most elements are systems in and of themselves: they have functions, and are often composed of a complex of interacting elements on lower levels of granularity each of which has a function in its turn. Thus the elements of the body compose a complex modular hierarchy that is arranged by function as well as by spatial location and size. As we will see, the bodily systems we have defined above are themselves elements of the system that is the body as a whole. Our approach is based on the supposition that every element is composed of elements that enable it to realize its function, and that this is the case all the way down to an as yet unspecified bottom level.

SECTION #WFEGGZ 3.2 The Body's Modular Hierarchy

EXCERPT #DYY2V2 p. 7
  There is a collection of bits of biological matter in the human body that medical science designates as the circulatory system. What is it about this collection of vessels, organs, and blood in virtue of which it is referred to as a system ? Could we designate as a system some arbitrarily demarcated area of skin? Or the mereological sum of our heart plus our salivary glands plus our right ear? Clearly, the reason that the circulatory system is considered as forming a system is because the heart, vessels, and blood are related to each other in a special way. There are first of all structural connections, which can be described in terms of mereological and mereotopological relations: the left ventricle is part of the heart, a capillary is continuous with a venule. But to distinguish systems from arbitrary connected aggregates of body parts we need also to recognize that there are physiological connections, which can only be described in terms of causal relations: the electro-chemical impulses cause the myocardium to contract and relax, and these processes cause the heart to pump. In other words, a system is characterized simultaneously by a certain complex structure , and by a set of processes in which that structure participates.

EXCERPT #ASA6UF p. 7
  It is this complex structure that allows each system to participate as it does in these and those processes. Without a tendon connecting a muscle to a bone and a group of motoneurons connecting the muscle to the central nervous system, the process of movement could not take place. But of course arbitrary collections of body parts can be seen as engaging in (correspondingly arbitrarily delineated) processes too. Hence there is still more that needs to be said. To anticipate, we shall show that the multiplicity of complex processes that takes place in the body corresponds to a modular structure on the side of the body itself. The body, in other words, is a whole that can be divided into units or modules, each of which is capable of being divided in its turn into sub-units, and so on, both along the dimension of body parts and along the dimension of processes.

SECTION #8JPM6X 3.3 Relatively Isolated Systems

EXCERPT #LVX6KG p. 7
  Every complex organism has modular units at several levels. Your brain contains neurons, the neurons contain organelles, the organelles contain molecules, which are composed of atoms, which are composed in turn of subatomic particles. Modular units at lower levels stand in vertical mereological relationships to those modular units which stand above them in the hierarchy. The alveoli are parts of the respiratory system at a lower level than the lobes of the lungs.

EXCERPT #MD6DQN p. 7
  Modular units also stand, as it were horizontally, in causal relations with modular units in other systems. The alveoli are parts of the lungs and have a function in the context of the respiratory system. The alveoli have a horizontal causal relationship of the mentioned sort with the capillaries, which have a function in the context of the circulatory system. It is the alveoli and the capillary wall where the exchange of oxygen and carbon dioxide takes place between the blood and the air.

EXCERPT #3Y2SRK p. 7
  Modular units within given systems may thus contribute causally to the functioning of other systems. The liver, for example, is an element in the alimentary system, but it has functions in the context of several other bodily systems at various levels. In the context of the circulatory system, it produces proteins for the coagulation of blood. In the context of the digestive system, it produces bile for breaking down chyme. Bile also has a function in the context of the excretory system: the body mixes chyme with bile and excretes this mixture as feces. The liver also produces proteins that have a receptor function in the context of the immune system.

EXCERPT #VJPRL4 p. 8
  The existence of this interleaved structure is nonetheless compatible with the fact that physiological processes form a modular hierarchy of their own. For the interleaving has limits, and it is these limits which allow us to talk in terms of ‘systems’ at all as if they were separate parts of the body.

EXCERPT #MGS9TT p. 8
  The crucial notion here is that of causal relative isolation . As the philosopher Roman Ingarden expressed the matter, each multi-cellular organism is

EXCERPT #4LC6RJ p. 8
  a relatively isolated system of a very high order, and as such contains in itself very numerous, likewise relatively isolated, systems of lower and lower levels, which are hierarchically ordered and variously situated within the organism, and are at the same time both partially interconnected and also partially segregated, as a consequence of which they can exercise the specific functions which are characteristic to them relatively undisturbed. [16]

EXCERPT #NYLDUW p. 8
  Our task here is to provide the beginnings of an account of this modular hierarchy of relatively isolated systems and of the layers from out of which it is built, from macromolecules via cells and organs through to the whole organism, but in a context that is determined by paying attention also to the modular hierarchy of processes – and functions – associated therewith.

SECTION #AJU36J 3.4 SNAP and SPAN in Bodily Systems

EXCERPT #QU4RJH p. 8
  Ontology offers certain basic tools for formalizing the aspects of anatomy and physiology we have just discussed. The first tool we will need provides us with a way of distinguishing between the body’s complex structure and the processes in which that structure participates. The structure itself occupies three spatial dimensions; processes require in addition the fourth dimension of time. Ontology also provides a way of talking about the relationship between structures and processes. What is called for is an ontology that distinguishes between three-dimensional objects that endure through time ( endurants or continuants , for short), and the four-dimensional processes ( perdurants or occurents ) in which these objects participate. Grenon and Smith provide such an ontology in [17], and they apply it to medicine in their paper with Goldberg in this volume [4].

EXCERPT #ZPPRLL p. 8
  The body and its parts are three-dimensional entities: they can be apprehended as it were in one glance, as in a snapshot; hence Grenon and Smith call the ontology appropriate for such entities a SNAP ontology. A SNAP ontology of the circulatory system includes not only whole organisms but also other endurants such as the heart and the blood. (We will see that functions, too, fall under the heading of SNAP entities.)

EXCERPT #KA47BT p. 8
  The processes that take place in the body are four-dimensional: they cannot be captured in a snapshot, but require instead something like a videotape, which allows them to be captured in their temporal extendedness as they unfold over a certain timespan – hence ‘SPAN’ ontology. A SPAN ontology of the circulatory system includes perdurants such as the beating of the heart and the flowing of the blood.

EXCERPT #MLLA26 p. 8
  In a SNAP ontology, endurants are visible but perdurants are not; in a SPAN ontology, perdurants are visible but endurants are not. SNAP and SPAN thus represent two complementary perspectives on the same reality. In order to talk about bodily systems, we need both of these perspectives. We need a SNAP ontology of the endurant structures in the body that make up the modular hierarchy, and we need a SPAN ontology of the perdurant processes that these structures enable. It is the appeal to both endurants and perdurants that will allow us to explain why the heart, blood, and blood vessels comprise a circulatory system, and why our heart taken together with our salivary glands and our right ear do not.

EXCERPT #WSS6Q7 p. 9
  The heart, blood, and blood vessels are parts of the human body. They are also parts of the circulatory system. A SNAP ontology such as the FMA shows us how these parts relate to each other spatially. But in order to see how these relations play out in the form of processes in which the corresponding objects participate, we need a SPAN ontology. In reality, SNAP and SPAN entities are superimposed upon one another: SNAP and SPAN are complementary views of one and the same dynamic reality. [4] SNAP entities are related to SPAN entities by two relations: of participation and dependence . Three-dimensional SNAP entities participate in four-dimensional processes, and four-dimensional processes are dependent on the three-dimensional continuant entities which are their bearers.

EXCERPT #8PB5FR p. 9
  Hence our distinction between two kinds of parts: parts of the body simpliciter , which can be apprehended in SNAP alone à la FMA; and elements, which are the results of demarcating the body into systems in a way that takes account not only of the SNAP but also of the SPAN ontology. Elements are located in SNAP, because they are three-dimensional entities. But that they form systems is something that can be understood only in a context in which we take account also of the specific manner of their participation in four-dimensional processes.

SECTION #95YMHC 3.5 Elements

EXCERPT #WTUQBL p. 9
  Elements are those specific kinds of parts of the organism from which systems are constructed. At the highest level of the modular hierarchy, the bodily systems proper are elements of the system that is the whole human body. If it turns out that there are nine bodily systems, then the human body will be a system composed of nine elements, which may to some degree overlap.

EXCERPT #7CA27T p. 9
  If an element becomes causally disconnected from its system, as when a heart is refrigerated in the course of a heart-transplant operation, then it ceases to be an element for a certain period of time. As Aristotle expressed it: 'A dead body has exactly the same configuration as a living one; but for all that it is not a man ... no part of a dead body, such I mean as its eye or its hand, is really an eye or a hand.' [18]

EXCERPT #R998YA p. 9
  Cases in which elements of systems have been replaced by prosthetic devices (hearts, hips, etc.), or in which the system is artificially supported (such as by intravenous feeding), are a gray area for the mereology of the human body. [30] Leaving such cases aside, all elements of the body are also parts of the body. The heart is an element of the circulatory system, and it is a part of the circulatory system's complex physical structure, which is in turn a part of the body. Certain parts of the foot, such as its bones, capillaries, or nerve endings, are unproblematically elements of larger overarching systems. The bones are elements in the skeletal system, the nerve endings in the nervous system, and the capillaries in the circulatory system. Not all parts of the body, however, are also elements (consider your right leg from the knee down, or arbitrary parts formed by summing together elements from different systems that are not directly connected).

EXCERPT #9NRP6U p. 9
  Whether the foot is an element within the modular structure of the human organism is something which we here wish to leave open. Certainly the foot has causal relations with larger wholes, namely with the two lower limbs, pelvis and vertebral column, all designed to transmit the body's weight to the foot and to absorb and propagate the propulsive impetus from the foot to the rest of the body. As Rosse suggests (personal communication) these elements may together constitute what we might call the Locomotor system . Likewise, the entire upper limb, including the pectoral girdle with all its joints, might be seen as forming a

EXCERPT #FXRWEL p. 10
  Prehensile system. If you compromise any of these elements in either of these systems, you will have compromised locomotion or prehension. Against this, however, speaks the fact that locomotor and prehensile systems are not included in the standard lists of bodily systems which we find in the medical literature. Certainly they are not highest-level systems in the sense that will be specified below.

EXCERPT #F5EC8V p. 10
  The elements of the digestive system include the esophagus and the stomach, the serous membrane, the layers of smooth muscular tissue, and so forth. Some corresponding functions are: to provide the way for a bolus to pass from the mouth cavity into the stomach, to advance the process of digestion by mixing the bolus with hydrochloric acid and pepsin (gastric juice), to allow for the external coverage of the stomach and its constriction.

EXCERPT #MNJV3H p. 10
  Each cell is a system that standardly consists of elements such as nucleus, mitochondria, endoplasmic reticulum, ribosomes, which are in turn systems in their own right with their own specific functions. The blood consists of cellular elements (red blood cells, leucocytes, lymphocytes, monocytes, platelets) and plasma, which contains albumins, globulins and hormones.

EXCERPT #NU5VFK p. 10
  As we have seen, elements are often shared by different systems, and are then involved in distinct processes in parallel – one or more in the context of each system to which they belong. For instance, the pharynx enables both the passage of the bolus into the digestive tract and the passage of air into the lungs; as such it is an element of the digestive and the respiratory systems simultaneously.

SECTION #5S5KVF 3.6 Granular Partitions and System Elements

EXCERPT #FTYFBV p. 10
  A further ontological tool we will need is the theory of granular partitions . [19] This provides a way of formalizing our description of the structure of the body's modular hierarchy. A theory of granular partitions represents reality in terms of partitions, each of which highlights entities of a different grain. An organism is a single object: it exists independently of our partitions. But an organism can be viewed also as a totality of atoms, or as a totality of molecules, a totality of cells, a totality of regions, and so forth. All of these different views express distinct granular partitions of one and the same portion of reality.

EXCERPT #PMMNJN p. 10
  The theory of granular partitions preserves realism even as it accounts for the possibility of different perspectives on reality. For each granular partition highlights certain reality existing aspects of a given unified whole. Think of a tourist map as a granular partition: it represents a given city, but it highlights only certain selected tourist locations. A map of bus routes is another granular partition of the same city. Each grain in the partition is an item on the map. Grains themselves are divisible into smaller grains, which become visible through a more refined partition. Within each granularity, too, we can have different views, for example different views of the coarse anatomy of the human organism reflecting the perspectives of the surgeon and of the radiologist, respectively. This possibility, too, is allowed for in the theory of granular partitions.

EXCERPT #Y3FU8P p. 10
  All of the items appearing on the tourist map have one attribute in common: they are of interest to tourists. All of the items on the bus map have something else in common: they are relevant to the purpose of navigating through the city by bus. Similarly, any given granular partition of the body's anatomy will highlight those items in the body that have certain features in common, and leave out items that do not have these features. [20] The feature in virtue of which a given class of body parts is included in the FMA partition is (when the story is told to its conclusion) the presence of structural genes whose coordinated expression gives rise to the corresponding instances. We will see that the feature in virtue of which a given class of body parts is included in the anatomical partition advanced here is: the presence of constituent functions which are realized by the corresponding instances. In the end, of course, these two partitions must be correlated; this act of correlation however presupposes that both of the corresponding views have been worked out in formal detail.

SECTION #LWLW7G 3.7 Functions in Bodily Systems

EXCERPT #SRYLVT p. 11
  A system is characterized simultaneously by a complex modular structure , which is a SNAP entity, and by a multi-leveled family of associated processes , which are SPAN entities. The processes occur as they do because the body is structured in such a way as to sustain a complex modular hierarchy of functions .

EXCERPT #BSN44G p. 11
  We cannot provide a definition of (biological) function here. Rather we can only set forth certain general propositions which describe what is characteristic of those entities biologists call ‘functions,’ propositions which will be subjected to further commentary below:

EXCERPT #HENJLT p. 11
  1. Functions, like other entities studied by biological science, exist both as individuals (or instances of tokens) and as universals (or classes or types). [21] The function of your heart, to pump blood, is an individual, dependent for its existence on you. The function of hearts in general – to pump blood – is a class, of which that individual function is an instance.

EXCERPT #QNK6UQ p. 11
  2. Functions are endurants. The function of your heart begins to exist with the beginning to exist of your heart, and continues to exist, self-identically, until (roughly) your heart ceases to exist.

EXCERPT #DV224N p. 11
  3. Functions have bearers, which are also endurants: the bearer of the function of your heart is: your heart.

EXCERPT #WQNPJV p. 11
  4. Functions can exist even when they are not being realized.

EXCERPT #VX4KLY p. 11
  5. The processes taking place in or involving entities which are bearers of functions can be divided into two types: those which are realizations of their functions (also called functionings ) and processes of other types.

EXCERPT #QAVW8S p. 11
  6. If an organism Y has a constituent part X, and if X is the bearer of a function Z, then those processes which are the realizations of the function Z are (in normal circumstances) such as to sustain the organism in existence.

EXCERPT #QGJKCL p. 11
  A multi-leveled hierarchy of granular partitions is needed if we are to highlight the human body’s systems and their elements on successive levels. Each element is distinguished by a specific structure that allows for it to engender specific physiological processes. In the everyday language of the life sciences, this element is said to have a function . A function, like an element, is a SNAP entity or endurant.

EXCERPT #U23FXZ p. 11
  Unlike an element, however, a function is an endurant that is ontologically dependent on another endurant. Your heart’s (token) function (to pump blood) could not exist if your heart did not exist. Similarly, color is a dependent SNAP entity: your eyes have a token color (brown) which could not exist if your eyes did not exist. The color brown as a type would of course exist, but this particular brown of your particular eyes would not. Each token function is dependent for its existence on a SNAP entity; but it is realized in token processes, which are SPAN entities. The heart’s function is realized in processes of blood being pumped. We will refer to processes that are realizations of functions as ‘functional processes.’

EXCERPT #C2Y7HF p. 11
  Many elements have functions which are never realized in processes. It is not only true of but essential to the nature of fish eggs that, other things being equal, they develop into fish. In fact, however, the vast majority of eggs in many fish species never develop into fish, most being eaten or destroyed. And yet each fish egg has the function: to develop into a fish. It is a function of a woman’s uterus to house an embryo whether or not she does in fact become pregnant.

EXCERPT #5PVBB7 p. 12
  It may look as though recognizing both functions and functionings in an ontology represents a case of ontological double-counting. This is not so, however. For while it is true that every function is correlated with some class of processes at some given level, many processes are not realizations of functions (think, for example, of those processes in the human body which are caused by some interference from the body's environment).

EXCERPT #7KAFHL p. 12
  Some philosophers have criticized the function talk used unreflectively by life scientists (for example in the designation of disciplines like functional genomics ), and have tried to eliminate the notion of function and replace it exclusively with notions of causality or natural selection. [22-24] We hold, however, that biological functions are real, that they are irreducible features of the biological world, and that the phenomena that life scientists designate with the term 'function' have enough in common to justify unifying them under the single heading. This realist attitude towards functions is indeed captured precisely in the use of the expression 'functional genomics' for what many currently regard as the fundamental discipline of the life sciences.

EXCERPT #S7JFPX p. 12
  With Johansson et al. [25] we support the view that the functions of bodily systems and their elements are constituent functions: that is, they are functions of parts within the context of some larger whole (and ultimately of the whole organism). Constituent functions are similar to what Cummins calls 'roles in containing systems.' [26] Elements are components of a bodily system distinguishable by their structure and by the specific processes which that structure enables. An element is only an element of some larger system. Thus the function that the element has can also only exist within the context of this larger system. Further, it is only in the context of a larger system that the function can be realized in a process of functioning. This is what Aristotle has in mind when he says that an eye is an eye only in the context of the human body. [18]

EXCERPT #PP746D p. 12
  For our definition of bodily system we will employ the taxonomic formula developed in [25] for describing functions in the human body. The resultant theory is described as 'bi-ontological,' because it involves simultaneous appeal to both SNAP and SPAN ontologies. When we say that the function of a given element E is: to F, then we are in fact conveying information to the effect that:

SECTION #8NSNR6 SNAP

EXCERPT #QL64PF p. 12
  (a) There is a whole W (a certain system), (b) E is an element (a spatial part and functional sub-unit) of W, (c) one function of E within W is, by means of E's parts and functional sub-elements C_1 to C_n , (d) to F;

SECTION #J4EPE3 SPAN

EXCERPT #WCTR8P p. 12
  (e) The functioning P which is the realization of F has temporal parts, (f) the phases P_1 to P_n (for example a beginning, a middle, and an end), which may be either fiat parts (a matter of our conventional demarcation) [27] or bona fide parts (demarcated by real physical discontinuities).

EXCERPT #PWEAM4 p. 12
  This bipartite formula can be applied iteratively as well as recursively. It can be applied iteratively to all the parts of a functional unit that belong to the same spatial-functional level, and it can be repeated recursively, as the element on level (b) is in the next cycle turned into the overarching whole on level (a). Examples are:

EXCERPT #SPXYGR p. 12
  (a) In the human body (W), (b) the circulatory system (E) is an element of W,

EXCERPT #KULQUQ p. 13
  (c) one function of E within W is, by means of its circulatory fluids (C 1 ), vessel system (C 2 ), and heart (C 3 ), (d) to F = to transport substances between bodily systems X, Y, Z ...; (e) this function (F) has in its functioning as temporal parts (f) either fiat parts of the continuous fluid flow or bona fide parts in relation to the substances transported; (a) In the circulatory system (B), (b) one function of the heart (C) is, (c) by means of its atria (D 1 ), ventricles (D 2 ), and valves (D 3 ), (d) to F = to pump blood (X) through the blood vessel system (Y); (e) this function (F) has in its functioning (P) as temporal parts (f) the diastolic phase (P 1 ) and the systolic phase (P 2 ).

SECTION #JHMTY4 3.8 The Body as Spatial-Functional Hierarchy

EXCERPT #L7X8QD p. 13
  We have now arrived at a picture of the body as a complex modular hierarchy that is at once spatial and functional. The heart, for example, is at once a part of the circulatory system and an element in that system. As a part, it is a mereological component of a physical structure visible exclusively in a SNAP ontology such as the FMA. As an element, it has a function that is realized in processes, and therefore it requires for its demarcation also reference to a SPAN ontology.

EXCERPT #XYK3M5 p. 13
  On the spatial-functional hierarchy here defended, the circulatory system is at the top level, the heart is located at the next level down, and its elements – ventricles, atria, valves, and so on – at the next level thereafter. Each of the latter bears a function in relation to the higher-level functioning of the heart. The circulatory system itself is an element of the human body taken as a whole.

EXCERPT #VK4RBV p. 13
  Now, of course, we run into a problem: what is the function of the human body, in relation to which the circulatory system and other bodily systems can be said to have constituent functions? [25] distinguish several possible types of functions the human body may be said to have: (a) a constituent function of some larger whole, say a species; (b) an objectively existing function, which is intrinsic to the human body; or (c) a functional purpose merely ascribed or imputed to the human body in the conventions of language-using subjects (along the lines proposed by Searle [22]).

EXCERPT #6HTJBQ p. 13
  Alternative (c) is inconsistent with our presupposition that the functions of bodily systems exist in objective reality. It would also ‘seem to license cultural relativity or even pure subjectivity to enter into science’ [25]. The life sciences themselves, on the other hand, often talk about functions intuitively as if they exist in objective reality. Neither (a) nor (b) contradicts the proposition that constituent functions exist objectively, and it is possible to hold either (a) or (b) consistently with an account of constituent functions as existing at a plurality of levels below the human body itself.

EXCERPT #B85H4T p. 13
  Even so, both (a) and (b) are problematic for their own reasons: (a) is problematic because it calls for an account of what the larger whole is within which the human body functions, and seems thereafter to threaten a vicious regress: where does the spatial-functional hierarchy stop as we move upwards to ever larger wholes? (b) is problematic because definitions of ‘intrinsic function’ thus far proposed (e.g., [28]) are highly problematic.

EXCERPT #LQSXBT p. 13
  Here, therefore, following Johansson et al. , we shall bracket the question of what kind of function (if any) the human body has, and concern ourselves only with the functioning of its elements.

EXCERPT #77LY9W p. 14
  We also take over from [25] the idea of a spatial-functional hierarchy, which, in contrast to the FMA, supports an assay of the body's anatomical structures in tandem with an assay of the corresponding functions. The spatial side of this hierarchy taxonomizes the body's anatomy according to a modular structure (i.e. in terms of what is element of what). The functional side of the hierarchy taxonomizes the body according to which functional processes cause, or enable, which other functional processes to occur. Fusing a spatial taxonomy with a functional taxonomy yields a spatial-functional hierarchy.

EXCERPT #FKCSCV p. 14
  The two sides match up, first of all because functions are dependent SNAP entities which depend for their existence on the independent SNAP entities which are their bearers, and secondly because their bearers have been selected (demarcated) precisely by taking account of the fact that they are bearers of corresponding functions. The body's complex anatomical structure allows for processes to occur, which means that the body is structured in such a way that the functions realized by the body can be ordered in a hierarchy parallel to its spatial-functional hierarchy of elements. Thus a cellular mitochondrion in a myocyte provides the chemical energy without which the myocyte cannot contract, and therefore contributes to the pumping of the heart. This is how physiology textbooks generally explain the relationship of the body's structure with the processes that that structure enables. We shall now attempt to express this relationship in formal terms.

DOCUMENT #3CCZ4A
Bodily Systems and the Spatial-Functional Structure of the Human Body

SECTION #YN2YMY 4. 'Element' Defined

EXCERPT #SBKKG4 p. 14
  With an ontology that can account for endurants and processes, with a theory of granular partitions, and with a hierarchy of constituent functions, we are now in a position where we can define the term 'element':

EXCERPT #XF3BHS p. 14
  X is an element of Y if and only if:

EXCERPT #H3LU46 p. 14
  (i) X and Y are parts of an organism; (ii) X is lower on the spatial-functional hierarchy than the organism as a whole, and lower than the system of which it is an element; (iii) X has one or more specific functions; (iv) X is causally relatively isolated from the parts of the organism that surround it; (v) X is maximal, in the sense that it is not a proper part of any item on the same level of the spatial-functional hierarchy satisfying conditions (i) to (iv).

EXCERPT #GLKS6D p. 14
  An element is an element (i) only in the context of an organism, and (ii) only in the context of a given system (which may be identical with the organism as a whole), within and in relation to which it has a constituent function. The body as a whole is not an element of any larger organic system. Thus only items that are proper parts of the body can be elements.

EXCERPT #FBLAA7 p. 14
  (iii) Functions in bodily systems are functions relative to some larger whole. The causal processes in which an element is involved are made possible by the structure of that element. [29] It is in virtue of this structure that the element has a function, namely to realize certain causal processes within the context of its overarching system. It should be noted that there is no reason to exclude an element's having more than one function, or of its having functions within the context of more than one system. The liver has, relative to the digestive system, the function: to produce bile. Relative to the circulatory system it has the function: to produce plasma enzymes that contribute to the clotting function of the blood. The liver is accordingly an element both of the circulatory and of the digestive systems.

EXCERPT #446F78 p. 15
  In the context of the digestive system, the blood's function is to transport nutrients and allow for nutrient and waste exchange at the cellular level, and to nourish the components of the digestive system; in the context of the respiratory system, its function is to transport gases and allow for gas exchange at the cellular level. Blood, therefore, like most elements, can be located simultaneously at different horizontal levels of the spatial-functional hierarchy, for it has different functions within the context of different systems, and blood is an element of each. More precisely, we might want to say that at any given time different potentially overlapping parts of the blood in the body are parceled out as elements of different systems. Which these parts are will then vary from one moment to the next.

EXCERPT #XW72DU p. 15
  According to our definition of element, only those entities which have constituent functions in the body are elements of the body. Thus a virus may take on a functional role in your body, directing the cell to construct certain proteins that the virus needs for reproduction. The virus is however not an element of your body – indeed it is not even a part of your body – because the directions given by the virus interfere with your body's functioning. [30]

EXCERPT #UPMNBV p. 15
  (iv) The body is articulated. The complex structure of bodily systems enables certain processes to take place in virtue of that fact that it involves elements which enjoy a relative causal isolation from other elements in the same and other systems. The relevant causal processes can occur only if other causal processes do not interfere. In other words, causal connections of the right sorts within and between elements require some degree of causal isolation from the processes of other elements.

EXCERPT #LBXQZS p. 15
  Each element is partially isolated from outside causal influences (for example by the presence of a porous membrane which allows only certain kinds of substances to encroach into its interior). This relative causal isolation is what allows systems or elements – including the whole organism – to be self-contained yet responsive to stimuli from the outside. Some elements depend for their functioning on spatial and causal association with elements of other systems. Even so, the body's modular organization, because it is constructed out of relatively isolated systems, allows the integrity of individual elements to be preserved at the same time as they engage in causal relationships with other elements.

EXCERPT #QA6J46 p. 15
  (v) Elements are maximal: this means that on any given level of the hierarchy an element is not a proper part of any element on the same level. A cell is an element; a half-cell is not. The bottom half of a lung does not have a separate function from the whole lung. It is the lung as a whole that is causally relatively isolated from the rest of the organs and fluids in the thorax. The lung's relative causal isolation is what enables it to exchange oxygen and carbon dioxide without disrupting or being disrupted by other processes in the body. It achieves this, however, only in conjunction with other elements whose functioning constitutes complementary phases of the relevant total causal process. Thus the lung cannot move air in and out of itself. To perform this function it needs to be associated with the plural sacs and the mechanisms of the thorax.

EXCERPT #W89SEU p. 15
  For an element to realize its function a type and a degree of causal isolation is required that is specific to each case. If this causal relative isolation is disturbed, the element will no longer be able to realize its function, and other elements in the body will be prevented from realizing theirs. A clogged artery signifies too much isolation between heart and peripheral tissues. A ruptured lung signifies too little isolation between the inside of the lung and the thorax.

EXCERPT #ZCKB2J p. 15
  Just as systems can be divided into elements, so functions can be divided into sub-functions (corresponding to the elements which perform them). Functions located at lower levels of the spatial-functional hierarchy interact in complex ways to enable functions at higher levels. For example, the function of a particular neuron (to provide a path for electric impulses), is realized in a composite process that consists of smaller interrelated processes, such as the exchange of potassium and sodium ions through the cellular membrane. One of the kidney's functions is to excrete urine. This function is realized by a composite process that consists of smaller interrelated processes that occur on lower levels of granularity: the excretion of urea and creatinine, absorption of necessary ions and excretion of redundant ions and water. So the realization of a function in a process often entails the realization of sub-functions in sub-processes.

DOCUMENT #3CCZ4A
Bodily Systems and the Spatial-Functional Structure of the Human Body

SECTION #EU2W22 5. Elements, Functions, and Criticality

EXCERPT #TMAWP3 p. 16
  The relation between elements and functions is complicated by the fact that there is not a perfect one-to-one correspondence between the two. This is because many elements in the human body have a multiplicity of functions, and also because the body's redundancy means that some functions can be performed by substitute elements.

EXCERPT #NHU39E p. 16
  The hierarchy of elements in the body, including its top-level bodily systems, are unified together within a single whole (the body) which is able to regulate its own state and structure. It is within the context of this whole that elements have the constituent functions that they have.

EXCERPT #VP8JWU p. 16
  We must now discuss the interconnections among the bodily systems in more detail. We have thus far pointed out that bodily systems and their elements are marked by a complex structure that enables causal connection and causal isolation of elements. We have also pointed out that elements have constituent functions relative to the larger system to which the elements belong, and that the largest system that is a whole in relation to these functions is the human body itself.

SECTION #986L3N 5.1 Evaluating Functionings

EXCERPT #XF4DB5 p. 16
  Medical science can demarcate one bodily system from another in terms of the way each contributes to the task of keeping the human body alive. It now becomes possible to evaluate the functioning of each particular type of system based on the success or failure of its contribution to this matter of survival.

EXCERPT #5BZ36Q p. 16
  The spatial-functional hierarchy gives us a means by which we can effect an evaluation of functionings. In a spatial-functional hierarchy built in reflection of constituent functions on successive levels, an element succeeds in performing its function when that performance contributes to the functioning of each overarching whole on each successive level, until we reach the processes relevant to the survival of the whole human body. The body's survival then becomes the benchmark for the evaluation of the functionings of its respective elements.

EXCERPT #5F2EED p. 16
  For example, all else being equal, a circulatory system with clogged arteries is less efficient, and therefore less successful, than a circulatory system with clear arteries. This is because the former contributes less well than does the latter to the survival of the body as a whole.

EXCERPT #RULJ7Z p. 16
  There are in the real world degrees of functioning, each of which can be understood in relation to one or more prototypical functionings. [15] points out that an element's functioning can be measured by a prototype in a similar way to that in which an object's weight can be measured by a scale. In order for a functioning to be successful, it need not match, but it must come close to (within the range of) this prototype. Thus a screwdriver can still realize its function even though its head is somewhat loose.

EXCERPT #W3TP5W p. 16
  There are many dimensions along which a functioning can be plotted in relation to its prototype. One dimension we are concerned with here is that of the success or failure of a given functioning to enable functionings at higher levels. Presumably there is an ideal, or prototypical, pumping of the heart that contributes optimally to the survival of the body as a whole. If the pumping of the heart is disabled by a myocardial infarction, then its functioning can move sufficiently far away from the prototypical functioning that it no longer succeeds in supplying the brain with oxygen. As we move away from the prototype, we can order actual pumpings, and actual transportings of blood by the arteries, according to the degree to which they contribute to the systems to which their elements belong.

EXCERPT #RLWYNG p. 17
  There are of course many gray areas along the continuum of functional processes where the distinction between functioning and malfunctioning blurs. A weakened myocardium may realize the same function as a healthy one, and yet the heart is still diagnosed as malfunctioning. But once a functioning crosses a particular threshold at a particular distance from the prototype, then the underlying element is no longer performing well enough to play its part in the functioning of the whole system, to a degree that, unless some other element can take over as substitute, its malfunctioning leads to death.

EXCERPT #ZZ8FKV p. 17
  The threshold for success of a given type of functioning – for example, the taking in of oxygen by the lungs – is relative both to the individual organism and to its specific environment at any given time. A bioinformatician sitting at a computer all day has a different threshold for successful oxygen intake than a manual laborer on a high-altitude farm in the Andes.

EXCERPT #P6K5WH p. 17
  The survival of the body as a whole can be used as an objective standard for evaluating functionings in the body. Prototype functionings are those possible functionings that are most conducive to enabling the functioning of the system one level up. As we will see, having this standard of evaluation brings us one step closer to uncovering the reasoning behind medical science's demarcation of the body into bodily systems.

SECTION #EJ245A 5.2 Critical Functions

EXCERPT #3AY95L p. 17
  We have just pointed out that functionings can be ordered according to their success or failure in contributing to the functioning of the overarching system to which they belong. A functioning is successful if it matches or comes close to the relevant prototype, and it fails the instant it crosses a threshold beyond which it no longer contributes sufficiently to the functioning of the higher-level system.

EXCERPT #8CDQLV p. 17
  It is also possible to order functions themselves. This can be done in different ways, but the way that concerns us here is an ordering of functions on the basis of the degree to which they are indispensable to the functioning of the relevant overarching whole. The heart's function (to pump blood) is for example more important for the survival of the body than is the function of one skin cell to guard the body against the invasion of foreign substances. Or, as we will say, the heart's function is more critical to the survival of the body than is the function of one skin cell. After we subject the notion of criticality to further analysis, we will see that it is this dimension for the evaluation of functions that yields the principle for the division of the body into its major systems.

EXCERPT #P7Z2W5 p. 17
  But first a note about the difference between a successful functioning , which is a SPAN entity, and a critical function , which is a SNAP entity. We have suggested a means of evaluating functionings qualitatively, based on their proximity to a prototype functioning. The latter exemplifies the ideal functioning of an element in relation to the ideal functioning of the system to which it belongs. Evaluating functionings means comparing one case of functioning, say your heart's beating, here and now, with the prototypical functioning of an ideal heart. Successful functionings are functionings sufficiently close to whatever is the relevant prototype.

EXCERPT #F6DY8R p. 17
  Ordering functions according to how critical they are to the body's survival, on the other hand, means comparing one type of function with another type of function, say the function of the heart with that of a skin cell. The terms of comparison are: how critical is a given type of function to the survival of the body as a living organism?

EXCERPT #2J4SPS p. 18
  It should be noted that we here use the notion of criticality in a somewhat expanded sense. In everyday speech, criticality refers to some highest degree of importance: a drought can approach criticality by becoming more and more severe. In physics a point of criticality is the point at which a nuclear reaction becomes self-sustaining. In medical science, criticality refers to the point at which the body can no longer survive: a disease is critical if it threatens the patient's life. Along similar lines, we understand a function to be critical if the body as a whole cannot survive without it. [29]

EXCERPT #RZJSG6 p. 18
  F is a critical function for organism Y if and only if:

EXCERPT #S58K33 p. 18
  (i) some element X of Y has F as its function; (ii) the survival of organism Y is causally dependent on the continued performing of F by X to the degree that if X loses the potential to realize F then Y will die.

EXCERPT #CPRART p. 18
  The function exercised by the digestive system is as critical to the survival of the body, in this sense, as is that of the immune system.

EXCERPT #GD7DEG p. 18
  An element's function can also be critical for the continued functioning of a system at levels below that of the whole organism. Our definition of critical function can be restated with the overarching system as context as follows [29]:

EXCERPT #BFA6YP p. 18
  F is a critical function for system Y if and only if:

EXCERPT #RJJB65 p. 18
  (i) some element X of Y has F as its function; (ii) the continued functioning of system Y is causally dependent on the continued performing of F by X.

EXCERPT #NG9DE5 p. 18
  Thus if a chloride channel in a mucous-producing gland has a certain kind of genetically inherited defect, then this can cause the gland to malfunction and produce an excessively thick fluid. If the gland is in the respiratory epithelium, where its function is to produce a thin slime to moisten the surface of the epithelium, then this can cause problems in respiration. If the gland is in the pancreas, it can cause the pancreatic fluid to be too viscous to leave the pancreas. In this case, the pancreas malfunctions and causes problems related to nutrition-intake. Thus it is possible for one low-level element to be critical for more than one system.

SECTION #P4AJMJ 5.3 Degrees of Criticality

EXCERPT #Y4WZMG p. 18
  Criticality can also admit of degrees. The function of the vocal cords is not critical to the survival of the body, and neither is the function of the thigh muscle. But the function of the thigh muscle is probably more critical , or in other words has a higher degree of criticality , than the function of the vocal cords. This is because, at least in the case of most organisms and most environments, it is harder for an organism to survive if it cannot run or walk than if it cannot utter sound.

EXCERPT #8M4AZT p. 18
  A system element has a low degree of criticality if the system can still achieve its function even if the element is set out of action. For example, the circulatory system still functions if some particular arterial branch is occluded by a thrombus in such a way that it no longer functions to supply certain regions with blood. For in practice, in some parts of the body (though not in others), the needed blood flow will be provided via collateral arteries. That means that this particular arterial vessel has a low degree of criticality to the circulatory system as a whole.

EXCERPT #XL5JKN p. 19
  All of the branches of the aorta taken together, on the other hand, have a high degree of criticality in relation to the circulatory system. If they are set out of action this does not mean that the system will stop functioning, but it does mean that it will be impaired to a much higher degree than in the case of the absence of a smaller branch, or in the absence of only one branch of the aorta. And in some cases branches of an aorta being set out of action can issue in the death of the organism.

EXCERPT #2HEC46 p. 19
  The criticality of a given function to the survival of a given individual is sometimes relative to the individual and to its environment. In this respect, an evaluation of functions according to their criticality is similar to an evaluation of functionings according to their success or failure. Note however that criticality of functions can only be relativized in certain limited cases. The function of the heart is always more critical than is the function of the thigh muscle.

EXCERPT #AYYF5H p. 19
  There are other respects in which an evaluation of functions according to criticality overlaps with an evaluation of functionings according to success or failure. There is not enough room here for a comprehensive account of this overlap. Suffice it to mention a few brief points. One is that an element with a critical function probably has a thinner margin within which its functioning can deteriorate from its prototype without ill effects for the organism as a whole, as compared to an element without a critical function. The liver, for example, must realize its function to remove waste much more successfully than the tonsils must realize their function to guard the oropharynx.

EXCERPT #4K6WBG p. 19
  Another point at which evaluation of the success of a functioning overlaps with evaluation of the criticality of a function is in certain abnormal circumstances. For example, the lungs and kidneys are both elements of systems responsible for the maintenance of the body's homeostasis. One function of the kidneys is to maintain ion and water balance, which they realize in part by excreting redundant ions in order to avoid acidosis (i.e. blood pH level becoming over-acidic). If the kidneys are unsuccessful in this performance, then the lungs take over: they can maintain the blood pH level, making it more alkaline by means of a more intensive gas exchange. But the lungs can substitute for the kidneys in this way only temporarily. The lungs, then, have one function that becomes critical only in the unusual circumstance of kidney failure.

SECTION #P8ECVR 5.4 Critical Functions and the Spatial-Functional Hierarchy

EXCERPT #8R4VKG p. 19
  Recall that the spatial-functional hierarchy is organized on the basis of two features of the body: its complex anatomical structure, and the functions that are realized through the processes that this structure allows for. Elements on lower levels are parts of elements on higher levels, and, correspondingly, their functioning contributes to the functioning of the elements on these higher levels.

EXCERPT #MM58SD p. 19
  The circulatory system exists one level down from the body as a whole. As such, its functioning (transporting nutrients, waste material, oxygen, and cells among bodily systems) contributes to the survival of the whole body. The heart is an element of the circulatory system one level down: it is both a part of the circulatory system, and it has a function that contributes to its function.

EXCERPT #K99UR3 p. 19
  We can now see that a correlation emerges between criticality and spatial-functional level. Elements with functions at higher spatial-functional levels are also more critical. In other words (and as a rule of thumb only) the fewer systems you have to count upward from a function before you reach the function of the body as a whole, the more critical the function is to the whole organism. For example, the brain exists on a high spatial-functional level: there is only one brain in the whole body, and it has a critical function. Each single neuron, on the other hand, exists on a low spatial-functional level and does not have a critical function because it stands in a relation of redundancy to other neurons.

EXCERPT #AUB79E p. 20
  This correlation between criticality and spatial-functional level casts light on the way in which redundancy factors into the spatial-functional hierarchy. Briefly, we can say that the lower the spatio-functional level, the fewer examples we find of criticality and the greater the redundancy of functionings. Thus the mutation of one single cell does not cause cancer in normal conditions (which means: where the immune system is functioning successfully). For this we need the presence of the same mutant gene in a multiplicity of cells within a single tissue.

EXCERPT #UF45LT p. 20
  It should further be noted that it is functions, not elements, that are critical. It might sound strange to say that it is your aorta's function that is critical to the functioning of your heart rather than the aorta itself. But consider what happens when your aorta is replaced by a prosthesis: the prosthesis then provides a substitute for the aorta in the context of your body.

EXCERPT #XFZ7SS p. 20
  Finally, elements may be paired with other elements. One of your two kidneys has a non-critical function in the body's normal state, but it becomes critical if the contralateral kidney is damaged or removed and nothing else performs its function. Your kidneys taken together, however, do have a critical function.

EXCERPT #FQ4V8B p. 20
  There are clearly many types of criticality. Is the heart more critical than the stomach because the body will die sooner in virtue of a malfunctioning of the heart? An expansion of this account can break down criticality into its different types. For now, however, since we have explored how the criticality of a function goes hand in hand with its placement on the spatial-functional hierarchy, we have what we need to explain the reasoning behind a division of the body into its major systems.

### 19. Tool result: read

DOCUMENT #CGE2NC
Against Fantology

SECTION #K8PYLN 3. The Secret Doctrine

EXCERPT #GYALXB p. 2
  Fantology is a doctrine that rarely dares to speak its name. (That fantology should be conceived as a secret doctrine is indeed one reading of the concluding sentence of Wittgenstein's Tractatus .) When Wittgenstein gives voice to the doctrine, it reads like this:

EXCERPT #8ZXZZJ p. 2
  Most of the propositions and questions of philosophers arise from our failure to understand the logic of our language. (4.003)

EXCERPT #4JQ7VJ p. 2
  Propositions show the logical form of reality. They display it. (4.121)

EXCERPT #FQ5MMF p. 2
  Thus one proposition 'fa' shows that the object a occurs in its sense, two propositions 'fa' and 'ga' show that the same object is mentioned in both of them. If two propositions contradict one another, then their structure shows it; the same is true if one of them follows from the other. And so on. (4.1211)

EXCERPT #UYULTA p. 2
  The propositions of logic describe the scaffolding of the world, or rather they represent it. They have no 'subject-matter'. They presuppose that names have meaning and elementary propositions sense; and that is their connection with the world. It is clear that something about the world must be indicated by the fact that certain combinations of symbols – whose essence involves the possession of a determinate character – are tautologies. This contains the decisive point. (6.124)

EXCERPT #EZ2GXW p. 2
  The exploration of logic means the exploration of everything that is subject to law. And outside logic everything is accidental. (6.3)

EXCERPT #4EF8RB p. 2
  Just as the only necessity that exists is logical necessity, so too the only impossibility that exists is logical impossibility. (6.375)

EXCERPT #E3SB7A p. 2
  Compare also Russell: 'Philosophy, if what has been said is correct, becomes indistinguishable from logic as that word has now come to be used.' (1917) And: ‘logic is concerned with the real world just as truly as zoology, though with its more abstract and general features.’ (1919).

EXCERPT #M2X2YA p. 2

DOCUMENT #CGE2NC
Against Fantology

SECTION #T3V2BX 7. First-Order Logic as Characteristica Universalis

EXCERPT #9RD65P p. 5
  The language of first-order logic – especially in the form it was given in Principia Mathematica – thus came to represent the rebirth of the old Leibnizian idea of a universal characteristic. But while Frege and Russell (and Whitehead) did indeed successfully demonstrate that this language may lay some claim to the power of a characteristic when it comes to the formulation of many of the propositions of mathematics, it is by now surely evident that it can lay no such claim in regard to other domains.

EXCERPT #4LZZVT p. 5

EXCERPT #YV8B7Q p. 6
  One reason why fantology works so well in mathematics is because mathematical entities do not exist in time and space (this is why mathematics is a domain in relation to which a Platonistic ontology has much to be said in its favor, and why mathematics is a domain in which it may even make sense to identify necessity with logical necessity and law with logical law). When philosophers have turned their methods to the necessary relations in other, non-mathematical domains, then fantological reductions have remained beyond their grasp. The logical positivists' expectation that it would be possible to demonstrate the logical nature of such necessary truths as 'Nothing can be red and green all over' were uniformly dashed. But this failure went largely unnoticed, to the degree that many continued to assume that the needed reductions had indeed been successfully obtained. The truths of casual necessity received a different treatment. So closely did some adhere themselves to the doctrine according to which all necessity is logical necessity that in order to save the good name of fantology they saw fit, when applying this doctrine to the realm of causality, to embrace the nuclear option of Humeanism. Causal relations would break the bounds of fantology. Hence, causal relations do not exist.

DOCUMENT #CGE2NC
Against Fantology

SECTION #QK6C6U 15. A Peculiar Insensitivity to Time

EXCERPT #Z3AL8C p. 11

EXCERPT #6664AF p. 12
  Because fantologists think it fitting to deal with predications about empirically existing objects in just the same way that they deal with predications about mathematical objects, this means that – because it is predications of the latter sort which wear the ontological trousers – they have developed no clear way of dealing with time. Fantologists such as Carnap were content to conceive the passage of time in terms of a sequence of static worlds, one for each time, in which all that is dynamic has been carefully eliminated.

EXCERPT #5VU9UZ p. 12
  The predicate logical ‘ Fa ’ had its origins, after all, in the work of Frege, who was concerned first of all with the truths of mathematics. And Frege’s logic does indeed work very well, in its way, for the formulation of many types of mathematical truths. When it comes to truths about things marked by change, however, then it needs to be extended by some sort of new machinery.

EXCERPT #45T4NZ p. 12
  The three alternative ways of doing this within a still recognizable predicate-logical framework are by now well known (see e.g. Lowe 2002a, p. 43f.). ‘ F holds of a at t ’ can be parsed in three ways:

EXCERPT #G5YCTA p. 12
  (1) the property F holds-at- t of object a (the copula is indexed by times); (2) the property F is a relation between object a and time t ; (3) the property F holds of a new special entity called ‘ a t ’ or ‘ a-at-t ’ (an object stage or phase or slice ).

EXCERPT #UKW25R p. 12
  That none of these alternatives for representing time has established itself as victor over the others turns on the fact that each involves a heavy price.

EXCERPT #TG3HD3 p. 12
  The first, which is sometimes called the adverbial solution, involves too great a departure from fantological orthodoxy – holding is no longer capable of being interpreted as functional application in the standard mathematical sense; rather it comes to signify something more like inherence or exemplification as conceived by Aristotelians. Indeed Lowe sees it as understandable why alternative (1) “should have been overlooked, at least by philosophers trained to think in terms of the categories of modern quantification or predicate logic, as it is called. For such logic simply has no place for adverbs.” (2002a, p. 47)

EXCERPT #Z8BE3Q p. 12
  The second seeks to simulate the temporal nature of holding by viewing each contingent property as a relation to a time. The problem here is that the result contravenes almost everything that we know about properties of almost all familiar kinds.

EXCERPT #R57XL4 p. 12
  The third represents, once again, a nuclear option. It amounts to sacrificing three-dimensional enduring entities for reasons which have to do (at least in part) with the desire to hold on to a trusted syntax. On this third option you yourself do not exist; rather there exists only a sequence of youish phases in continuous temporal succession. (For arguments against such views see Inwagen 2000.)

EXCERPT #DA87AB p. 12

EXCERPT #J56YW9 p. 13
  Nowadays, philosophers who wish to hold on to the framework of first-order logic in order to formulate their ontological views often advance one or other four-dimensionalist position which denies the existence of three-dimensional (endurant) objects but replaces them not by phases, or stages, but rather by four-dimensional (perdurant) processes. There is not Bill Clinton , but rather a certain process-of-a-Bill-Clintonizing-sort . This allows the four-dimensionalist to hold on to a timeless version of first-order logic without the need for special temporal variables or operators, since all the denizens of the four-dimensional process plenum have all their properties in timeless fashion. The problem with this view, again, is that it implies that you and I, our cells and organs, the buildings and cities in which we live, do not exist.

DOCUMENT #CGE2NC
Against Fantology

SECTION #63LUN3 16. Poor Treatment of Relations

EXCERPT #JJMCCN p. 13
  The doctrine according to which relations are sets of ordered tuples, while it falls outside the syntactic repertoire of fantology that is here our primary concern, is yet clearly part of the same stable of views and has similar consequences in the form of denials of ontological distinctions hitherto (and for good reasons) accepted as a matter of course.

EXCERPT #F4R2RA p. 13
  The tradition found it necessary to distinguish between several radically different types of relations. First there are real material relational endurants, like love or hate, and other relational qualities (for example Jonathan's knowledge of Greek), which, like endurant entities in general, change in different ways while preserving their identity through time. There are real material relational events , like wars and conversations, kicks and kisses, relational entities which call for a treatment along roughly Davidsonian lines, like events of every other sort. There are family relations, such as is consanguineous with or is the brother of , and there are comparatives such as is taller than or is warmer than .

EXCERPT #Q95W24 p. 13
  When binary relations are identified with sets of ordered pairs, then all of these putatively distinct types of relations become identified. What is the adicity of your headache (a relation between your consciousness and various processes taking place in an around your brain)? What is the adicity of the Battle of Waterloo? Does John's being in love with Mary or being the cousin of Mary, consist in his being, with Mary, a term in an ordered pair belonging to a certain abstract entity in the realm of sets? Which analysis, here, comes closer to reproducing the order of ontological primacy?

EXCERPT #TEK6JZ p. 13
  Of course it is possible in various ways to resist the identification of relations with sets of tuples in a predicate logical framework. One can insist that, while standard model theory typically employs such sets of tuples as assignments for relational predicates, this does not mean that such sets of tuples must be part of the intended interpretations of theories formulated in the predicate logical language.

EXCERPT #GFDM6L p. 13

EXCERPT #3T5WVY p. 14
  Note, too, that at least one relation – the relation of set-membership itself – must remain unamenable to an analysis in terms of the relations-are-sets-of-tuples view. This relation is, in David Lewis’s terms, a mystery. (Lewis 1991) From the perspective of many adherents of fantological semantics ( inter alia in the realm of computer science), we can understand a theory only when we have provided a set-theoretic semantics for that theory and proved consistency, completeness, etc. Clearly such a doctrine can provide no help in understanding set theory itself.

EXCERPT #629Q6A p. 14
  According to Russell’s History of Western Philosophy the introduction of the new style ‘ Rab ’ was seen as having initiated a revolution in the treatment of relations and as representing a genuine advance in our understanding which allowed its adherents to overcome the problems which had confronted earlier thinkers, such as Aristotle and the scholastics, who (as Russell says) had been led by their own subject-predicate logic to identify relations with monadic relational properties. The ‘ Rab ’ was seen as having freed us also from the errors of those, such as Spinoza or Leibniz or Bradley (or Hegel), whose failure to understand relations had led them to embrace monistic or monadological doctrines that were an offence to common sense. As we have seen, however, when applied to the different types of relations with which we are pre-theoretically familiar, the Rab account faces considerable difficulties of its own.

EXCERPT #Q9HSDV p. 14
  There are many other doctrines which have been found attractive by those who fall within the gravitational field of fantology. It is fantology which lent credence to Kim’s doctrine (1976), according to which an event consists in an individual’s exemplifying a property at a time, a doctrine which assimilates real change to Cambridge change. And indeed, with its reduction of relations to sets of ordered tuples, fantology is likewise ex officio not in a position to resist the assimilation of properties (such as hardness or shape) to Cambridge properties (such as being thought about).

DOCUMENT #CGE2NC
Against Fantology

SECTION #MW9JFA 18. No Room for Dependent Continuants

EXCERPT #7AYNAL p. 15
  Davidson, too, with his ontology of events, did much to break down fantological orthodoxy. His quantificational analysis of sentences about occurrents (actions, events) was an important step forward not least in the area where logic meets linguistics: it meant that those linguists who had thus far been too heavily influenced by fantology were finally able to deal coherently with verbs. As analytical metaphysicians have in recent years increasingly turned their attention to powers, qualities, roles, conditions, functions, dispositions, and so forth, they have thereby extended the Davidson-style analysis of occurrents into the realm of dependent continuants. Sadly it is still in too many quarters fashionable to talk indiscriminately of “tropes” in this connection (reflecting, once again, the fact that fantology encourages an indiscriminating representation of all entities not belonging to the category of independent object). Tropes are individualized properties – but properties as fantologically conceived, which means: properties conceived through the running together of all that is expressed by means of the ‘Fa’ and the ‘Rab’.

EXCERPT #WNCGCL p. 15

EXCERPT #D6BEJX p. 16
  For exactly as the classical fantologists made too few distinctions in the realm of properties, so their trope-ontologist successors make too few distinctions in the realm of dependent entities, not least in failing to distinguish clearly between dependent continuants such as qualities, powers, functions, roles, dispositions, and dependent occurrents such as actions and events (Grenon and Smith 2004). When we do make such distinctions, then we arrive at a more adequate ontology, which might be represented in the form of what we can call the Aristotelian Ontological Sextet, as follows:

EXCERPT #8MW8B5 p. 16
  Independent Continuant Dependent Continuant Occurrent (Process) Universal Second substance man cat ox Second quality headache sun-tan dread Second process copulation walking thinking Particular First substance this man this cat this ox First quality this headache this sun-tan this dread First process this copulation this walking this thinking

EXCERPT #3TSJ8M p. 16
  Figure 3: The Ontological Sextet

EXCERPT #2HSCQG p. 16
  This more adequate ontology goes beyond Aristotle in embracing, in addition to, individual and universal substances, also individual and universal qualities (as well as functions , dispositions , etc.), and both individual and universal processes . (See Figure 3.) Entities in these categories would be joined together by formal relations such as instantiation , exemplification and participation , as well as by the part relation (obtaining for example between the parts of a process and the process whole), and by the realization relation (obtaining between a function and the processes through which it is executed).

EXCERPT #C5L2ZX p. 16

DOCUMENT #CGE2NC
Against Fantology

SECTION #ZAUEPE 19. A New, Enhanced Davidsonism

EXCERPT #CX2YXN p. 17
  We can solve the problems of fantology in a number of ways. We can follow the route taken by Leśniewski or Sommers and replace fantological logic with a term logic owing more to the older logico-ontological tradition than to the post-Fregean logic of functional application. Or we can follow Wiggins in bringing the copula back into predicate logic, or Gupta (1980) in developing a logic of common nouns. Here, however, we concentrate on a still too little explored alternative, which involves a minimal adjustment to the standard syntax of first-order logic – but an adjustment which nonetheless protects us from its fantological influence – effectively by eliminating the ‘F’ in ‘Fa’ and by radically confining and reconceiving the range of substitution-instances of the ‘R’ in ‘Rab’.

EXCERPT #YAM8TJ p. 17
  We have already noted how, because of its roots in mathematics, Fregean logic yields from within its own resources no satisfactory way of dealing with time and change. Matters were improved in this respect through Davidson’s treatment of events, and the idea here is that the latter can be generalized in a radical way to solve the problems of fantology in one foul swoop.

EXCERPT #LXQV4L p. 17
  First we expand still further the repertoire of types of entities over which our variables range, in such a way that they embrace both particulars and universals in all the six categories distinguished in our Ontological Sextet (and conceivably also further groups of entities such as temporal instants or spatial regions not here considered). Second, we eliminate all predicates of the ‘F’ and ‘R’ style, replacing them with a small number of relational expressions, but confining ourselves to formal ties which, like ‘=’, come with fixed interpretations.

EXCERPT #RUTAX2 p. 17
  Relations of the sorts we have in mind are represented in Figure 4, as follows:

EXCERPT #3TTLCK p. 17
  graph TD SU[Substantial universal] QU[Quality universal] PU[Process universal] SP[Substantial particular] QP[Quality particular] PP[Process particular] SU -- "differentia of" --> QU SP -- "instantiates" --> SU QP -- "instantiates" --> QU PP -- "instantiates" --> PU SP -- "exemplifies" --> QU SP -- "has participant" --> PP QP -- "inheres in" --> SP Figure 4: Relations connecting the six different types of entities in the Ontological Sextet. The diagram shows six nodes arranged in a 2x3 grid. The top row contains 'Substantial universal', 'Quality universal', and 'Process universal'. The bottom row contains 'Substantial particular', 'Quality particular', and 'Process particular'. Arrows connect the nodes with labels: 'differentia of' (top row, left to right), 'instantiates' (vertical arrows from each particular to its universal), 'exemplifies' (diagonal arrow from Substantial particular to Quality universal), 'has participant' (horizontal arrow from Substantial particular to Process particular), and 'inheres in' (bottom row, right to left).

EXCERPT #WC33RR p. 17
  Figure 4. Relations connecting the six different types of entities in the Ontological Sextet

EXCERPT #XRYNEW p. 17

EXCERPT #GSRT4P p. 18
  Our restricted vocabulary for predicate logic might then contain a list of predicates along the following lines:

EXCERPT #WRVKYL p. 18
  =(x, y) , for: x is identical to y \text{Part}(x, y) , for: individual x is part of individual y \text{Inst}(x, y) , for: individual x instantiates universal y \text{Inhere}(x, y) , for: individual x inheres in individual y \text{Exemp}(x, y) , for: individual x exemplifies property y \text{Dep}(x, y) , for: individual x depends for its existence on individual y \text{Is\_a}(x, y) , for: universal x is a subkind of universal y \text{Precedes}(x, y) , for: individual process x precedes individual process y \text{Has\_Participant}(x, y) , for: individual thing y participates in individual occurrent x \text{Has\_Agent}(x, y) , for: individual thing y is agent of individual occurrent x \text{Realizes}(x, y) , for: individual process x realizes individual function y

EXCERPT #MJWNMR p. 18
  ‘John is wise’, in this vocabulary, becomes: \text{Exemp}(\text{John}, \text{wisdom}) – ‘wisdom’ here is the name of a universal. ‘John is a man’ becomes: \text{Inst}(\text{John}, \text{man}) . ‘Man is a subtype of animal’ becomes: \text{Isa}(\text{man}, \text{animal}) , and so on. The vocabulary allows us also to formulate a range of axioms governing the formal behavior of the relations thereby distinguished, for example:

EXCERPT #CEVAQB p. 18
  \text{Realizes}(x, y) \rightarrow \exists z (\text{Dep}(x, y) \wedge \text{Dep}(y, z)) \text{Exempt}(x, y) \rightarrow \exists z (\text{Inst}(z, y) \wedge \text{Inhere}(z, x))

EXCERPT #W89VQK p. 18
  The result is comparable to the vocabulary of set theory in the sense that there, too, we have a restricted number (two) of relational predicates: = and \in , both of which are formal, governed by a restricted number of axioms. But while the language we are proposing has a vocabulary structurally very similar to that of set theory, it differs radically in that the formal tie of set-theoretic membership itself emanates from the fantological stable (and thus represents a brutal gliding over of the distinction between logical and ontological form).

DOCUMENT #CGE2NC
Against Fantology

SECTION #CCHP6D 20. Predicates Do Not Represent

EXCERPT #ALZYD4 p. 18
  Our fundamental idea is that predicates (the standard predicates of first-order logic fantologically conceived) do not represent. Even the formal predicates which we allow in our vocabulary do not stand for anything. (They are to this degree analogous to the logical constants as conceived by Wittgenstein.) Rather they are what link together variable and constant terms which are those parts of the syntax which do stand for something. The logical constants do not represent, and nor, either, do the ontological constants.

EXCERPT #4UD577 p. 18

EXCERPT #TZS3JA p. 19
  Formal ties such as instantiates, part-of, connected-to, boundary-of are for familiar Bradleyan reasons not extra ingredients of being. For if they were entities in their own right then there would arise for them, too, the question: what connects them to their bearers?

EXCERPT #8EGEZG p. 19
  The relevant mistake of fantology here lies in the assumption that the ‘F’ in ‘Fa’ stands for something, something that would somehow span the border between what is general in reality (universals, properties, essences) and what is logico-linguistic in the realm of meanings (concepts, propositions). It is from this fateful mistake, introduced into philosophy by Frege (through Plato, too, must bear some part of the blame), that Booleanism stems. Boolean operators such as ‘and’ and ‘or’ connect what is logico-linguistic in nature, they do not connect the kinds and universals in reality.

EXCERPT #V5457K p. 19
  Our approach avoids Booleanism, since we deal with universals, with what is general, via names and not via predicates, and names cannot be joined together ad libitum via logical operators. Our approach allows us at the same time to simulate some of the advantages of second-order logic – above all in that we can quantify over universals – without the disadvantage in the form of the paradoxes which second-order logic is sometimes held to bring in its wake. Our use of names for universals implies also that our framework lends no support to the temptations of nominalism. We are protected from the consequences of fantology above all, however, because our procedure keeps the logical and ontological parts of our language rigorously separate.

EXCERPT #6BUB8K p. 19
  Our selected formal ties indeed derive squarely from ontology, and logic gives us no clue as to what these formal ties should be. To establish the appropriate list requires extralogical work (Smith et al. , 2005), just as it requires extralogical work to find out what the universals and particulars in reality are.

### 20. Tool result: read

DOCUMENT #GANFP9
A Fundamental Duality in the Mathematical and Natural Sciences: From Logic to Biology

SECTION #MEVK4Z 1 Introduction: A Fundamental Duality in the Sciences

EXCERPT #6DLR5K p. 2
  There is a fundamental duality that runs through the sciences such as logic, mathematics (particularly category theory), probability and information theory, physics, and the life sciences. Historically only one side of duality has really been developed so the new results are on the development of the little-noticed dual side.

EXCERPT #BR5PAY p. 2
  In logic, the highly developed side is based on the Boolean logic of subsets (often presented in the special case of propositional logic). The duality is well-developed in category theory where the dual to the concept of a subset, subobject, or ‘part’ is the notion of a quotient set, a quotient object, or a partition (or, equivalently, an equivalence relation). “The dual notion (obtained by reversing the arrows) of ‘part’ is the notion of partition.” [1] (p. 85) so ordinary Boolean algebra is “the Algebra of Parts” [1] (p. 193). Hence the most basic appearance of the other side of the duality at the logical level is the new logic of partitions ([2], [3], [4]).

EXCERPT #3PDWZY p. 2
  The duality between subsets and partitions can also be expressed, in a more elementary or granular form, as the duality between the elements or ‘ Its ’ of a subset and the distinctions or ‘ Dits ’ of a partition—where a distinction of a partition is an ordered pairs of elements from the underlying set that are in different blocks of the partition (or different equivalence classes of the equivalence relation).

EXCERPT #BHP4BV p. 2
  • On the elements- or Its-side of the duality, the relevant question is existence

EXCERPT #KC9XTK p. 2

EXCERPT #6EG53D p. 3
  versus nonexistence, e.g., an element is either in a subset or in the complementary subset.

EXCERPT #FU3L68 p. 3
  • On the distinctions- or Dits-side of the duality, the relevant question is distinction or indistinction, e.g., an ordered pair of elements is either a distinction or indistinction of a partition, or, in cognate terms, an inequivalence or equivalence of an equivalence relation.

EXCERPT #GXL2U2 p. 3
  That is where the fundamental duality starts. The paper presents the subsets & partitions duality as it runs through the mathematical and natural sciences, from logic to biology.

EXCERPT #CS5KSM p. 3
  • The most basic form of the duality is in logic, the two logics of the dual notions of subsets and partitions. • Category theory highlights the dual sub-object/quotient-object architecture that runs throughout mathematics so we develop the basic ideas in the category of Sets . In more general terms, category theory develops the duality as the “reverse the arrows” duality. The new result is showing how origin of the reverse-the-arrows duality arises in the category of Sets by the interchange of “elements” and “distinctions” in the definition of a morphism in Sets . • The next step is the quantitative versions of subsets and partitions which are probability theory in the case of subsets and logical information theory (using the notion of logical entropy) in the case of partitions. The formula for logical entropy goes back to the early twentieth century (Corrado Gini) but the development of logical information theory as the quantitative version of partitions is relatively new ([5], [6]; [7]). • Then we turn to classical physics juxtaposed to quantum mechanics (QM) where the thesis is that the mathematics (not the physics) of QM is the Hilbert space version of the mathematics of partitions. That is a new approach to understanding the conceptual origin of the distinctive math of

EXCERPT #KYDVUP p. 3

EXCERPT #28ZLGZ p. 4
  QM, i.e., states as vectors in a vector space over \mathbb{C} (which implies the superposition principle) and observables as certain linear operators on the space [8].

EXCERPT #QUR537 p. 4
  • Finally we extend the duality to the life sciences where it takes the form of the duality between a selectionist mechanism and a generative mechanism. The under-developed notion here is the notion of a generative mechanism where the operative notion of making distinctions is implementing a code or symmetry-breaking [9]. The examples of generative mechanisms are not new; what is new is showing how that type of mechanism is the dual of the well-known selectionist mechanism.

EXCERPT #JAS9EB p. 4
  In short, it was the new developments on the partitions side of the duality that brought the overall duality into view. That duality is the topic of this paper where those new developments on the partition side can only be sketched.

DOCUMENT #GANFP9
A Fundamental Duality in the Mathematical and Natural Sciences: From Logic to Biology

SECTION #ZJN679 2 Methods: The Dual Logics of Subsets and Partitions

EXCERPT #ZN3ZMS p. 4
  While the dual notions of subsets and partitions (or equivalence relations) are equally fundamental mathematically, the historical development of the two notions has been very uneven.

EXCERPT #JRMGF9 p. 4
  Equivalence relations are so ubiquitous in everyday life that we often forget about their proactive existence. Much is still unknown about equivalence relations. Were this situation remedied, the theory of equivalence relations could initiate a chain reaction generating new insights and discoveries in many fields dependent upon it.[10] (p. 445)

EXCERPT #L8Y58X p. 4
  For instance, the notions of join and meet for partitions was known in the nineteenth century (Dedekind and Schröder), but the notion of implication for partitions was only defined in the twenty-first century [2]. That is, no new operations on partitions were defined throughout the twentieth century. As noted in

EXCERPT #9X59BJ p. 4

EXCERPT #9WDEGE p. 5
  2001, “the only operations on the family of equivalence relations fully studied, understood and deployed are the binary join \vee and meet \wedge operations” [10] (p. 445). Incidentally, it might be noted that much of the historical literature [11] about the “lattice of partitions” is really about the opposite lattice of equivalence relations where the partial order is inclusion between equivalence relations which is the “reverse refinement” [12] (p. 30) relation between partitions, so the join and meet are interchanged. In any case, part of the retarded development of the mathematics of partitions may be due to the notion of a partition is more complex than the dual notion of a subset. But it may also be due to the Boolean logic of subsets being almost universally treated in only the special case of the logic of propositions. Since propositions have no dual, the whole idea of a dual logic of partitions was not “in the air.”

EXCERPT #TR7MWQ p. 5
  We will work with a finite universe set U = \{u_1, \dots, u_n\} , more for convenience than generality. There is a partial order on the set of all subsets, the powerset \wp(U) , which is just the inclusion of elements of the subsets. That is, for S, T \in \wp(U) , S \subseteq T if all the elements of S are elements of T . Note that when S \subseteq T , then there is a canonical injective set function S \hookrightarrow T . The join or least upper bound of subsets S and T is their union S \cup T . The meet or greatest lower bound of subsets S and T is their intersection S \cap T . The lattice of subsets \wp(U) is the set of all the subsets with join and meet operations. The lattice also has a top or maximal subset of all elements U and a bottom or minimal subset of no elements \emptyset (the empty set). There is also a conditional or implication operation on subset S \Rightarrow T (or S \supset T ) which is such that: S \Rightarrow T = U iff (if and only if) S \subseteq T , i.e., the implication equals the top iff the partial order holds between the two lattice elements. The subset S \Rightarrow T = S^c \cup T has that property (where S^c = U - S is the complement of S in U ). The Boolean lattice structure of the joins and meets enriched by the subset implication or conditional operation makes \wp(U) into a Boolean algebra.

EXCERPT #3AJ2XX p. 5
  A partition \pi on U is a set of non-empty blocks \pi = \{B_1, \dots, B_m\} such that the blocks are disjoint and their union is all of U . The corresponding equivalence relation is \text{indit}(\pi) = \bigcup_{j=1}^m B_j \times B_j \subseteq U \times U is the set of ordered pairs of elements that are in the same block of the partition which are called the indistinctions of \pi . A distinction of \pi is an ordered pair of elements in different blocks and the set of all distinctions is \text{dit}(\pi) = U \times U - \text{indit}(\pi) . The set of all partitions on U is denoted \Pi(U) and the partial order on it is defined by refinement, i.e., for another partition \sigma = \{C_1, \dots, C_{m'}\} , the partition \sigma is refined by \pi , written \sigma \preceq \pi , if for every block B_j \in \pi , there is a block C_{j'} \in \sigma such that B_j \subseteq C_{j'} . Note that when \sigma \preceq \pi , then there is a canonical surjective set function \pi \rightarrow \sigma taking each block B_j \in \pi to the block C_{j'} that it is contained in. In terms of distinctions, refinement is equivalent to inclusion of ditsets, i.e., \sigma \preceq \pi iff \text{dit}(\sigma) \subseteq \text{dit}(\pi) .

EXCERPT #6MJSNQ p. 5

EXCERPT #YUEKZJ p. 6
  In the refinement partial order, the join \pi \vee \sigma is the partition whose blocks are all the nonempty intersections B_j \cap C_{j'} for j = 1, \dots, m and j' = 1, \dots, m' . The ditset of the join is just the union of the ditsets, i.e., \text{dit}(\pi \vee \sigma) = \text{dit}(\pi) \cup \text{dit}(\sigma) . To form the meet \pi \wedge \sigma , take the intersection of all equivalence relations E \subseteq U \times U such that \text{indit}(\pi), \text{indit}(\sigma) \subseteq E . The intersection of equivalence relations is always an equivalence relation, and the meet \pi \wedge \sigma is the partition whose blocks are the equivalence classes of the intersection of those equivalence relations. The ditset of the meet \pi \wedge \sigma is the largest ditset contained in the ditsets of \pi and \sigma . The join and meet operations turn \Pi(U) into the lattice of partitions on U —which was known in the nineteenth century (e.g., Richard Dedekind and Ernst Schröder). The lattice of partitions has a top which is the discrete partition \mathbf{1}_U = \{\{u_1\}, \dots, \{u_n\}\} where all the blocks are singletons. The bottom is the indiscrete partition \mathbf{0}_U = \{U\} with only one block U . There is an implication \sigma \Rightarrow \pi which is such that: \sigma \Rightarrow \pi = \mathbf{1}_U iff \sigma \preceq \pi . The partition \sigma \Rightarrow \pi which has that property is like \pi except that for any B_j \in \pi , if there is a C_{j'} \in \sigma such that B_j \subseteq C_{j'} , then the block B_j is discretized, i.e., replaced by singletons of all the elements of B_j . Thus \sigma \Rightarrow \pi is an indicator or characteristic function for refinement in the sense that if there is a C_{j'} such that B_j \subseteq C_{j'} , then B_j is replaced by its discrete version \mathbf{1}_{B_j} , and otherwise B_j remains in its indiscrete version \mathbf{0}_{B_j} . That is why it satisfies the property: \sigma \Rightarrow \pi = \mathbf{1}_U iff \sigma \preceq \pi . The partition lattice structure of joins and meets enriched with the partition implication operation makes \Pi(U) in an algebra of partitions.

EXCERPT #E6KNTZ p. 6
  The Boolean algebra of subsets and the algebra of partitions have been developed in a way to emphasize the underlying duality of elements of a subset and distinctions of a partition, i.e., its and dits. The canonical injections and surjections defined just by the dual logical partial orders are the “ur-morphisms” that define the ‘canonical’ morphisms in the universal constructions in the category of

EXCERPT #BD29BQ p. 6

EXCERPT #GXN4C9 p. 7
  Sets . Table 1 summarizes that parallelism of the duality.

EXCERPT #AQ5TZT p. 7
  Its & Dits Algebra of subsets \wp(U) Algebra of partitions \Pi(U) Its or Dits Elements of subsets Distinctions of partitions Partial order Inclusion of subsets S \subseteq T Inclusion of ditsets \text{dit}(\sigma) \subseteq \text{dit}(\pi) Can. maps Injection S \hookrightarrow T Surjection \pi \twoheadrightarrow \sigma Join Union of subsets Union of ditsets Meet Subset of common elements Ditset of common dits Top Subset U with all elements Partition \mathbf{1}_U with all distinctions Bottom Subset \emptyset with no elements Partition \mathbf{0}_U with no distinctions Implication S \Rightarrow T = U iff S \subseteq T \sigma \Rightarrow \pi = \mathbf{1}_U iff \sigma \preceq \pi

EXCERPT #HRK2K4 p. 7
  Table 1: Elements-and-distinctions (Its & Dits) duality between the two logical algebras

DOCUMENT #GANFP9
A Fundamental Duality in the Mathematical and Natural Sciences: From Logic to Biology

SECTION #UXVXWD 3.7 Selectionist and Generative Mechanisms in the Life Sciences

SECTION #KZZHDH 3.7.1 Introduction: The Basic Ideas

EXCERPT #SCAG4B p. 31
  The elements-and-distinctions or Its & Dits duality leads in the life sciences to two types of mechanisms, the well-known selectionist mechanism and the ‘dual’ mechanism that will be called the “generative mechanism.”

EXCERPT #AWDD65 p. 31
  The selectionist mechanism , abstractly described, is a process that constantly whittles down sets of actual entities or elements, e.g., the set of random variations of a type of organism, to subsets that are selected according to some fitness criterion.

EXCERPT #NXHNQ9 p. 31
  In contrast, a generative mechanism operates on some relatively undifferentiated entity (a root or stem) containing a number of potential outcomes so that making distinctions will generate a variety of different possible outcomes. The making of distinctions can be conceptualized as the implementation of a code or as symmetry-breaking.

EXCERPT #MWZTF7 p. 31
  The question of existence or non-existence on one side of the duality is dual to the question of distinction or indistinction on the other side.

EXCERPT #WZV28X p. 31
  The following Figure 4 abstractly illustrates the different mechanisms:

EXCERPT #LCZB34 p. 31
  • the selectionist mechanism of starting with a set of actual distinct entities and reducing it by selections (according to some fitness criteria) to a smaller or even singleton subset, versus • the generative mechanism of starting with a relatively undifferentiated entity (analogous to a superposition state) that embodies various possibilities or potentialities which then can be generated by repeated distinctions (or symmetry-breakings) to in-form a more definite specific outcome.

EXCERPT #XD5GC9 p. 31
  Since the selectionist type of mechanism is already well known and much promoted ([40]; [41]), we will focus mostly on developing the relevant concepts to describe generative mechanisms.

EXCERPT #VC3MZH p. 31

EXCERPT #DPSCG6 p. 32
  Subset lattice: Arrow is selectionist mechanism Partition lattice: Arrow is generative mechanism Figure 4: Abstract description of the two dual mechanisms using the two dual lattices. The diagram shows two lattices. The left lattice, labeled 'Subset lattice', has nodes: ∅ at the bottom, {a}, {b}, {c} in the middle, {a,b}, {a,c}, {b,c} in the next level, and {a,b,c} at the top. An orange arrow points from ∅ to {a,b,c}. The right lattice, labeled 'Partition lattice', has nodes: {{a,b,c}} at the bottom, {{a,b},{c}}, {{a},{b,c}}, {{b},{a,c}} in the middle, and {{a},{b},{c}} at the top. An orange arrow points from {{a,b,c}} to {{a},{b},{c}}.

EXCERPT #P4G97D p. 32
  Figure 4: Abstract description of the two dual mechanisms using the two dual lattices

SECTION #R53RQ8 3.7.2 Partitions and Codes

EXCERPT #9F8BYJ p. 32
  We live in an ‘Information Age’ so we begin by showing how the machinery of information coding embodies generative mechanisms. Mathematically, a partition on a set represents one way to differentiate the elements of the set into different blocks. The join with another partition generates a partition with more refined (smaller) blocks that makes all the distinctions of the partitions in the join. Starting from a single block consisting of the set of all possibilities like the unbranched root of the tree (symbolized by the indiscrete partition \mathbf{0}_U ), a sequence of partitions joined together differentiates all the elements of the set ultimately into singleton blocks (i.e., \mathbf{1}_U ) that are the leaves of the tree. All the (instantaneous) codes of coding theory can be generated in this way and then the codes are implemented in practice to traverse the tree to generate the coded outcomes (e.g., messages).

EXCERPT #6D5CY9 p. 32
  With consecutive joins of partitions (always on the same universe set), the blocks get smaller and smaller until they reach the discrete partition \mathbf{1}_U (like in a CSCA or CSCO) with the smallest non-empty blocks being the singletons of elements of U . The least refined partition is the indiscrete partition \mathbf{0}_U = \{U\} whose only block is all of U and it represents the root (or stem as in stem cell) of the tree.

EXCERPT #JV57WN p. 32
  The tree that would illustrate the consecutive joins in Table 5 where U =

EXCERPT #WY5ZCK p. 32

EXCERPT #YYFHJU p. 33
  \{a, b, c\} consists of three leaves or messages. Since the code is binary, all the partitions to be joined are binary with the first block on the left labeled with the code letter 0 and the other block is labeled 1 as in \{\overset{0}{\{a\}}, \overset{1}{\{b, c\}}\} , i.e., it is like a numerical attribute on U taking values in the set of code letters with the code letter assigned to a block being the value of the attribute on those elements of U . When a message first appears in the Consecutive Joins column as a singleton, then its history of 0's and 1's in the second column gives its code.

EXCERPT #C5ER2N p. 33
  Partitions to be Joined Consecutive Joins (tree) Codes 1 \{\{a\}, \{b, c\}\} \{\{a\}, \{b, c\}\} 0 = (code for) a 2 \{\{a, b\}, \{c\}\} \{\{a\}, \{b\}, \{c\}\} 10 = b , 11 = c

EXCERPT #JE5RAL p. 33
  Table 5: Instantaneous codes for U = \{a, b, c\} generated by consecutive joins

EXCERPT #SJ5PTX p. 33
  In Figure 5, the partition joins are indicated and the trajectory from the complete ‘superposition’ state \mathbf{0}_U at the root of the tree to the messages is given in the (upside down) tree diagram with the rows of Table 5 indicated.

EXCERPT #XCTNWV p. 33
  Figure 5: A binary tree diagram representing the code tree for U = {a, b, c}. The root node is labeled 'Root' and has two branches: '0' leading to a node labeled '0 = a' and '1' leading to a node labeled '10 = b'. The '10 = b' node has two branches: '0' leading to a node labeled '10 = b' and '1' leading to a node labeled '11 = c'. To the right of the tree, there are three black squares representing switches. The first switch is labeled '0' and has a blue arrow pointing to it from the '0' branch of the root. The second switch is labeled 'Neutral: Superposition of 0 and 1' and has a blue arrow pointing to it from the '1' branch of the root. The third switch is labeled '1' and has a blue arrow pointing to it from the '1' branch of the '10 = b' node.

EXCERPT #3Z8ZCY p. 33
  Figure 5: The code tree with switches to represent reduction of indefinite states to more definite states

EXCERPT #HMTFXV p. 33
  At each junction in the tree, there is pictured a switch which (to borrow the language from QM) reduces the superposition state to one of the two more definite outcomes. That is, the first switch at the root \mathbf{0}_U = \{\{a, b, c\}\} reduces it to one of the more definite states in \{\{a\}, \{b, c\}\} and then the second switch reduces the superposition \{b, c\} to \{b\} or \{c\} . The final result is the fully definite states of \mathbf{1}_U , i.e., the leaves in the code tree.

EXCERPT #KZP2K8 p. 33
  For a more complex example, consider the five messages in U = \{u_1, \dots, u_5\} . To generate a binary code for the five outcomes we consider the repeated joins of binary partitions in Table 6. Think of the block on the left as representing the code letter 0 and the block on the right as representing the code letter 1. In the repeated joins of binary partitions, the blocks get smaller and smaller until a singleton block is reached for each message—as we saw before in CSCAs and CSCOs. When a message first appears as a singleton (i.e., fully differentiated outcome) in the Consecutive Joins column representing the sequence of more and more refined partitions, then the sequence of 0-blocks or 1-blocks in the Partitions column containing that specific outcome give the code for that outcome or message [42] (p. 56).

EXCERPT #NX36FP p. 33

EXCERPT #6289VD p. 34
  Partitions to be joined Consecutive Joins (tree) Codes 1 \{\{u_1\}, \{u_2, u_3, u_4, u_5\}\} \{\{u_1\}, \{u_2, u_3, u_4, u_5\}\} 0 = (\text{code for}) u_1 2 \{\{u_1, u_2, u_3\}, \{u_4, u_5\}\} \{\{u_1\}, \{u_2, u_3\}, \{u_4, u_5\}\} 3 \{\{u_1, u_2, u_3, u_4\}, \{u_5\}\} \{\{u_1\}, \{u_2, u_3\}, \{u_4\}, \{u_5\}\} 110 = u_4, 111 = u_5 4 \{\{u_1, u_2, u_4\}, \{u_3, u_5\}\} \{\{u_1\}, \{u_2\}, \{u_3\}, \{u_4\}, \{u_5\}\} 1000 = u_2, 1001 = u_3

EXCERPT #RW388E p. 34
  Table 6: Instantaneous codes generated by consecutive partition joins.

EXCERPT #Z3YLF7 p. 34
  For instance, the u_1 message first appears as a singleton in the first row where it was in the 0-block so its code word is just 0. No singletons appear in the second join (second row) so there are no two-letter code words in the developing code. Then in the third join (row 3) both u_4 and u_5 first appear as singletons in the Consecutive Joins column so their history of 0-blocks and 1-blocks (starting in row 1 Partitions column) give their codes of 110 = u_4 and 111 = u_5 . Finally u_2 and u_3 appear in singletons in the final join (row 4) where all outcomes are singletons in 1_U , and their history of 0-blocks and 1-blocks gives their codes of 1000 = u_2 and 1001 = u_3 . The history of each outcome or message to its singleton cannot be repeated for any other message (since singletons cannot further differentiate) so this procedure always generates what is called an instantaneous code where no code word can be the prefix of another code word [5] (pp. 62-64).

EXCERPT #4MR2Q6 p. 34
  Figure 6 gives the ‘progress’ of an outcome starting with its undifferentiated form in the root of the ‘upside down’ tree (the indiscrete partition) and then traced out as each outcome or message code is implemented to finally yield the fully distinguished outcome, i.e., its singleton block in the Consecutive Joins column of Table 6.

EXCERPT #WUQRFY p. 34

EXCERPT #GLMEZ6 p. 35
  A binary tree diagram representing a code tree. The root is labeled 'Root of the tree'. The tree branches into two paths: '0' and '1'. The '0' path leads to a node labeled '0 = u_1'. The '1' path leads to a node labeled '1'. This pattern continues for four rows. Row 1: Root branches to 0 and 1. Row 2: 0 branches to 0 and 1; 1 branches to 0 and 1. Row 3: 0 branches to 0 and 1; 1 branches to 0 and 1. Row 4: 0 branches to 0 and 1; 1 branches to 0 and 1. The final nodes are labeled: 1000 = u_2, 1001 = u_3, 110 = u_4, and 111 = u_5. Blue arrows point to the nodes labeled 0, 1, 0, 1, 0, 1, 0, 1 in the four rows. Black squares are placed on the branches leading to the nodes labeled 0, 1, 0, 1, 0, 1, 0, 1 in the four rows.

EXCERPT #NKBYJ5 p. 35
  Figure 6: Code tree corresponding to Table 6

SECTION #3H794M 3.7.3 The genetic code

EXCERPT #LNNR7Q p. 35
  The most famous code is, of course, the genetic code which is instantaneous so it can be generated by a sequence of partition joins. In this case, each partition has four blocks corresponding to the four code letters U, C, A, and G in the code alphabet. For the partitions in Figure 7, which correspond to the partitions in the Partitions column like in Table 6, the consecutive joins give all 64 singletons after three branchings or joins so the amino acids have 3-letter code words. Empirically, the code is redundant since there can be several codes for the same acid.

EXCERPT #6KBCXN p. 35
  The circles in Figure 7 trace out the code for Thr4 (one of the code words for Thr, Threonine) which is ACG = Thr4. Note that the order of the partitions counts in the consecutive-joins determination of the genetic codes. A different ordering gives a different code which may not describe the operation of the DNA-RNA machinery to produce a certain amino acid from a given code word.

EXCERPT #7UKEQ3 p. 35
  In terms of a tree diagram as in Figure 8, the tree would branch four ways at each branching point and there are three levels, so there are 4^3 = 64 leaves in the tree.

EXCERPT #9ZSL5E p. 35

EXCERPT #G49ZED p. 36
  U C A G 1 st Letter Partition Phe1 Ser1 Tyr1 Cys1 Pho2 Ser2 Tyr2 Cys2 Leu1 Ser3 Stop1 Stop3 Leu2 Ser4 Stop2 Trp Leu3 Pro1 His1 Arg1 Leu4 Pro2 His2 Arg2 Leu5 Pro3 Gln1 Arg3 Leu6 Pro4 Gln2 Arg4 Ile1 Thr1 Asn1 Ser5 Ile2 Thr2 Asn2 Ser6 Ile3 Thr3 Lys1 Arg5 Met Thr4 Lys2 Arg6 Val1 Ala1 Asp1 Gly1 Val2 Ala2 Asp2 Gly2 Val3 Ala3 Glu1 Gly3 Val4 Ala4 Glu2 Gly4 2 nd Letter Partition Phe1 Leu3 Ile1 Val1 Pho2 Leu4 Ile2 Val2 Leu1 Leu5 Ile3 Val3 Leu2 Leu6 Met Val4 Ser1 Pro1 Thr1 Ala1 Ser2 Pro2 Thr2 Ala2 Ser3 Pro3 Thr3 Ala3 Ser4 Pro4 Thr4 Ala4 Tyr1 His1 Asn1 Asp1 Tyr2 His2 Asn2 Asp2 Stop1 Gln1 Lys1 Glu1 Stop2 Gln2 Lys2 Glu2 Cys1 Arg1 Ser5 Gly1 Cys2 Arg2 Ser6 Gly2 Stop3 Arg3 Arg5 Gly3 Trp Arg4 Arg6 Gly4 3 rd Letter Partition Phe1 Ser1 Tyr1 Cys1 Leu3 Pro1 His1 Arg1 Ile1 Thr1 Asn1 Ser5 Val1 Ala1 Asp1 Gly1 Pho2 Ser2 Tyr2 Cys2 Leu4 Pro2 His2 Arg2 Ile2 Thr2 Asn2 Ser6 Val2 Ala2 Asp2 Gly2 Leu5 Ser3 Stop1 Stop3 Leu6 Pro3 Gln1 Arg3 Ile3 Thr3 Lys1 Arg5 Val3 Ala3 Glu1 Gly3 Leu2 Ser4 Stop2 Trp Leu6 Pro4 Gln2 Arg4 Met Thr4 Lys2 Arg6 Val4 Ala4 Glu2 Gly4

EXCERPT #W9QJ9D p. 36
  Figure 7: The three partitions that generate the genetic code

EXCERPT #N575HV p. 36
  Root U ... C A ... G U ... C A ... G U ... C A ... G ACG = Thr4 A partial tree diagram representing the genetic code. The root node branches into U, C, A, and G. The C branch further branches into U, C, A, and G. The A branch further branches into U, C, A, and G. The G branch further branches into U, C, A, and G. The path U-C-G is highlighted in orange, and the leaf node is labeled 'ACG = Thr4'.

EXCERPT #AP2S9W p. 36
  Figure 8: Tree representation (partial) of code implementation for ACG = Thr4

EXCERPT #JEEU4E p. 36
  The generative mechanism associated with the genetic code is the whole DNA-RNA machinery that generates the amino acid as the output from the code word as the input. If we abstractly represent the DNA-RNA machinery as that tree with 64 leaves, then the given code word tells the machinery how to traverse the tree to arrive at the desired leaf.

SECTION #B6N2ZZ 3.7.4 The Principles &amp; Parameters Mechanism for Language Acquisition

EXCERPT #7PAX5U p. 36
  Noam Chomsky's Principles & Parameters (P&P) mechanism ([43]; [44]) for language learning can be modeled as a generative mechanism. Again, we can consider a tree diagram where each branching point has a two-way switch to determine one grammatical rule or another in the language being acquired.

EXCERPT #V8J8QA p. 36

EXCERPT #5RM32J p. 37
  A simple image may help to convey how such a theory might work. Imagine that a grammar is selected (apart from the meanings of individual words) by setting a small number of switches - 20, say - either "On" or "Off." Linguistic information available to the child determines how these switches are to be set. In that case, a huge number of different grammars (here, 2 to the twentieth power) will be prelinguistically available, although a small amount of experience may suffice to fix one [45] (p. 154).

EXCERPT #ZGVWNE p. 37
  And the reference to 20 recalls the game of "20 questions" where the answers to the yes-or-no questions guides one closer and closer to the desired hidden answer. Chomsky uses the Higginbotham model to describe a Universal Grammar (UG) as a generative mechanism.

EXCERPT #GVXEH7 p. 37
  Many of these principles are associated with parameters that must be fixed by experience. The parameters must have the property that they can be fixed by quite simple evidence, because this is what is available to the child; the value of the head parameter, for example, can be determined from such sentences as John saw Bill (versus John Bill saw). Once the values of the parameters are set, the whole system is operative. Borrowing an image suggested by James Higginbotham, we may think of UG as an intricately structured system, but one that is only partially "wired up." The system is associated with a finite set of switches, each of which has a finite number of positions (perhaps two). Experience is required to set the switches. When they are set, the system functions [46] (p. 146).

EXCERPT #MZ3VQS p. 37
  In the tree modeling of the P&P approach, the relative poverty of linguistic experience that sets the switches plays the role of the code that guides the mechanism from the undifferentiated root state (all switches at neutral) to the final specific grammar represented as a leaf.

EXCERPT #3ZMTT2 p. 37

EXCERPT #DBNH6C p. 38
  Most important of all, it offered an explanatory model for the empirical analyses which opened a way to meet the challenge of “Plato’s Problem” posed by children’s effortless “yet completely successful” acquisition of their grammars under the conditions of the poverty of the stimulus. This becomes particularly clear if we take the view that parametric variation exhausts the possible morphosyntactic variation among languages and further assume that there is a finite set of binary parameters. Imposing an arbitrary order on the parameters, a given language’s set of parameter settings can then be reduced to a series of 0s and 1s, i.e. a binary number n [47] (p. 17).

EXCERPT #S9H4XP p. 38
  The binary number n is the code to traverse the tree down to the leaf representing the particular grammar.

EXCERPT #K2F95C p. 38
  The question about the acquisition of a grammar is a good topic to compare and contrast a selectionist mechanism with a generative mechanism. What would a selectionist approach to learning a grammar look like? A child would (perhaps randomly) generate a diverse range of babblings, some of which would be differentially reinforced or selected by the linguistic environment (e.g., [48]).

EXCERPT #FVHGZ7 p. 38
  Skinner, for example, was very explicit about it. He pointed out, and he was right, that the logic of radical behaviorism was about the same as the logic of a pure form of selectionism that no serious biologist could pay attention to, but which is [a form of] popular biology – selection takes any path. And parts of it get put in behaviorist terms: the right paths get reinforced and extended, and so on. It’s like a sixth grade version of the theory of evolution. It can’t possibly be right. But he was correct in pointing out that the logic of behaviorism is like that [of naïve adaptationism], as did Quine [49] (Section 10).

EXCERPT #UKZZSS p. 38
  A more sophisticated version of a selectionist model for the language-acquisition faculty or universal grammar (UG) could be called the format-selection (FS) approach (Chomsky, private communication). The diverse variants that are actualized in the mental mechanism are different sets of rules or grammars. Then given some linguistic input from the linguistic environment, the grammars are evaluated according to some evaluation metric, and the best rules are selected.

EXCERPT #EAF9HT p. 38

EXCERPT #NLUTD7 p. 39
  Universal grammar, in turn, contains a rule system that generates a set (or a search space) of grammars, \{G_1, G_2, \dots, G_n\} . These grammars can be constructed by the language learner as potential candidates for the grammar that needs to be learned. The learner cannot end up with a grammar that is not part of this search space. In this sense, UG contains the possibility to learn all human languages (and many more). ... The learner has a mechanism to evaluate input sentences and to choose one of the candidate grammars that are contained in his search space [50] (p. 292)

EXCERPT #QFMEJ4 p. 39
  After a sufficient stream of linguistic inputs, the mechanism should converge to the best grammar that matches the linguistic environment. Since it is optimizing over sets of rules, this model at least takes seriously the need to account for the choice of rules (rather than just assuming the child can infer the rules from raw linguistic data). Early work (through the 1970s) on accounting for the language-acquisition faculty or universal grammar (UG) seems to have assumed such an approach. The problems that eventually arose with the FS approach could be seen as the conflict between descriptive and explanatory adequacy.

EXCERPT #RYZEHX p. 39
  Since selection operates on actualities, in order to describe the enormous range of human language grammars, the range of grammars considered would make for an unfeasible computational load of evaluating the linguistic experience. If the range was restricted to make computation more feasible, then it would not explain the variety of human languages. Hence the claim is that the P&P generative mechanism gives a more plausible account of human language acquisition than a behavioral/selectionist approach.

SECTION #Y84EKA 3.7.5 Embryonic stem cell development

EXCERPT #PSQVBW p. 39
  Our simple partition lattice or rooted tree models of a generative mechanism pale beside the complexity of embryonic development. Nevertheless, it seems clear that the stem cells have the role of embodying the potentialities like the indiscrete partition \mathbf{0}_U or the root in a rooted tree. Thus, the role of stem cells in the development of an embryo from a fertilized egg into a full organism can be modeled as a generative mechanism.

EXCERPT #9R5FAN p. 39

EXCERPT #XNSQHU p. 40
  A diagram illustrating stem cell division and differentiation. It shows a hierarchical tree structure starting from a single purple stem cell (A) at the top. This cell divides (labeled 1) into two purple cells (A). One of these divides (labeled 2) into one purple cell (A) and one blue cell (B). The blue cell (B) then divides (labeled 3) into two blue cells (B). Finally, one of these blue cells divides (labeled 4) into one blue cell (B) and one yellow cell (C). At the bottom, a legend shows three colored circles: a purple circle labeled 'A', a blue circle labeled 'B', and a yellow circle labeled 'C'.

EXCERPT #8HNWN6 p. 40
  Figure 9: Stem cell division and differentiation [Attribution: Peter Znamenskiy, CC BY-SA 3.0 https://en.wikipedia.org/ at “Stem cell”]

EXCERPT #LEAFY9 p. 40
  As illustrated in Figure 9, stem cells come in three general varieties: A) the stem cells that can reproduce undifferentiated copies of themselves, B) the stem cells that can reproduce but can also produce a somewhat differentiated cell, and C) a specialized differentiated cell. Each branching point in a tree has a certain number of possible leaves or terminal types of cells beneath it in the tree. In a division (#1) of an A-type cell, each of the resulting A-type cell could have a full set of leaves beneath it. But when it splits (#2) into another A-type cell and a B-type cell, then the B-cell has a restricted number of leaves beneath it. The B-type cells can split (#3) in two, and finally when a B-type cell gives rise (#4) to a specific C-type of cell, that is a terminal branch, i.e., a leaf, in the tree.

EXCERPT #UHMD2K p. 40
  The codes that inform the progress through the tree are not fully understood, but apparently the positional epigenetic information in the developing embryo provides the information about the next development steps. In general terms,

EXCERPT #DL8PVA p. 40
  [t]hat model harks back to the “developmental landscape” proposed by Conrad Waddington in 1956. He likened the process of a cell homing in on its fate to a ball rolling down a series of ever-steepening valleys and forked paths. Cells had to acquire more and more information to refine their positional knowledge over time — as if zeroing in on where and what they were through “the 20 questions game, according to Jané Kondev, a physicist at Brandeis University. [51]

EXCERPT #Y53LHW p. 40

EXCERPT #X6C2TL p. 41
  Again, the reference to the game of 20 questions reveals the common generative mechanism of traversing a tree from the root to a specific leaf. Information is distinctions so more and more distinctions (“forked paths”) are made along a path like the path in the partition lattice from the one block in the indiscrete partition to smaller and smaller blocks until finally arriving at a singleton block in the discrete partition.

EXCERPT #MEXMXD p. 41
  In Figure 10, the lattice of partitions on U = \{a, b, c, d\} is represented using the shorthand of eliminating the innermost curly brackets in favor of juxtaposition so \{\{a\}, \{b, c, d\}\} is \{a, bcd\} . The path is indicated where the block containing the b outcome is differentiated by more and more distinctions until finally becoming fully distinct as a singleton block in the discrete partition. The indicated path through the lattice of partitions is like the Consecutive Joins column in Tables 5 and 6. The increasing amount of information used to make all the differentiations is indicated by the rising logical entropies of the increasingly refined partitions.

EXCERPT #94CBTB p. 41
  Figure 10: A lattice of partitions on U = {a, b, c, d} showing the developmental path of b from an undifferentiated state to a fully differentiated state. The lattice is a Hasse diagram with nodes representing partitions. The bottom node is {abcd} (undifferentiated state, entropy 0). The top node is {a,b,c,d} (fully differentiated states, entropy 6/8). Intermediate nodes are labeled with partitions and their corresponding logical entropies: {a,bc,d} (5/8), {ad,b,c} (5/8), {a,bd,c} (5/8), {ac,b,d} (5/8), {ab,e,d} (5/8), {a,b,cd} (5/8), {ad,bc} (4/8), {a,bcd} (3/8), {abd,c} (3/8), {abc,d} (3/8), {acd,b} (3/8), and {ae,bd} (4/8). A path of orange arrows starts at {abcd}, goes to {abd,c}, then to {a,bd,c}, and finally to {a,b,c,d}.

EXCERPT #PHQWEK p. 41
  Figure 10: One developmental path of b from the undifferentiated beginning to fully distinct outcome

EXCERPT #FMUDBR p. 41
  Moreover, we have seen in the analysis of group representations that symmetries play the role of equivalences or indistinctions, and thus that the making of distinctions is described as “symmetry-breaking.” That holds true also in embryonic development.

EXCERPT #C686UD p. 41
  Ultimately, symmetry breaking shapes your whole body, from the location of your head and toes to the position of your organs, from the symmetric location of lungs and kidneys to the way the heart is on the left. All this, in turn, derives from asymmetries on the molecular scale.

EXCERPT #EKL8NL p. 41

EXCERPT #S88M72 p. 42
  Symmetry breaking is essential to shape many of the most dramatic phases of our development [52] (p. 13).

EXCERPT #Z93DC3 p. 42
  Thus, it seems clear that the whole complex and only partly understood process of development from a stem cell to an fully differentiated organism can be described as a generative mechanism.

SECTION #MBBW95 3.7.6 Selectionist and Generative Mechanisms Redux

EXCERPT #PZVPVY p. 42
  There is a long tradition in biological thought of juxtaposing selectionism, associated with Darwin, with instructionism, associated with Lamarck ([53]; [54]). In an instructionist or Lamarckian mechanism, the environment would transmit detailed instructions about a certain adaptation to an organism, while in a selectionist mechanism, a diverse variety of (random) variations would occur, and then some variations would be selected by the environment as the “survival of the fittest.” The discovery that the immune system was a selectionist mechanism [55] generated a wave of enthusiasm, a “Second Darwinian Revolution” [41], for selectionist theories [40].

EXCERPT #EASKCY p. 42
  In his Nobel Lecture [56], Niels Jerne even tried to draw parallels between Chomsky’s generative grammar and selectionism. One of the distinctive features of a selectionist mechanism is that the possibilities must be in some sense actualized or realized in order for selection to operate on and differentially amplify or select some of the actual variants while the others languish, atrophy, or die off. In the case of the human immune system, “It is estimated that even in the absence of antigen stimulation a human makes at least 10^{15} different antibody molecules—its preimmune antibody repertoire” [57] (p. 1221).

EXCERPT #LHBV5T p. 42
  In Chomsky’s critique of a selectionist theory of universal grammar, he noted the computational infeasibility of having representations of all possible human grammars in order for linguistic experience and an evaluation criterion to perform a selective function on them. The analysis of Chomsky’s P&P theory as a generative mechanism instead suggests that the old juxtaposition of “selectionism versus instructionism” is not the most useful framing for the study of biological mechanisms. It is better framed as selectionist mechanisms versus generative mechanisms.

EXCERPT #GUCEZB p. 42

EXCERPT #SMCC46 p. 43
  The discovery of the genetic code and DNA-RNA machinery for the production of amino acids powerfully showed the existence of another biological mechanism, a generative mechanism, that is quite distinct from a selectionist mechanism. The examples of Chomsky’s P&P theory of grammar acquisition and the role of stem cells in embryonic development provide more evidence of the importance of generative mechanisms.

EXCERPT #VREE63 p. 43
  To better illustrate these two main types of biological mechanisms, it might be useful to illustrate a selectionist and a generative mechanism in solving the same problem of determining one among the 8 = 2^3 options considered in Figure 10. The eight possible outcomes might be represented as: |000\rangle , |100\rangle , |010\rangle , |110\rangle , |001\rangle , |101\rangle , |011\rangle , |111\rangle .

EXCERPT #K4BRM3 p. 43
  In the selectionist scheme, all eight variants are in some sense actualized or realized in the initial state so that a fitness criterion or evaluation metric (as in the FS scheme) can operate on them. Some variants do better and some worse as indicated by the type size in Figure 11.

EXCERPT #F8LQ59 p. 43
  \begin{array}{c} |000\rangle, |100\rangle, |010\rangle, |110\rangle, |001\rangle, |101\rangle, |011\rangle, |111\rangle \\ |000\rangle, |100\rangle, |010\rangle, |110\rangle, |001\rangle, |101\rangle, |011\rangle, |111\rangle \\ |000\rangle, |100\rangle, |010\rangle, |110\rangle, |001\rangle, |101\rangle, |011\rangle, |111\rangle \\ |010\rangle, |001\rangle, |101\rangle \\ |010\rangle \end{array}

EXCERPT #ZXE7LT p. 43
  Figure 11: A selectionist determination of the outcome |010\rangle

EXCERPT #EATLFY p. 43
  The “unfit” options dwindle, atrophy, or die off leaving the most fit option |010\rangle as the final outcome.

EXCERPT #VJ5SSB p. 43
  With the generative mechanism, the initial state (the root of the tree) is where all the switches are in neutral, so all the eight potential outcomes are in a “superposition” (between left and right) state indicated by the plus signs in the following Figure 12.

EXCERPT #85TWQQ p. 43

EXCERPT #MJ5QJU p. 44
  \begin{array}{lcl} \text{Initial State: All switches at Neutral} & & \\ |000\rangle + |001\rangle + |010\rangle + |011\rangle + |100\rangle + |101\rangle + |110\rangle + |111\rangle & & \\ \begin{array}{l} 0 \text{ Option at} \\ \text{first position} \end{array} \longrightarrow & & |000\rangle + |001\rangle + |010\rangle + |011\rangle \\ \begin{array}{l} 1 \text{ Option at} \\ \text{second position} \end{array} \longrightarrow & & |010\rangle + |011\rangle \\ \begin{array}{l} 0 \text{ Option at} \\ \text{third position} \end{array} \longrightarrow & & |010\rangle \end{array}

EXCERPT #3KJ5VM p. 44
  Figure 12: A generative determination of the outcome |010\rangle

EXCERPT #V74MLX p. 44
  The initial experience or first letter in the code sets the first switch to the 0 option which reduces the state to |000\rangle + |001\rangle + |010\rangle + |011\rangle (where the plus signs in the superposition of these options indicate that the second and third switches are still in neutral). Then subsequent experience sets the second switch to the 1 option and the third switch to the 0 option. Thus, we reach the same outcome |010\rangle as the final outcome in the two models but by quite different mechanisms. Note that the generative mechanism ‘selects’ or determines a specific outcome but that does not make it a ‘selectionist’ mechanism since it is making distinctions to turn an indefinite superposition-like state into a more definite state, as opposed to selecting between already existing variations according to a fitness criterion.

EXCERPT #MCYL62 p. 44
  Another way to visually compare a selectionist mechanism with a generative mechanism is to consider a single-elimination (or knockout) tournament as a “red in tooth and claw” selectionist mechanism versus the implementation of a code for a specific leaf as a generative mechanism as in Figure 13. The selectionist mechanism starts with 8 existing teams and then binary contests whittle down the survivors to a eventual winner. The generative mechanism starts at the root, which like the superposition \mathbf{0}_U , embodies 8 possibilities and the sequence of binary-code switches will eventually distinguish the coded leaf. The fundamental (reverse-the-arrows) duality of category theory is turn-around-the-trees in this case of Figure 13.

EXCERPT #LHTLZN p. 44

EXCERPT #4NTRQP p. 45
  The figure consists of two diagrams illustrating dual binary mechanisms. Left Diagram: Single Elimination Tournament as a Selectionist Mechanism This diagram shows a tournament bracket for 8 teams, labeled Team 1 through Team 8. The teams are arranged in two rows of four. The bracket shows a series of elimination rounds: Team 1 vs Team 2, Team 3 vs Team 4, Team 5 vs Team 6, and Team 7 vs Team 8. The winners of these matches (indicated by blue squares) proceed to the next round. The final winner is indicated by a blue square at the bottom, labeled 'Winner'. An orange arrow points down from the top left, and another orange arrow points down from the top right, indicating the flow of the tournament. Right Diagram: Code Implementation as a Generative Mechanism This diagram shows a binary tree structure. The root node is labeled 'Root'. The tree branches into two main paths, labeled '0' and '1'. Each path further branches into '0' and '1' nodes, leading to a total of 8 leaf nodes. Each leaf node is labeled with a 3-bit binary code: 000, 001, 010, 011, 100, 101, 110, and 111. Blue squares are placed at the internal nodes, and orange arrows point down from the top left and top right, indicating the flow of the generative process. Figure 13: Dual binary selectionist and generative mechanisms. The left diagram, 'Single Elimination Tournament as a Selectionist Mechanism', shows 8 teams in a bracketed tournament. The right diagram, 'Code Implementation as a Generative Mechanism', shows a binary tree with 8 leaf nodes labeled with 3-bit binary codes (000 to 111).

EXCERPT #L4JN2T p. 45
  Figure 13: Dual binary selectionist and generative mechanisms

DOCUMENT #GANFP9
A Fundamental Duality in the Mathematical and Natural Sciences: From Logic to Biology

SECTION #L62FZR 4 Discussion and Conclusions

EXCERPT #2KDWDJ p. 45
  We have argued that there is a fundamental or foundational duality that runs through logic, mathematics, probability and information theory, physics, and even the life sciences. At the logical level, it is the duality between subsets (or subobjects or ‘parts’) and partitions (or equivalence relations or quotient objects). At a more granular level, it is the duality between elements (of a subset) and distinctions (of a partition) or “Its & Dits.” In most cases, there has been a fulsome development of the subset-side of the duality to the neglect of the partition-side.

EXCERPT #8ME7WV p. 45
  • In logic the developments from the 19th century onwards have started with the Boolean logic of subsets while partition logic was only developed in the 21st century [4]. • In mathematics and particularly in category theory, there has been an even-handed development of both sides of the duality, i.e., subobjects and quotient objects or limits and colimits, and, in general, the reverse-the-arrows duality [14]. • The quantitative versions of subsets and partitions have been independently developed as probability theory and information theory. But the information theory was based on Shannon entropy to the neglect of the more fundamental notion of logical entropy as the quantitative measure of partitions ([58], [6], [5]). • In physics, classical physics exemplified the fully-definite view of reality;

EXCERPT #KMG6YR p. 45

EXCERPT #NQXJEC p. 46
  an element is definitely in a subset or in its complementary subset as in the Boolean logic of subsets. Quantum physics developed with the quantum reality embodying the possibility of objective indefiniteness in superposition states but the connection with the mathematics of partitions (or equivalence relations) was only recently understood ([30], [8]). Since new jury-rigged interpretations of QM are invented rather often, this approach to understanding QM as the application of a fundamental duality running throughout the exact sciences gives this treatment some cachet above today's "demolition derby" of competing interpretations.

EXCERPT #QP7DDA p. 46
  • And in the life sciences, there has long been the emphasis on the selectionist mechanism which operates on the logic of the existence of actualized definite alternatives which are then subjected to the "survival of the fittest" criterion. Selectionism was usually juxtaposed to the false alternative of instructionism or Lamarckism. But the other side of the duality is the notion of a generative mechanism which we have seen implemented in a number of biological processes where codes-as-distinctions guide the process of development of an indefinite state to a definite outcome (symbolized in the rooted tree diagrams) such as the genetic code in the DNA-RNA machinery, language acquisition in generative grammar, and embryonic development from stem cells. [9].

EXCERPT #QKEJGK p. 46
  While the fundamental duality finds its most mathematical formulation as category theory's reverse-the-arrows duality, that is far too abstract to elicit the multitude of applications throughout the sciences. The more specific formulation between subsets and partitions at the logical level, and the even more granular formulation as the elements-and-distinctions (or Its & Dits) duality, brought out many applications—including the 'origin' of the category-theoretic duality in the ur-category of Sets . Outside of category theory, the historical development has been largely on the subset side of the duality so it was the new developments of the partition side, starting with partition logic and running through logical information theory, quantum theory, and finally to the biological notion of a generative mechanism, that revealed the wide range of applications of the fundamental duality throughout the mathematical and natural sciences—from logic to biology.

EXCERPT #WNAA38 p. 46

### 21. Tool result: read

DOCUMENT #C8FHDZ
On implication and negation in partition logic

SECTION #ZZPBEJ 1. Introduction: The Boolean logic of subsets and the logic of partitions

EXCERPT #BLF82B p. 0
  T oday, the ‘classical’ form of logic is seen as the Boolean logic of subsets usually presented as the special case of propositional logic (i.e., the logic of subsets 0 and 1 of the one element set 1). Other related logics, such as intuitionistic logic (e.g., the logic of the open subsets of a topological space) are considered as non-classical. But there is another recently developed and little-known logic that is at the same mathematical level of fundamentality as subset logic and is thus ‘classical’ in that nontemporal sense. Since the development of category theory starting in the middle of the twentieth century, it has been known that the concept of a subset has a category-theoretic dual in the notion of a quotient set (or, equivalently, a partition or equivalence relation). F. William Lawvere calls the generalization of a subset a “part” and “The dual notion (obtained by reversing the arrows) of ‘part’ is the notion of partition.” [1, p. 85] The simplest illustration of this is the fact that given a set function f : X \rightarrow Y , the image of f is a subset f(X) \subseteq Y of the codomain Y and the inverse-image \{f^{-1}(y) \neq \emptyset : y \in Y\} is a partition on the domain X . Hence, it should be expected that there is a logic of partitions ([2,3]) dual to the Boolean logic of subsets. And since subsets and quotient sets are at the same basic level from the mathematical point of view, partition logic is more of a dual sibling to subset logic rather than being another ‘non-classical’ off-shoot of the classical subset logic.

DOCUMENT #C8FHDZ
On implication and negation in partition logic

SECTION #7WB5RZ 2. The logic of partitions

EXCERPT #ZBQE96 p. 0
  Our purpose here is briefly present the basics of partition logic that suffice to explore the role of negation and implication in that logic. A partition \pi = \{B, B', \dots\} on a set U is a set of non-empty subsets B, B', \dots (“blocks”) of U where the blocks are mutually exclusive (the intersection of distinct blocks is empty) and jointly exhaustive (the union of the blocks is U ). An equivalence relation is a binary relation E \subseteq U \times U that is reflexive, symmetric, and transitive. Every equivalence relation on a set U determines a partition on U where the equivalence classes are the mutually exclusive and jointly exhaustive blocks of the partition. Conversely, every partition on a set determines an equivalence relation on the set; two elements are equivalent if they are in the same block of the partition. The notions of a partition on a set and an equivalence relation on a set are thus interdefinable. Indeed, equivalence relations and partitions are often considered as the “same” as in the conventional practice (not used here) of defining the “lattice of partitions” as the lattice of equivalence relations [4].

EXCERPT #QEASWR p. 0
  For the purposes of partition logic, it is important to consider the complementary binary relation to an equivalence relation. A partition relation (also called an apartness relation ) R \subseteq U \times U is irreflexive (i.e., (u, u) \notin R ).

EXCERPT #7Z3MBV p. 0

EXCERPT #THTJ3S p. 0

EXCERPT #QKWJ9K p. 1

EXCERPT #XKGC29 p. 1

EXCERPT #YXGP5T p. 1
  R for any u \in U ), symmetric (i.e., (u, u') \in R implies (u', u) \in R ), and anti-transitive in the sense that if (u, u') \in R , then for any a \in U , either (u, a) \in R or (a, u') \in R (i.e., U \times U - R = R^c is transitive). Thus as binary relations, equivalence relations and partition relations are complementary. That is, E \subseteq U \times U is an equivalence relation if and only if (iff) E^c \subseteq U \times U is a partition relation.

EXCERPT #B7W87A p. 1
  A distinction of a partition is an ordered pair (u, u') of elements of U in distinct blocks of the partition. The set of distinctions (abbreviated "dits") of a partition is the ditset

EXCERPT #ES3YR9 p. 1
  \text{dit}(\pi) = \{(u, u') : \exists B, B' \in \pi; B \neq B'; u \in B; u' \in B'\}.

EXCERPT #PS79AA p. 1
  Similarly an indistinction or indit of a partition is an ordered pair of elements in the same block of the partition so:

EXCERPT #GMLPHZ p. 1
  \text{indit}(\pi) = \{(u, u') : \exists B \in \pi; u, u' \in B\} = \bigcup_{B \in \pi} B \times B = U \times U - \text{dit}(\pi).

EXCERPT #HTEQ5J p. 1
  The indit set of a partition is the equivalence relation defined by the partition, and the ditset of a partition is the complementary partition relation defined by the partition.

EXCERPT #Z6B58M p. 1
  If \sigma = \{C, C', \dots\} is another partition on U , then the partial order of refinement is defined by:

EXCERPT #ZVJVBC p. 1
  \sigma \preceq \pi \text{ (read: } \pi \text{ refines } \sigma \text{ or } \sigma \text{ is refined by } \pi) \text{ if } \forall B \in \pi, \exists C \in \sigma \text{ such that } B \subseteq C.

EXCERPT #JDV5KF p. 1
  Note that if \sigma \preceq \pi , then for any C \in \sigma , there is a set of blocks of \pi whose union is C . The most refined partition on U is the discrete partition \mathbf{1} = \{\{u\}\}_{u \in U} whose blocks are all singletons. It is the top or maximal element in the refinement partial order. The least refined partition is the indiscrete partition (nicknamed the 'blob') \mathbf{0} = \{U\} whose only block is U itself. It is bottom or minimal element in the refinement partial order. The join \pi \vee \sigma (least upper bound) of \pi and \sigma is the partition whose blocks are the non-empty intersections of the blocks of \pi and \sigma :

EXCERPT #NWSHDJ p. 1
  \pi \vee \sigma = \{B \cap C \neq \emptyset : B \in \pi; C \in \sigma\}.

EXCERPT #HG4C5G p. 1
  To define the meet \pi \wedge \sigma (greatest lower bound) of \pi and \sigma , we define an equivalence relation on U that is generated by u \sim u' if u and u' are in the same block of \pi or \sigma . Thus if two blocks of \pi and \sigma overlap (non-empty intersection) then all the elements of the two blocks are equated and so forth for any finite sequence of overlapping blocks. Hence a block of the meet partition, i.e., an equivalence class of that equivalence relation, is a precise union of blocks of \pi and a union of blocks of \sigma , and is the smallest such union. These definitions of refinement, join, and meet turn the set \Pi(U) of partitions on U into a lattice. The notion of refinement between partitions is equivalent to inclusion between their corresponding ditsets or partition relations, i.e., \sigma \preceq \pi iff \text{dit}(\sigma) \subseteq \text{dit}(\pi) , so the lattice of partitions on U can be represented as the isomorphic lattice of partition relations on U \times U . But it should be carefully noted that what many textbooks call the "lattice of partitions" is really the opposite lattice of equivalence relations, e.g., Birkhoff [4] or Grätzer [5], where the join and meet are interchanged.

EXCERPT #SKL3RS p. 1
  The lattice of partitions (in either presentation) was known and studied in the nineteenth century by Richard Dedekind and others. But no other operations on partitions besides join and meet were defined throughout the twentieth century.

EXCERPT #9XKV6Y p. 1
  "Equivalence relations are so ubiquitous in everyday life that we often forget about their proactive existence. Much is still unknown about equivalence relations. Were this situation remedied, the theory of equivalence relations could initiate a chain reaction generating new insights and discoveries in many fields dependent upon it.

EXCERPT #4J3GNC p. 1
  This paper springs from a simple acknowledgement: the only operations on the family of equivalence relations fully studied, understood and deployed are the binary join \vee and meet \wedge operations" [6, p. 445].

EXCERPT #78JCG3 p. 1
  Hence the development of partition logic depended on defining at least implication \sigma \Rightarrow \pi , and then all the other logical (i.e., Boolean) operations on partitions, e.g., [7].

EXCERPT #9T4244 p. 2

EXCERPT #22BSZE p. 2

DOCUMENT #C8FHDZ
On implication and negation in partition logic

SECTION #9DDUBK 3. Implication and negation in partition logic

EXCERPT #FH9NKH p. 2
  There are at least four equivalent ways to define the implication operation \sigma \Rightarrow \pi on partitions. The most intuitive and useful set-of-blocks definition will be used here. The implication partition \sigma \Rightarrow \pi is like the partition \pi except that every block B \in \pi that is contained in some block C \in \sigma is replaced by singletons of its elements. Such an ‘atomized’ or discretized block B might be denoted 1_B as the local B -version of the discrete partition 1 . If a block B \in \pi is not contained in any block of \sigma , then it remains the same which might be denoted 0_B as the local B -version of the indiscrete partition 0 . Hence the implication partition \sigma \Rightarrow \pi functions as an indicator or characteristic function with blocks 1_B or 0_B according to whether or not B was contained in a block of \sigma . With the implication operation, we could refer to \Pi(U) as the algebra of partitions on U instead of just the lattice of partitions.

EXCERPT #QBT84C p. 2
  Both subset logic and partition logic have their corresponding lattices with the join and meet operations based on their respective partial orders of inclusion and refinement. What is the intuition about the implication operation to go beyond the join and meet operations? The idea of the implication is that it is an operation on two elements in the lattice so that if the result is the top of the lattice, then those two elements are related by the partial order (the ‘antecedent’ is lower than or equal to the ‘consequent’ in the partial order). Thus in the case of the lattice of subsets, the implication or conditional operation takes subsets S, T \subseteq U to the subset S \supset T := S^c \cup T . And if that subset equals the top of the lattice U , then the partial order holds between those two subsets, i.e., S \supset T = U iff S \subseteq T . The same thing holds for the implication operation in the lattice of partitions. If all the blocks of \pi are atomized or discretized, i.e., \sigma \Rightarrow \pi = \mathbf{1} , then \sigma \preceq \pi and vice versa. Thus we might say intuitively that the implication of two elements in the lattice is another lattice element that indicates the extent to which those two elements stand in the partial order to one another. Thus even if \sigma \Rightarrow \pi is not the top of the lattice, if we ‘restrict’ the implication to the antecedent, i.e., \sigma \wedge (\sigma \Rightarrow \pi) , then we get a lattice element that does stand in the partial order to the consequent, i.e., [(\sigma \wedge (\sigma \Rightarrow \pi)) \Rightarrow \pi] = \mathbf{1} , and thus modus ponens is a validity in both logics.

EXCERPT #FFVCXY p. 2
  With the implication operation, the (absolute) negation of \sigma can be defined as \neg\sigma := \sigma \Rightarrow \mathbf{0} . But the more interesting (relative) \pi -negation of \sigma is defined as: {}^\pi\neg\sigma := \sigma \Rightarrow \pi , so the \pi -negation of \sigma is just another way of considering the implication \sigma \Rightarrow \pi .

EXCERPT #ZTPFTV p. 2
  The equivalence relation corresponding to the indiscrete partition 0 is the universal relation U \times U . For any two equivalence relations E, E' \subseteq U \times U , if E \cup E' = U \times U , then E = U \times U or E' = U \times U . This is essentially the standard result of graph theory that the complement of any disconnected graph is connected [8, p. 30]. Since the indiscrete partition has no distinctions, i.e., \text{dit}(\mathbf{0}) = \emptyset , the complementary form of that result is that for any two partitions \sigma, \pi , if \text{dit}(\sigma) \cap \text{dit}(\pi) = \emptyset , then \text{dit}(\sigma) = \emptyset or \text{dit}(\pi) = \emptyset , i.e., \sigma = \mathbf{0} or \pi = \mathbf{0} . An alternative form of the result is useful to understand the negation \sigma \Rightarrow \mathbf{0} .

EXCERPT #C53C8A p. 2
  Theorem 1 (Common-Dits Theorem). Any two non-empty ditsets overlap, i.e., have some dits in common.

EXCERPT #3K4JXL p. 2
  Proof. Let \pi and \sigma be any two partitions on U with non-empty dit sets, i.e., \pi \neq \mathbf{0} \neq \sigma . We need to show that \text{dit}(\pi) \cap \text{dit}(\sigma) \neq \emptyset . Since \sigma is not the blob 0 , consider two elements u and u' distinguished by \sigma but identified by \pi [otherwise (u, u') \in \text{dit}(\pi) \cap \text{dit}(\sigma) and we are finished]. Since \pi is also not the blob, there must be a third element u'' not in the same block of \pi as u and u' .

EXCERPT #VBK6HW p. 2
  Diagram illustrating the Common Dits Theorem. It shows two partitions, pi (solid line) and sigma (dashed line), on a set U. Partition pi has two blocks: one containing u and u' (labeled u, u') and another containing u'' (labeled u''). Partition sigma has two blocks: one containing u (labeled u) and another containing u' and u'' (labeled u', u''). The intersection of the ditsets of pi and sigma is non-empty, containing the pair (u, u').

EXCERPT #FPJB3E p. 2
  Figure 1. Common dits to any two non-empty ditsets

EXCERPT #FW3PAF p. 3

EXCERPT #DAWDWY p. 3

EXCERPT #K3PFAA p. 3
  But since u and u' are in different blocks of \sigma , the third element u'' must be distinguished from one or the other or both in \sigma . Hence (u, u'') (as in Figure 1) or (u', u'') must be distinguished by both partitions and thus must be in \text{dit}(\pi) \cap \text{dit}(\sigma) . \square

EXCERPT #2K99KN p. 3
  This means that for any two non-blob partitions \pi and \sigma on U , there is always a pair of elements u, u' \in U that are in different blocks of both partitions. This result is perhaps particularly striking if we take \pi and \sigma to be atomic partitions, namely, partitions with only two blocks. For any two ways to divide the elements of U ( |U| \geq 2 ) into two parts, there is always a pair of elements separated by both divisions.

EXCERPT #2TNJYT p. 3
  Since intuitionistic logic is the most developed logic aside from Boolean logic, it is often suggestive to compare the ditsets of partition logic with the open sets in the topological representation of intuitionistic logic, i.e., of a Heyting algebra (also called a pseudo-Boolean algebra or Brouwer algebra). The negation of an open set is the largest open set disjoint from the given set. But now we see that there is no non-empty ditsets disjoint from any given non-empty ditset. Hence intuitively the negation of any partition \sigma \neq \mathbf{0} , is the partition \mathbf{0} with an empty ditset. The definition \neg\sigma := \sigma \Rightarrow \mathbf{0} gives the same result since the only block U in \mathbf{0} = \{U\} is not contained in any block of \sigma \neq \mathbf{0} . And when \sigma = \mathbf{0} , then \neg\mathbf{0} = \mathbf{0} \Rightarrow \mathbf{0} = \mathbf{1} since U \subseteq U so it is discretized in the implication. That is why the absolute negation \neg\sigma is of less interest than the relative negation \frac{\pi}{\sigma}\sigma = \sigma \Rightarrow \pi which is simply the partition implication.

DOCUMENT #C8FHDZ
On implication and negation in partition logic

SECTION #KS4RBJ 5. Relative negation in partition logic

EXCERPT #TTFKUQ p. 4
  To study relative negation, we take the ‘consequence’ \pi as fixed and then let the ‘antecedent’ \sigma vary in the \pi -negation \neg_\pi \sigma := \sigma \Rightarrow \pi . Another suggestion from intuitionistic logic is that the negated elements in a Heyting algebra form a Boolean algebra. In partition logic, this is trivially true for absolute negation since the negated elements form the two-element Boolean algebra. And it is also true for the relative \pi -negation as was suggested by viewing the implication \sigma \Rightarrow \pi as an indicator or characteristic function for the inclusion of the blocks of \pi in the blocks of \sigma . And the double \pi -negation \neg_\pi \neg_\pi \sigma = (\sigma \Rightarrow \pi) \Rightarrow \pi just interchanges the 0_B and 1_B so \pi -negation is like the usual negation of a subset represented by its indicator function (i.e., negation interchanges the zero-one values). 1 Thus the triple \pi -negation is the same as the single \pi -negation. For another partition \tau = \{D, D', \dots\} , the join \overset{\pi}{\neg}\sigma \vee \overset{\pi}{\neg}\tau = (\sigma \Rightarrow \pi) \vee (\tau \Rightarrow \pi) would have B discretized, i.e., turned into \mathbf{1}_B , iff B is contained in a block C \in \sigma or B is contained in a block D \in \tau , so it acts like the Boolean join or disjunction: \mathbf{0}_B \vee \mathbf{1}_B = \mathbf{1}_B \vee \mathbf{0}_B = \mathbf{1}_B \vee \mathbf{1}_B = \mathbf{1}_B and \mathbf{0}_B \vee \mathbf{0}_B = \mathbf{0}_B . Similarly, the meet \overset{\pi}{\neg}\sigma \wedge \overset{\pi}{\neg}\tau = (\sigma \Rightarrow \pi) \wedge (\tau \Rightarrow \pi) would have B discretized, i.e., turned into \mathbf{1}_B iff B is contained in a block C \in \sigma and B is contained in a block D \in \tau , so it acts like the Boolean conjunction. Thus all the partitions over U in the form of a \pi -negation \overset{\pi}{\neg}\sigma = \sigma \Rightarrow \pi form a Boolean algebra \mathcal{B}_\pi with \pi = \overset{\pi}{\neg}\mathbf{1} as the bottom element and \mathbf{1} = \pi \Rightarrow \pi as the top element. Since all the \pi -negated partitions (also called \pi -regular partitions) refine \pi , the Boolean algebra \mathcal{B}_\pi is contained in the upper segment [\pi, \mathbf{1}] and might be called the Boolean core \mathcal{B}_\pi of [\pi, \mathbf{1}] .

EXCERPT #2ZGCCM p. 5

EXCERPT #HLYNAH p. 5

EXCERPT #NU42RQ p. 5
  There is another construction of \mathcal{B}_\pi based on the fact that singleton blocks in \pi are already atomized so the implication \sigma \Rightarrow \pi essentially ignores the singletons of \pi . Those singletons are always contained in some block of \sigma so they should be discretized into singletons, but they are already singletons. If we let \pi_{ns} stand for the set of non-singleton blocks of \pi , then every \pi -negated formula \sigma \Rightarrow \pi is characterized by the set of non-singleton blocks B \in \pi_{ns} that were discretized, i.e., were assigned \mathbf{1}_B instead of \mathbf{0}_B by the implication \sigma \Rightarrow \pi viewed as an indicator function (for inclusion of blocks of \pi in blocks of \sigma ). Then it is easily seen that the powerset Boolean algebra \wp(\pi_{ns}) on the set of non-singleton blocks of \pi is (anti-)isomorphic to the Boolean core \mathcal{B}_\pi , i.e.,

EXCERPT #AFS2KN p. 5
  \wp(\pi_{ns}) \cong \mathcal{B}_\pi.

EXCERPT #95SCCV p. 5
  Thus, we also have: \wp(\pi) \cong \mathcal{B}_\pi \times \prod_{\{u\} \in \pi} 2 , where 2 = \{0, 1\} .

EXCERPT #MMGG3Y p. 5
  The single \pi -negation \overset{\pi}{\neg}\sigma , the double \pi -negation \overset{\pi}{\neg}\overset{\pi}{\neg}\sigma , and the excluded middle \sigma \vee \overset{\pi}{\neg}\sigma are all partitions of special interest. The non-singleton blocks of \overset{\pi}{\neg}\sigma are the blocks B \in \pi that intersect two or more blocks of \sigma . Thus the non-singleton blocks of the double \pi -negation \overset{\pi}{\neg}\overset{\pi}{\neg}\sigma are the blocks B \in \pi that are contained in blocks of \sigma so \sigma \Rightarrow \overset{\pi}{\neg}\overset{\pi}{\neg}\sigma is a partition tautology and \sigma \lesssim \overset{\pi}{\neg}\overset{\pi}{\neg}\sigma . The double \pi -negation \overset{\pi}{\neg}\overset{\pi}{\neg}\sigma can be thought of as the \pi -closure of any \sigma inside of \mathcal{B}_\pi . Since \pi \lesssim \overset{\pi}{\neg}\overset{\pi}{\neg}\sigma , we also have that \sigma \vee \pi \lesssim \overset{\pi}{\neg}\overset{\pi}{\neg}\sigma .

EXCERPT #VQ5SJ2 p. 5
  Moreover, since the non-singleton blocks of \overset{\pi}{\neg}\sigma intersect two or more blocks of \sigma , the blocks (always non-singleton unless otherwise specified) in the excluded middle partition \sigma \vee \overset{\pi}{\neg}\sigma are all (strictly) smaller than the blocks of \pi so \pi \lesssim \sigma \vee \overset{\pi}{\neg}\sigma and thus \sigma \vee \pi \lesssim \sigma \vee \overset{\pi}{\neg}\sigma . And since the blocks of \sigma \vee \overset{\pi}{\neg}\sigma are strictly smaller than the blocks of \pi , no blocks of \pi are discretized in its \pi -negation, i.e., \overset{\pi}{\neg}(\sigma \vee \overset{\pi}{\neg}\sigma) = \pi . Thus the double \pi -negation of the excluded-middle partition is \mathbf{1} , i.e., \overset{\pi}{\neg}\overset{\pi}{\neg}(\sigma \vee \overset{\pi}{\neg}\sigma) is a partition tautology. While the excluded middle partition \sigma \vee \overset{\pi}{\neg}\sigma is not (in general) equal to \mathbf{1} (i.e., is not in general a partition tautology) and is not even in \mathcal{B}_\pi , it could be said to be \pi -dense in \mathbf{1} since its \pi -closure is \mathbf{1} .

EXCERPT #7FLLBB p. 5
  Since both the excluded middle partition \sigma \vee \overset{\pi}{\neg}\sigma and the double \pi -negation partition \overset{\pi}{\neg}\overset{\pi}{\neg}\sigma refine \sigma \vee \pi , they meet (greatest lower bound) (\sigma \vee \overset{\pi}{\neg}\sigma) \wedge \overset{\pi}{\neg}\overset{\pi}{\neg}\sigma must also refine \sigma \vee \pi . Moreover, that is an equality since the blocks of \sigma \vee \overset{\pi}{\neg}\sigma are the non-empty intersections C \cap B for C \in \sigma and B \in \pi where B is not contained in any C \in \sigma , and the blocks of \overset{\pi}{\neg}\overset{\pi}{\neg}\sigma are the blocks B contained in some C \in \sigma . Those non-singleton blocks are all disjoint, so there are no overlaps in the meet operation. Hence those blocks remain the same in the meet and they are precisely the blocks of the join \sigma \vee \pi , i.e.,

EXCERPT #TTBGV9 p. 5
  \sigma \vee \pi = (\sigma \vee \overset{\pi}{\neg}\sigma) \wedge \overset{\pi}{\neg}\overset{\pi}{\neg}\sigma.

DOCUMENT #C8FHDZ
On implication and negation in partition logic

SECTION #GNBDTD 7. Concluding remarks

EXCERPT #LFDVDT p. 7
  Our purpose has been to develop the notions of negation and implication (relative negation) in the logic of partitions. Since partition relations (ditsets) and equivalence relations (indit sets) are complementary in U \times U , every result in the logic of partitions has a complementary-dual result in the logic of equivalence relations so the latter is not really a different logic but a complementary way to view partition logic. There is a similar complementary-duality in intuitionistic logic between Heyting algebras (modelled by the open subsets of a topological space) and co-Heyting algebras [13] (modelled by the closed subsets). 4 Intuitionistic logic makes the symmetry-breaking choice to deal with Heyting algebras rather than co-Heyting algebras, and we have made the similar choice to develop the logic of partitions rather than the (‘anti-isomorphic’) logic of equivalence relations. For instance, the complementary-dual to the implication operation on partitions is the difference or subtraction operation on equivalence relations. The partition logic tautology of modus ponens has the customary form: (\sigma \wedge (\sigma \Rightarrow \pi)) \Rightarrow \pi , whereas the corresponding formula in the dual logic of

EXCERPT #BQU56T p. 7
  4 Our approach here is entirely semantic (i.e., no axiom system for partition logic) so there would seem to be no analogue of bi-intuitionistic or Heyting-Brouwer logic [14] since no partition relations are also equivalence relations—except in the ‘waste case’ of the empty partition on the empty set where both the ditset and indit set are empty.

EXCERPT #E5CCYQ p. 8

EXCERPT #NTSXK2 p. 8

EXCERPT #6YDBUF p. 8
  equivalence relations is the unfamiliar \pi - (\sigma \vee (\pi - \sigma)) . Hence we have made no independent development of the equivalence relation notions of difference or of negation as "difference from U \times U ."

EXCERPT #T6E7D9 p. 8
  No new logical operations on partitions, aside from join and meet, were defined throughout the twentieth century. The definition of the partition implication (or relative negation) in any of the many equivalent ways was the key to the development of the full logic of partitions. Why the delay? One reason is perhaps the fact that partition lattices are so general that any partition tautology or identity involving just the lattice operations and top and bottom, e.g., \mathbf{1} \wedge \pi = \pi or \mathbf{0} \vee \pi = \pi , are in fact identities that hold on all such lattices [15]. Thus the logic of general set partitions only becomes of independent interest by moving beyond the lattice operations on partitions. Alternatively, one could develop a 'logic' of equivalence relations sticking with only the lattice operations but specializing to certain types of equivalence relations [16]. But the main reason for the delay seems to be that the Boolean logic of subsets was and is presented in only the special case of the logic of propositions. And propositions, unlike subsets, do not have a category-theoretic dual concept. Hence twentieth century mathematical logicians were not even looking for the dual logic of quotient sets, equivalence relations, or partitions.

EXCERPT #XPGYMY p. 8
  Much of the modern development in "logic" is focused on the propositional interpretation of the variables which is a special case of the general logic of subsets of some given universe U (where U = 2 = \{0,1\} or \{F,T\} in the propositional case). Then attention has been focused on the many variations and sublogics of the Boolean logic of subsets. Partition logic is not about propositions at all and it is not a variation or sublogic of the Boolean logic of subsets. Partition logic is the category-theoretic dual to subset logic, and it is coequal to subset logic from the purely mathematical point of view (see, for instance, [17]). Hence our focus has been to address the topic of implication and negation in this little-known form of logic that is the mathematical coequal twin or dual to the Boolean logic of subsets.

### 22. Tool result: read

DOCUMENT #KY3Y9U
Naïve Physics: An Essay in Ontology

SECTION #BQHK5F III. BRANCHES OF NAIVE PHYSICS

EXCERPT #TPQF6K p. 7
  The task of naive physics, which is that of establishing an adequate theory of the structures and relations captured in such descriptions, is for a variety of reasons not an easy one. Hayes, above all, has stressed the extent to which the concepts of naive physics are subject to a massive holistic interconnectedness in the sense that each is interwoven with all the others in ways which make it difficult, if not impossible, to distinguish distinct and separable branches of the discipline at hand. (Hayes 1979, 175ff) One should speak instead, he argues, of only loosely discriminable conceptual clusters, bearing in mind always that the concepts in each cluster are capable of being understood only by appeal to concepts in other, neighbouring clusters. One partial and provisional list of such sub-branches of the discipline might read as follows:

EXCERPT #52SFAR p. 7
  1. Objects, Natural Units and Natural Kinds 2. Events, Processes and Causality 3. Stuffs, States of Matter, Qualities 4. Surfaces, Limits, Boundaries, Media 5. Motivation, Requiredness, Value

EXCERPT #M8CV6L p. 7
  The first four of these are standard (compare e.g. the list supplied by Hayes 1979, pp. 187-97). The fifth, however, which derives from phenomenology and from the Gestalt-theoretical perspective on naive-physical reality, is non-standard, in the sense that phenomena of value are not normally classed as belonging to 'physics' in either the naive or sophisticated senses.

EXCERPT #8MAHXT p. 7
  In what follows we shall sketch a range of illustrative examples of early contributions to the field of naive physics. These early contributions are unaffected by the predominance of the desire to achieve ('quick and dirty') formal representations: they are contributions to the sophisticated and non-reductionistic theory of common sense, rather than contributions to the computerized representation thereof. On the other hand however these early contributions remain in many cases at the level of isolated insights and much of the work of combining them into a full and adequate theory has still to be done. In our remarks in what follows we shall proceed always in keeping with the spirit of a realistic ontology. Thus we shall take the world of common sense as serving at one and the same time as (1) an object of a sophisticated theory and also (2) as that to which we have ready access in straightforward and non-theoretical everyday experience. For as already Avenarius (in his fashion) saw, naive physics is part of an answer to the question: what do we (straightforwardly) perceive? What, then, are the branches of the theory of the world of straightforward perception?

SECTION #CYFWW4 1. Objects, Natural Units and Natural Kinds

EXCERPT #5QP2WR p. 8
  The common-sense world is from the formal-ontological perspective first of all a world of things, of stable material bodies that are given to us as things in the sense that they are given as inert, as complete and as three-dimensional. Each thing is present in the flesh, as something which has surfaces and an inside, that is filled with matter. Things are perceived also as manipulable units, and as potential subjects of fragmentation (splitting, cutting) and of unification (gluing, bonding). The articulation of the world of things now follows along natural lines: objects inanimate as well as animate are grouped together according to their typical patterns of behaviour and qualitative determination into natural kinds . The common-sense world is further such that in all its spheres and dimensions we can distinguish what is 'normal' and what is to a greater or lesser degree 'abnormal'. Thus the natural kinds in commonsensical reality have both standard and non-standard instances. Both Gestaltists and phenomenologists have insisted from the start further on the optimality of perceived objects; even where the objects themselves are marked by various deviations from the norm, there is a tendency to discount such deviations in our straightforward experience of things and in our assignment of things to kinds or categories (a notion linked also to Mach's principle of the 'economy of thought', as also to the familiar phenomenon whereby even the scientific image of reality must in every case be rooted in the categories of common sense (16) ).

EXCERPT #WY54ZA p. 8
  There is normal and abnormal also among experiences and among the conditions of experience. Consider, for example, the ways in which colour-appearances differ under different lighting conditions. 'Normal', here, is

EXCERPT #XBS567 p. 8
  seeing in sunlight, on a clear day, without the influence of other bodies which might affect the colour appearance. The 'optimum' which is thereby attained then counts as the colour itself , in opposition, for example, to the red light of the sunset which 'outshines' all proper colours. (Husserl 1952, p. 59)

EXCERPT #YW5UPW p. 8
  In normal experience, then, we take ourselves as having access to the things themselves and to their real states. Other appearances are taken by common sense as secondary to or as deformations of that optimal appearance which alone counts as an appearance of reality. 'The features which pertain to the thing "itself" are the "optimal" ones. This applies to all features, to the geometrical as well as to the sensuous qualities.' (Husserl 1952, p. 76f.)

EXCERPT #WEECXT p. 8
  All families (kinds, species) of objects in the common-sense world are subject to the opposition between normal (standard, typical) and abnormal (non-standard, non-typical) instances. (17)

EXCERPT #JMNF6N p. 8
  And the normal instances of such species are marked by familiarity, they are understood by common sense, both in regard to what they are and also in regard to what they will do (in regard to their regular patterns of behaviour in normal and regular circumstances). Thus I grasp a door, or a leaf, in one stroke , and I know already the sorts of future ways in which this thing will behave.

SECTION #LZAZAB 2. Events, Processes and Causality

EXCERPT #SKZ67P p. 8
  The common-sense world of material entities is bicategorical: in spite of certain revisionary attempts on the part of Whitehead (1929), Kotarbinski (1955), Quine (1960, § 36), and others traces of which appear in Hayes' treatment of histories (1979, p. 189ff, 1985a) we still find it necessary to insist that common sense takes material objects and processes/events as belonging to two utterly different though interdependent categories. (18)

EXCERPT #888GVJ p. 9
  The work of the Polish phenomenologist Roman Ingarden (1935, 1964/65/74) includes what is probably the most detailed bicategorical ontology of things and processes/events to date, regarding processes as extended in time and events as boundaries (beginnings, endings or crossings) of processes. He thus stands opposed not only to monocategorical ontologies in the spirit of Kotarbinski or Quine but also to the Whiteheadian conception of processes as series of events. The Ingardenian classification can be supplemented by those which one finds in Thom (on confluences and convergences of processes, etc. (19) ). Thus instantaneous events can be sub-divided into culminations (a sudden turn) and achievements (a victory). A widely exploited analogy (e.g. Bach 1986, Galton 1984) is that between instantaneous events and unitary things on the one hand and between processes and masses or stuffs on the other. Thus processes (of growth or disintegration) are like stuffs in that they can be divided into parts which are themselves processes.

EXCERPT #MCG3EL p. 9
  Mention must be made in this connection also of the Gestaltists' work on process/event perception in the tradition of Gibson and G. Johansson. Thus Cutting (1981) sets out a number of conditions on event perception, which can also be taken as salient features of events themselves. An event or process if it is to be salient (to be discriminated as this or that event within a whole dynamic situation) must have an underlying invariant structure of properties that does not change (this might be the shape of the object involved, for example). These invariants concern both the whole event and also parts thereof, and they are hierarchically organized in the sense that some are essential, others inessential or such as to depend upon the former, essential properties. Each whole dynamic situation has one or more centre, for example the fulcrum of an acting lever, which are picked up and tracked in perception. (20)

EXCERPT #WHQ7MZ p. 9
  The common-sense world is causally organized -- as was recognized for example by Husserl, whose account of the common-sense world put forward in his 1952 is built around the two central notions of cause and change . To know a thing, Husserl argues, is to know its causal dependencies: it is to know how it will change under given influences, how it will behave when heated or bent. But it is to know also in what respects it will remain the same through given series of changes, and it is part of our common-sense understanding of reality that its denizens are such as to manifest a limited repertoire of systematic regularities in this respect, in the sense that under similar circumstances similar series of changes occur.

EXCERPT #35MRQA p. 9
  There are different sorts of change in the realm of common sense. Thus for example there is change that is internal , as e.g. when a person gets angrier of his own accord. Cases of this sort can be contrasted with changes caused by external circumstances, for example when a thing is dented or bruised. Changes can be divided further into changes in mere appearance (as when objects appear lighter through a change in external lighting conditions) and real changes (as when the apple ripens or a piece of metal expands).

EXCERPT #2J4NF8 p. 9
  Our bodies, too, of course are involved in causal dependencies, and yield the most important family of examples of real change, both internal and external. The body is a thing in space, with its form (extension) and its stock of qualities. The system of causalities into which my body is interwoven in normal experience is moreover such that my body retains an identity of type and of function through all its changes. Thus my limbs return again and again to the same basic positions. They can again and again accomplish the same sorts of things (lifting, turning, running) in the same sorts of regular ways. (Cf. Husserl 1952, pp. 61, 73)

EXCERPT #3J5K22 p. 9
  Among the most important changes in the body, now, are those changes we call sensory perceptions. The network of sensory changes in the body is interwoven with other networks of changes, above all with changes of position and orientation, and more generally with the body's movements. Husserl in fact anticipates here the later position of J. J. Gibson (as also of

EXCERPT #K65G9X p. 10
  Merleau-Ponty and others) concerning the necessary interwovenness of perception as a naturally occurring phenomenon with bodily movements on the part of the perceiving subject. (21)

SECTION #272Z8G 3. Stuffs, States of Matter, Qualities

EXCERPT #UVCRW9 p. 10
  The world of experience is characterized by the fact that it has a qualitative aspect: its basic unities (things) are in such and such qualitative states and are filled through and through by sensory qualities. Not everything that we perceive is a thing. We perceive also the gaps between things, (22) holes, (23) the media (for example water, smoke) in which things move, and we can perceive holograms as well as rainbows and similar phenomena.

EXCERPT #898Z97 p. 10
  Things, now, are in common-sense experience spontaneously correlated with discriminable areas of organization within the continuum of what is given in sensory experience. Within this continuum centres are picked out, centres of accumulation of sensory qualities (where accumulation, here, is to be understood in the usual topological sense (24)). As Husserl pointed out, when we perceive a thing, then we perceive also sensuous qualities. But the latter are not there as it were alongside the physical thing; what is there before us is a unity, something which has physical and sensible properties as one. Moreover, the different strata of sensible properties are themselves bound intimately together: the things we experience are not built out of separate or separable seen, heard and touched constituents. Rather, there is but one thing, along with its properties, 'some of which are predominantly or exclusively (as, e.g., colours and their distinctions) grasped by vision, others by touch.' (Husserl 1952, p. 70)

EXCERPT #ZC8YH6 p. 10
  The multidimensional sensory continuum with its various centres of accumulation is marked further by the feature of extension. Everything that belongs to a material thing is related as a matter of essence to its extension. Extension is, as it were, the axial determination of the thing. Whatever other determinations the thing has, both as a whole and in its parts, it has these determinations across the whole relevant extent they fill its corporeal space. (Cf. Husserl 1952, p. 30). Thus the coloration of an opaque thing covers the entire outer surface of the corporeal thing in its specific fashion. Warmth fills the warm body in another, quite different fashion, and matters are different again as concerns hardness, texture, weight, and so on. (25)

EXCERPT #YMENJS p. 10
  The complexity of the relationship between colour and extension was hinted at already by Hering (1905), who talks of colour as a sort of primitive stuff. Bits of this stuff, he holds, are colour expanses, three-dimensional entities which are made up of colour as such (an idea taken up again by Quine in his Word and Object (§ 19) via the thesis that colour terms are mass terms). In his 1911 David Katz puts forward a taxonomy of the modes of appearance of colour in space which are in fact modes of diffusion or filling of space by different sorts of sensible qualities. Thus for instance surface colour densely occupies a plane; it has texture and is disposed on planes of various intrinsic orientation; volume colour is lacking in texture; film colour is disposed on a plane that is always orthogonal to the line of sight of the viewer; and so on. The French perceptual psychologist Jean Nogu , generalizing Katz's results, went so far as to classify the ways in which different sensuous qualities (colours, sounds, odours) fill space. If one interprets this classification from the point of view of space itself, one can claim that space is sensorily organized following different topologies. The typical mode of diffusion of odours given off by a source, for example, organizes the relevant space into non-oriented olfactory tracks; the recognition of a sound source, on the other hand, organizes the space of the auditor in oriented auditory paths; colours, in contrast, enclose or envelope space. (26)

EXCERPT #KW94QR p. 10
  A part of this programme is developed also by Husserl's doctoral student Wilhelm Schapp, who published in 1910 his Contributions to the Phenomenology of Perception , an attempt to defend a much extended variety of direct realism in the theory of perception. Visual perception, Schapp argues, gives us immediate access not only to things and their colour and form, but also to elasticity, solidity and other dispositional properties:

EXCERPT #VAZ4H7 p. 11
  We see whether a thing is smooth, as we see whether the brass of the lamp is rough like our suit or whether it is liquid like the water or the coffee or whether it is solid like the cup; whether it is homogeneous like the brass, or grainy like the table; whether it is sticky like the honey or runny like the ink. (1910, p. 19)

EXCERPT #2SAUHP p. 11
  Schapp especially contrasts cases in which some parts only of an object are seen as moving with cases in which the whole of an object moves:

EXCERPT #LH7C5Y p. 11
  The case where the whole thing moves offers us little insight into the 'inner structure' of the thing. We then see for example only the lightness or the heaviness of the thing. (1910, p. 21)

EXCERPT #GJ4VRL p. 11
  When, on the contrary, some parts of the object move whereas others do not, and this in a way which follows some lawlike pattern, then we can see whether a body is elastic or whether it is composed of viscous or solid matter (p. 22f). The configuration that is manifested by a given qualitative filling of space both in dynamic cases, as in the perception of elasticity, and also in static ones, as in the perception of surface qualities such as lustre gives us access to certain structural properties of the perceived thing. And this kind of knowledge which is employed by the craftsman, for example Schapp contrasts explicitly with that of the natural scientist (pp. 19, 21-26).

EXCERPT #MP8P2Q p. 11
  What is most interesting about the structural properties picked out by Schapp is that they are properties relating to the stuff of things: to their solidity, fluidity, and the like. Hedwig Conrad-Martius, another early phenomenologist, offers complementary investigations of phenomena linked to stuffs in her Realontologie of 1924. What differentiates stuffs, according to Conrad-Martius, is their qualitative structure in space:

EXCERPT #GVGZKP p. 11
  Material being is substantial fullness in space. And it is precisely the manner in which this fullness is put together in space which leads to the range of different modalities of material constitution (§ 122).

EXCERPT #2ENPMS p. 11
  In chapter 3 ("Concrete Forms of Stuff") Conrad-Martius then analyzes the ways in which sound and noise bear witness to the internal organization of stuffs. She also analyzes the qualitative features of temperature and light and offers a discussion of the different states of matter (§§ 135-70), of naive atomistic explanations (§ 162), of such dispositional properties of stuffs as elasticity, fragility and so on (§§ 171-80), and of aggregates (§ 176).

EXCERPT #2HSWWV p. 11
  In this connection it is worth pointing out also that as early as 1902 Pierre Duhem traced the history of the scientific notion of 'mixture' and provided an outline of its common-sense background in certain elementary human operations. The concept of mixture, as he notes, serves to link conceptually the two notions of aggregate or assembly on the one hand and stuff in the strict sense on the other.

SECTION #5ZPALD 4. Surfaces, Limits, Boundaries, Media

EXCERPT #9FSQAD p. 11
  A systematic ontology of surfaces has been put forward in Stroll's classic (1988), where he also investigates the role that is played by surfaces from the point of view of epistemology. Stroll contrasts two conceptions of surfaces: as two-sided interfaces (the surface of an apple would in this sense involve both thing and medium); and as outermost layers (where only the apple itself is involved).

EXCERPT #CLW7LV p. 12
  Descriptive details of the theory of surfaces are to be found primarily in Gibson (1986), in the section entitled "Surface and the ecological laws of surfaces". As Gibson writes:

EXCERPT #PGJPDY p. 12
  According to classical physics, the universe consists of bodies in space. We are tempted to assume, therefore, that we live in a physical world consisting of bodies in space and that what we perceive consists of objects in space. But this is very dubious. The terrestrial environment is better described in terms of a medium , substances , and the surfaces that separate them. (1986, p. 16)

EXCERPT #XA8AMM p. 12
  The medium, then, is separated from the substances of the environment by surfaces, each surface being such as to have a characteristic texture depending on the composition of the stuff of the relevant underlying substance. (27) Gibson seeks accordingly 'a theory of surface layout, a sort of applied geometry that is appropriate for the study of perception and behavior' and which would investigate concepts such as: ground, open environment, enclosure, detached object, attached object, hollow object, place, sheet, fissure, stick, fibre, dihedral, etc. (1986, p. 33)

EXCERPT #SMY28Y p. 12
  Husserl, on the other hand, describes media as the normal environment for solid objects; they are amorphous , in the sense that they receive their form from the presence of material bodies in them. (28) Media are furthermore the vehicles of causality, and as a by-product of this they carry information about causal sources of all kinds. They are usually transparent in the sense that they do not themselves become objects of cognition in normal cases, though they can, in special circumstances, be properly representable in experience and they can be turned into such non-standard things as clouds of smoke, and so on.

EXCERPT #QCMR2R p. 12
  Fritz Heider's "Thing and Medium" (1926), an elaboration of part of his doctoral dissertation written in Graz under Meinong's direction, seeks an answer to a question central to causal theories of perception: why, when we look at an object, do we perceive the object and not the illuminating source, when the latter is after all causally responsible for the perceptual experience? (29) Heider then analyzes the ambient conditions under which remote objects can be perceived. Not satisfied with the simple statement of a causal relation between the distal and proximal stimuli, he introduces concepts such as relative dominance , order and disorder to account for the unaffectedness of the medium in the course of the transfer of information. A solid thing, he holds, is normally unsuited for the transmission of information which requires a certain causal independence of the vehiculating parts involved. Heider's work then finds echoes in Gibson's notion of perception as a picking up of information in the ambient light (cf. esp. 1986, ch. 2). (30)

SECTION #AX6HDN 5. Motivation, Requiredness, Value

EXCERPT #XBEZHD p. 12
  The world of common sense in contrast to the naive- physical worlds described by Hayes, et al. is both salient and valuable: it is shot through with complex gradients of preferability . The relevance of this fact to a treatment of naive physics, now, turns on the fact that one central aim of naive-physical investigations is to find a means of simulating human action by means of intelligent artifacts. For it seems clear that our human capacity successfully to find our way around the physical world depends crucially upon the spontaneous ways in which we take such value-differentials into account.

EXCERPT #T3GM9C p. 12
  Our perceptual experiences are caused by objects and they are grasped as such from the perspective of common sense. Experiences are thereby bound together dynamically with the objects of this world through relations of causality. Experiences and the objects of the common-sense world are also bound together dynamically in a second sense, however, in that the objects of this world, on being experienced, exert positive and negative forces upon me belonging not to the sphere of causality but to that of human salience and value. The common-sense world is in this sense a meaningful dynamic whole that is shaped in manifold ways by forces of attraction and repulsion.

EXCERPT #N5RQRQ p. 13
  One is reminded in this connection of the Gestalt-theoretical notion of 'requiredness' introduced by Köhler. Requiredness is a form of reference, it is a relation from one thing to another. Requiredness differs from other forms of reference, however, by its demanding character. 'It involves acceptance or rejection of the present status of the context in question, often more particularly, acceptance or rejection of some part by the remainder of the context.' (1938, p. 336)

EXCERPT #LTGUPQ p. 13
  When I apprehend things and persons and surrounding circumstances I am determined by what Husserl calls 'motivations'. One object steers my regard onto itself through its special form. Another draws attention to itself through its beautiful colour or texture. The noise out there makes me close the window. The glass of beer over here makes me reach out my arm to grasp it:

EXCERPT #7MPZTC p. 13
  In short, in my theoretical, emotional, and practical behaviour in my theoretical experience and thinking, in my position-taking as to pleasure, enjoyment, hoping, wishing, desiring, wanting I feel myself conditioned by the matter in question (Husserl 1952, p. 140, cf. also p. 219).

EXCERPT #2C73TH p. 13
  It is an invariant feature of our straightforward experience that the objects motivate us in this sense. There are 'effects' on the subject emanating from the objects, effects of greater or lesser intensity. And then, as Köhler points out: 'The lower this intensity, the more will a condition of merely factual [i.e. physical] relation, juxtaposition, or sequence be realized.' (1938, p. 337)

EXCERPT #NXN7X4 p. 13
  We can consider as a thought experiment the idea that we might present to ourselves the objects of the common-sense world merely perceptually. As subjects of this world, however, we are not merely perceiving but also acting beings, and thus constantly subject to corresponding motivations. Thus in normal conditions we effect spontaneous evaluations of the objects by which we are confronted in a way which amounts to a sort of value-perception : 'the value-character itself is given in original intuition.' (Husserl 1952, p. 186) We directly experience the world as containing values, and thereby also we acquire mediate and immediate goals: objects 'afford' action, in Gibson's phrase. These affordances give rise in turn to new motivational connections in light of the interrelations between the various different goals and sub-goals in whose realization we are at any given moment engaged. These values and goals can then be seen as a new dimension of being within the common-sense world itself, a dimension which, we should argue, is crucial to our capacity to find our way around this world in a physical sense.

### 23. Assistant tool calls

#### Tool call: `get_document`

```json
{
  "id": "3CV92Z"
}
```

### 24. Tool result: get_document

GIT REPOSITORY #3CV92Z
Title: moppe

Outline:
  - /3CV92Z/source-directories/YXRlbGllcg atelier
  - /3CV92Z/source-directories/Y21ha2U cmake
  - /3CV92Z/source-directories/ZG9jcw docs
  - /3CV92Z/source-directories/aWRlYXM ideas
  - /3CV92Z/source-directories/bW9wcGU moppe
  - /3CV92Z/source-directories/cGxhbg plan
  - /3CV92Z/source-directories/cGxhbm5pbmc planning
  - /3CV92Z/source-directories/cmVzZWFyY2g research
  - /3CV92Z/source-directories/dGVzdHM tests
  - /3CV92Z/source-directories/dG9vbHM tools
  - /3CV92Z/source-files/LmNsYW5nLWZvcm1hdA .clang-format
  - /3CV92Z/source-files/LmNsYW5nZA .clangd
  - /3CV92Z/source-files/LmdpdGF0dHJpYnV0ZXM .gitattributes
  - /3CV92Z/source-files/LmdpdGlnbm9yZQ .gitignore
  - /3CV92Z/source-files/QUdFTlRTLm1k AGENTS.md
  - /3CV92Z/source-files/Q0xBVURFLm1k CLAUDE.md
  - /3CV92Z/source-files/Q01ha2VMaXN0cy50eHQ CMakeLists.txt
  - /3CV92Z/source-files/Q01ha2VQcmVzZXRzLmpzb24 CMakePresets.json
  - /3CV92Z/source-files/TWFrZWZpbGU Makefile
  - /3CV92Z/source-files/UkVBRE1FLm1k README.md

### 25. Assistant tool calls

#### Tool call: `read`

```json
{
  "blocks": [
    "/3CV92Z/source-files/UkVBRE1FLm1k#content"
  ]
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "/3CV92Z/source-directories/aWRlYXM"
  ],
  "expand": true
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "/3CV92Z/source-directories/ZG9jcw"
  ],
  "expand": true
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "/3CV92Z/source-directories/bW9wcGU"
  ],
  "expand": true
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "/3CV92Z/source-directories/cGxhbg"
  ],
  "expand": true
}
```

### 26. Tool result: read

SOURCE FILE
Path: README.md
Resource: /3CV92Z/source-files/UkVBRE1FLm1k#content
Size: 3693 bytes, 104 lines

# Moppe

**A motorcycle game in generated worlds.**

![A forested generated landscape beside a lake](screenshots/forest-and-lake.png)

Moppe grows landscapes from geological recipes, lets water find its routes,
settles forests into the resulting habitats, and puts a motorcycle into the
world. The aim is to make places with a readable history: mountains, rivers,
lakes, and trails that arise from the land instead of being scattered on top
of it.

Moppe is an active experimental project, not a packaged release. The current
game runs on a custom Metal renderer across macOS, iOS, and tvOS.

## Generated landscapes

<p align="center">
  <img src="screenshots/mountain-panorama.png" width="49%"
       alt="Mountain ranges fading into atmospheric haze">
  <img src="screenshots/ridge-and-lake.png" width="49%"
       alt="A dark mountain ridge above a distant lake">
</p>
<p align="center">
  <img src="screenshots/valley-light.png" width="49%"
       alt="Sunlight spilling through a high mountain valley">
  <img src="screenshots/alpine-ridges.png" width="49%"
       alt="Closely framed alpine ridges in warm evening light">
</p>
<p align="center">
  <img src="screenshots/ridge-panorama.png" width="98%"
       alt="A broad panorama of layered generated ridges">
</p>

Every world begins with a seed and a `WorldRecipe`. Construction follows one
direct sequence: seeded geology, stream-power evolution, trail formation, and
named hydrology and ecology analyses.

The current engine includes:

- procedural orogeny, erosion, drainage, lakes, rivers, and designed trails;
- deterministic seeded worlds with periodic topology;
- terrain-aware vegetation and generated-world spawn selection;
- motorcycle physics, a deployable hang glider, atmosphere, water, shadows,
  and post-processing;
- keyboard, touch, and game-controller input;
- a portable game-shaped rendering API with Metal backends for Apple devices.

## Build and run

The normal desktop workflow requires macOS, Xcode's developer tools, CMake
3.24 or newer, and Ninja. Configure and build with:

```sh
cmake -B build -G Ninja
cmake --build build
```

Run the game:

```sh
./build/moppe.app/Contents/MacOS/moppe
```

Useful ways to start it include:

```sh
# Revisit a particular generated world.
./build/moppe.app/Contents/MacOS/moppe --windowed --seed 123

# Select a supported graphics preset.
./build/moppe.app/Contents/MacOS/moppe --graphics-quality balanced
```

Run the test suite with:

```sh
ctest --test-dir build --output-on-failure
```

The first configuration fetches pinned source dependencies. CMake also emits
`compile_commands.json` automatically for editor tooling.

## Find your way around

- [Project status](docs/project.org) describes what exists, what is active,
  and what remains experimental.
- [Engine atlas](docs/engine-atlas.md) is the current map of the engine's
  domains, ownership boundaries, and target graph.
- [Generated worlds](docs/generated-world.md) explains construction and
  activation of a completed world.
- [Terrain generation and analysis](docs/terrain-expressions.md) describes
  the direct finite generation path and its typed products.
- [Planning](planning/README.md) contains accepted RFCs and dependency-shaped
  work items.
- [Ideas](ideas/README.md) holds the longer-range design writing behind the
  world.
- [Development guidelines](AGENTS.md) collects the complete build, capture,
  profiling, iOS, and working-practice commands.

The shortest description of the direction is: generate a landscape,
understand how it formed, render it convincingly, and ride through it. The
larger question is what becomes possible once the ride has taken you somewhere
worth noticing.

### 27. Tool result: read

GIT REPOSITORY #3CV92Z
moppe

SOURCE DIRECTORY /3CV92Z/source-directories/aWRlYXM ideas

SOURCE FILE /3CV92Z/source-files/aWRlYXMvUkVBRE1FLm1k#content ideas/README.md

SOURCE FILE /3CV92Z/source-files/aWRlYXMvZ2VvbWV0cnktZnJvbS1maWVsZHMubWQ#content ideas/geometry-from-fields.md

SOURCE FILE /3CV92Z/source-files/aWRlYXMvbGFuZ3VhZ2UudHh0#content ideas/language.txt

SOURCE FILE /3CV92Z/source-files/aWRlYXMvb3JpZW50YXRpb24ubWQ#content ideas/orientation.md

SOURCE FILE /3CV92Z/source-files/aWRlYXMvcmVhZGluZy1tYXAubWQ#content ideas/reading-map.md

SOURCE FILE /3CV92Z/source-files/aWRlYXMvc2Vjb25kLWF1dGhvci5tZA#content ideas/second-author.md

SOURCE FILE /3CV92Z/source-files/aWRlYXMvc3RydWN0dXJlLW9mLXNwYWNlLm1k#content ideas/structure-of-space.md

SOURCE FILE /3CV92Z/source-files/aWRlYXMvdGVuZGluZy10aGUtd29ybGQubWQ#content ideas/tending-the-world.md

SOURCE FILE /3CV92Z/source-files/aWRlYXMvdGVycmFpbi1sYWItc3BlY3RhY2xlcy5tZA#content ideas/terrain-lab-spectacles.md

SOURCE FILE /3CV92Z/source-files/aWRlYXMvdGhlb3J5LW9mLXRoZS13b3JsZC5tZA#content ideas/theory-of-the-world.md

SOURCE FILE /3CV92Z/source-files/aWRlYXMvd2F0ZXJzaGVkcy1vZi1leGVjdXRpb24ubWQ#content ideas/watersheds-of-execution.md

SOURCE FILE /3CV92Z/source-files/aWRlYXMvd29ybGQtYXMtbGFiLm1k#content ideas/world-as-lab.md

### 28. Tool result: read

GIT REPOSITORY #3CV92Z
moppe

SOURCE DIRECTORY /3CV92Z/source-directories/ZG9jcw docs

SOURCE FILE /3CV92Z/source-files/ZG9jcy9SRUFETUUubWQ#content docs/README.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy9hdGVsaWVyLWVhcnRoLm1k#content docs/atelier-earth.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy9hdGVsaWVyLXRyZWUubWQ#content docs/atelier-tree.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy9lbmdpbmUtYXRsYXMubWQ#content docs/engine-atlas.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy9nYW1lLXN0YXRlLm1k#content docs/game-state.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy9nZW5lcmF0ZWQtd29ybGQubWQ#content docs/generated-world.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy9sYXR0aWNlLWhhcm1vbml6YXRpb24ubWQ#content docs/lattice-harmonization.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy9vbnRvbG9neS5tZA#content docs/ontology.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy9vcm9nZW55LXBlcmZvcm1hbmNlLm1k#content docs/orogeny-performance.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy9wcm9qZWN0Lm9yZw#content docs/project.org

SOURCE FILE /3CV92Z/source-files/ZG9jcy9yZWZhY3RvcmluZy1zZWFtcy5tZA#content docs/refactoring-seams.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy9yZW5kZXJlci1kZXNpZ24ubWQ#content docs/renderer-design.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy9zdXJmYWNlLWF0bGFzLm1k#content docs/surface-atlas.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy90ZXJyYWluLWV4cHJlc3Npb25zLm1k#content docs/terrain-expressions.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy90cmFpbHMubWQ#content docs/trails.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy91bml0cy5tZA#content docs/units.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy93YXRlci1iZW5jaG1hcmtzLm1k#content docs/water-benchmarks.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy93ZWIubWQ#content docs/web.md

SOURCE FILE /3CV92Z/source-files/ZG9jcy93b3JraW5nLXByYWN0aWNlcy5tZA#content docs/working-practices.md

### 29. Tool result: read

GIT REPOSITORY #3CV92Z
moppe

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGU moppe

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvZ2FtZQ game

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9ibG9iX3NoYWRvdy5jYw#content moppe/game/blob_shadow.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9ibG9iX3NoYWRvdy5oaA#content moppe/game/blob_shadow.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9jaGFzZV9jYW1lcmEuY2M#content moppe/game/chase_camera.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9jaGFzZV9jYW1lcmEuaGg#content moppe/game/chase_camera.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9jaW5lbWF0aWNfZmxpZ2h0LmNj#content moppe/game/cinematic_flight.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9jaW5lbWF0aWNfZmxpZ2h0Lmho#content moppe/game/cinematic_flight.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9kb29yLmho#content moppe/game/door.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9kdXN0LmNj#content moppe/game/dust.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9kdXN0Lmho#content moppe/game/dust.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9mb3Jlc3QuY2M#content moppe/game/forest.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9mb3Jlc3QuaGg#content moppe/game/forest.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9mcmFtZV92aWV3LmNj#content moppe/game/frame_view.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9mcmFtZV92aWV3Lmho#content moppe/game/frame_view.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9nYW1lLmNj#content moppe/game/game.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9nYW1lX3Nlc3Npb24uY2M#content moppe/game/game_session.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9nYW1lX3Nlc3Npb24uaGg#content moppe/game/game_session.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9nYW1lX3N0YXRlLmho#content moppe/game/game_state.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9nZW5lcmF0ZWRfd29ybGQuY2M#content moppe/game/generated_world.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9nZW5lcmF0ZWRfd29ybGQuaGg#content moppe/game/generated_world.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9nbGlkZXJfcmVuZGVyLmNj#content moppe/game/glider_render.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9nbGlkZXJfcmVuZGVyLmho#content moppe/game/glider_render.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9ncmFwaGljc19iZW5jaG1hcmsuaGg#content moppe/game/graphics_benchmark.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9ncmFwaGljc19zZXR0aW5ncy5jYw#content moppe/game/graphics_settings.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9ncmFwaGljc19zZXR0aW5ncy5oaA#content moppe/game/graphics_settings.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9odWQuY2M#content moppe/game/hud.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9odWQuaGg#content moppe/game/hud.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9pbnB1dF9mcmFtZS5oaA#content moppe/game/input_frame.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9pbnB1dF9mcmFtZV9hZGFwdGVyLmho#content moppe/game/input_frame_adapter.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9pbnNwZWN0b3JfdWkuY2M#content moppe/game/inspector_ui.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9pbnNwZWN0b3JfdWkuaGg#content moppe/game/inspector_ui.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9sYXVuY2hfb3B0aW9ucy5jYw#content moppe/game/launch_options.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9sYXVuY2hfb3B0aW9ucy5oaA#content moppe/game/launch_options.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9tYWluLmNj#content moppe/game/main.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9tb2RlbC5jYw#content moppe/game/model.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9tb2RlbC5oaA#content moppe/game/model.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9tb3BwZV9nYW1lLmho#content moppe/game/moppe_game.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9yaXZlcl9zdXJmYWNlLmNj#content moppe/game/river_surface.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9yaXZlcl9zdXJmYWNlLmho#content moppe/game/river_surface.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9zZWVkX21lbW9yeS5jYw#content moppe/game/seed_memory.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9zZWVkX21lbW9yeS5oaA#content moppe/game/seed_memory.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9zcHJpdGVzLmNj#content moppe/game/sprites.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9zcHJpdGVzLmho#content moppe/game/sprites.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9zdGFycy5jYw#content moppe/game/stars.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9zdGFycy5oaA#content moppe/game/stars.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9zdXJmYWNlX3ByZXNlbnRhdGlvbi5jYw#content moppe/game/surface_presentation.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS9zdXJmYWNlX3ByZXNlbnRhdGlvbi5oaA#content moppe/game/surface_presentation.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS90ZXJyYWluLmNj#content moppe/game/terrain.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS90ZXJyYWluLmho#content moppe/game/terrain.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS90ZXN0YmVkLmNj#content moppe/game/testbed.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS90cmVlX3N0YW5kLmNj#content moppe/game/tree_stand.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS90cmVlX3N0YW5kLmho#content moppe/game/tree_stand.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS92ZWhpY2xlX3JlbmRlci5jYw#content moppe/game/vehicle_render.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS92ZWhpY2xlX3JlbmRlci5oaA#content moppe/game/vehicle_render.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS93YWxrZXIuY2M#content moppe/game/walker.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS93YWxrZXIuaGg#content moppe/game/walker.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS93YWxrZXJfcmVuZGVyLmNj#content moppe/game/walker_render.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS93YWxrZXJfcmVuZGVyLmho#content moppe/game/walker_render.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS93YXRlcl9jYXB0dXJlLmNj#content moppe/game/water_capture.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS93YXRlcl9jYXB0dXJlLmho#content moppe/game/water_capture.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS93YXRlcl9wcmVzZW50YXRpb24uY2M#content moppe/game/water_presentation.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS93YXRlcl9wcmVzZW50YXRpb24uaGg#content moppe/game/water_presentation.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS93b3JsZC5oaA#content moppe/game/world.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS93b3JsZF9sb2FkaW5nLmNj#content moppe/game/world_loading.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2FtZS93b3JsZF9sb2FkaW5nLmho#content moppe/game/world_loading.hh

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvZ2Z4 gfx

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2Z4L21hdDQuaGg#content moppe/gfx/mat4.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2Z4L21hdGguaGg#content moppe/gfx/math.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2Z4L3RnYS5jYw#content moppe/gfx/tga.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvZ2Z4L3RnYS5oaA#content moppe/gfx/tga.hh

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvbWFw map

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbWFwL3N1cmZhY2UuY2M#content moppe/map/surface.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbWFwL3N1cmZhY2UuaGg#content moppe/map/surface.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbWFwL3N1cmZhY2VfYXRsYXMuaGg#content moppe/map/surface_atlas.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbWFwL3N1cmZhY2VfZG9tYWluLmho#content moppe/map/surface_domain.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbWFwL3N1cmZhY2VfZWNvbG9neS5jYw#content moppe/map/surface_ecology.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbWFwL3N1cmZhY2VfZ2VvbWV0cnkuY2M#content moppe/map/surface_geometry.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbWFwL3N1cmZhY2VfbWF0ZXJpYWxzLmNj#content moppe/map/surface_materials.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbWFwL3N1cmZhY2Vfc2VjdGlvbnMuaGg#content moppe/map/surface_sections.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbWFwL3RlcnJhaW5fZ2VuZXJhdGlvbi5jYw#content moppe/map/terrain_generation.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbWFwL3RlcnJhaW5fZ2VuZXJhdGlvbi5oaA#content moppe/map/terrain_generation.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbWFwL3dhdGVyX3N1cmZhY2UuY2M#content moppe/map/water_surface.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbWFwL3dhdGVyX3N1cmZhY2UuaGg#content moppe/map/water_surface.hh

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvbW92 mov

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbW92L2dsaWRlci5jYw#content moppe/mov/glider.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbW92L2dsaWRlci5oaA#content moppe/mov/glider.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbW92L3ZlaGljbGUuY2M#content moppe/mov/vehicle.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvbW92L3ZlaGljbGUuaGg#content moppe/mov/vehicle.hh

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvcGxhdGZvcm0 platform

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvcGxhdGZvcm0vYXBwbGU apple

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vYXBwbGUvYXBwbGVfY29tbW9uLm1t#content moppe/platform/apple/apple_common.mm

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vYXBwbGUvZ2FtZV9jb250cm9sbGVyLmho#content moppe/platform/apple/game_controller.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vYXBwbGUvZ2FtZV9jb250cm9sbGVyLm1t#content moppe/platform/apple/game_controller.mm

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvcGxhdGZvcm0vaW9z ios

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvcGxhdGZvcm0vaW9zL0Fzc2V0cy54Y2Fzc2V0cw Assets.xcassets

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvcGxhdGZvcm0vaW9zL0Fzc2V0cy54Y2Fzc2V0cy9BcHBJY29uLmFwcGljb25zZXQ AppIcon.appiconset

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vaW9zL0Fzc2V0cy54Y2Fzc2V0cy9BcHBJY29uLmFwcGljb25zZXQvQ29udGVudHMuanNvbg#content moppe/platform/ios/Assets.xcassets/AppIcon.appiconset/Contents.json

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vaW9zL0Fzc2V0cy54Y2Fzc2V0cy9Db250ZW50cy5qc29u#content moppe/platform/ios/Assets.xcassets/Contents.json

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vaW9zL0V4cG9ydE9wdGlvbnMucGxpc3Q#content moppe/platform/ios/ExportOptions.plist

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vaW9zL0luZm8ucGxpc3QuaW4#content moppe/platform/ios/Info.plist.in

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vaW9zL21haW5faW9zLm1t#content moppe/platform/ios/main_ios.mm

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvcGxhdGZvcm0vbWFj mac

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vbWFjL0luZm8ucGxpc3QuaW4#content moppe/platform/mac/Info.plist.in

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vbWFjL21haW5fbWFjLm1t#content moppe/platform/mac/main_mac.mm

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvcGxhdGZvcm0vdHZvcw tvos

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vdHZvcy9JbmZvLnBsaXN0Lmlu#content moppe/platform/tvos/Info.plist.in

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vdHZvcy9tYWluX3R2b3MubW0#content moppe/platform/tvos/main_tvos.mm

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvcGxhdGZvcm0vd2Vi web

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vd2ViL21haW5fd2ViLmNj#content moppe/platform/web/main_web.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vd2ViL3NoZWxsLmh0bWw#content moppe/platform/web/shell.html

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGxhdGZvcm0vcGxhdGZvcm0uaGg#content moppe/platform/platform.hh

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvcmVuZGVy render

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvcmVuZGVyL21ldGFs metal

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcmVuZGVyL21ldGFsL21ldGFsX3JlbmRlcmVyLmho#content moppe/render/metal/metal_renderer.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcmVuZGVyL21ldGFsL21ldGFsX3JlbmRlcmVyLm1t#content moppe/render/metal/metal_renderer.mm

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcmVuZGVyL21ldGFsL3NoYWRlcl90eXBlcy5o#content moppe/render/metal/shader_types.h

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvcmVuZGVyL3dlYmdwdQ webgpu

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcmVuZGVyL3dlYmdwdS93ZWJncHVfcmVuZGVyZXIuY2M#content moppe/render/webgpu/webgpu_renderer.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcmVuZGVyL3dlYmdwdS93ZWJncHVfcmVuZGVyZXIuaGg#content moppe/render/webgpu/webgpu_renderer.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcmVuZGVyL2RyYXcuY2M#content moppe/render/draw.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcmVuZGVyL2RyYXcuaGg#content moppe/render/draw.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcmVuZGVyL3JlbmRlcmVyLmho#content moppe/render/renderer.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcmVuZGVyL3RleHQuY2M#content moppe/render/text.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcmVuZGVyL3RleHQuaGg#content moppe/render/text.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcmVuZGVyL3R5cGVzLmho#content moppe/render/types.hh

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvc2hhZGVycw shaders

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvc2hhZGVycy9tZXRhbA metal

SOURCE FILE /3CV92Z/source-files/bW9wcGUvc2hhZGVycy9tZXRhbC9jb21tb24uaA#content moppe/shaders/metal/common.h

SOURCE FILE /3CV92Z/source-files/bW9wcGUvc2hhZGVycy9tZXRhbC9kdXN0Lm1ldGFs#content moppe/shaders/metal/dust.metal

SOURCE FILE /3CV92Z/source-files/bW9wcGUvc2hhZGVycy9tZXRhbC9vY2Vhbi5tZXRhbA#content moppe/shaders/metal/ocean.metal

SOURCE FILE /3CV92Z/source-files/bW9wcGUvc2hhZGVycy9tZXRhbC9vcm9nZW55Lm1ldGFs#content moppe/shaders/metal/orogeny.metal

SOURCE FILE /3CV92Z/source-files/bW9wcGUvc2hhZGVycy9tZXRhbC9wb3N0Lm1ldGFs#content moppe/shaders/metal/post.metal

SOURCE FILE /3CV92Z/source-files/bW9wcGUvc2hhZGVycy9tZXRhbC9yaXZlci5tZXRhbA#content moppe/shaders/metal/river.metal

SOURCE FILE /3CV92Z/source-files/bW9wcGUvc2hhZGVycy9tZXRhbC9za3kubWV0YWw#content moppe/shaders/metal/sky.metal

SOURCE FILE /3CV92Z/source-files/bW9wcGUvc2hhZGVycy9tZXRhbC90ZXJyYWluLm1ldGFs#content moppe/shaders/metal/terrain.metal

SOURCE FILE /3CV92Z/source-files/bW9wcGUvc2hhZGVycy9tZXRhbC91YmVyLm1ldGFs#content moppe/shaders/metal/uber.metal

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvc3BhdGlhbA spatial

SOURCE FILE /3CV92Z/source-files/bW9wcGUvc3BhdGlhbC9idW5kbGUuaGg#content moppe/spatial/bundle.hh

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvdGVycmFpbg terrain

SOURCE DIRECTORY /3CV92Z/source-directories/bW9wcGUvdGVycmFpbi9tZXRhbA metal

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9tZXRhbC9tZXRhbF9zdHJlYW1fcG93ZXJfZXZvbHV0aW9uLmho#content moppe/terrain/metal/metal_stream_power_evolution.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9tZXRhbC9tZXRhbF9zdHJlYW1fcG93ZXJfZXZvbHV0aW9uLm1t#content moppe/terrain/metal/metal_stream_power_evolution.mm

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9tZXRhbC9vcm9nZW55X3NoYWRlcl90eXBlcy5o#content moppe/terrain/metal/orogeny_shader_types.h

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9kb21haW4uaGg#content moppe/terrain/domain.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9kcmFpbmFnZS5jYw#content moppe/terrain/drainage.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9kcmFpbmFnZS5oaA#content moppe/terrain/drainage.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9lbGV2YXRpb25fbWFwLmho#content moppe/terrain/elevation_map.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9mbG9vZC5jYw#content moppe/terrain/flood.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9mbG9vZC5oaA#content moppe/terrain/flood.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9mcmFjdGlvbmFsX2RyYWluYWdlLmNj#content moppe/terrain/fractional_drainage.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9mcmFjdGlvbmFsX2RyYWluYWdlLmho#content moppe/terrain/fractional_drainage.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9nZW9sb2dpY2FsLmNj#content moppe/terrain/geological.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9nZW9sb2dpY2FsLmho#content moppe/terrain/geological.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9tZXJnZV90cmVlLmNj#content moppe/terrain/merge_tree.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9tZXJnZV90cmVlLmho#content moppe/terrain/merge_tree.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9tb2lzdHVyZS5jYw#content moppe/terrain/moisture.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9tb2lzdHVyZS5oaA#content moppe/terrain/moisture.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9ub2lzZS5jYw#content moppe/terrain/noise.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9ub2lzZS5oaA#content moppe/terrain/noise.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9vcm9nZW55X2JlbmNobWFyay5jYw#content moppe/terrain/orogeny_benchmark.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9yYXN0ZXIuY2M#content moppe/terrain/raster.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9yYXN0ZXIuaGg#content moppe/terrain/raster.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9yZWFkaW5ncy5jYw#content moppe/terrain/readings.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9yZWFkaW5ncy5oaA#content moppe/terrain/readings.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9yaXZlci5jYw#content moppe/terrain/river.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9yaXZlci5oaA#content moppe/terrain/river.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9zdHJlYW1fcG93ZXJfZXZvbHV0aW9uLmNj#content moppe/terrain/stream_power_evolution.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi9zdHJlYW1fcG93ZXJfZXZvbHV0aW9uLmho#content moppe/terrain/stream_power_evolution.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi90ZXJyYWluX3F1YW50aXRpZXMuaGg#content moppe/terrain/terrain_quantities.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi90b3BvbG9neS5oaA#content moppe/terrain/topology.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi90cmFpbC5jYw#content moppe/terrain/trail.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi90cmFpbC5oaA#content moppe/terrain/trail.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi90eXBlcy5oaA#content moppe/terrain/types.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi93YXRlcl9kZXB0aF9leHBlcmltZW50LmNj#content moppe/terrain/water_depth_experiment.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi93YXRlcmNvdXJzZS5jYw#content moppe/terrain/watercourse.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi93YXRlcmNvdXJzZS5oaA#content moppe/terrain/watercourse.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi93YXRlcmxpbmUuY2M#content moppe/terrain/waterline.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi93YXRlcmxpbmUuaGg#content moppe/terrain/waterline.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi93b3JsZF9yZWNpcGUuY2M#content moppe/terrain/world_recipe.cc

SOURCE FILE /3CV92Z/source-files/bW9wcGUvdGVycmFpbi93b3JsZF9yZWNpcGUuaGg#content moppe/terrain/world_recipe.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvY29sb3IuaGg#content moppe/color.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcGFydGl0aW9uLmho#content moppe/partition.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcHJvZmlsZS5oaA#content moppe/profile.hh

SOURCE FILE /3CV92Z/source-files/bW9wcGUvcXVhbnRpdGllcy5oaA#content moppe/quantities.hh

### 30. Tool result: read

GIT REPOSITORY #3CV92Z
moppe

SOURCE DIRECTORY /3CV92Z/source-directories/cGxhbg plan

SOURCE DIRECTORY /3CV92Z/source-directories/cGxhbi9kb25l done

SOURCE FILE /3CV92Z/source-files/cGxhbi9kb25lL3JmYy0wMDEtdXBsaWZ0LXN0cmVhbS1wb3dlci5tZA#content plan/done/rfc-001-uplift-stream-power.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9kb25lL3JmYy0wMDItaGlsbHNsb3BlLWRpZmZ1c2lvbi5tZA#content plan/done/rfc-002-hillslope-diffusion.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9kb25lL3JmYy0wMDMtc2VkaW1lbnQtbGVkZ2VyLXJhc3RlcnMubWQ#content plan/done/rfc-003-sediment-ledger-rasters.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9kb25lL3JmYy0wMDQtZXJvc2lvbi1wZXJmb3JtYW5jZS5tZA#content plan/done/rfc-004-erosion-performance.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9kb25lL3JmYy0wMDUtZnJhZ21lbnQtcmF0ZS1ub3JtYWxzLm1k#content plan/done/rfc-005-fragment-rate-normals.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9kb25lL3JmYy0wMDctd2F0ZXJsaW5lLWNvbmZvcm1pbmctZ2VvbWV0cnkubWQ#content plan/done/rfc-007-waterline-conforming-geometry.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9SRUFETUUubWQ#content plan/README.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9yZmMtMDA2LWFuYWx5dGljLWNoYW5uZWxzLm1k#content plan/rfc-006-analytic-channels.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9yZmMtMDA4LWdlb2xvZ3ktY29uZGl0aW9uZWQtdGVzc2VsbGF0aW9uLm1k#content plan/rfc-008-geology-conditioned-tessellation.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9yZmMtMDA5LXJlbGllZi1yZWFkaW5ncy5tZA#content plan/rfc-009-relief-readings.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9yZmMtMDEwLWRpYWdvbmFsLWJpYXMubWQ#content plan/rfc-010-diagonal-bias.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9yZmMtMDExLWZpZWxkLWRvbWFpbi1yZW1hcC5tZA#content plan/rfc-011-field-domain-remap.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9yZmMtMDEyLWVsZXZhdGlvbi1kYXR1bXMtbm9ybWFsaXphdGlvbi5tZA#content plan/rfc-012-elevation-datums-normalization.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9yZmMtMDEzLWRpc2NyZXRpemF0aW9uLXJlY29uc3RydWN0aW9uLm1k#content plan/rfc-013-discretization-reconstruction.md

SOURCE FILE /3CV92Z/source-files/cGxhbi9yZmMtMDE0LW1lcmdlLXRyZWUtaHlkcm9sb2d5Lm1k#content plan/rfc-014-merge-tree-hydrology.md

### 31. Assistant tool calls

#### Tool call: `read`

```json
{
  "blocks": [
    "/3CV92Z/source-files/ZG9jcy9vbnRvbG9neS5tZA#content"
  ]
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "/3CV92Z/source-files/aWRlYXMvdGhlb3J5LW9mLXRoZS13b3JsZC5tZA#content"
  ]
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "/3CV92Z/source-files/aWRlYXMvc3RydWN0dXJlLW9mLXNwYWNlLm1k#content"
  ]
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "/3CV92Z/source-files/bW9wcGUvcGFydGl0aW9uLmho#content"
  ]
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "/3CV92Z/source-files/bW9wcGUvbW92L3ZlaGljbGUuaGg#content",
    "/3CV92Z/source-files/bW9wcGUvbW92L3ZlaGljbGUuY2M#content"
  ]
}
```

#### Tool call: `read`

```json
{
  "blocks": [
    "/3CV92Z/source-files/ZG9jcy9lbmdpbmUtYXRsYXMubWQ#content"
  ]
}
```

### 32. Tool result: read

SOURCE FILE
Path: docs/ontology.md
Resource: /3CV92Z/source-files/ZG9jcy9vbnRvbG9neS5tZA#content
Size: 15137 bytes, 290 lines

# What Exists in Moppe

Moppe keeps careful accounts of *how much*: heights in meters, thrust in
newtons, sink rates in meters per second. The type system refuses to add an
airspeed to an altitude, and the codebase is better for it. This document
starts a parallel set of accounts about *what kinds of things there are*.
It is not a specification and it proposes no work. It is a vocabulary — a
way of talking about the game world that stays truthful about the structure
of what the code simulates, the way `units.md` stays truthful about
magnitudes.

The vocabulary is borrowed, mostly from the ontologist Barry Smith and his
collaborators, whose papers live in `research/` (readable in sections at
`https://m.sheaf.less.rest/` with `Accept: text/markdown`). Their subject is
ordinary reality — mountains, headaches, county borders, orchestras — but a
game world turns out to be built from the same kinds of things, and it is
clarifying to call them by their proper names.


## Fields and things

Ask what the terrain *is* and two honest answers come back.

To the simulation, the terrain is a field: elevation as a value at every
position, and alongside it moisture, forest cover, snow support, channel
flux — each a quantity distributed over the same ground. This is the
scientist's answer. Hydrology and erosion are computed this way because
they are field phenomena; nothing in a drainage calculation ever needs to
know where one mountain ends and the next begins.

To the player, the terrain is things: a mountain, a valley, a river with a
mouth, a waterfall worth flying past. This is not a lesser answer. People —
and cameras, and quest designers — deal in objects, because objects are
what you can name, visit, and point at.

Smith and Mark, in *Do Mountains Exist?*, show how both answers hold at
once. The mountain is real, but it is a **fiat object**: a portion of the
elevation field set into relief and named, the way Mount Everest is a
demarcation drawn on geophysical reality rather than a self-bounding thing
like a planet. Fiat objects have graded, vague boundaries — nobody can say
exactly where a mountain stops, and nobody needs to. The water-feature
namer (stream, river, confluence, mouth, waterfall, lake) and the cinematic
landmark planner are the game performing exactly this projection: carving
nameable things out of fields so that the camera can tour them and the
player can be somewhere. Trail influence and home-base influence do the
same job with honest gradedness — membership that fades instead of ending.

The rule of thumb this yields: **simulate in fields, experience in
objects**, and treat the projection from one to the other as real work with
a real name.


## Six kinds of entity

Aristotle sorted what exists into a small table; Smith's *Against
Fantology* extends it to six cells, and the game fills every one of them.

There are **substances**: things that exist on their own and persist —
this bike, this glider, this cedar, the walker. A substance has an
essence: being a bike is not a state the bike is in, it is what the thing
*is*, and it is true the whole time the bike exists.

There are **qualities**: things that exist only *in* something else — this
bike's boost charge, the moisture of this patch of ground, the bank of this
glider right now. A quality cannot float free; there is no boost charge
without a bike to have it. The bundle types make this dependence
structural: a moisture value exists only at a site of a domain, and the
compiler will not let you write one down otherwise.

And there are **processes**: things that happen — this jump, this landing,
this cinematic flight, the afternoon's slow clouding-over. A process is
not a thing that changes; a process *is* a change, stretched over time,
with the bike as its participant.

Each of the three comes in particular and universal. *This* jump is a
particular; *jump* is the universal it instantiates. The quantity specs
are exactly the universals of the quality column: `airspeed` and
`rate_of_climb` are both measured in meters per second, but they are
different universals, which is why they are different specs. Keeping the
spec vocabulary curated — one spec per genuine quality, none for arbitrary
combinations — is the ontological discipline that Smith calls resisting
*Booleanism*: reality does not contain a quality for every expression you
can form, and neither should the game.

The reason to keep all six cells distinct is what Smith's paper is about.
Flatten them — treat "is a bike" and "is airborne" as the same sort of
runtime fact, or reduce every entity to a bare id with property cells, as
an entity-component spreadsheet does — and you get a world of unknowable
particulars inspected through null checks. The six-fold structure is what
the null checks were compensating for.


## What persists and what happens

Smith's SNAP/SPAN framework says a changing world needs two linked books
of account. One book inventories **continuants**: everything that exists
wholly at an instant and endures — the bike, its boost charge, the trail
network. The other inventories **occurrents**: everything that unfolds —
rides, jumps, landings, a session's whole history. Neither book reduces to
the other, and each continuant appears in the second book once, as its
**life**.

The game already keeps both books; it just never said so. `GameState` is a
SNAP inventory: the copyable value of everything that exists at this tick.
The fixed-step input tape and the replay machinery are SPAN: a session's
history as a first-class thing you can store and re-run. The philosophical
footnote that earns its keep here is that *processes cannot change* — a
process is timelessly whatever it turns out to be — which is why a replay
tape is immutable by nature and not merely by implementation choice.

Where a process crosses a threshold there is an **event**: an instantaneous
boundary. Touchdown. Star collected. Glider deployed. The scattered
airtime floats and pop-on-read impact values in the current code are events
and processes recorded without their proper category; the vocabulary at
least lets us see them as such.


## Parts, attachments, places

The word "hierarchy" hides three different relations, and scene graphs
earn their bad reputation by melting them into one pointer.

**Parthood** is definitional. The wheel is part of the bike the way the
heart is part of the body: a bike without a wheel is not a sparser bike
but a damaged one. Parthood belongs in the type: a bike *is* frame and
wheels and steering, the way a product type says.

**Attachment** is circumstantial but grammatical. The rider mounts the
bike; the bike hangs tethered beneath the glider; the glider is dropped.
These are configurations drawn from a small closed set, with rules about
which transitions are possible when. The mode flag and the
`bike_attached` boolean are this grammar written in shorthand.

**Location** is neither. The bike is not part of the terrain and not
attached to it; it is *on* it, which is a relation you query — sample the
field under the wheels — not a link you store. Keeping location out of
the structural relations is what keeps them small, and it is the mistake
scene graphs make when the player gets reparented under the boat.

A body, incidentally, has the same shape all the way down: Smith's paper
on bodily systems describes an organism as a nested spatial-functional
hierarchy whose subsystems are fiat demarcations. The walker's limbs, a
tree's branching, a river's confluence tree — one directed-tree vocabulary,
as the Atelier notes already observe about drainage and organisms.


## Multitudes

Some things come in populations: the pickup stars, the grove of trees, the
dust emissions, someday traffic. A population is not an arbitrary set —
Smith is scornful of set theory's willingness to collect numbers and popes
together — but a collection *of a kind, in a context*: many instances of
one universal sharing one setting. That is why a fleet can be total, every
member having every quality of its kind, with none of the spreadsheet's
empty cells.

Members of a population are born and die, and identity across that
churn — being *the same star* between one snapshot and the next — is what
the philosophers call **genidentity**. A handle with a generation counter
is genidentity implemented; a recycled slot resurrecting the wrong star is
a genidentity bug.


## Systems, magnitudes, models

Landgrebe and Smith's ontology of physics adds the top floor. A **system**
is a portion of reality delimited *by fiat*: you choose a granularity and
a boundary — the planets, or the planets with their moons — because you
choose which interactions you are modeling. The vehicle system, the
soaring model, the drainage network: none of these carve the game world at
pre-given joints, and none need apologize for it. Delimiting a system is
a modeling act, and it is done well or badly, not truly or falsely.

A **magnitude** is a measurable phenomenon — mass, sink rate, boost
energy — and each magnitude is a dimension of the system's **phase
space**. This gives the right way to see a state value: not a struct that
accumulated fields, but a phase space that should be able to say what its
dimensions are. A bag like the current logic-state struct is a phase
space with unlabeled axes.

A **model**, finally, is a human-made representation of a system —
equations, drawings, code — and models approximate by nature. Their
worked example of an idealized model is, delightfully, a weight on a
spring: the harmonic oscillator, template for every refinement. The game
is full of these honest small models — the comment in `glider.hh` calls
its physics "a deliberately compact soaring model," which is exactly the
right register. The code is the model stratum of the game: laws written
as update rules, idealization as license rather than lapse.


## Pictures of the world

The engine is full of representations: the height texture, the trail-map
HUD, the frame snapshot handed to the renderer, the benchmark CSV, a saved
checkpoint. Smith's *True Grid* and the granular-partition papers give a
single account of what all of these are: a **grid** of cells stands in a
**projection** relation to reality, and when projection succeeds each
object is **located** at its cell. A grid whose projection and location
agree — where the map says what is there, and what is there is what the
map says — is **transparent**: you look through it at the things
themselves. Transparency is the correctness condition of every bridge in
the codebase, from bundle columns packed into texture lanes to poses
frozen into a frame. The two classic ways a representation goes wrong are
exactly the two familiar bugs: cells projecting onto nothing (a dangling
handle) and cell structure disagreeing with object structure (a mirror
that drifted out of sync).

Three details of the theory pay immediate rent. Grids may hold **empty
cells** without being false — the periodic table kept labeled boxes for
undiscovered elements — so spare fleet capacity and absent optional poses
are respectable. A fixed grid may be **re-projected over time** — their
example is a territorial grid sampling birds from moment to moment — which
is precisely what a frame is: the same cells every frame, aimed anew sixty
times a second. And every grid has a **direction of fit**. Most of the
engine's grids fit world-to-map: the render, the HUD, the CSV must conform
to the world, and their virtue is fidelity. The trail system fits both
ways at once, like a cadastre: walkers wear the trail, the trail steers
the walkers, and its virtue is stable convergence. And one grid fits
map-to-world: the recipe.


## The unreal, made real on demand

A game world is, in the terms of Smith's paper on the unreal, fiction: its
representations are about things that do not exist. Fiction's cells
project into thin air — his older example is a catalogue of Aztec gods.
But procedural generation is fiction with a private amendment: the recipe
is a plan whose execution *manufactures its referents*. A seed names a
world the way "Mount Everest" names a mountain — rigidly — except that
uttering the name is what brings the mountain into being. Generation is a
performative map, and determinism is simply the demand that the
performance be repeatable: same seed, same world, so that the name never
dangles.

This is why the game can hold itself to a standard that ordinary fiction
cannot: within a generated world, every well-formed representation can be
transparent, because the world and its pictures issue from the same act.


## The vocabulary, briefly

- **field** — a quantity everywhere over a domain (elevation, moisture)
- **fiat object** — a named, vaguely-bounded demarcation of a field
  (a mountain, a river mouth, a trail)
- **substance** — an independent persisting thing (the bike, this tree)
- **quality** — a dependent thing, existing only in its bearer
  (this bike's boost charge); its universal is a quantity spec
- **process / event** — what happens / its instantaneous boundary
  (this jump / touchdown)
- **continuant / occurrent (SNAP / SPAN)** — what persists at an instant /
  what unfolds over time; checkpoint / replay
- **parthood, attachment, location** — is made of / is configured with /
  is at; type structure / closed grammar / field query
- **population, genidentity** — many of a kind in a context; identity
  through birth, death, and reuse of slots
- **system, magnitude, model** — fiat-delimited subject matter; a
  dimension of its phase space; the code that approximates it
- **grid, projection, location, transparency, direction of fit** — what a
  representation is, and when it is faithful
- **performative map** — a representation that creates its target; a
  recipe with its seed

None of this obliges any refactoring. It is here so that when we discuss
whether something deserves a struct, a spec, an event, or a query, the
discussion can be about what the thing *is* — and so that the answer, once
found, has a name.


## Sources

Barry Smith and collaborators; all in `research/`, browsable at
`m.sheaf.less.rest`:

- *Against Fantology* (2005) — the six-category table; against bare
  particulars and Booleanism.
- *Do Mountains Exist?* (Smith & Mark, 2003) — fields, objects, and fiat
  landforms.
- *SNAP and SPAN* (Grenon & Smith, 2004) — continuants, occurrents,
  lives, and change.
- *Classifying Processes* (2012) — process profiles; determinable and
  determinate.
- *True Grid* (2002) — projection, transparency, directions of fit.
- *A Theory of Granular Partitions* (Bittner & Smith, 2003) — cells,
  location, empty cells, granularity.
- *Ontologies of Common Sense, Physics and Mathematics* (Landgrebe &
  Smith, 2023) — systems, magnitudes, models, phase space.
- *About the Unreal* (Beverley, Logan & Smith, 2025) — fiction,
  blueprints, and simulation.
- *Bodily Systems and the Spatial-Functional Structure of the Human Body*
  (2004) — organisms as nested fiat systems.

### 33. Tool result: read

SOURCE FILE
Path: ideas/theory-of-the-world.md
Resource: /3CV92Z/source-files/aWRlYXMvdGhlb3J5LW9mLXRoZS13b3JsZC5tZA#content
Size: 6242 bytes, 115 lines

# Theory of the world

This document is the conceptual model underneath the terrain
code. Nothing here is required to compile; all of it is required to
make good decisions.

## The world is a torus

The generated random landscape is a flat torus: finite, unbounded,
locally ordinary Euclidean space with gravity pointing down, closed by
identifying opposite edges. City and Pico modes remain explicitly
bounded exceptions. Nothing bends; only neighborliness changed.
Consequences recur everywhere: noise must be periodic (integer wave counts —
wavelengths must divide the world); there are no boundary cells, so
nothing may be seeded, clamped, or special-cased "at the edge";
periodic position differences should use minimum-image deltas
(`topology.hh`); physics keeps *unwrapped* coordinates (the universal
cover) and wraps at terrain lookup—the ring-buffer discipline. This
makes winding numbers possible, although the game does not yet expose
a general circumnavigation reading. A useful law: on a torus, every
operator should commute with translation. Symmetry
violations are how residual edge-thinking announces itself.

## Two authors, and a referee

Terrain is the current score in an argument between construction and
destruction. **Uplift** (tectonics, in our world the geological recipe
and any painted uplift fields) proposes relief; **water** (erosion in
all its forms) disposes of it; gravity referees. Raw noise is
statistically fair and therefore dead — nothing has ever happened to
it. Erosion is what installs *history*: channels are a rich-get-richer
instability (flow attracts flow), and the resulting dendritic
structure is why eroded terrain reads as alive. The eye is a detector
of exactly this. Most of what Alexander called the fifteen properties
of living structure (levels of scale, strong centers, boundaries,
gradients, echoes, roughness…) are produced wholesale by drainage; the
few it cannot produce are the job of the future human layer described
in `second-author.md`.

## The world has two surfaces

The rock `z` and the standing water `w`. Water has two behaviors: it
**runs** on slopes and it **pools** in hollows, rising until it finds
the basin rim's lowest saddle and spilling there. The drainage graph
(per-cell receivers) is a theory of the *dry* surface only; a **sink**
is a cell where "which way downhill" has no answer. Local carving can
accidentally add sinks; pooling represents them without pretending the
rock surface drains. The `FloodField` computes `w` (priority-flood from
sea level); lakes are where `w > z`. The current census records a
deterministic spill candidate per water body, but exact per-basin spill
identity remains a frontier contract. Such a spill—once routing
crosses lakes—carries the basin's entire discharge and is therefore
the most important cell of its catchment. Sinks are not
errors: a young landscape is legitimately riddled with them (compare
post-glacial Scandinavia), and the world's sink count over erosion
time is a biography — rising through adolescence, cresting, falling as
water is allowed to finish its arguments, converging not to zero but
to the number of inland seas the world honestly keeps.

## Erosion is the propagation of news

Base-level changes travel *upstream* along rivers as waves
(knickpoints), fast on trunks, slow on tributaries; terrain beyond the
wavefront still remembers its initial state. Every erosion method is a
postal system, and every lifetime/step/batch cap is a
**speed-of-information limit**. The two method families have
complementary blind spots. *Droplet simulation* (Lagrangian; our
`WATER EROSION` transform) excels at mid-story texture but each drop
is alone — it never feels confluence, so discharge doesn't scale, and
its lifetime bounds its reach; lakes coupled into erosion act as
relays (drop dies at inlet, authority resumes at the outlet). *Stream
power / analytical methods* (Eulerian; Braun–Willett, FastFlow,
Tzathas et al.) get global structure right — graded concave profiles
(slope ∝ area^−θ), accordant junctions, an honest AGE parameter — but
degenerate at ridges where drainage area vanishes, needing
hillslope/thermal terms. The long-run architecture is a sequence, not
a choice: analytic bones, flood-field truth maintained throughout,
conservation-closed droplets as skin.

## Operator kinds, and two columns of dials

Every operation belongs to a kind, and the kinds are load-bearing (see
`program.hh`): **field expressions** (pointwise, timeless, evaluable
anywhere — the applicative layer), **neighborhood operators**
(stencils, bounded support), **evolution operators**
(history-dependent raster transitions — erosion, the monadic layer),
and **readings** (terrain → numbers/overlays — measurement, never
mutation: *readings color the surface; geometry stays
terrain*). Distinguish two kinds of parameters and typeset them
differently in UI and docs: **world dials** (age, uplift, sea level,
erodibility, permanence policy — facts about the world) and **numerics
dials** (droplet count, batch size, lifetime — facts about how hard we
squint). The project's history is the migration of dials from the
second column to the first.

## Conservation is constitutional

Every gram eroded must be deposited, exported, or explicitly residual;
the sediment ledger is displayed, and it balances (double-entry
thinking pervades the project: ring buffers, unwrapped odometry,
sediment, and someday economies are all the same
bookkeeping). Deposition is half the physics, not decoration — fans,
valley fills, deltas where moving water meets still, ponds silting
into flats. A leaky ledger starves all of it.

## Scale is nesting, not extent

The felt size of the world comes from levels of structure discovered
in sequence — regions containing places containing spots — and from
terrain that can say *no* (slopes, water, boundaries create places by
making routes matter). Speed is a world-shrinking machine;
time-to-traverse is the currency in which size is paid. This is why
hydrological honesty is gameplay: lakes are boundaries, spill points
are gates, valleys are routes, and an eventual road/settlement layer
can convert drainage structure into human meaning.

### 34. Tool result: read

SOURCE FILE
Path: ideas/structure-of-space.md
Resource: /3CV92Z/source-files/aWRlYXMvc3RydWN0dXJlLW9mLXNwYWNlLm1k#content
Size: 24239 bytes, 620 lines

# The structure of space

*Notes toward a cellular tissue for places, construction, and memory.*

## The proposition

Moppe's landscape is currently represented with great success as fields:
height at a position, water over rock, slope, drainage, material, and the
successive results of terrain transformations.  This is the right language
for geology at landscape scale.  It is not by itself the right language for
everything that may later inhabit the land.

Paths, crossings, rooms, courtyards, bridges, property, construction stages,
names, and remembered events want discrete identity.  They want adjacency,
containment, boundaries, and persistence.  They want to say *this place*,
*this edge*, and *these neighbors*, even while their physical realization
remains smooth and irregular.

The proposed middle layer is a **draped cellular tissue**: a mostly
quadrilateral, locally rhythmic, irregular two-dimensional cell complex
embedded in the smooth terrain.  It exists lightly across the world and
grows sparse three-dimensional cellular structure where construction takes
hold.

The terrain remains continuous where continuity matters.  The tissue becomes
discrete where composition matters.

This is not the claim that space is ultimately made of cells.  The tissue is
a provisional interpretation of differentiated space and a constructive
measure laid into it.  Its concise constitution is:

> Space is not made of cells.  The cellular tissue gives making a meter.

## Two views of space

Ordinary game geometry begins with a neutral carrier:

```text
world space = coordinates
object      = transform + geometry
```

Every empty location is equivalent until a field or object assigns it a
property.  This abstraction is indispensable.  Rendering, physics, terrain
evaluation, distance, erosion, and vehicle trajectories all require a stable
metric space.  Moppe's periodic heightfield and its universal cover are exact
and useful laws of the world.

They are not an exhaustive account of inhabited space.

An articulated space also contains:

- regions with different intensities of coherence;
- relations of approach, enclosure, support, and visibility;
- thresholds, bottlenecks, crossings, and seams;
- larger and smaller centers which overlap and contain one another;
- several geometries of movement for several kinds of body;
- histories through which use and construction acquire meaning.

A saddle is not merely a low point on a ridge.  It joins two valleys and
separates two summits.  A headland helps enclose a harbor.  A crest and a
descending face can form one flight.  A quiet opening among several paths
can become a place to wait.  These structures are partly metric, but they are
not captured by coordinates alone.

Moppe can therefore retain two simultaneous truths:

```text
carrier space
  continuous coordinates, terrain, water, distance, velocity

articulated space
  centers, cells, boundaries, support, approach, use, history
```

The cellular tissue mediates between them.  It gives articulated space
enough discrete form to be inspected, remembered, and changed while staying
embedded in continuous land.

## Centers before objects

In an object-first world, a bridge object is placed and connectivity is
derived from it.  In an Alexandrian account, the crossing may be present as a
latent center before a bridge exists.

Two routes approach opposite banks.  The river narrows.  Foundations are
stable.  People can see the far side.  Traffic repeatedly converges and
perhaps already uses a ford.  Several spatial structures support the same
relation:

```text
place A <- latent crossing -> place B
```

The bridge does not originate this linkage.  It recognizes, strengthens, and
materializes it.  Once built, it differentiates the crossing into further
centers: abutments, span, midpoint, space beneath, framed river view,
approaches, waiting places, and bridgeheads.  An inn, shrine, market, or town
may later intensify the same center at other scales.

The same account applies elsewhere:

- a path makes an already viable line durable;
- a temple gives material form to a place of attention;
- a monument fixes an event into public memory;
- a harbor articulates the seam between land and water movement;
- a town condenses where several movement systems repeatedly meet;
- a jump develops a latent relation among approach, takeoff, flight,
  landing, and continuation.

Buildings should not create places from nothing.  They should give material
form to spatial structures which have begun to exist.

## What cells mean

The tissue is not merely an efficient construction grid.  Its elements are
hypotheses about the current structure of space.

A face says:

> For now, this region behaves coherently enough to be treated as one place.

An edge says:

> Something changes, separates, joins, or passes here.

A vertex says:

> Several spatial relations meet here.

A subdivision says:

> This place has acquired enough internal structure to become several more
> definite places.

A group of cells says:

> These regions participate in a larger center.

A vertical sprout says:

> This center has become materially articulated and inhabitable.

Cells need not be visible.  They are stable addresses for relationship and
history.  A road may flow smoothly through a sequence of cells.  A forest
may use cells only for ecological state while individual trees remain
continuously placed.  A river may cross cell boundaries according to its own
heightfield law.  The tissue is a shared substrate, not a universal visual
style.

## Two complementary algebras

The terrain system is a field algebra:

```text
position -> value
```

It is good at height, uplift, moisture, temperature, material suitability,
continuous masks, and gradients.

The tissue suggests a place algebra:

```text
cell + neighbors + history -> structured possibility
```

It is good at occupancy, adjacency, routes, districts, ownership,
construction, typed relationships, and persistent events.

Fields inform cells:

```text
cell slope        <- sample the slope field
cell moisture     <- integrate the moisture field
cell material     <- classify geological fields
cell buildability <- interpret several local readings
```

Cells can later propose explicit transforms back into fields:

```text
road cells        -> cut-and-fill corridor
canal edges       -> incision and water routing
foundation cells  -> local grading and retaining
garden cells      -> soil and vegetation change
```

Neither representation should swallow the other.  A reading remains a
reading; a change to terrain remains an explicit transform.

## Why rough quadrilaterals

Perfect square grids make composition tractable but impose a global axis and
visible repetition.  Regular hexagons distribute neighbors evenly but tend
to produce sixty-degree path habits and awkward building footprints.
Arbitrary polygons adapt freely but make every conjunction special.

Roughly rectangular cells occupy a fruitful middle.

Rooms, walls, roofs, and neighboring buildings benefit from approximate
right angles.  They fit, furnish, subdivide, and extend without leaving thin
wedge-shaped remainders.  Yet exact orthogonality is unnecessary and often
hostile to land, use, and existing centers.  A useful tissue would prefer:

- mostly four-sided cells;
- angles broadly near right angles, not exactly ninety degrees;
- moderate local aspect ratios;
- variable scale;
- no thin slivers or unusable exterior remnants;
- no globally privileged north-south axis;
- boundaries that may follow landforms and existing centers;
- occasional triangles, pentagons, or junction cells where the whole
  genuinely calls for them.

The irregularity is not noise applied to a grid.  It is the accommodation by
which the measure belongs to its site.

## Meter, not ontology

The constructive value of the tissue is analogous to rhythm in typography
and music.

A typographic baseline grid does not claim that language consists of
horizontal lines.  It lets headings, paragraphs, captions, lists, and images
participate in one vertical rhythm.  Musical meter does not require a strict
metronome.  It creates shared temporal expectations within which phrases can
stretch, accents can move, and syncopation can become meaningful.

Minecraft succeeds in part because every act inherits a spatial beat.  One
block, two blocks, and three blocks immediately become comprehensible
measures.  Openings align.  Repetitions can be counted by eye.  Several
people can extend, repair, or vary one another's work without manipulating
splines, control points, or specialist modeling tools.  The result may be
cubic, but the act of composition is unusually tractable.

Terminal interfaces and monospace technical documents gain a related
integrity from shared cells, baselines, columns, indentation, and a small
vocabulary of separators.  Ordinary HTML supplies much more continuous
freedom and therefore no automatic rhythm; good web design must reconstruct
a spacing scale, type scale, baseline, columns, and component proportions.

Moppe can retain the compositional help without retaining literal cubes.
The player can perform cell-like acts while contextual rules deform and
articulate them into irregular geometry.

The lattice makes alignment, repetition, and cooperation easy.  Its
exceptions then acquire meaning.  A larger central bridge arch matters
because the other bays establish a rhythm.  A ceremonial approach matters
because ordinary streets follow the land.  A tower matters because normal
buildings share a comprehensible height scale.

Without expectation, deviation is merely noise.  With expectation,
roughness becomes life.

## A fluid local tempo

The tissue should not repeat one module everywhere.  It is better understood
as a spatial tempo map with a local scale, direction, and degree of
regularity.

Conceptually, continuous fields might guide it:

```text
target cell size      s(x)
preferred direction   theta(x)
directional stretch   A(x)
desired detail        d(x)
```

On a broad plain the rhythm may be slow and calm.  Along a valley, cells may
stretch with the land.  Around a shore or junction, the rhythm may tighten.
At a settlement it becomes finer and more articulated.  Around a temple it
may acquire local symmetry and ceremonial measure.

This rhythm should be hierarchical:

```text
small unit       stone, timber bay, step, opening
room unit        inhabitable cell
building unit    group of rooms and courts
street unit      facades, crossings, public space
district unit    routes and major centers
```

These are spatial counterparts to subdivisions, beats, bars, and phrases.
Their ratios need not be exact, but they should remain perceptibly related.

Different regions can develop different meters according to material,
terrain, climate, craft, and history.  This is vernacular as an inherited
constructive rhythm rather than a catalogue of visual styles.

## An induced and adaptive tissue

The tissue should not be a neutral overlay generated once and mistaken for
the world.  It may begin from a coarse periodic seed mesh because computation
must begin somewhere, but its meaningful form should be induced by what the
world contains.

Relaxation and later adaptation can respond to:

- ridges and watershed divides;
- channels, shores, and flood surfaces;
- benches, saddles, and stable construction ground;
- movement corridors and repeated traces;
- existing centers and construction;
- the boundaries of positive outdoor spaces;
- local demand for finer articulation.

Edges may migrate toward meaningful boundaries.  Important crossings may
become vertices or short edge chains.  Cells may subdivide where a place
becomes important and remain coarse where the land is quiet.

This makes remeshing a semantic operation.  When one cell becomes several,
names, traffic, events, ecology, ownership, and center relationships must be
transferred deliberately.  It should feel like one place becoming several
more definite places, not like data being regenerated.

The initial mesh is scaffolding.  Adaptation gives it meaning.

## Sparse vertical growth

A full voxel world would make construction simple but would fight the smooth
landscape, burden the terrain scale with empty air cells, and make the visual
language unnecessarily cubic.

Instead, the two-dimensional tissue exists everywhere and three-dimensional
cellular structure sprouts only where required.

A surface cell can acquire a vertical stack:

```text
surface cell
  -> foundation
  -> occupied floor cells
  -> walls and openings
  -> roof cells
  -> attachments and ornament
```

A group of surface cells can seed a building complex containing rooms,
courtyards, arcades, stairs, towers, and roofs.  A bridge anchors to cells on
both banks and grows an elevated chain between them.  A retaining wall
articulates an edge between differently fitted surface cells.

Uninhabited country remains a light surface complex.  Occupation causes the
world to differentiate vertically.

## Deformed modules

The interaction can remain block-like while the result remains irregular.
The player or simulation makes simple gestures:

- select this cell;
- continue from this edge;
- raise this group one level;
- enclose these cells;
- open this wall;
- support this span;
- strengthen this boundary.

The construction system maps a curated vocabulary of components into the
irregular cells.  At its simplest, a unit-square module can be mapped into a
convex quadrilateral by bilinear interpolation among its corners.  More
careful component rules preserve what should not deform: straight timber,
wall thickness, column section, roof pitch, arch thrust, and material size.

Different materials absorb irregularity differently.  Rough stone tolerates
shape variation.  Timber imposes straight members and repeated bays.  Brick
prefers another module.  Trim, infill, and craft resolve small mismatches.
These constraints create vernacular character from construction rather than
from decorative skin.

Townscaper demonstrates the humane division of labor: the person controls
mass, void, adjacency, height, and color; contextual rules articulate roofs,
arches, stairs, supports, gardens, and small life.  Moppe's version must also
listen to terrain, water, movement, material, and history.

The player indicates and judges.  The system fits and differentiates.

## A bridge as the complete example

A bridge exercises nearly every part of the proposal.

1. Routes and mover geometries reveal demand for a crossing.
2. Hydrology supplies water depth, flood behavior, and channel structure.
3. Banks and geology supply candidate abutments and foundations.
4. Surface cells give stable identities to the approaches and crossing.
5. A smooth macro curve establishes alignment and elevation.
6. The curve is divided into structural bays according to the local meter.
7. Bays become deformed construction cells and select vernacular modules.
8. Piers, arches, beams, rails, stairs, and abutments adapt to local facts.
9. Terrain transforms fit the approaches while preserving the surrounding
   drainage and landform.
10. Use, repair, flood, and later additions continue the bridge's history.

The scales divide responsibility cleanly:

```text
spline      says where the bridge goes
cells       say how the span is composed
modules     articulate local relationships
history     says what the bridge becomes
```

The bridge may begin as stepping stones, a ferry, or a timber span.  Later
stonework can retain the old ford, repaired footings, flood marks, a shrine
to safe passage, or a desire path beneath an arch.  Construction becomes
geological in its own way: buildings are strata.

## Positive space and settlement

Object placement optimizes buildings and inherits whatever space remains
between them.  A cellular construction language can shape occupied and
unoccupied space together.

- a loop of built cells creates a courtyard;
- a widened route creates a square;
- two offset buildings make a gateway;
- an arcade mediates between interior cells and a public route;
- a bridgehead leaves a place to wait;
- a temple enclosure creates a calm void;
- a row of houses strengthens the street they face.

The empty cell is not missing content.  It may be the strongest center in the
composition.

Towns should likewise precipitate rather than spawn.  A ford becomes a
bridge; the crossing acquires a keeper, shelter, stable, workshop, market,
houses, shrine, and secondary paths.  The main street remembers the trail.
The square remembers the widened junction.  The temple addresses the center
which caused the settlement to exist.

The cell tissue gives this incremental history stable units without forcing
the final town onto a perfect grid.

## Several effective geometries

The continuous carrier supports more than one articulated space.

For a pedestrian, a shallow ford may join two banks.  For a cart they remain
far apart.  For a boat the river is a route, not a barrier.  For the
motorcycle the same gap may be a jump.  Visual space, drainage space, and
ritual space have still other adjacencies.

```text
walking space
cart space
water space
motorcycle space
visual space
drainage space
```

Infrastructure is powerful because it changes several of these spaces at
once.  A bridge shortens terrestrial routes, affects water, frames a view,
creates shelter, and may become a stunt line.  A strong center often
condenses several geometries into one place.

The tissue should therefore preserve typed relationships rather than reduce
every adjacency immediately to one universal distance.

## A world which remembers

Cells and edges provide stable addresses for histories which fields alone do
not naturally hold:

- passages in each direction;
- braking, wheelspin, takeoffs, and landings;
- dwell time and repeated stopping;
- construction, repair, damage, and abandonment;
- flooding, erosion, and vegetation succession;
- names, ownership, stewardship, and events;
- membership in overlapping centers.

A desire path can emerge as a flow across edges while its visible trace stays
smooth.  When the flow stabilizes, the world recognizes a route corridor.
When several routes meet repeatedly, their shared cells can become a center.
Construction then has somewhere meaningful to take hold.

The tissue is interpretive, constructive, and historical at once.

## Interaction as soft measure

The player need not see or obey a hard grid.

- a wall gently aligns with nearby edges;
- a bridge prefers comprehensible bay spacing;
- a room settles toward a good rough rectangle;
- a path width tends toward the local module;
- courtyard boundaries negotiate with their neighbors;
- a deliberate gesture can break the suggestion when the exception matters.

This is soft spatial quantization.  The player supplies gesture, the local
meter supplies measure, and the existing whole supplies correction.

The tissue can appear when useful as a planning overlay, a temporary
construction scaffold, a land-use reading, or a visualization of centers.
In ordinary play it should usually disappear into the world it helped make.

## The torus

The base tissue must be as honest about topology as the terrain.  Opposite
boundaries of the fundamental square are the same neighborhood.  Initial
generation, relaxation, adjacency, pathfinding, centers, and later remeshing
must all respect that identification.

A periodic irregular tissue would remove the last temptation to treat the
world edge as an exceptional construction boundary.  Roads, districts, and
settlements can cross the seam because the cells themselves do.

The flat torus remains the metric law.  The articulated tissue grows within
it and may acquire winding centers and routes of its own.

## Possible values

Names and boundaries remain speculative, but the eventual code might need
plain values resembling:

```text
SurfaceTissue
  vertices, edges, cells, topology, embedding

SurfaceCell
  terrain reading, ecology, traffic, construction, history

SurfaceEdge
  boundary kind, route flux, intercepted water, crossing

SpatialCenter
  weighted region, contained centers, typed supports

ConstructionComplex
  foundations, levels, walls, openings, roofs, attachments
```

These should not be forced into `TerrainProgram`.  The terrain program says
how rock and water were produced.  The tissue interprets a materialized world
and carries later inhabitation.  Explicit transforms mediate whenever
construction changes terrain.

As always, values should be serializable, diffable, inspectable, and subject
to deterministic replay within their declared evaluator.

## First proofs

The first implementation should prove the representation before attempting a
town generator.

1. Generate one deterministic periodic irregular-quad tissue over a finished
   terrain.
2. Drape it onto the heightfield and display it faintly in Terrain Lab.
3. Compare a flat topological view with its sloping world embedding.
4. Let cell scale and orientation respond mildly to shores, drainage, ridges,
   and slope.
5. Select cells and inspect their terrain readings and neighbors.
6. Express a smooth route corridor through a cell sequence without making
   the route look cellular.
7. Represent one lake, saddle, and approach as overlapping supported centers.
8. Sprout a few simple plaster or clay masses from chosen cells.
9. Generate one terrain-fitted bridge or shrine from a blessed center.
10. Ride the result and judge whether the tissue helped it belong.

Before procedural architecture, the first visual proof is simply a beautiful
mesh: calm on broad slopes, more articulate around water and crossings,
roughly rectangular without a global axis, and continuous across the torus.
If a few extruded cells already appear to belong to the landscape, the
representation is alive enough to continue.

## Guardrails

- The tissue is not the ontology of space; it is a changing interpretation.
- Cells are semantic addresses, not compulsory visible tiles.
- Metric physics and smooth terrain remain authoritative where appropriate.
- Adaptation should follow centers, not add decorative irregularity.
- Calm regularity is necessary for meaningful exceptions.
- Remeshing must preserve identity and history explicitly.
- Readings precede mutations; construction edits terrain only through named
  transforms.
- A global score never replaces pairwise judgment in the actual place.
- New architecture should strengthen existing centers and help form larger
  wholes.
- The system must leave room for unbuilt land and inner calm.

## The larger picture

The proposal fills a missing middle in Moppe's language:

```text
fields make land
cells make places actionable
construction makes centers visible
use and memory make them irreplaceable
```

The smooth heightfield is the world's continuous body.  The cellular tissue
is the locally adapted rhythm through which the world recognizes places,
coordinates acts separated by people and time, and learns how to build.

The bridge is not an asset placed into empty coordinates.  It is space
becoming conscious of its own crossing.

## Further reading and play

- Christopher Alexander, *The Nature of Order*, especially Books 1 and 2 on
  centers, wholeness, and structure-preserving transformations.
- Christopher Alexander,
  [Harmony-Seeking Computations](https://www.cs.york.ac.uk/nature/workshop/papers/Harmony-Seeking_Computation.pdf),
  for value-aware transformation of an existing whole.
- Bin Jiang,
  [Geography Founded on the Third View of Space](https://arxiv.org/abs/2108.02493),
  for the contrast among absolute, relational, and organismic space.
- Oskar Stalberg,
  [Organic Towns from Square Tiles](https://compaec.github.io/news/2020/06/29/StalbergTalk.html),
  and Tommy Thompson,
  [How Townscaper Works](https://www.gamedeveloper.com/game-platforms/how-townscaper-works-a-story-four-games-in-the-making).
- Boris the Brave,
  [Townscaper Grid](https://www.boristhebrave.com/docs/sylves/1/articles/tutorials/townscaper.html)
  and [Editable WFC](https://www.boristhebrave.com/2022/04/25/editable-wfc/),
  for practical irregular grids and local contextual regeneration.

### 35. Tool result: read

SOURCE FILE
Path: moppe/partition.hh
Resource: /3CV92Z/source-files/bW9wcGUvcGFydGl0aW9uLmho#content
Size: 1077 bytes, 30 lines

#ifndef MOPPE_PARTITION_HH
#define MOPPE_PARTITION_HH

#include <concepts>
#include <functional>

namespace moppe {
  // A partition is represented by its quotient map.  Two elements occupy the
  // same block exactly when the map gives them equal block values.  The block
  // type belongs to each use of the abstraction; there is no universal block
  // identifier.
  template <typename Map, typename Element, typename Block>
  concept Partition = std::equality_comparable<Block> &&
                      requires (const Map& partition, const Element& element) {
                        {
                          std::invoke (partition, element)
                        } -> std::same_as<Block>;
                      };

  template <typename Map, typename Element>
    requires Partition<Map,
                       Element,
                       std::invoke_result_t<const Map&, const Element&>>
  constexpr bool
  equivalent (const Map& partition, const Element& a, const Element& b) {
    return std::invoke (partition, a) == std::invoke (partition, b);
  }
}

#endif

### 36. Tool result: read

SOURCE FILE
Path: moppe/mov/vehicle.hh
Resource: /3CV92Z/source-files/bW9wcGUvbW92L3ZlaGljbGUuaGg#content
Size: 8839 bytes, 305 lines


#ifndef MOPPE_VEHICLE_HH
#define MOPPE_VEHICLE_HH

#include <moppe/color.hh>
#include <moppe/gfx/math.hh>
#include <moppe/map/surface.hh>

#include <algorithm>
#include <vector>

namespace moppe {
  namespace mov {
    using namespace moppe::map;

    // An axis-aligned solid block (a building): the vehicle bounces
    // off its walls, and its top is drivable ground.
    struct Box {
      float x0, z0, x1, z1, top;
    };

    class Vehicle {
    public:
      struct State {
        position_t position {};
        velocity_t velocity {};
        Vec3 heading {};
        Vec3 thrust_orientation {};
        radians_t yaw {};
        radians_t yaw_target {};
        float lean {};
        Vec3 render_heading {};
        Vec3 render_normal {};
        float susp {};
        float susp_v {};
        float wheel_spin {};
        bool boost_flight {};
        control_signal_t thrust {};
        float boost_input {};
        float boost_drive {};
        float boost_level {};
        float boost_charge {};
        seconds_t boost_recharge_delay {};
        meters_t water_level {};
        seconds_t airborne_time {};
        speed_t impact {};
        meters_t fall_top {};
        meters_t fall_drop {};
        int body_kind {};
        DisplayColor body_color {};
      };

      // max_thrust caps the wheel force (launch punch); power caps
      // force * speed, so acceleration tapers like a real engine
      // instead of shoving at 3 g all the way to the horizon.
      Vehicle (position_t position,
               degrees_t orientation,
               const Surface& map,
               newtons_t max_thrust,
               watts_t power,
               kilograms_t mass);

      void update (seconds_t dt);

      State state () const;
      void restore (const State& state);

      // The throttle is a normalized control signal in [-1, 1] that
      // commands the engine's force capability.
      void set_thrust (control_signal_t thrust) {
        m_thrust = thrust;
      }

      control_signal_t thrust () const {
        return m_thrust;
      }

      void set_yaw (degrees_t degrees) {
        m_yaw_target = degrees;
      }

      void spin (degrees_t degrees) {
        m_yaw_target += radians_t (degrees);
      }

      void increase_thrust (control_signal_t dv) {
        m_thrust += dv;
      }

      // Continuous jump jets.  boost is 0..1; drive is -1..1 and tilts
      // the jet backward/vertical/forward to match the driving stick.
      void set_boost (float boost, float drive);
      void replenish_boost (float amount) {
        m_boost_charge = std::min (1.0f, m_boost_charge + amount);
      }

      void set_water_level (meters_t level) {
        m_water_level = level;
      }

      void set_obstacles (const std::vector<Box>* boxes) {
        m_obstacles = boxes;
      }

      // Move an inactive bike as a rigid payload beneath the glider.
      void carry (position_t position,
                  velocity_t velocity,
                  const Vec3& heading,
                  const Vec3& up);

      // Respawn: back to a spot, stationary, jets cooled down
      void reset (const Vec3& position) {
        m_position = moppe::position (position);
        m_velocity = moppe::velocity (Vec3 ());
        m_boost_input = 0;
        m_boost_drive = 0;
        m_boost_level = 0;
        m_boost_charge = 1;
        m_boost_recharge_delay = seconds (0);
        m_boost_flight = false;
        m_impact = 0 * u::m / u::s;
        m_render_heading = m_heading;
        m_render_normal = Vec3 (0, 1, 0);
      }

      void set_heading (const Vec3& h) {
        Vec3 v (h[0], 0, h[2]);
        if (length2 (v) > 0.0001f) {
          normalize (v);
          m_heading = v;
          m_thrust_orientation = v;
        }
      }

      // What this vehicle looks like: 0 = the motorcycle,
      // 1 = civilian car, 2 = police car, 3 = fire truck
      void set_body_style (int kind, DisplayColor color) {
        m_body_kind = kind;
        m_body_color = color;
      }

      bool grounded () const {
        return is_grounded ();
      }

      // Sideways speed relative to where the bike points; big when
      // drifting, ~zero when rolling straight
      float drift_speed () const {
        const Vec3& v = velocity_value (m_velocity);
        float vf = dot (v, m_heading);
        return length (v - m_heading * vf);
      }

      // Downward speed of the last hard landing; reading it clears it
      float pop_impact () {
        const float value = m_impact.numerical_value_in (u::m / u::s);
        m_impact = 0 * u::m / u::s;
        return value;
      }

      // How far the last flight fell, peak to touchdown, in meters
      float pop_fall_drop () {
        const float value = meters_value (m_fall_drop);
        m_fall_drop = 0 * u::m;
        return value;
      }

      // Stored energy and current output of the continuous jump jets.
      float boost_charge () const {
        return m_boost_charge;
      }
      float boost_level () const {
        return m_boost_level;
      }
      float boost_drive () const {
        return m_boost_drive;
      }

      // Read-only pose and body state for the external renderer
      // (game/vehicle_render); the drawing half reads everything it
      // needs through these.
      radians_t lean () const {
        return m_lean * u::rad;
      }
      float susp () const {
        return m_susp;
      }
      // Accumulated wheel roll angle in [0, 2pi).
      radians_t wheel_spin () const {
        return m_wheel_spin * u::rad;
      }
      bool airborne () const {
        return m_airborne_time > seconds (0.15f);
      }
      float airtime () const {
        return seconds_value (m_airborne_time);
      }
      radians_t yaw () const {
        return m_yaw;
      }
      Vec3 render_normal () const {
        return m_render_normal;
      }
      Vec3 render_orientation () const {
        return m_render_heading;
      }
      int body_kind () const {
        return m_body_kind;
      }
      DisplayColor body_color () const {
        return m_body_color;
      }

      Vec3 position () const {
        return position_value (m_position);
      }
      position_t physical_position () const {
        return m_position;
      }
      Vec3 orientation () const {
        return m_heading;
      }
      Vec3 velocity () const {
        return velocity_value (m_velocity);
      }
      velocity_t physical_velocity () const {
        return m_velocity;
      }

    private:
      void steer (seconds_t dt);
      void apply_grip (seconds_t dt, const Vec3& n);
      void calculate_orientation ();
      void fall_to_ground ();
      void check_ground_collision ();
      void collide_with_walls ();
      void bound ();
      bool expected_landing_pose (Vec3& forward,
                                  Vec3& up,
                                  float& time_to_landing) const;
      bool is_grounded () const;
      bool driving_contact () const;

      acceleration_t drag () const;

      const Box* roof_under () const;

      Vec3 ground_normal () const {
        if (roof_under ())
          return Vec3 (0, 1, 0);
        const Vec3& p = position_value (m_position);
        return m_map.interpolated_normal (p[0], p[2]);
      }

      float ground_height () const {
        const Box* roof = roof_under ();
        if (roof)
          return roof->top;
        const Vec3& p = position_value (m_position);
        return m_map.interpolated_height (p[0], p[2]);
      }

    private:
      position_t m_position;
      velocity_t m_velocity;
      Vec3 m_heading;
      Vec3 m_thrust_orientation;

      radians_t m_yaw;        // smoothed actual steering
      radians_t m_yaw_target; // raw keyboard input
      float m_lean;           // roll into corners (radians)
      Vec3 m_render_heading;  // visual forward, follows the flight arc
      Vec3 m_render_normal;   // smoothed up vector for drawing
      float m_susp, m_susp_v; // visual suspension spring
      float m_wheel_spin;     // visual wheel roll angle (radians)
      bool m_boost_flight;    // landing softened after using the jets

      const Surface& m_map;

      const newtons_t m_max_thrust;
      const watts_t m_power;
      control_signal_t m_thrust; // throttle command in [-1, 1]
      kilograms_t m_mass;

      float m_boost_input;
      float m_boost_drive;
      float m_boost_level;
      float m_boost_charge;
      seconds_t m_boost_recharge_delay;
      meters_t m_water_level;

      seconds_t m_airborne_time;
      speed_t m_impact;
      meters_t m_fall_top;  // highest point of the current flight
      meters_t m_fall_drop; // set on landing: peak minus touchdown

      const std::vector<Box>* m_obstacles;

      int m_body_kind;
      DisplayColor m_body_color;
    };
  }
}

#endif

SOURCE FILE
Path: moppe/mov/vehicle.cc
Resource: /3CV92Z/source-files/bW9wcGUvbW92L3ZlaGljbGUuY2M#content
Size: 21178 bytes, 538 lines

#include <moppe/mov/vehicle.hh>

#include <cmath>

namespace moppe {
  namespace mov {
    static const float radius = 1; // metres

    // How fast full steering input swings the bike itself, in radians
    // per second per radian of yaw input.  Grip then drags the
    // velocity around after the heading.
    static const float steering_rate = 1.6;
    static const float air_steering_rate = 0.9;

    static const acceleration_component_t boost_acceleration =
      26.0f * isq::acceleration[u::m / pow<2> (u::s)];
    static const radians_t boost_max_tilt = 60.0f * u::deg;
    static const seconds_t boost_full_burn_time = seconds (3.0f);
    static const seconds_t boost_recharge_time = seconds (5.0f);
    static const seconds_t boost_recharge_pause = seconds (0.65f);
    static const float boost_reserve_charge = 0.06f;
    static const float boost_emergency_level = 0.18f;

    Vehicle::Vehicle (position_t position,
                      degrees_t orientation,
                      const Surface& map,
                      newtons_t max_thrust,
                      watts_t power,
                      kilograms_t mass)
        : m_position (position), m_velocity (moppe::velocity (Vec3 ())),
          m_heading (sin (orientation), 0, cos (orientation)),
          m_thrust_orientation (m_heading), m_yaw (), m_yaw_target (),
          m_lean (0), m_render_heading (m_heading), m_render_normal (0, 1, 0),
          m_susp (0), m_susp_v (0), m_wheel_spin (0), m_boost_flight (false),
          m_map (map), m_max_thrust (max_thrust), m_power (power), m_thrust (0),
          m_mass (mass), m_boost_input (0), m_boost_drive (0),
          m_boost_level (0), m_boost_charge (1),
          m_boost_recharge_delay (seconds (0)), m_water_level (-1000 * u::m),
          m_airborne_time (seconds (0)), m_impact (0 * u::m / u::s),
          m_fall_top (0 * u::m), m_fall_drop (0 * u::m), m_obstacles (0),
          m_body_kind (0), m_body_color (0.8, 0.15, 0.1) {
      calculate_orientation ();
      fall_to_ground ();
    }

    Vehicle::State Vehicle::state () const {
      return { m_position,
               m_velocity,
               m_heading,
               m_thrust_orientation,
               m_yaw,
               m_yaw_target,
               m_lean,
               m_render_heading,
               m_render_normal,
               m_susp,
               m_susp_v,
               m_wheel_spin,
               m_boost_flight,
               m_thrust,
               m_boost_input,
               m_boost_drive,
               m_boost_level,
               m_boost_charge,
               m_boost_recharge_delay,
               m_water_level,
               m_airborne_time,
               m_impact,
               m_fall_top,
               m_fall_drop,
               m_body_kind,
               m_body_color };
    }

    void Vehicle::restore (const State& state) {
      m_position = state.position;
      m_velocity = state.velocity;
      m_heading = state.heading;
      m_thrust_orientation = state.thrust_orientation;
      m_yaw = state.yaw;
      m_yaw_target = state.yaw_target;
      m_lean = state.lean;
      m_render_heading = state.render_heading;
      m_render_normal = state.render_normal;
      m_susp = state.susp;
      m_susp_v = state.susp_v;
      m_wheel_spin = state.wheel_spin;
      m_boost_flight = state.boost_flight;
      m_thrust = state.thrust;
      m_boost_input = state.boost_input;
      m_boost_drive = state.boost_drive;
      m_boost_level = state.boost_level;
      m_boost_charge = state.boost_charge;
      m_boost_recharge_delay = state.boost_recharge_delay;
      m_water_level = state.water_level;
      m_airborne_time = state.airborne_time;
      m_impact = state.impact;
      m_fall_top = state.fall_top;
      m_fall_drop = state.fall_drop;
      m_body_kind = state.body_kind;
      m_body_color = state.body_color;
    }

    void Vehicle::carry (position_t position,
                         velocity_t velocity,
                         const Vec3& heading,
                         const Vec3& up) {
      m_position = position;
      m_velocity = velocity;
      m_heading = Vec3 (heading[0], 0, heading[2]);
      if (length2 (m_heading) > 0.0001f)
        normalize (m_heading);
      else
        m_heading = Vec3 (0, 0, 1);
      m_thrust_orientation = m_heading;
      m_render_heading = m_heading;
      m_render_normal = normalized (up);
      m_lean = 0;
      m_yaw = 0 * u::rad;
      m_yaw_target = 0 * u::rad;
      m_airborne_time = seconds (0.2f);
      m_fall_top = std::max (m_fall_top, position_value (m_position)[1] * u::m);
    }

    void Vehicle::calculate_orientation () {
      if (is_grounded ()) {
        const Vec3& p = position_value (m_position);
        Vec3 n = m_map.interpolated_normal (p[0], p[2]);

        // Keep the heading tangent to the ground; the heading itself
        // is steered explicitly, and grip drags the velocity along,
        // so a heading/velocity mismatch is a drift, not an error.
        Vec3 heading = m_heading - n * (dot (m_heading, n));

        if (length2 (heading) > 0.0001f) {
          normalize (heading);
          m_heading = heading;
        }

        m_thrust_orientation = m_heading;
      }
    }

    void Vehicle::fall_to_ground () {
      position_value (m_position)[1] = ground_height ();
    }

    void Vehicle::check_ground_collision () {
      Vec3& p = position_value (m_position);
      p[1] = max (ground_height () + radius, p[1]);
    }

    bool Vehicle::is_grounded () const {
      return std::abs (ground_height () - position_value (m_position)[1]) <
             (radius + 0.1f);
    }

    acceleration_t Vehicle::drag () const {
      // Linear rolling drag plus quadratic air drag: terminal speed
      // lands near the speedometer's 300 km/h, and fall speeds stay
      // survivable
      const speed_t speed = magnitude (m_velocity);
      const damping_t drag_rate = 0.05f / u::s + 0.0035f / u::m * speed;
      return quantity_cast<isq::acceleration> (-m_velocity * drag_rate);
    }

    // Grounded, or close enough that a micro-hop over a bump should
    // not cut the throttle -- keeps rough ground feeling planted
    // while real jumps still feel like jumps
    bool Vehicle::driving_contact () const {
      if (is_grounded ())
        return true;
      return m_airborne_time < seconds (0.12f) &&
             position_value (m_position)[1] - ground_height () < radius + 0.6f;
    }

    bool Vehicle::expected_landing_pose (Vec3& forward,
                                         Vec3& up,
                                         float& time_to_landing) const {
      const Vec3& position = position_value (m_position);
      const Vec3& velocity = velocity_value (m_velocity);
      constexpr float gravity = 9.82f;
      constexpr float step = 0.08f;
      constexpr float horizon = 3.0f;

      for (float t = step; t <= horizon; t += step) {
        Vec3 sample = position + velocity * t;
        sample[1] -= 0.5f * gravity * t * t;
        if (!m_map.in_bounds (sample[0], sample[2]))
          return false;
        const float surface =
          m_map.interpolated_height (sample[0], sample[2]) + radius;
        if (sample[1] > surface)
          continue;

        up = m_map.interpolated_normal (sample[0], sample[2]);
        if (length2 (up) < 0.000001f)
          return false;
        normalize (up);

        // Preserve the rider's chosen yaw, but pitch the chassis tangent to
        // the landing surface. The sampled normal supplies the corresponding
        // roll, so sidehill touchdowns meet both tires instead of one edge.
        forward = m_heading - up * dot (m_heading, up);
        if (length2 (forward) < 0.0001f) {
          const Vec3 impact_velocity = velocity + Vec3 (0, -gravity * t, 0);
          forward = impact_velocity - up * dot (impact_velocity, up);
        }
        if (length2 (forward) < 0.0001f)
          return false;
        normalize (forward);
        time_to_landing = t;
        return true;
      }
      return false;
    }

    // The obstacle box whose roof is the effective ground under the
    // bike -- only counts once the bike is up at roof level, so a
    // building towering overhead is not "ground".
    const Box* Vehicle::roof_under () const {
      if (!m_obstacles)
        return 0;

      const Box* found = 0;
      const Vec3& p = position_value (m_position);
      float best = m_map.interpolated_height (p[0], p[2]);

      for (size_t i = 0; i < m_obstacles->size (); ++i) {
        const Box& b = (*m_obstacles)[i];
        if (p[0] >= b.x0 && p[0] <= b.x1 && p[2] >= b.z0 && p[2] <= b.z1 &&
            p[1] > b.top - 2 * radius && b.top > best) {
          best = b.top;
          found = &b;
        }
      }

      return found;
    }

    void Vehicle::collide_with_walls () {
      if (!m_obstacles)
        return;

      Vec3& p = position_value (m_position);
      Vec3& v = velocity_value (m_velocity);
      for (size_t i = 0; i < m_obstacles->size (); ++i) {
        const Box& b = (*m_obstacles)[i];

        if (p[1] - radius >= b.top - 0.05f)
          continue; // on or above the roof

        const float dx0 = p[0] - (b.x0 - radius);
        const float dx1 = (b.x1 + radius) - p[0];
        const float dz0 = p[2] - (b.z0 - radius);
        const float dz1 = (b.z1 + radius) - p[2];

        if (dx0 <= 0 || dx1 <= 0 || dz0 <= 0 || dz1 <= 0)
          continue; // clear of this block

        // Push out along the axis of least penetration and bounce;
        // a hard bonk registers as an impact for shake and dust
        const float px = std::min (dx0, dx1);
        const float pz = std::min (dz0, dz1);

        if (px < pz) {
          p[0] = (dx0 < dx1) ? b.x0 - radius : b.x1 + radius;
          m_impact = std::max (m_impact, 0.4f * std::abs (v[0]) * u::m / u::s);
          v[0] *= -0.35f;
        } else {
          p[2] = (dz0 < dz1) ? b.z0 - radius : b.z1 + radius;
          m_impact = std::max (m_impact, 0.4f * std::abs (v[2]) * u::m / u::s);
          v[2] *= -0.35f;
        }
      }
    }

    void Vehicle::steer (seconds_t dt) {
      const float dt_s = seconds_value (dt);
      if (abs (m_yaw) < 0.001f * u::rad)
        return;

      if (driving_contact ()) {
        // Full lock turns slower at speed: stable at 250 km/h,
        // nimble at walking pace
        const float vf =
          std::abs (dot (velocity_value (m_velocity), m_heading));
        const float rate = steering_rate / (1.0f + vf / 70.0f);
        m_heading = Quaternion::rotate (
          m_heading, ground_normal (), -m_yaw * rate * dt_s);
      } else
        // Mid-air attitude control: swing the bike around, keep the
        // momentum -- landing sideways starts a drift
        m_heading = Quaternion::rotate (
          m_heading, Vec3 (0, 1, 0), -m_yaw * air_steering_rate * dt_s);
    }

    // Tire grip pulls the velocity into line with where the bike
    // points.  Grip fades continuously with steering input and
    // speed, braking breaks traction outright, and an ongoing slide
    // keeps breathing instead of snapping straight.
    void Vehicle::apply_grip (seconds_t dt, const Vec3& n) {
      Vec3& velocity = velocity_value (m_velocity);
      Vec3 fwd = m_heading - n * dot (m_heading, n);
      if (length2 (fwd) < 0.000001f)
        return;
      normalize (fwd);

      // Split velocity into forward, surface-normal, and in-plane
      // lateral parts; only the lateral part is gripped, so a launch
      // (normal component) survives the coyote-contact window
      const float vf = dot (velocity, fwd);
      const Vec3 vn = n * dot (velocity, n);
      const Vec3 lat = velocity - fwd * vf - vn;

      const float steer_amt =
        std::min (1.0f, scalar_value (abs (m_yaw) / (0.8f * u::rad)));
      const float speed_amt =
        std::min (1.0f, std::max (0.0f, (std::abs (vf) - 15.0f) / 10.0f));

      // Knobby-tire baseline: the bike tracks where it points unless
      // you deliberately break traction with hard steering at speed
      // or a brake-slide (the old 3.0 base read as riding on a dream)
      damping_t grip = (4.5f - 3.0f * steer_amt * speed_amt) / u::s;

      if (m_thrust < -0.1f && vf > 3.0f)
        grip = std::min (grip, 0.8f / u::s); // brake-slide
      if (length2 (lat) > 16.0f)
        grip = std::min (grip, 2.0f / u::s); // mid-drift hysteresis

      velocity = fwd * vf + vn + lat * decay (grip, dt);
    }

    void Vehicle::update (seconds_t dt) {
      const float dt_s = seconds_value (dt);
      // Steering input ramps in rather than snapping: smooth onset
      // for the heading, the grip model, and the fork visual at once
      m_yaw += (m_yaw_target - m_yaw) * smoothing_alpha (9.0f / u::s, dt);

      steer (dt);
      calculate_orientation ();

      const bool contact = driving_contact ();

      // The trigger meters a finite reserve.  Recharging pauses after a
      // burn and is deliberately slower in the air, so feathering the
      // jets cannot produce permanent flight.
      if (m_boost_input > 0.001f) {
        if (m_boost_charge > boost_reserve_charge) {
          const float available = (m_boost_charge - boost_reserve_charge) *
                                  seconds_value (boost_full_burn_time) / dt_s;
          m_boost_level = std::min (m_boost_input, available);
          m_boost_charge =
            std::max (boost_reserve_charge,
                      m_boost_charge - m_boost_level * dt_s /
                                         seconds_value (boost_full_burn_time));
          m_boost_flight = true;
        } else
          // The reserve cannot sustain flight, but it always supplies enough
          // thrust to take the cruelty out of a long fall.
          m_boost_level = boost_emergency_level * m_boost_input;
        // The trigger must be released before recharge starts; this avoids
        // alternating reserve thrust and tiny rechargeable impulses.
        m_boost_recharge_delay = boost_recharge_pause;
      } else {
        m_boost_level = 0;
        if (m_boost_recharge_delay > seconds (0))
          m_boost_recharge_delay -= dt;
        else {
          const float recharge_scale = is_grounded () ? 1.0f : 0.35f;
          m_boost_charge =
            std::min (1.0f,
                      m_boost_charge + recharge_scale * dt_s /
                                         seconds_value (boost_recharge_time));
        }
      }

      const radians_t tilt = boost_max_tilt * std::abs (m_boost_drive);
      const float drive_sign = m_boost_drive < 0 ? -1.0f : 1.0f;
      const Vec3 boost_direction =
        Vec3 (0, cos (tilt), 0) + m_heading * (drive_sign * sin (tilt));

      force_t f = Vec3 () * isq::force[u::N];
      const Vec3 n = ground_normal ();

      // Thrust stays on through micro-hops (coyote contact); the
      // normal force only applies with real ground under the wheels.
      // Force is engine-power-limited above a few m/s: hard launch,
      // tapering pull, a real top speed against drag.
      if (contact) {
        const speed_t vf =
          std::abs (dot (velocity_value (m_velocity), m_thrust_orientation)) *
          (u::m / u::s);
        const newtons_t force =
          std::min (m_max_thrust,
                    newtons_t (m_power / std::max (vf, 0.5f * (u::m / u::s))));
        f += m_thrust_orientation * (scalar_value (m_thrust) * force);
      }
      acceleration_t a =
        quantity_cast<isq::acceleration> (f / m_mass) + drag () +
        Vec3 (0, -1, 0) * (9.82f * isq::acceleration[u::m / pow<2> (u::s)]) +
        boost_direction * (boost_acceleration * m_boost_level);
      Vec3& acceleration = a.numerical_value_ref_in (u::m / pow<2> (u::s));

      // The ground supplies only as much normal force as necessary.  A
      // partial vertical burn therefore lightens the vehicle; it leaves
      // the surface only once the jets overcome gravity.
      if (is_grounded ()) {
        const float into_ground = dot (acceleration, n);
        if (into_ground < 0)
          acceleration -= n * into_ground;
      }

      Vec3& velocity = velocity_value (m_velocity);
      m_velocity += quantity_cast<isq::velocity> (a * dt);

      if (is_grounded ()) {
        const float normal_speed = dot (velocity, n);
        if (dot (acceleration, n) <= 0.001f || normal_speed < 0)
          velocity -= n * normal_speed;
      }
      if (contact) {
        // Jets progressively unload the tires instead of turning grip
        // off at the slightest touch.
        const seconds_t grip_dt = dt * (1.0f - 0.8f * m_boost_level);
        apply_grip (grip_dt, n);
      }

      // Wading through the ocean is slow going
      if (position_value (m_position)[1] * u::m - radius * u::m < m_water_level)
        m_velocity *= decay (1.4f / u::s, dt);

      m_position += quantity_cast<isq::position_vector> (m_velocity * dt);

      bound ();
      check_ground_collision ();
      collide_with_walls ();

      // Landing detection, for camera shake and dust bursts.  What
      // matters is the speed INTO the surface at touchdown -- landing
      // parallel to a downhill slope is gentle no matter how fast the
      // descent was.
      if (is_grounded ()) {
        if (m_airborne_time > seconds (0.25f)) {
          m_impact = std::max (0.0f * u::m / u::s,
                               -dot (velocity, ground_normal ()) * u::m / u::s);
          // Boost-assisted landings are partly forgiven: the jets
          // flare on touchdown, or so the story goes.
          if (m_boost_flight)
            m_impact *= 0.75f;
          m_susp_v -= 0.10f * m_impact.numerical_value_in (u::m / u::s);
          m_fall_drop = m_fall_top - position_value (m_position)[1] * u::m;
        }
        if (m_boost_level <= 0)
          m_boost_flight = false;
        m_airborne_time = seconds (0);
        m_fall_top = position_value (m_position)[1] * u::m;
      } else {
        m_airborne_time += dt;
        m_fall_top =
          std::max (m_fall_top, position_value (m_position)[1] * u::m);
      }

      // Lean into corners: balance the turn against gravity
      {
        float target = 0;
        if (driving_contact ()) {
          const float vf = dot (velocity, m_heading);
          const float rate = steering_rate / (1.0f + std::abs (vf) / 70.0f);
          target = std::atan2 (vf * radians_value (-m_yaw) * rate, 9.82f);
          target = std::max (-0.7f, std::min (0.7f, target));
        }
        m_lean += (target - m_lean) * smoothing_alpha (8.0f / u::s, dt);
      }

      // Visual attitude is separate from the steering heading. In flight the
      // rider looks ahead along the ballistic arc and prepares the chassis
      // for the expected landing plane. If no touchdown is in prediction
      // range, the bike follows its trajectory as before.
      Vec3 pose_forward = m_heading;
      Vec3 pose_up = ground_normal ();
      damping_t pose_rate = 10.0f / u::s;
      if (airborne () && length2 (velocity) > 4.0f) {
        float time_to_landing = 0.0f;
        if (expected_landing_pose (pose_forward, pose_up, time_to_landing)) {
          const float response = 4.0f + 5.0f / std::max (0.5f, time_to_landing);
          pose_rate = response / u::s;
        } else {
          pose_forward = normalized (velocity);
          Vec3 right = cross (Vec3 (0, 1, 0), pose_forward);
          if (length2 (right) < 0.0001f)
            right = cross (m_render_normal, m_render_heading);
          if (length2 (right) < 0.0001f)
            right = Vec3 (1, 0, 0);
          normalize (right);
          pose_up = cross (pose_forward, right);
          pose_rate = 4.5f / u::s;
        }
      }

      const float pose_alpha = smoothing_alpha (pose_rate, dt);
      m_render_heading =
        linear_vector_interpolate (m_render_heading, pose_forward, pose_alpha);
      m_render_normal =
        linear_vector_interpolate (m_render_normal, pose_up, pose_alpha);
      if (length2 (m_render_heading) > 0.000001f)
        normalize (m_render_heading);
      if (length2 (m_render_normal) > 0.000001f)
        normalize (m_render_normal);

      // Visual suspension spring: kicked by landings, settles fast
      m_susp_v += (-70.0f * m_susp - 9.0f * m_susp_v) * dt_s;
      m_susp += m_susp_v * dt_s;
      m_susp = std::max (-0.35f, std::min (0.15f, m_susp));

      // Wheel roll for the renderer: ground speed while rolling, a
      // throttle-driven spin-up in the air.  ~0.68 m wheel radius as
      // drawn.  Kept in [0, 2pi) so precision survives long rides.
      {
        float rate = dot (velocity, m_heading) / 0.68f;
        if (!contact && abs (m_thrust) > 0.1f)
          rate = scalar_value (40.0f * m_thrust);
        m_wheel_spin =
          std::fmod (m_wheel_spin + rate * dt_s, 2.0f * 3.14159265f);
      }
    }

    void Vehicle::set_boost (float boost, float drive) {
      m_boost_input = std::max (0.0f, std::min (1.0f, boost));
      m_boost_drive = std::max (-1.0f, std::min (1.0f, drive));
    }

    void Vehicle::bound () {
      // The world is a torus; there is no edge to bounce off.
    }

  }
}

### 37. Tool result: read

SOURCE FILE
Path: docs/engine-atlas.md
Resource: /3CV92Z/source-files/ZG9jcy9lbmdpbmUtYXRsYXMubWQ#content
Size: 12439 bytes, 222 lines

# Moppe engine atlas

This is the reader's map of the current engine after RFC-0001. It names the
values that make up a world, the mutable state that rides it, the immutable
reading that presents a frame, and the CMake targets that carry those
boundaries. Read it before the detailed subsystem documents; the
`current-engine-refactoring` track is retained as the history of how this
shape was reached, not as the architecture reference.

## One world, one frame

The main flow is data and borrows, not a generic scene graph or an ownership
diagram for CMake:

```mermaid
flowchart LR
  recipe["WorldRecipe"] --> build["direct world construction"]
  build --> world["GeneratedWorld"]
  world --> session["GameSession"]
  world --> view["FrameView"]
  session --> view
  view --> scene["world, actor, water, effect, HUD presentation"]
  scene --> renderer["render::Renderer"]
  renderer --> metal["Metal backend"]
  renderer --> webgpu["WebGPU backend"]
  app["application: loading, input, mode selection"] --> build
  app --> session
  app --> view
```

`GeneratedWorld` is the stable owner of one completed landscape.
`GameSession` is the mutable life played on that landscape. `FrameView` is a
new immutable reading composed for each visible frame; it does not own a
renderer, a platform object, or mutable actor state. The application selects
input and mode, advances the session, composes the view, and invokes the
concrete presenters in game-shaped order.

## Domains and ownership

| Domain | Owns | Does not own | Main locations |
| --- | --- | --- | --- |
| Quantity and finite-section vocabulary | `spatial::Bundle`, typed domains, and mp-units-facing section types | A terrain map, a world, or a rendering policy | `moppe/spatial/`, `moppe/quantities.hh` |
| Terrain algorithms | Geology, evolution, trails, hydrology, and their typed products | A completed map, scene, platform, or renderer | `moppe/terrain/` |
| Completed world | Heightmap, surface, materialized analyses, water surface, and trails | Mutable player state, GPU resources, or an event loop | `moppe/map/`, `moppe/game/generated_world.*` |
| Simulation | Mutable rider, vehicle, glider, walker, camera, stars, dust, and checkpoint state | Loading, `GeneratedWorld` ownership, and platform effects | `moppe/mov/`, `moppe/game/game_session.*` |
| Frame and scene presentation | Immutable frame readings and focused terrain, water, actor, effect, and HUD presenters | Simulation mutation or an OS event loop | `moppe/game/frame_view.*`, game presentation files |
| Application and platform | Loading/activation, input adaptation, mode selection, host services, and terminal `main` | Portable terrain and simulation laws | `moppe/game/world_loading.*`, `moppe/game/game.cc`, `moppe/game/terrain.*`, `moppe/platform/` |
| Renderer and backend | Game-shaped draw/resource API, Metal resources, passes, command submission, and capture/timing lifecycle | Terrain policy, session state, or a generic render graph | `moppe/render/`, `moppe/render/metal/`, `moppe/shaders/metal/` |

`moppe/game/` is intentionally not one architectural layer. Its source files
belong to world construction, simulation, scene presentation, or application
composition according to what they own. The CMake targets below make that
division executable.

## World and intrinsic readings

`terrain::WorldRecipe` binds seed and algorithm values to physical world
parameters and water datum. World loading directly initializes, evolves, and
forms trails on `map::Surface`, then analyzes hydrology and derives later
surface readings. Once active, ordinary gameplay receives const views of the
completed world.

`map::SurfaceDomain` is the one finite lattice for the ground. It owns the
topology, site correspondence, spacing, and reconstruction stencil. Its
`SurfaceAtlas` groups typed 0-cochains by the named materialization boundary:

| Group | Typed sections | Valid when |
| --- | --- | --- |
| Geometry | `surface_elevation`, `terrain_normal`, removed/deposited material, `snow_support` | Elevation/history exist at construction; normals/support after `rebuild_geometry_readings()` |
| Hydrology | `channel_flux`, `surface_moisture`, `waterline_distance` | World hydrology/materialization |
| Geology | `erosion_exposure`, `deposition_cover` | Geological materialization |
| Ecology | `tree_habitat`, `forest_cover` | Ecological materialization |
| Use | `trail_influence`, `home_base_influence` | Completed trail-use analysis |

Geometry is authoritative and always present. Later groups are individually
optional: absence means the corresponding world-building barrier has not run,
while a present all-zero section is a real reading. `map::WaterSurface` uses
the same domain but a distinct water bundle: `surface_elevation`,
`wave_amplitude`, and `water_velocity`. It is not a ground-atlas group merely
because both surfaces have matching texture dimensions.

`GeneratedWorld::Hydrology` is similarly a complete analytical value rather
than a collection of app-level optionals. It contains standing water, lake
census, drainage, fractional channels, waterways, and the river network.
`WaterSurface` and `TrailNetwork` use optional storage to express their
construction boundary and to support focused tests. Ordinary completed worlds
build both. The detailed vocabulary, validity rules, and quantity-to-texture
mappings live in [Surface atlas](surface-atlas.md).

## State, lifetime, and handoff

| Value or phase | Owner and rule | Deliberately outside it |
| --- | --- | --- |
| `WorldRecipe` and `WorldParams` | Immutable construction description for a world | Live player progress and renderer history |
| `GeneratedWorld` | Non-copyable, non-movable owner of completed terrain and analyses | Platform, session, and GPU ownership |
| Loading candidate | Worker builds a fresh world; the loading screen sees status text only | Mutation of the active world/session |
| Activation | Main thread transfers the completed owner once, retires the old session before its old world, then creates a fresh session | A half-built visible world |
| `GameSession` | Mutable run against one completed world's terrain and surface borrows | A replacement world or loading lifecycle |
| `GameState` | Copyable snapshot of mutable session systems, portable only between sessions on the same world | Terrain, water, renderer history, window state, and asynchronous loading |
| `FrameView` | Immutable per-frame snapshot of selected camera, lighting, graphics, poses, HUD, overlays, and visibility | Renderer/platform types and later simulation mutation |

The ordinary playable step is
`advance_game_session(context, session, input, seconds_t)`. Its context lends
only the world-side readings simulation needs. Platform-side speech and other
application effects return as a small result for the application to realize.
The full checkpoint and replay boundary is described in
[Game state and replay](game-state.md); completed-world construction and
handoff are described in [Generated worlds](generated-world.md).

## Presentation and renderer boundaries

Presentation turns completed-world and frame readings into the renderer's
game-shaped API without pushing numeric packing or platform work down into the
terrain/simulation layers.

| Input | Presentation owner | Renderer-facing result |
| --- | --- | --- |
| Typed ground atlas and trails | `game::SurfacePresentation` | Terrain material/path texture lanes |
| Typed water bundle plus water datum/extent | `game::WaterPresentation` | Numeric ocean setup and water texture lanes |
| Completed-world river network | `game::RiverSurface` | Curved river ribbon mesh/data |
| `FrameView`, world, and session readings | Focused world, actor, water, effect, and HUD routines | Retained resources and `DrawList` commands in fixed frame order |
| Renderer calls | `render::Renderer` | Backend-independent resource/pass requests |
| Metal renderer state | `MetalTerrainResources`, `MetalWaterResources`, `MetalFrameTargets`, `MetalFrameEncoding` | Retained world resources, target resources, and one drawable submission |

Terrain, Water, and Scene operations share one lazy scene encoder; their
separate names do not imply a generic render graph or separate depth histories.
The Metal facade owns drawable acquisition, command-buffer lifetime, capture,
timing, and benchmark completion. See [Renderer and platform architecture]
(renderer-design.md) for resource and pass detail.

## Target graph

The source ownership above is reflected by these CMake targets. Arrows point
from a consumer to the target it consumes. Dashed Apple edges exist only in
Apple configurations; exactly one selected-platform edge is present per build.

```mermaid
flowchart LR
  spatial["moppe_spatial"] --> units["mp-units"]
  terrain["moppe_terrain"] --> spatial
  world["moppe_world"] --> terrain
  simulation["moppe_simulation"] --> world
  simulation --> render["moppe_render"]
  scene["moppe_scene"] --> simulation
  scene --> world
  scene --> render
  scene --> botany["atelier_botany"]
  scene -.-> apple["moppe_apple"]
  app["moppe_app"] --> scene
  app -.-> mac["moppe_platform_mac"]
  app -.-> ios["moppe_platform_ios"]
  app -.-> web["moppe_platform_web"]
  metal["moppe_metal"] --> render
  webgpu["moppe_webgpu"] --> render
  terrain_metal["moppe_terrain_metal"] --> terrain
  mac --> metal
  mac --> terrain_metal
  mac --> apple
  ios --> metal
  ios --> apple
  web --> webgpu
  desktop["moppe"] --> app
  desktop --> mac
  phone["moppe-ios"] --> app
  phone --> ios
  browser["moppe-web"] --> app
  browser --> web
  tests["moppe-tests"] --> scene
  tools["terrain tools"] --> world
```

`moppe_spatial` is deliberately header-only: its types expose mp-units
vocabulary but need no translation unit. `moppe_terrain` keeps reusable finite
terrain and hydrology algorithms free of world, scene, and platform code.
`moppe_world` adds concrete map storage, direct construction, materialization,
`GeneratedWorld`, and deterministic water-capture selection.

`moppe_simulation` has a real dependency on `moppe_render`: session-owned
Stars retain meshes and Stars/Dust expose their presentation operations. This
is an explicit current constraint, not a claim that physics needs Metal.
`moppe_scene` composes the completed-world and session readings, with
Apple-common asset/glyph support where available, but has no OS event loop or
renderer backend. `moppe_app` holds the host-service callers (`Terrain` and
`WorldLoading`); terminal programs retain `game.cc` because
it defines `main` and chooses the macOS, iOS, or browser host.

The ordinary desktop game consumes the app/scene path; portable tests begin at
the testable scene target and do not link a desktop event loop. Terrain
command-line tools consume only `moppe_world`, so they do not pull in the
desktop platform merely because unrelated presentation code was compiled into
a broad archive.

## Current scope and deliberate gaps

This atlas describes the completed RFC-0001 slice. It does not claim that the
Atelier proposals have replaced Moppe, that every run is bitwise reproducible,
or that every renderer backend has visual feature parity.

- Implicit elevation and chart origins remain current-engine facts; registered
  frame projections remain Atelier-earth work.
- `GameState` makes fixed-world session replay practical, but world generation,
  renderer history, window state, and loading are not checkpoint state.
- Metal is the full-fidelity native backend. WebGPU is the supported playable
  browser backend, with a deliberately lower-cost default presentation;
  Android remains unimplemented.
- Persistent places, routes, and player traces belong to later world work, not
  to the completed-world/session boundary described here.

## Detailed maps

- [Surface atlas](surface-atlas.md) — domains, all typed sections, validity,
  and presentation lanes.
- [Terrain generation and analysis](terrain-expressions.md) — direct finite
  construction and typed analysis products.
- [Generated worlds](generated-world.md) — construction capability and
  activation lifetime.
- [Game state and replay](game-state.md) — session checkpoint and benchmark
  boundary.
- [Refactoring seams](refactoring-seams.md) — preserved characterization and
  runtime smoke contracts.
- [Renderer and platform architecture](renderer-design.md) — Metal resources,
  frame encoding, and host implementation detail.

### 38. Assistant tool calls

#### Tool call: `write_note`

```json
{
  "block_ids": [
    "69ZSRH",
    "WKHH8J",
    "6EQC5N",
    "LKDS8L",
    "KX52RU",
    "DS4CF6",
    "FH7DGQ",
    "QN6XK7",
    "MLLA26",
    "H3LU46",
    "WRVKYL",
    "3AJ2XX",
    "YUEKZJ",
    "SCAG4B",
    "NXHNQ9"
  ],
  "text": "For Moppe physics, keep two meanings of partition separate. Smith/Bittner granular partitions are selective, labeled representational views projected onto one reality (#69ZSRH, #WKHH8J); they can recognize a whole while tracing over finer parts (#6EQC5N), and their leaves are only relative atoms at a chosen granularity (#LKDS8L). Ellerman partitions are exhaustive, mutually exclusive equivalence classes on a fixed universe (#3AJ2XX), ordered by refinement and combined by join/meet (#YUEKZJ). Use Smith partitions for gameplay/physics/render/damage views of the same object; use Ellerman quotient maps for solver islands, sleeping groups, welded-motion groups, and other explicit equivalence relations. An engineered vehicle is a CU3 object assembled from fitted components (#KX52RU), while installed components remain objects (#DS4CF6). Distinguish transient touching/contact (#FH7DGQ, #QN6XK7) from persistent attachment by joints, and distinguish continuant structure from the processes that realize motion (#MLLA26). A component should be a relatively isolated functional part, not an arbitrary property bag (#H3LU46). Against fantology suggests a small typed relation vocabulary—part, depends, participates, realizes, precedes—rather than a universal entity/predicate table (#WRVKYL). For an articulated motorcycle vertical slice: Bike gameplay object; frame/wheels/fork/swingarm as component objects and rigid bodies; hardware joint vs kinematic constraint specification vs solver impulse kept distinct; ephemeral contact manifolds/events; per-tick solver-island quotient. Preserve current GameState as SNAP state and replay as SPAN history. Ellerman's generative distinction-making (#SCAG4B, #NXHNQ9) is promising for assembly/configuration generation, but should not be forced into the low-level constraint solver.",
  "title": "Physics-engine ontology: Smith + Ellerman synthesis"
}
```

### 39. Tool result: write_note

NOTE SAVED #KQGZGB
IRI: https://m.sheaf.less.rest/KQGZGB

### 40. Assistant

I think these materials fit together unusually well for an engine—but only if we preserve some crucial distinctions.

## 1. There are two different ideas called “partition”

### Smith: a partition is a **selective view of reality**

A granular partition is a labeled representational device: a map, inventory, classification, physics model, or scene description. It recognizes some objects and parts while deliberately tracing over others (#69ZSRH, #6EQC5N).

Thus the same motorcycle can appear as:

- one gameplay object;
- five rigid bodies for physics;
- dozens of visible parts for rendering;
- frame, wheels, engine, suspension, etc. for damage;
- one icon on a map.

None is necessarily the uniquely correct decomposition. Each is a projection at a particular granularity. A leaf is atomic only *relative to that partition*, not intrinsically partless (#LKDS8L).

This is already latent in Moppe’s principle:

> simulate in fields, experience in objects

We can extend it:

> one world, several explicit granular partitions.

### Ellerman: a partition is an **equivalence relation**

Ellerman starts with a fixed universe $U$ and groups its elements into mutually exclusive, jointly exhaustive blocks. Two elements belong to the same block when the current operation does not distinguish them (#3AJ2XX).

That is exactly what `moppe/partition.hh` expresses as a quotient map:

```cpp
element -> block
```

This kind of partition is excellent for:

- solver islands;
- sleeping islands;
- joint-connected assemblies;
- welded bodies sharing rigid motion;
- collision-filter groups;
- LOD equivalence;
- material or behavior classes.

These are not representational perspectives in Smith’s broader sense. They are precise answers to:

> Under this criterion, which things count as equivalent?

The two notions are complementary, but should not share one vague `Partition` abstraction.

---

## 2. An articulated object is not a bag of components

Smith’s strongest contribution here is the account of **causal unity**.

An engineered object such as a vehicle is unified by the engineered assembly of reciprocally fitted components—fasteners, bearings, shafts, joints, and constrained moving parts (#KX52RU). Importantly, a component can remain an object after installation: the spark plug does not cease to be an object when inserted into the car (#DS4CF6).

For an articulated motorcycle:

```text
Bike                         gameplay object / engineered assembly
├── Frame                    component object + rigid body
├── Front wheel              component object + rigid body
├── Rear wheel               component object + rigid body
├── Fork                     component object + rigid body
└── Swingarm                 component object + rigid body
```

But “component” should mean more than “a record attached to an entity.” In the bodily-systems account, an element is a relatively isolated part bearing a constituent function within a larger system (#H3LU46). Applied to machinery:

- the wheel bears the function of rolling/supporting/transmitting forces;
- the fork bears steering and suspension functions;
- the frame maintains structural relationships;
- the brake realizes controlled dissipation.

So an ECS may remain useful as a storage technique, but it should not dictate the ontology. `MassComponent`, `TransformComponent`, and `VisibleComponent` are database columns; they are not all “components” in the same ontological sense.

That is the practical warning of *Against Fantology*: do not flatten substances, qualities, processes, and relations into one universal entity–predicate spreadsheet. Smith instead proposes a small vocabulary of typed formal relations such as `part_of`, `depends_on`, `participates_in`, and `realizes` (#WRVKYL).

---

## 3. “Joint” actually names at least three different things

An engine should distinguish:

1. **The material joint**  
   Bearings, axle, hinge plates, fork tubes, bolts. This is part of the engineered object.

2. **The kinematic constraint model**  
   “These two rigid bodies may rotate around this axis within these limits.” This is the model’s selective representation of the assembly.

3. **The constraint-solving process**  
   Impulses or forces applied during a timestep to preserve the permitted relation.

These are not interchangeable.

For example:

```cpp
struct HingeConstraint {
  BodyHandle first;
  BodyHandle second;
  LocalFrame first_anchor;
  LocalFrame second_anchor;
  radians_t lower_limit;
  radians_t upper_limit;
};
```

This is not itself the wheel bearing. It is the physics partition’s model of what the bearing permits.

Likewise, the impulse generated by the solver is not a persistent property of the hinge. It is part of the current constraint-resolution process.

---

## 4. Attachment and contact must remain separate

Mereotopology gives a clean distinction.

Two objects **touch** when their external boundaries coincide while each could survive the removal of the other (#QN6XK7). Contact can be transient. Attachment is a stronger, temporally persistent configuration.

Therefore the engine wants separate graphs:

```text
parthood graph
    what constitutes the engineered whole

attachment graph
    what is currently connected by joints, mounts, tethers, fasteners

contact graph
    what is touching during this timestep

location relations
    where bodies are in carrier space
```

A wheel touching terrain is not part of the terrain and is not attached to it. A wheel attached through an axle is not merely touching the frame. A collision manifold should not be represented as a temporary scene-graph parent.

This confirms the distinction already made in `docs/ontology.md` between parthood, attachment, and location.

---

## 5. Continuants, processes, and events give the timestep its form

The motorcycle, bodies, joints, mass qualities, and joint limits are continuants: they persist through time.

Motion, suspension compression, sliding, collision response, and a jump are processes. Touchdown and joint breakage are event boundaries. SNAP and SPAN are complementary views of the same dynamic reality (#MLLA26).

That suggests a timestep architecture like:

```text
SNAP state at t
    bodies, poses, velocities, enabled joints, persistent qualities

derive temporary relations
    broadphase candidates
    contact manifolds
    active constraints
    solver islands

SPAN process over dt
    force accumulation
    integration
    contact and joint resolution

event boundaries
    contact began
    contact ended
    touchdown
    joint exceeded breaking threshold

SNAP state at t + dt
```

The solver is then a process operating over a state, not the owner of the world’s object ontology.

This also preserves Moppe’s existing good division:

- `GameState` as SNAP;
- replay/input history as SPAN.

---

## 6. Ellerman’s algebra becomes useful inside the solver

Suppose $B$ is the set of active rigid bodies.

Define quotient maps such as:

```text
joint_island   : Body -> JointIsland
contact_island : Body -> ContactIsland
sleep_group    : Body -> SleepGroup
rigid_group    : Body -> WeldedGroup
```

Then:

- the partition induced by joint connectivity groups bodies connected through enabled joints;
- the partition induced by contact connectivity groups bodies connected through active contacts;
- the combined solver islands are connected components under *either* relation.

Under Ellerman’s refinement order, combining joint and contact connectivity this way is a **meet**: it produces coarser blocks by taking the equivalence closure of both connectivity relations.

Conversely, combining independent classifiers such as:

```text
material class
motion type
collision layer
```

by intersecting their blocks is a **join**, producing a finer partition (#YUEKZJ).

This is more than terminology: it gives exact laws and useful tests for island construction.

One caveat: a broadphase grid is not necessarily an Ellerman partition. A large body can overlap several spatial cells. Unless each body receives exactly one block, it is an incidence or cover relation, not a partition.

---

## 7. The first concrete proof should be an articulated motorcycle

The current `Vehicle` is deliberately coarse: one position, one velocity, a one-metre collision radius, sampled ground support, visual suspension, and box collision. That is a valid Smith-style granular partition of the bike—just a very coarse one.

A good next conceptual slice would be:

```text
Bike                    one gameplay object
Physics bodies          frame, front wheel, rear wheel
Persistent joints       steering hinge, front suspension, rear suspension
Transient relations     wheel–terrain contacts
Processes               rolling, sliding, compression, impacts
Events                  takeoff, touchdown, contact begin/end
Partition               current solver island
```

The renderer could remain more detailed than physics, while gameplay continues to recognize one bike. Damage could later introduce a finer partition without forcing rendering, gameplay, and physics to adopt the same decomposition.

The key architectural rule is:

> The bike is not identical to one body, its body array, its entity ID, or its render hierarchy. Those are different projections onto the same persisting engineered object.

---

## 8. Where Ellerman’s “generative mechanism” fits

Ellerman contrasts selection among already actual alternatives with generation by progressively making distinctions in an initially undifferentiated possibility space (#SCAG4B, #NXHNQ9).

That seems highly relevant to:

- procedural vehicle construction;
- choosing suspension and frame topology;
- differentiating a generic machine recipe into a specific assembly;
- progressive damage, where a formerly unified assembly becomes distinguished into independently moving pieces;
- construction systems where a latent crossing becomes ford, bridge, arch, deck, and approaches.

It is less useful as a metaphor for the inner numerical constraint solver. There, ordinary mechanics and graph algorithms should remain direct. The generative interpretation belongs mainly to world and assembly formation.

## Compact engine ontology

```text
Object
  a causally unified persisting thing

Component object
  an object that is a functional part of a larger assembly

Fiat part
  a useful demarcation that is not independently unified

Quality
  mass, inertia, pose, velocity, friction, joint limit

Material joint
  hardware belonging to the assembly

Constraint
  physics-model representation of permitted relative motion

Contact
  transient boundary relation between bodies

Process
  movement, collision response, suspension motion, sliding

Event
  contact begin/end, touchdown, breakage

Smith partition
  a selective gameplay/physics/render/damage view

Ellerman partition
  an explicit equivalence relation such as solver-island membership
```

The durable synthesis is saved as #KQGZGB.

### 41. User

Do you have any tips for literature I could look into if I'm interested in representing systems like assemblies as these kinds of discrete domains or spaces, or what are they called, like complexes? The way that that kind of stuff would be relevant to this kind of stuff

### 42. Assistant tool calls

#### Tool call: `search_text`

```json
{
  "limit": 10,
  "query": "cell complex discrete domain assembly components joints topology"
}
```

#### Tool call: `search_text`

```json
{
  "limit": 10,
  "query": "mereotopology assembly component system spatial functional hierarchy"
}
```

#### Tool call: `search_text`

```json
{
  "limit": 10,
  "query": "configuration space rigid body joints constraints multibody"
}
```

#### Tool call: `web_search`

```json
{
  "query": "foundational literature cell complexes combinatorial maps engineering assemblies topology joints multibody systems"
}
```

#### Tool call: `web_search`

```json
{
  "query": "literature port-Hamiltonian systems bond graphs discrete exterior calculus cell complexes physical systems engineering"
}
```

#### Tool call: `web_search`

```json
{
  "query": "mereotopology engineering assemblies components joints ontology literature"
}
```

### 43. Tool result: search_text

Exact matches

1. Source: Making space: the natural, cultural, cognitive and social niches of human activity (#KG5TBB), Barry Smith, p. 9
  Context:
    #26C36S Making space: the natural, cultural, cognitive and social niches of human activity
      #SF9HJX Conclusion
  Matching excerpt #LD7QKH:
      In (Landgrebe and Smith 2021, Appendix), we describe a multi-stage multi-component strategy to use logically axiomatized formal ontologies, along with stochastic algorithms and other components, to translate complex natural language expressions in a way that will capture in logical form the full meaning of these expressions as used in a given domain and for a given purpose.

2. Source: Physics-engine ontology: Smith + Ellerman synthesis (#KQGZGB)
  Matching note #KQGZGB:
      For Moppe physics, keep two meanings of partition separate. Smith/Bittner granular partitions are selective, labeled representational views projected onto one reality (#69ZSRH, #WKHH8J); they can recognize a whole while tracing over finer parts (#6EQC5N), and their leaves are only relative atoms at a chosen granularity (#LKDS8L). Ellerman partitions are exhaustive, mutually exclusive equivalence classes on a fixed universe (#3AJ2XX), ordered by refinement and combined by join/meet (#YUEKZJ). Use Smith partitions for gameplay/physics/render/damage views of the same object; use Ellerman quotient maps for solver islands, sleeping groups, welded-motion groups, and other explicit equivalence relations. An engineered vehicle is a CU3 object assembled from fitted components (#KX52RU), while installed components remain objects (#DS4CF6). Distinguish transient touching/contact (#FH7DGQ, #QN6XK7) from persistent attachment by joints, and distinguish continuant structure from the processes that realize motion (#MLLA26). A component should be a relatively isolated functional part, not an arbitrary property bag (#H3LU46). Against fantology suggests a small typed relation vocabulary—part, depends, participates, realizes, precedes—rather than a universal entity/predicate table (#WRVKYL). For an articulated motorcycle vertical slice: Bike gameplay object; frame/wheels/fork/swingarm as component objects and rigid bodies; hardware joint vs kinematic constraint specification vs solver impulse kept distinct; ephemeral contact manifolds/events; per-tick solver-island quotient. Preserve current GameState as SNAP state and replay as SPAN history. Ellerman's generative distinction-making (#SCAG4B, #NXHNQ9) is promising for assembly/configuration generation, but should not be forced into the low-level constraint solver.

3. Source file: moppe/terrain/trail.hh
   Resource: https://m.sheaf.less.rest/3CV92Z/source-files/bW9wcGUvdGVycmFpbi90cmFpbC5oaA#content
   Size: 7659 bytes, 182 lines
   Matching excerpt:
      #ifndef MOPPE_TERRAIN_TRAIL_HH #define MOPPE_TERRAIN_TRAIL_HH #include <moppe/spatial/bundle.hh> #include <moppe/terrain/drainage.hh> #include <moppe/terrain/terrain_quantities.hh> #include <moppe/terrain/types.hh> #include <cstddef> #include <vector> namespace moppe::terrain { // The Motorcycle Association's brief for one deliberately made circuit. // Site selection and routing express intent; cut and fill then reconcile // that intent with the terrain rather than letting drainage draw the route. struct TrailFormation { float sea_level = 50.0f; square_meters_t minimum_catchment_area = 5000.0f * mp_units::si::metre * mp_units::si::metre; square_meters_t maximum_catchment_area = 100000.0f * mp_units::si::metre * mp_units::si::metre; meters_t minimum_height_above_sea = 1.5f * mp_units::si::metre; meters_t width = 3.0f * mp_units::si::metre; meters_t shoulder_blend = 4.0f * mp_units::si::metre; meters_t maximum_cut = 2.5f * mp_units::si::metre; meters_t maximum_fill = 1.5f * mp_units::si::metre; // Grade is longitudinal rise over distance along the route: following a // contour is zero grade even on a steep sidehill. The formation pass // separately benches the path cross-section towa
   Read the complete file with read blocks=["https://m.sheaf.less.rest/3CV92Z/source-files/bW9wcGUvdGVycmFpbi90cmFpbC5oaA#content"]

4. Source file: moppe/terrain/merge_tree.hh
   Resource: https://m.sheaf.less.rest/3CV92Z/source-files/bW9wcGUvdGVycmFpbi9tZXJnZV90cmVlLmho#content
   Size: 3304 bytes, 90 lines
   Matching excerpt:
      #ifndef MOPPE_TERRAIN_MERGE_TREE_HH #define MOPPE_TERRAIN_MERGE_TREE_HH #include <moppe/terrain/elevation_map.hh> #include <moppe/terrain/raster.hh> #include <moppe/terrain/types.hh> #include <cstdint> #include <vector> namespace moppe::terrain { // The merge tree of the heightfield: how connected components of the // sublevel sets are born at minima and join at saddles as the water // level rises. One deterministic O(n log n) precomputation answers // every standing-water question -- floods, lakes, spills, sea-level // queries -- as views, replacing per-query priority floods. // // Nodes are stored in creation order, so every parent appears after // all of its children; a single forward or reverse pass visits the // tree bottom-up or top-down. Ties in height break by cell index, // preserving determinism-by-construction. struct MergeTreeNode { static constexpr std::uint32_t no_node = 0xffffffffu; // Leaves are born at their minimum's height; merge nodes at the // saddle height where two or more components join. float birth; // The minimum cell for a leaf; the saddle cell for a merge node. CellIndex origin; std::uint32_t parent = no_node; // Number of children (0 for a leaf); child
   Read the complete file with read blocks=["https://m.sheaf.less.rest/3CV92Z/source-files/bW9wcGUvdGVycmFpbi9tZXJnZV90cmVlLmho#content"]

5. Source file: atelier/hex_sheet.cc
   Resource: https://m.sheaf.less.rest/3CV92Z/source-files/YXRlbGllci9oZXhfc2hlZXQuY2M#content
   Size: 17126 bytes, 453 lines
   Matching excerpt:
      #include "atelier/hex_sheet.hh" #include <algorithm> #include <cmath> #include <cstdint> #include <numbers> #include <ranges> #include <stdexcept> #include <utility> namespace atelier { using moppe::spatial::bundle_values; using moppe::spatial::BundleFocus; using moppe::spatial::extend_into; using moppe::spatial::fold_neighbourhood; using moppe::spatial::get; using moppe::spatial::laplacian; using namespace si::unit_symbols; namespace { constexpr Duration fixed_step = (1.0f / 120.0f) * s; constexpr Duration partition_interval = 0.75f * s; constexpr Duration growth_interval = 0.15f * s; constexpr Duration growth_duration = 6.0f * s; constexpr std::size_t maximum_generation = 3; std::size_t base_offset (GridCell cell) { return cell.row * hex_sheet_columns + cell.column; } GridCell base_cell (std::size_t offset) { return { offset % hex_sheet_columns, offset / hex_sheet_columns }; } std::vector<HexCell> initial_cells () { std::vector<HexCell> cells; cells.reserve (hex_sheet_base_cell_count); for (std::size_t base = 0; base < hex_sheet_base_cell_count; ++base) { cells.push_back ( { base_cell (base), 0.0f * m, 0.0f * m, 1.0f, 0, 1, 0, false }); } return cells; } std::uint32_t mix_bits (s
   Read the complete file with read blocks=["https://m.sheaf.less.rest/3CV92Z/source-files/YXRlbGllci9oZXhfc2hlZXQuY2M#content"]

6. Source file: moppe/terrain/merge_tree.cc
   Resource: https://m.sheaf.less.rest/3CV92Z/source-files/bW9wcGUvdGVycmFpbi9tZXJnZV90cmVlLmNj#content
   Size: 10408 bytes, 262 lines
   Matching excerpt:
      #include <moppe/terrain/merge_tree.hh> #include <algorithm> #include <array> #include <limits> #include <numeric> #include <stdexcept> namespace moppe::terrain { namespace { struct MergeOffset { int x; int y; }; constexpr std::array<MergeOffset, 8> merge_neighbors { { { -1, -1 }, { 0, -1 }, { 1, -1 }, { -1, 0 }, { 1, 0 }, { -1, 1 }, { 0, 1 }, { 1, 1 } } }; std::size_t merge_wrapped (int value, std::size_t period) { const int n = static_cast<int> (period); const int result = value % n; return static_cast<std::size_t> (result < 0 ? result + n : result); } // Path-halving union-find over cell indices; the component root // carries the id of its current merge-tree node. std::uint32_t find_root (std::vector<std::uint32_t>& parent, std::uint32_t cell) { while (parent[cell] != cell) { parent[cell] = parent[parent[cell]]; cell = parent[cell]; } return cell; } } MergeTree detail::build_merge_tree (const TerrainDomain& grid, std::span<const SurfaceElevation> elevations) { const std::size_t width = grid.width (); const std::size_t height = grid.height (); const std::size_t count = width * height; // Sort unique cells by (height, index): the same deterministic // order the drainage analyses us
   Read the complete file with read blocks=["https://m.sheaf.less.rest/3CV92Z/source-files/bW9wcGUvdGVycmFpbi9tZXJnZV90cmVlLmNj#content"]

7. Source file: tests/atelier/hex_sheet_test.cc
   Resource: https://m.sheaf.less.rest/3CV92Z/source-files/dGVzdHMvYXRlbGllci9oZXhfc2hlZXRfdGVzdC5jYw#content
   Size: 4749 bytes, 129 lines
   Matching excerpt:
      #include <atelier/hex_sheet.hh> #include <tests/test.hh> #include <algorithm> #include <array> #include <ranges> using namespace atelier; using namespace mp_units::si::unit_symbols; MOPPE_TEST (periodic_hex_sheet_has_reciprocal_six_neighbour_topology) { const HexSheet sheet; MOPPE_CHECK (sheet.topology_is_valid ()); MOPPE_CHECK (sheet.displacements ().size () == hex_sheet_base_cell_count); MOPPE_CHECK (sheet.velocities ().size () == hex_sheet_base_cell_count); MOPPE_CHECK (sheet.drives ().size () == hex_sheet_base_cell_count); const HexSheetTopology& topology = sheet.topology (); for (TileId id = 0; id < topology.size (); ++id) { auto neighbours = topology.neighbours (id); std::ranges::sort (neighbours); MOPPE_CHECK (std::ranges::adjacent_find (neighbours) == neighbours.end ()); for (TileId neighbour : neighbours) { const auto reverse = topology.neighbours (neighbour); MOPPE_CHECK (std::ranges::find (reverse, id) != reverse.end ()); } } } MOPPE_TEST (open_hex_sheet_ends_at_four_fixed_corners) { HexSheet sheet (SheetBoundary::open); MOPPE_CHECK (sheet.topology () .neighbours (sheet.topology ().tile_id ({ 0, 0 })) .size () == 2); sheet.advance (2.35f * s); const HexSheetTopology& top
   Read the complete file with read blocks=["https://m.sheaf.less.rest/3CV92Z/source-files/dGVzdHMvYXRlbGllci9oZXhfc2hlZXRfdGVzdC5jYw#content"]

8. Source file: moppe/terrain/drainage.cc
   Resource: https://m.sheaf.less.rest/3CV92Z/source-files/bW9wcGUvdGVycmFpbi9kcmFpbmFnZS5jYw#content
   Size: 38389 bytes, 862 lines
   Matching excerpt:
      #include <moppe/terrain/drainage.hh> #include <moppe/terrain/flood.hh> #include <moppe/terrain/fractional_drainage.hh> #include <moppe/profile.hh> #include <algorithm> #include <array> #include <cmath> #include <functional> #include <numeric> #include <queue> #include <span> #include <stdexcept> namespace moppe::terrain { namespace { struct Offset { int x; int y; }; constexpr std::array<Offset, 8> neighbors { { { -1, -1 }, { 0, -1 }, { 1, -1 }, { -1, 0 }, { 1, 0 }, { -1, 1 }, { 0, 1 }, { 1, 1 } } }; std::size_t wrapped (int value, std::size_t period) { const int n = static_cast<int> (period); const int result = value % n; return static_cast<std::size_t> (result < 0 ? result + n : result); } meters_t receiver_distance (std::uint32_t cell, std::uint32_t receiver, const TerrainDomain& grid) { const int width = static_cast<int> (grid.width ()); const int height = static_cast<int> (grid.height ()); int dx = static_cast<int> (cell % width) - static_cast<int> (receiver % width); int dy = static_cast<int> (cell / width) - static_cast<int> (receiver / width); if (dx > width / 2) dx -= width; if (dx < -width / 2) dx += width; if (dy > height / 2) dy -= height; if (dy < -height / 2) dy += hei
   Read the complete file with read blocks=["https://m.sheaf.less.rest/3CV92Z/source-files/bW9wcGUvdGVycmFpbi9kcmFpbmFnZS5jYw#content"]

9. Source file: tests/game/cinematic_flight_test.cc
   Resource: https://m.sheaf.less.rest/3CV92Z/source-files/dGVzdHMvZ2FtZS9jaW5lbWF0aWNfZmxpZ2h0X3Rlc3QuY2M#content
   Size: 14886 bytes, 348 lines
   Matching excerpt:
      #include <moppe/game/cinematic_flight.hh> #include <tests/test.hh> #include <algorithm> #include <vector> using namespace moppe; namespace { struct FlightFixture { static constexpr int side = 17; static constexpr std::size_t count = side * side; map::Surface map { side, side, Vec3 (1600, 240, 1600) }; terrain::TerrainDomain grid = map.domain (); terrain::RasterDomain domain { .width = side, .height = side }; terrain::FloodField flood; terrain::LakeCensus census; terrain::DrainageGraph drainage; terrain::RiverNetwork rivers; FlightFixture () : flood { .domain = grid, .sea_level = 0.1f, .has_ocean = false, .water_level = terrain::ScalarRaster ( domain, std::vector<float> (count, 0.1f)), .water_depth = terrain::ScalarRaster ( domain, std::vector<float> (count, 0.0f)), .ocean = std::vector<std::uint8_t> (count, 0), .spill_receiver = std::vector<terrain::CellIndex> (count), .outlets = {} }, census { .body = std::vector<terrain::WaterBodyId> ( count, terrain::LakeCensus::dry) }, drainage { .domain = grid, .receiver = std::vector<terrain::CellIndex> (count), .slope = terrain::SlopeRaster (terrain::ScalarRaster ( domain, std::vector<float> (count, 0.05f))), .contributing_area = terrain::Co
   Read the complete file with read blocks=["https://m.sheaf.less.rest/3CV92Z/source-files/dGVzdHMvZ2FtZS9jaW5lbWF0aWNfZmxpZ2h0X3Rlc3QuY2M#content"]

10. Source file: moppe/terrain/flood.cc
   Resource: https://m.sheaf.less.rest/3CV92Z/source-files/bW9wcGUvdGVycmFpbi9mbG9vZC5jYw#content
   Size: 17862 bytes, 421 lines
   Matching excerpt:
      #include <moppe/terrain/flood.hh> #include <moppe/profile.hh> #include <algorithm> #include <array> #include <cmath> #include <limits> #include <queue> #include <stdexcept> #include <utility> namespace moppe::terrain { namespace { struct FloodOffset { int x; int y; }; constexpr std::array<FloodOffset, 8> flood_neighbors { { { -1, -1 }, { 0, -1 }, { 1, -1 }, { -1, 0 }, { 1, 0 }, { -1, 1 }, { 0, 1 }, { 1, 1 } } }; std::size_t flood_wrapped (int value, std::size_t period) { const int n = static_cast<int> (period); const int result = value % n; return static_cast<std::size_t> (result < 0 ? result + n : result); } struct Cell { float level; std::uint32_t index; }; struct HigherCell { bool operator() (const Cell& left, const Cell& right) const noexcept { if (left.level != right.level) return left.level > right.level; return left.index > right.index; } }; } FloodField detail::analyze_standing_water (const TerrainDomain& grid, std::span<const SurfaceElevation> elevations, float sea_level) { MOPPE_PROFILE_ZONE ("analyze_standing_water"); if (!std::isfinite (sea_level)) throw std::invalid_argument ("standing-water sea level must be finite"); const std::size_t width = grid.width (); const std
   Read the complete file with read blocks=["https://m.sheaf.less.rest/3CV92Z/source-files/bW9wcGUvdGVycmFpbi9mbG9vZC5jYw#content"]

Approximate matches

1. Source: Bodily Systems and the Spatial-Functional Structure of the Human Body (#3CCZ4A), Barry Smith, Igor Papakin, Katherine Munn, p. 10
  Context:
    #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
      #W88WGC 3. Defining 'System'
        #5S5KVF 3.6 Granular Partitions and System Elements
  Score: 0.021
  Related excerpt #FTYFBV:
      A further ontological tool we will need is the theory of granular partitions . [19] This provides a way of formalizing our description of the structure of the body's modular hierarchy. A theory of granular partitions represents reality in terms of partitions, each of which highlights entities of a different grain. An organism is a single object: it exists independently of our partitions. But an organism can be viewed also as a totality of atoms, or as a totality of molecules, a totality of cells, a totality of regions, and so forth. All of these different views express distinct granular partitions of one and the same portion of reality.

2. Source: The Logic of Systems of Granular Partitions (#4QQD4A), Barry Smith, Maureen Donnelly, Thomas Bittner, p. 10
  Context:
    #VVCH2P The logic of systems of granular partitions
      #76NSHB 4 Refinement relations between granular partitions
        #SX8VBZ 4.2 Refinement vs. extension
  Score: 0.022
  Related excerpt #6DM7SK:
      Consider the left part of Figure 7. We have a partition \Gamma_x with \Delta_x being the collection of Fred's body parts, \Lambda_x = \{\text{'Fred's body'}, \text{'Fred's right arm'}, \dots\} , \Omega_x = \{\text{human body, right human arm, upper human body, } \dots\} , cells labeled 'Fred's body' and 'Fred's right arm' with \phi(\text{'Fred's right arm'}) \sqsubseteq \phi(\text{'Fred's body'}) and with the cell labeled 'Fred's right arm' projecting onto your friend Fred's right arm, i.e., \rho_x(\phi_x(\text{'Fred's right arm'})) = \text{Fred's right arm} , and the cell labeled 'Fred's body' projecting onto Fred's whole body, i.e., \rho_x(\phi_x(\text{'Fred's body'})) = \text{Fred's body} . (In Figure 7 we use the stretched bracket < to indicate that the cell labeled 'Fred's body' targets Fred's whole body.) The cell labeled 'Fred's right arm' is of type right human arm and the cell labeled 'Fred's body' is of type human body .

3. Source: The Logic of Systems of Granular Partitions (#4QQD4A), Barry Smith, Maureen Donnelly, Thomas Bittner, p. 1
  Context:
    #VVCH2P The logic of systems of granular partitions
      #YHG9C8 1 Introduction
  Score: 0.019
  Related excerpt #69595E:
      Granular partitions are not only at work in the realm of classes of things such as food, vegetables, etc., but also in the realm of objects. Consider Figure 2. On the left side we have the tree representation of certain aspects of the mereological structure of the human being Fred. In the middle we have a corresponding cell structure and at the right hand side we have the target domain – your friend Fred. We assume the obvious ‘Fred’s Head’ \mapsto Fred’s head , ‘Fred’s limbs’ \mapsto Fred’s left arm + Fred’s right arm + Fred’s left leg + Fred’s right leg ... projection.

4. Source: Boundaries: An Essay in Mereotopology (#7YZU95), Barry Smith, p. 22
  Context:
    #RBUH86 Boundaries: An Essay in Mereotopology1
      #836SUT Varieties of Connectedness
        #CC4MY2 Contact
  Score: 0.018
  Related excerpt #B2GTUC:
      DCNK. CNKx := Kx \wedge \forall yz[(Ky \wedge Kz \wedge x = y \cup z) \rightarrow yDCOKz] (connectedness for bodies) 24

5. Source: On Classifying Material Entities in Basic Formal Ontology (#9GWUC8), Barry Smith, p. 5
  Context:
    #R3ZTH8 On Classifying Material Entities in Basic Formal Ontology
      #KCTEZX 4 Object
        #MCU2BM 4.2 Three focal examples
          #2QYSRV CU1: Causal unity via physical covering
  Score: 0.024
  Related excerpt #ABL3DK:
      An anatomical structure which has as its direct parts portions of two or more types of tissue or two or more types of cardinal organ part which constitute a maximally connected anatomical structure demarcated predominantly by a bona fide anatomical surface. Examples: femur, biceps, liver, heart, skin, tracheobronchial tree, ovary. [Rosse and Mejino 2007]

6. Source: On Classifying Material Entities in Basic Formal Ontology (#9GWUC8), Barry Smith, p. 5
  Context:
    #R3ZTH8 On Classifying Material Entities in Basic Formal Ontology
      #KCTEZX 4 Object
        #MCU2BM 4.2 Three focal examples
          #KNXK3W CU3: Causal unity via engineered assembly of components
  Score: 0.02
  Related excerpt #KX52RU:
      Here the material parts of a material entity are combined together via mechanical assemblies joined for example through screws or other fasteners. The assemblies often involve parts which are reciprocally engineered to fit together, as in the case of dovetail joints, balls and bearings, nuts and bolts. A causal unity of this sort can be interrupted for a time, as when a watch is disassembled for repair, and then recreated in its original state. The parts of an automobile, including the moving parts, constitute an object because of their relative rigidity: while these parts may move with respect to each other, a given gear cannot move e.g., 10 ft., while the other parts do not.

7. Source: A Theory of Granular Partitions (#FQCWKV), Barry Smith, Thomas Bittner, p. 16
  Context:
    #QCRBYG CHAPTER 1
      #V7KTGZ A Theory of Granular Partitions
        #ZSJP4W 5 CORRESPONDENCE OF MEREOLOGICAL STRUCTURE
          #BV9UTU 5.2 The domain of a partition
  Score: 0.028
  Related excerpt #4V93NR:
      We can thus define the domain of a partition simply as the object (mereological whole) onto which its root cell is projected. By functionality of projection and location there can be only one such object.

8. Source: A Theory of Granular Partitions (#FQCWKV), Barry Smith, Thomas Bittner, p. 23
  Context:
    #QCRBYG CHAPTER 1
      #V7KTGZ A Theory of Granular Partitions
        #ZK25N3 7 FULLNESS AND CUMULATIVENESS
          #Q76SY7 7.1 Fullness
  Score: 0.017
  Related excerpt #SURVD6:
      where (+_{z \subset z_1} z) and (\cup_{z \subset z_1} z) symbolize respectively the operations of applying mereological and partition-theoretic sum for all proper subcells z of the cell z_1 . Since we can easily prove that (\cup_{z \subset z_1} z) = z_1 , DFullcell could be reformulated as asserting that a cell is full if and only if it is identical to the mereological sum of its descendants:

9. Source: Carving Up Reality (#XYERFR), Barry Smith, p. 7
  Context:
    #UYEXSM Carving Up Reality
      #CKWUCA 4. Towards a Theory of Partitions1
  Score: 0.029
  Related excerpt #ED8KBN:
      can be identified as the mereological fusions of such minimal cells. 2 The corresponding minimal cells will, again in the ideal case, constitute a perfect tiling – a jointly exhaustive and pairwise disjoint decomposition – of the pertinent domain of objects, and each cell in such a partition is itself the mereological sum of some one or more of those minimal cells.

10. Source file: ideas/structure-of-space.md
   Resource: https://m.sheaf.less.rest/3CV92Z/source-files/aWRlYXMvc3RydWN0dXJlLW9mLXNwYWNlLm1k#content
   Size: 24239 bytes, 620 lines
  Score: 0.029
   Related excerpt:
      aspect ratios; - variable scale; - no thin slivers or unusable exterior remnants; - no globally privileged north-south axis; - boundaries that may follow landforms and existing centers; - occasional triangles, pentagons, or junction cells where the whole genuinely calls for them. The irregularity is not noise applied to a grid. It is the accommodation by which the measure belongs to its site. ## Meter, not ontology The constructive value of the tissue is analogous to rhythm in typography and music. A typographic baseline grid does not claim that language consists of horizontal lines. It lets headings, paragraphs, captions, lists, and images participate in one vertical rhythm. Musical meter does not require a strict metronome. It creates shared temporal expectations within which phrases can stretch, accents can move, and syncopation can become meaningful. Minecraft succeeds in part because every act inherits a spatial beat. One block, two blocks, and three blocks immediately become comprehensible measures. Openings align. Repetitions can be counted by eye. Several people can extend, repair, or vary one another's work without manipulating splines, control points, or specialist modeli
   Read the complete file with read blocks=["https://m.sheaf.less.rest/3CV92Z/source-files/aWRlYXMvc3RydWN0dXJlLW9mLXNwYWNlLm1k#content"]

### 44. Tool result: search_text

Exact matches

1. Source: Bodily Systems and the Spatial-Functional Structure of the Human Body (#3CCZ4A), Barry Smith, Igor Papakin, Katherine Munn, p. 13
  Context:
    #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
      #W88WGC 3. Defining 'System'
        #JHMTY4 3.8 The Body as Spatial-Functional Hierarchy
  Matching excerpt #L7X8QD:
      We have now arrived at a picture of the body as a complex modular hierarchy that is at once spatial and functional. The heart, for example, is at once a part of the circulatory system and an element in that system. As a part, it is a mereological component of a physical structure visible exclusively in a SNAP ontology such as the FMA. As an element, it has a function that is realized in processes, and therefore it requires for its demarcation also reference to a SPAN ontology.

2. Source: Bodily Systems and the Spatial-Functional Structure of the Human Body (#3CCZ4A), Barry Smith, Igor Papakin, Katherine Munn, p. 22
  Context:
    #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
      #YHJXXN 6. How the Body is Demarcated into Bodily Systems
        #WGQZDU 6.2 Critical Systems
  Matching excerpt #T7R9D2:
      Of course it is possible that, if an element several levels below the body as a whole ceases to function, then the life of the body itself could be brought to an end. Does this undercut our conception of the spatial-functional hierarchy? No; rather it forces us to take into account causal processes that relate one spatial-functional level to another. The heart is a critical element of the circulatory system; the circulatory system is a critical element of the whole body. If the heart stops, the body dies. But it is not the heart's stopping that directly causes the body to die; rather, the heart's stopping causes the circulatory system to stop functioning, which in turn is what causes the body to die. So an element on a lower spatial-functional level, separated from the body as a whole by several other levels, does not directly cause the body to stop working. It does so only by means of intermediate causal links. A spatial-functional hierarchy accounts for these links.

3. Source: Bodily Systems and the Spatial-Functional Structure of the Human Body (#3CCZ4A), Barry Smith, Igor Papakin, Katherine Munn, p. 14
  Context:
    #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
      #W88WGC 3. Defining 'System'
        #JHMTY4 3.8 The Body as Spatial-Functional Hierarchy
  Matching excerpt #77LY9W:
      We also take over from [25] the idea of a spatial-functional hierarchy, which, in contrast to the FMA, supports an assay of the body's anatomical structures in tandem with an assay of the corresponding functions. The spatial side of this hierarchy taxonomizes the body's anatomy according to a modular structure (i.e. in terms of what is element of what). The functional side of the hierarchy taxonomizes the body according to which functional processes cause, or enable, which other functional processes to occur. Fusing a spatial taxonomy with a functional taxonomy yields a spatial-functional hierarchy.

4. Source: Bodily Systems and the Spatial-Functional Structure of the Human Body (#3CCZ4A), Barry Smith, Igor Papakin, Katherine Munn, p. 20
  Context:
    #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
      #EU2W22 5. Elements, Functions, and Criticality
        #P8ECVR 5.4 Critical Functions and the Spatial-Functional Hierarchy
  Matching excerpt #AUB79E:
      This correlation between criticality and spatial-functional level casts light on the way in which redundancy factors into the spatial-functional hierarchy. Briefly, we can say that the lower the spatio-functional level, the fewer examples we find of criticality and the greater the redundancy of functionings. Thus the mutation of one single cell does not cause cancer in normal conditions (which means: where the immune system is functioning successfully). For this we need the presence of the same mutant gene in a multiplicity of cells within a single tissue.

5. Source: Bodily Systems and the Spatial-Functional Structure of the Human Body (#3CCZ4A), Barry Smith, Igor Papakin, Katherine Munn, p. 13
  Context:
    #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
      #W88WGC 3. Defining 'System'
        #JHMTY4 3.8 The Body as Spatial-Functional Hierarchy
  Matching excerpt #XYK3M5:
      On the spatial-functional hierarchy here defended, the circulatory system is at the top level, the heart is located at the next level down, and its elements – ventricles, atria, valves, and so on – at the next level thereafter. Each of the latter bears a function in relation to the higher-level functioning of the heart. The circulatory system itself is an element of the human body taken as a whole.

6. Source: Bodily Systems and the Spatial-Functional Structure of the Human Body (#3CCZ4A), Barry Smith, Igor Papakin, Katherine Munn, p. 5
  Context:
    #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
      #CVF4S5 2. Bodily Systems in the Medical Domain
        #9UT3KZ 2.3 A Brief Summary
  Matching excerpt #5KJ64T:
      It is top-level systems like the circulatory, digestive, urinary, and endocrine systems to which we refer in what follows with the term bodily system . One feature that is shared in common by all bodily systems unique among all the parts involved in the body's spatial-functional hierarchy is that their ceasing to function is sufficient for the body to die.

7. Source: Bodily Systems and the Spatial-Functional Structure of the Human Body (#3CCZ4A), Barry Smith, Igor Papakin, Katherine Munn, p. 5
  Context:
    #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
      #CVF4S5 2. Bodily Systems in the Medical Domain
        #9UT3KZ 2.3 A Brief Summary
  Matching excerpt #ADXMUJ:
      In what follows we will introduce and clarify further terms that will prove necessary to our analysis of body system , including: element , part , function , and critical function . In addition we will make use of certain ontological tools in order to clarify these terms; these will include: a theory of perdurants and endurants, a theory of granular partitions, and an account of what we shall call the spatial-functional hierarchy of the human body.

8. Source: Bodily Systems and the Spatial-Functional Structure of the Human Body (#3CCZ4A), Barry Smith, Igor Papakin, Katherine Munn, p. 15
  Context:
    #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
      #YN2YMY 4. 'Element' Defined
  Matching excerpt #446F78:
      In the context of the digestive system, the blood's function is to transport nutrients and allow for nutrient and waste exchange at the cellular level, and to nourish the components of the digestive system; in the context of the respiratory system, its function is to transport gases and allow for gas exchange at the cellular level. Blood, therefore, like most elements, can be located simultaneously at different horizontal levels of the spatial-functional hierarchy, for it has different functions within the context of different systems, and blood is an element of each. More precisely, we might want to say that at any given time different potentially overlapping parts of the blood in the body are parceled out as elements of different systems. Which these parts are will then vary from one moment to the next.

9. Source: Bodily Systems and the Spatial-Functional Structure of the Human Body (#3CCZ4A), Barry Smith, Igor Papakin, Katherine Munn, p. 16
  Context:
    #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
      #EU2W22 5. Elements, Functions, and Criticality
        #986L3N 5.1 Evaluating Functionings
  Matching excerpt #5BZ36Q:
      The spatial-functional hierarchy gives us a means by which we can effect an evaluation of functionings. In a spatial-functional hierarchy built in reflection of constituent functions on successive levels, an element succeeds in performing its function when that performance contributes to the functioning of each overarching whole on each successive level, until we reach the processes relevant to the survival of the whole human body. The body's survival then becomes the benchmark for the evaluation of the functionings of its respective elements.

10. Source: A Taxonomy of Granular Partitions (#LRK6E2), Barry Smith, Thomas Bittner, p. 12
  Context:
    #T5AX2N A taxonomy of partitions
      #A8Q3M9 5 Partitions of geographic space
        #4VMJX6 5.2 Categorical coverages
  Matching excerpt #U66Y72:
      Firstly, the partition of the attribute domain is exhaustive relative to the spatial component: every minimal cell in the spatial partition has a corresponding minimal cell in the attribute partition. Consequently, the partition of the attribute domain exhausts the domain of all cases that actually occur in the region covered by the corresponding spatial partition. For example, if our spatial partition projects onto a desert, then the corresponding partition of soil types needs to be exhaustive for the different types of sand that occur in this area but it does not need to contain a cell labeled 'clay'. Secondly, projection and location need both to be functional, otherwise the regions carved out on the spatial side would not be jointly exhaustive and pairwise disjoint. Both functions may however be partial, as long as they are exhaustive relative to the pertinent spatial component.

Approximate matches

1. Source: Bodily Systems and the Spatial-Functional Structure of the Human Body (#3CCZ4A), Barry Smith, Igor Papakin, Katherine Munn, p. 14
  Context:
    #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
      #W88WGC 3. Defining 'System'
        #JHMTY4 3.8 The Body as Spatial-Functional Hierarchy
  Score: 0.029
  Related excerpt #77LY9W:
      We also take over from [25] the idea of a spatial-functional hierarchy, which, in contrast to the FMA, supports an assay of the body's anatomical structures in tandem with an assay of the corresponding functions. The spatial side of this hierarchy taxonomizes the body's anatomy according to a modular structure (i.e. in terms of what is element of what). The functional side of the hierarchy taxonomizes the body according to which functional processes cause, or enable, which other functional processes to occur. Fusing a spatial taxonomy with a functional taxonomy yields a spatial-functional hierarchy.

2. Source: Bodily Systems and the Spatial-Functional Structure of the Human Body (#3CCZ4A), Barry Smith, Igor Papakin, Katherine Munn, p. 13
  Context:
    #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
      #W88WGC 3. Defining 'System'
        #JHMTY4 3.8 The Body as Spatial-Functional Hierarchy
  Score: 0.026
  Related excerpt #L7X8QD:
      We have now arrived at a picture of the body as a complex modular hierarchy that is at once spatial and functional. The heart, for example, is at once a part of the circulatory system and an element in that system. As a part, it is a mereological component of a physical structure visible exclusively in a SNAP ontology such as the FMA. As an element, it has a function that is realized in processes, and therefore it requires for its demarcation also reference to a SPAN ontology.

3. Source: Bodily Systems and the Spatial-Functional Structure of the Human Body (#3CCZ4A), Barry Smith, Igor Papakin, Katherine Munn, p. 19
  Context:
    #XDQMN2 Bodily Systems and the Spatial-Functional Structure of the Human Body
      #EU2W22 5. Elements, Functions, and Criticality
        #P8ECVR 5.4 Critical Functions and the Spatial-Functional Hierarchy
  Score: 0.024
  Related excerpt #8R4VKG:
      Recall that the spatial-functional hierarchy is organized on the basis of two features of the body: its complex anatomical structure, and the functions that are realized through the processes that this structure allows for. Elements on lower levels are parts of elements on higher levels, and, correspondingly, their functioning contributes to the functioning of the elements on these higher levels.

4. Source: Agglomerations (#E5CLFY), Barry Smith, p. 12
  Context:
    #QYE7M3 Agglomerations
      #D9V7TR 9. Races, Nations, Ethnicities
  Score: 0.024
  Related excerpt #4BYRJ4:
      We have argued that mereotopology can provide a general framework within which the most basic relationships between agglomerations—separation, adjacency, overlap, inclusion, co-location interpenetration—can be represented. We can now see that these basic relationships exist in at least two forms: first, as spatial relationships holding directly between agglomerations themselves; second, as relationships holding between given target agglomerations not spatially but ontologically , as a result of correlated agglomerations of beliefs on behalf of responsible subjects, beliefs which bring about real transformations within the geosocial realm.

5. Source: More Things in Heaven and Earth (#FJ5KCA), Barry Smith, p. 3
  Context:
    #DVWAMH MORE THINGS IN HEAVEN AND EARTH
      #WSZ4H4 1. Heaven
  Score: 0.023
  Related excerpt #ZMLCDJ:
      Mereology proceeds as it were from the top down, taking as its starting point in our present case extended spatial continua. An extreme version of the mereological top-down approach is generated by what might be called Aristotelian mereological potentialism, a view to the effect that the part of a whole can never be an actual thing if the whole is. 3 My arm, as part of me, is real or actual on this view, but it is not a real or actual thing ; rather, it is merely a potential thing: it would become an actual thing only through physical separation. Similarly a collective of bodily wholes, say of separate coral reefs, would become an actual thing only if the bodies in question were fused together to form a unitary object. These constituent bodies would then themselves thereby cease to be actual things. (My arm as part of me is, we might say, sub-unitary; the collection of non-connected coral reefs is super-unitary.) Since heaven is, by assumption, everywhere homogeneous, there is on the potentialist view only one candidate heavenly object (only one place), namely the universe as a whole. Each putative constituent place exists only potentially (i.e. it would exist if, counterfactually, heaven were reduced in size in corresponding fashion).

6. Source: Layers: A New Approach to Locating Objects in Space (#K6JC2J), Barry Smith, Maureen Donnelly, p. 3
  Context:
    #3WT43K Layers: A New Approach to Locating Objects in Space
      #2VKZB5 3. Mereotopology
  Score: 0.029
  Related excerpt #RMU54D:
      A mereotopology is a formal theory of parthood and connection relations. Several different mereotopologies have been proposed, including not only those of Cohn et al. , but also those of Asher and Vieu, Smith, and others. These theories are, it is clear, intended to be used for reasoning about spatial relations among material objects. When they are examined more closely, however, it becomes evident that – in keeping with what was said above – they assume that their immediate domains of application will be restricted to regions. The axioms formulated in (Smith 1996) are, it is true, neutral as between objects and regions; but even there no resources are provided for giving an account of the distinction between objects and the regions in which they are located. Because distinct location relations are not introduced into these mereotopologies, coincidence of spatial location collapses onto overlap. Where, as in (Cohn 2001), material objects are explicitly introduced, the mereotopological relations are still restricted to associated regions. Each object's spatial properties are determined by those of the region at which it is at any given time located.

7. Source: Layers: A New Approach to Locating Objects in Space (#K6JC2J), Barry Smith, Maureen Donnelly, p. 0
  Context:
    #3WT43K Layers: A New Approach to Locating Objects in Space
  Score: 0.028
  Related excerpt #5HLK79:
      Abstract. Standard theories in mereotopology focus on relations of parthood and connection among spatial or spatio-temporal regions. Objects or processes which might be located in such regions are not normally directly treated in such theories. At best, they are simulated via appeal to distributions of attributes across the regions occupied or by functions from times to regions. The present paper offers a richer framework, in which it is possible to represent directly the relations between entities of various types at different levels, including both objects and the regions they occupy. What results is a layered mereotopology, a theory which can handle multiple layers (analogous to the layers of a lasagna) of spatially or spatiotemporally coincident but mereologically non-overlapping entities.

8. Source: Layers: A New Approach to Locating Objects in Space (#K6JC2J), Barry Smith, Maureen Donnelly, p. 13
  Context:
    #3WT43K Layers: A New Approach to Locating Objects in Space
      #R72GGN 10. Conclusions
  Score: 0.027
  Related excerpt #UZ6LD8:
      The framework presented in this paper allows mereotopological relations to apply directly to all spatial entities, including spatial regions, material objects, and holes. We saw that the framework can be extended to yield a mereotopological treatment of four-dimensional entities such as motions of sparrows as well as of the spatio-temporal regions in which such processes occur. Our framework thus allows us to do justice to the expressive possibilities encapsulated in the idea of map layers while at the same time incorporating the resources of a rich and naturalistic ontology of geospatial dynamics.

9. Source: Layers: A New Approach to Locating Objects in Space (#K6JC2J), Barry Smith, Maureen Donnelly, p. 3
  Context:
    #3WT43K Layers: A New Approach to Locating Objects in Space
      #2VKZB5 3. Mereotopology
  Score: 0.023
  Related excerpt #49Y86B:
      The fruitfulness of mereotopology rests precisely on the fact that it can admit extended individuals such as regions, material objects, chunks of stuff, or spatio-temporally extended processes. In this way it can yield a more direct and realistic representation of the qualitative space of common sense than is available under standard reconstructions of the spatial continuum in terms of sets of points or vectors.

10. Source: Carving Up Reality (#XYERFR), Barry Smith, p. 9
  Context:
    #UYEXSM Carving Up Reality
      #WEPLCP 5. Partitions, Sets and Fusions
  Score: 0.023
  Related excerpt #QCHXUQ:
      Objects as they exist in nature stand to each other in various relations. They have hooks of various sorts, which link them together; these include common boundaries and they include relations of dependence and of functional or causal association. The operator of mereological fusion, when properly handled, preserves these inter-object relations, and it thus preserves the order and location of objects which fall within its charge: if two objects are linked together in nature, then they are linked together also within their mereological fusion.

### 45. Tool result: search_text

Exact matches

1. Source: Real-time Breaking Waves for Shallow Water Simulations (#8SERGP), Markus Gross, Matthias Müller-Fischer, Nils Thürey, Simon Schirm, p. 5
  Context:
    #FA7BE4 Real-time Breaking Waves for Shallow Water Simulations
      #B8YMKE 7 Two-Way Rigid Body Coupling
  Matching excerpt #8X8QX7:
      where \rho is a constant to set the density of the fluid. Integrating these forces over the region of the rigid body and over time, will cause the rigid body to float or sink depending on its mass, and swim along with the fluid velocities.

2. Source: Real-time Breaking Waves for Shallow Water Simulations (#8SERGP), Markus Gross, Matthias Müller-Fischer, Nils Thürey, Simon Schirm, p. 5
  Context:
    #FA7BE4 Real-time Breaking Waves for Shallow Water Simulations
      #B8YMKE 7 Two-Way Rigid Body Coupling
  Matching excerpt #639F7N:
      For a coupling in the other direction, we add a force F of the water displacement and fluid velocity for each of the grid nodes at position \mathbf{x} covered by the rigid body:

3. Source: Mountain Trail Formation and the Active Walker Model (#GY93FG), J. P. Hague, S. J. Gilks, p. 5
  Context:
    #G4BEE9 Mountain trail formation and the active walker model
      #43C2RF 3. The biomechanics of walking on inclines
  Matching excerpt #54E5UT:
      Experiments have shown that the requirements on joints increase dramatically on moderate slopes 11,12 : walking on a 10^\circ incline requires hip flexibility of 60^\circ , compared with 30^\circ on the flat. Demands on ankle flexibility increase in a similar way. Joints in the leg such as the ankle, knee and hip are also subjected to significantly increased forces 12 . As determined in Ref. 11, the ankle becomes fully bent for more of the walking cycle as the gradient increases from 0^\circ to 10^\circ . The physiological constraints on the angles through which joints can bend indicate that hills eventually become too steep to walk up directly. To compensate for the limits of joint flexibility, the walker can choose to change the angle of ascent, to avoid walking directly uphill. This leads to a smaller effective gradient. The inability to walk directly uphill can

4. Source: Physics-engine ontology: Smith + Ellerman synthesis (#KQGZGB)
  Matching note #KQGZGB:
      For Moppe physics, keep two meanings of partition separate. Smith/Bittner granular partitions are selective, labeled representational views projected onto one reality (#69ZSRH, #WKHH8J); they can recognize a whole while tracing over finer parts (#6EQC5N), and their leaves are only relative atoms at a chosen granularity (#LKDS8L). Ellerman partitions are exhaustive, mutually exclusive equivalence classes on a fixed universe (#3AJ2XX), ordered by refinement and combined by join/meet (#YUEKZJ). Use Smith partitions for gameplay/physics/render/damage views of the same object; use Ellerman quotient maps for solver islands, sleeping groups, welded-motion groups, and other explicit equivalence relations. An engineered vehicle is a CU3 object assembled from fitted components (#KX52RU), while installed components remain objects (#DS4CF6). Distinguish transient touching/contact (#FH7DGQ, #QN6XK7) from persistent attachment by joints, and distinguish continuant structure from the processes that realize motion (#MLLA26). A component should be a relatively isolated functional part, not an arbitrary property bag (#H3LU46). Against fantology suggests a small typed relation vocabulary—part, depends, participates, realizes, precedes—rather than a universal entity/predicate table (#WRVKYL). For an articulated motorcycle vertical slice: Bike gameplay object; frame/wheels/fork/swingarm as component objects and rigid bodies; hardware joint vs kinematic constraint specification vs solver impulse kept distinct; ephemeral contact manifolds/events; per-tick solver-island quotient. Preserve current GameState as SNAP state and replay as SPAN history. Ellerman's generative distinction-making (#SCAG4B, #NXHNQ9) is promising for assembly/configuration generation, but should not be forced into the low-level constraint solver.

5. Source: Naïve Physics: An Essay in Ontology (#KY3Y9U), Barry Smith, Roberto Casati, p. 11
  Context:
    #6AAQJL Naive Physics: An Essay in Ontology(1)
      #BQHK5F III. BRANCHES OF NAIVE PHYSICS
        #272Z8G 3. Stuffs, States of Matter, Qualities
  Matching excerpt #GJ4VRL:
      When, on the contrary, some parts of the object move whereas others do not, and this in a way which follows some lawlike pattern, then we can see whether a body is elastic or whether it is composed of viscous or solid matter (p. 22f). The configuration that is manifested by a given qualitative filling of space both in dynamic cases, as in the perception of elasticity, and also in static ones, as in the perception of surface qualities such as lustre gives us access to certain structural properties of the perceived thing. And this kind of knowledge which is employed by the craftsman, for example Schapp contrasts explicitly with that of the natural scientist (pp. 19, 21-26).

6. Source: Water surface wavelets (#PBM2TC), Chris Wojtan, Matthias Müller-Fischer, Miles Macklin, Nuttapong Chentanez, Stefan Jeschke, Tomáš Skřivan, p. 7
  Context:
    #RNVWWR Water Surface Wavelets
      #MEQNZV 6 EXTENSIONS
        #UTTFQ9 6.3 Solid-Fluid Coupling
  Matching excerpt #VCQXUP:
      We implemented some elementary coupling between our fluid simulator and rigid bodies. We do this coupling by adding forces to the rigid body from the fluid, and adding waves to the fluid from the rigid body each time step.

7. Source: Water surface wavelets (#PBM2TC), Chris Wojtan, Matthias Müller-Fischer, Miles Macklin, Nuttapong Chentanez, Stefan Jeschke, Tomáš Skřivan, p. 7
  Context:
    #RNVWWR Water Surface Wavelets
      #MEQNZV 6 EXTENSIONS
        #UTTFQ9 6.3 Solid-Fluid Coupling
  Matching excerpt #LLRQ8C:
      To add waves to the rigid body simulation, we calculate the change in energy of the rigid body caused by the water \Delta E_{RB} , where the rigid body's energy E_{RB} is equal to m\mathbf{v}^2/2 + mgh , with body mass m , velocity magnitude v , and gravity magnitude g . Linear wave theory tells us that water wave energy in deep water is proportional to the squared amplitude:

8. Source: Water surface wavelets (#PBM2TC), Chris Wojtan, Matthias Müller-Fischer, Miles Macklin, Nuttapong Chentanez, Stefan Jeschke, Tomáš Skřivan, p. 8
  Context:
    #RNVWWR Water Surface Wavelets
      #MEQNZV 6 EXTENSIONS
        #UTTFQ9 6.3 Solid-Fluid Coupling
  Matching excerpt #YDET9C:
      To summarize, our rigid body coupling is executed each time step by adding buoyancy forces to each body, calculating the change in energy of the body, and then converting that change in energy into waves at the location of the rigid body. Figure 5 uses this technique in an example with numerous floating boxes. This heuristic coupling strategy works well for displaying basic solid-fluid interactions, and we leave a more careful treatment for future work.

9. Source: Water surface wavelets (#PBM2TC), Chris Wojtan, Matthias Müller-Fischer, Miles Macklin, Nuttapong Chentanez, Stefan Jeschke, Tomáš Skřivan, p. 7
  Context:
    #RNVWWR Water Surface Wavelets
      #MEQNZV 6 EXTENSIONS
        #UTTFQ9 6.3 Solid-Fluid Coupling
  Matching excerpt #DUCL3C:
      To make the waves influence the rigid bodies, we compute a buoyancy force by approximating the shape of the submerged volume of the rigid body as a cylinder with volume V = \pi r^2(\eta - r - h) , where r is the radius of the body and h is the height of its center of mass. The buoyancy force is then -\rho V \mathbf{g} , where \rho is the density of the fluid and \mathbf{g} is the gravity vector. We integrate this force using backward Euler integration to ensure numerical stability.

10. Source: Improved Alpha Testing Using Hashed Sampling (#QHMFH2), Chris Wyman, Morgan McGuire, p. 3
  Context:
    #44GBYC Improved Alpha Testing Using Hashed Sampling
      #JRGDYC 5 HASHED ALPHA TESTING
        #VY22UQ 5.2 Anchoring Hashed Noise to Geometry
  Matching excerpt #QQDB2Z:
      Hashing world-space coordinates provides stable noise for static geometry, and our early tests used world-space coordinates. However, this fails on dynamic geometry. Object-space coordinates give stable hashes for skinned and rigid transforms and dynamic cameras.

Approximate matches

1. Source: Procedural Content Generation through Quality Diversity (#7GR3AQ), Ahmed Khalifa, Antonios Liapis, Daniele Gravina, Georgios N. Yannakakis, Julian Togelius, p. 1
  Context:
    #DZ9GFC Procedural Content Generation through Quality Diversity
      #KHLS7N II. QUALITY DIVERSITY APPROACHES
        #JYQBK3 B. Quality Components
  Score: 0.017
  Related excerpt #HDNQJR:
      2) Constraints : Another way to ensure quality is through a set of constraints that each individual tries to satisfy. These constraints are usually "hard constraints" (e.g. a level can be completed or not), dividing the population into infeasible individuals and feasible individuals. In most of the previous work [14], [15], [16], [17], infeasible individuals are not considered in terms of their diversity. However, in some cases the diversity is always maintained regardless of constraint satisfaction [18], [19].

2. Source: A Sequential Two-Step Algorithm for Fast Generation of Vehicle Racing Trajectories (#G3TBNG), J. Christian Gerdes, John Subosits, Nitin R. Kapania, p. 4
  Context:
    #AP8Y4X A Sequential Two-Step Algorithm for Fast Generation of Vehicle Racing Trajectories
      #G64TVV 4 Updating Path Given Fixed Velocity Profile
        #PY48QH 4.2 Convex Problem Formulation
  Score: 0.022
  Related excerpt #9BRF5R:
      The equality constraint (15b) ensures the vehicle follows the affine lateral dynamics. The inequality constraint (15c) allows the vehicle to deviate laterally from the reference path to find a new path with lower curvature, but only up to the road edges. Finally, the equality constraint (15d) is required for complete racing circuits to ensure the generated racing line is a continuous loop. The results of running the optimization are shown for an example turn in Fig. 5. The reference path starts out at the road centerline, and the optimization finds a modified path that uses all the available width of the road to lower the path curvature.

3. Source: Ontologies of Common Sense, Physics and Mathematics (#GN66WW), Barry Smith, Jobst Landgrebe, p. 15
  Context:
    #6KMTK8 Ontologies of common sense, physics and mathematics
      #KHZPSR 4 Examples from classical and quantum physics
        #AWHTTL 4.1 The harmonic oscillator
  Score: 0.026
  Related excerpt #NHMT4U:
      With these variables and this solution, we can calculate the idealised position x of the oscillating mass at any time t in an imaginary phase space. A phase space is the algebraic field which is used by the model of the system to obtain the required model entities which are elements of or defined over the field.

4. Source: Physics-engine ontology: Smith + Ellerman synthesis (#KQGZGB)
  Score: 0.016
  Related note #KQGZGB:
      For Moppe physics, keep two meanings of partition separate. Smith/Bittner granular partitions are selective, labeled representational views projected onto one reality (#69ZSRH, #WKHH8J); they can recognize a whole while tracing over finer parts (#6EQC5N), and their leaves are only relative atoms at a chosen granularity (#LKDS8L). Ellerman partitions are exhaustive, mutually exclusive equivalence classes on a fixed universe (#3AJ2XX), ordered by refinement and combined by join/meet (#YUEKZJ). Use Smith partitions for gameplay/physics/render/damage views of the same object; use Ellerman quotient maps for solver islands, sleeping groups, welded-motion groups, and other explicit equivalence relations. An engineered vehicle is a CU3 object assembled from fitted components (#KX52RU), while installed components remain objects (#DS4CF6). Distinguish transient touching/contact (#FH7DGQ, #QN6XK7) from persistent attachment by joints, and distinguish continuant structure from the processes that realize motion (#MLLA26). A component should be a relatively isolated functional part, not an arbitrary property bag (#H3LU46). Against fantology suggests a small typed relation vocabulary—part, depends, participates, realizes, precedes—rather than a universal entity/predicate table (#WRVKYL). For an articulated motorcycle vertical slice: Bike gameplay object; frame/wheels/fork/swingarm as component objects and rigid bodies; hardware joint vs kinematic constraint specification vs solver impulse kept distinct; ephemeral contact manifolds/events; per-tick solver-island quotient. Preserve current GameState as SNAP state and replay as SPAN history. Ellerman's generative distinction-making (#SCAG4B, #NXHNQ9) is promising for assembly/configuration generation, but should not be forced into the low-level constraint solver.

5. Source: Towards Behavioral Programming in Distributed Architectures (#M5788P), Amir Kantor, Assaf Marron, David Harel, Gera Weiss, Guy Katz, Guy Wiener, p. 53
  Context:
    #GVFU8Q Towards Behavioral Programming in Distributed Architectures1
      #L77LJ3 Appendix D. Modularity Formalized
  Score: 0.018
  Related excerpt #8F54ZA:
      This obviously holds in both static and dynamic analysis. Observe that the analogous constraint, \mathcal{R}^i(q) \subseteq E_j , follows directly from (C.1).

6. Source: Water surface wavelets (#PBM2TC), Chris Wojtan, Matthias Müller-Fischer, Miles Macklin, Nuttapong Chentanez, Stefan Jeschke, Tomáš Skřivan, p. 8
  Context:
    #RNVWWR Water Surface Wavelets
      #MEQNZV 6 EXTENSIONS
        #UTTFQ9 6.3 Solid-Fluid Coupling
  Score: 0.025
  Related excerpt #YDET9C:
      To summarize, our rigid body coupling is executed each time step by adding buoyancy forces to each body, calculating the change in energy of the body, and then converting that change in energy into waves at the location of the rigid body. Figure 5 uses this technique in an example with numerous floating boxes. This heuristic coupling strategy works well for displaying basic solid-fluid interactions, and we leave a more careful treatment for future work.

7. Source: Water surface wavelets (#PBM2TC), Chris Wojtan, Matthias Müller-Fischer, Miles Macklin, Nuttapong Chentanez, Stefan Jeschke, Tomáš Skřivan, p. 7
  Context:
    #RNVWWR Water Surface Wavelets
      #MEQNZV 6 EXTENSIONS
        #UTTFQ9 6.3 Solid-Fluid Coupling
  Score: 0.016
  Related excerpt #VCQXUP:
      We implemented some elementary coupling between our fluid simulator and rigid bodies. We do this coupling by adding forces to the rigid body from the fluid, and adding waves to the fluid from the rigid body each time step.

8. Source: New Foundations for Qualitative Physics (#TQPVBD), Barry Smith, Jean Petitot, p. 4
  Context:
    #CYJHV6 New Foundations for Qualitative Physics
      #CDWRVD Manifestations of Matter. I: Spatial Movement
  Score: 0.021
  Related excerpt #5QC4U3:
      Vectors, tensors and differential forms, now, are all such as to possess intuitive geometrical meanings, in the sense that they can be understood as entities having determinate structures that are independent of the language and theoretical apparatus we use to describe them. One consequence of this, is that the descriptions of movement yielded by classical mechanics must be true independently of whatever we happen to choose as co-ordinate frame. This is an a priori (pre-physical) requirement on the descriptions of the theory. It implies, first of all, that the differential entities of which the theory treats must enjoy the specific mathematical property that they vary covariantly in respect to the Galilean relativity group. Because no point in time is distinguishable physically from any other, it is impossible physically to determine an absolute origin of time: with this fact is associated the relativity sub-group of time-translations. Similarly, it is impossible physically to determine an absolute origin for the co-ordinates of space, or an absolute direction in space, and with these facts are associated respectively the relativity sub-groups of spatial translations and spatial rotations.

9. Source: New Foundations for Qualitative Physics (#TQPVBD), Barry Smith, Jean Petitot, p. 5
  Context:
    #CYJHV6 New Foundations for Qualitative Physics
      #CDWRVD Manifestations of Matter. I: Spatial Movement
  Score: 0.019
  Related excerpt #YLJC5D:
      It turns out, however, that this seemingly trivial a priori constraint has important physical consequences. A mechanical system is completely described by a certain function, called the Lagrangian, of the energy within it. One of the greatest theorems of classical mechanics, namely Noether's theorem (which can be generalized to physical theories of many other sorts), says that, if the Lagrangian is invariant through the transformations of any given sub-group of relativities, then there is a certain physical quantity correlated therewith, which is conserved through every movement of the system. The exact form of Noether's theorem is that to every one-parameter group of symmetries of the Lagrangian there is correlated a law of conservation of a physical quantity. Time translations are correlated in this way with the law of conservation of energy. Spatial translations are correlated with the law of conservation of kinetic momentum (impulse). And spatial rotations are correlated with the law of conservation of angular momentum.

10. Source: Interactive procedural street modeling (#V4TQYB), Eugene Zhang, Gregory Esch, Guoning Chen, Pascal Müller, Peter Wonka, p. 4
  Context:
    #57PDWB Interactive Procedural Street Modeling
      #QNKCB5 5 Tensor Field Generation
        #A8XR5R 5.2 Combination and Editing of Basis Fields
  Score: 0.024
  Related excerpt #HPQ4Q2:
      in which T(v) represents the tensor values at vertex v , J_i consists of the indexes of vertices that are adjacent to vertex v_i , and \omega_{ij} = \frac{1}{N_i} where N_i is the number of vertices adjacent to v_i . Equation 4 is a sparse linear system, which we solve by using a conjugate gradient solver [Press et al. 1992].

### 46. Tool result: web_search

WEB SEARCH RESULTS
Query: foundational literature cell complexes combinatorial maps engineering assemblies topology joints multibody systems

## Foundational literature map

The literature is best understood as **four intersecting traditions**, rather than one unified field:

1. **Cell complexes and combinatorial maps** describe the intrinsic topology of parts and geometric subdivisions.
2. **Assembly graphs and product models** describe parts, interfaces, mating features, and hierarchy.
3. **Kinematic and multibody graphs** describe bodies, joints, constraints, and mobility.
4. **Assembly-planning graphs** describe feasible assembly/disassembly operations and sequences.

A useful unified model usually preserves these as distinct but linked layers.

---

## 1. Cell complexes, combinatorial maps, and B-rep topology

### Mathematical foundations

- **J. H. C. Whitehead, “Combinatorial Homotopy I–II” (1949).**  
  Foundational source for CW complexes and cellular topology. Read this when the intended representation treats vertices, edges, faces, and volumes as cells with attaching maps. ([kerodon.net](https://kerodon.net/bibliography/MR30759?utm_source=openai))

- **J. R. Edmonds, *A Combinatorial Representation for Oriented Polyhedral Surfaces* (1960).**  
  An early formulation of rotation systems/combinatorial maps for encoding embedded surface graphs. ([books.google.com](https://books.google.com/books/about/A_Combinatorial_Representation_for_Orien.html?id=vo2ENwAACAAJ&utm_source=openai))

- **E. Brisson, “Representing Geometric Structures in \(d\) Dimensions: Topology and Order,” *Discrete & Computational Geometry* 9, 387–426 (1993).**  
  Introduces the dimension-independent **cell-tuple structure**, representing cells, incidence, adjacency, ordering, duality, and boundaries uniformly. This is one of the strongest conceptual starting points for engineering-oriented cell-complex data structures. ([eudml.org](https://eudml.org/doc/131254?utm_source=openai))

- **P. Lienhardt, “Topological Models for Boundary Representation: A Comparison with Generalized Maps,” *Computer-Aided Design* 23(1), 59–82 (1991).**  
  Clearly distinguishes a topological model from its geometric embedding and compares incidence-graph and ordered-map representations. DOI: `10.1016/0010-4485(91)90082-8`. ([sciencedirect.com](https://www.sciencedirect.com/science/article/pii/0010448591900828?utm_source=openai))

- **P. Lienhardt, “N-Dimensional Generalized Combinatorial Maps and Cellular Quasi-Manifolds,” *International Journal of Computational Geometry & Applications* 4(3), 275–324 (1994).**  
  The central reference for **generalized maps or G-maps**, particularly when open, non-orientable, higher-dimensional, or quasi-manifold structures must be represented. ([xlim-sic.labo.univ-poitiers.fr](https://xlim-sic.labo.univ-poitiers.fr/publications/view-publi.php?lang=en&publiId=175&utm_source=openai))

### CAD data-structure lineage

Also important are:

- Baumgart’s **winged-edge structure**
- Guibas and Stolfi’s **quad-edge**
- half-edge and facet-edge structures
- Weiler’s **radial-edge structure** for non-manifold models

These form the practical CAD lineage from manifold surface B-reps to non-manifold cellular representations. Brisson’s cell tuples and Lienhardt’s generalized maps can be viewed as dimension-independent generalizations of this family. ([publikationen.bibliothek.kit.edu](https://publikationen.bibliothek.kit.edu/1000049567/3715515?utm_source=openai))

### Engineering discretization connection

If the cell complex will also carry fields, forces, fluxes, or PDE variables, add:

- **Desbrun, Hirani, Leok, and Marsden, “Discrete Exterior Calculus” (2005).**  
  Develops discrete differential forms and primal-dual operators on simplicial complexes. ([arxiv.org](https://arxiv.org/abs/math/0508341?utm_source=openai))

- **Arnold, Falk, and Winther, “Finite Element Exterior Calculus: From Hodge Theory to Numerical Stability” (2010).**  
  Connects chain/cochain complexes and de Rham theory to stable finite-element formulations. ([arxiv.org](https://arxiv.org/abs/0906.4325?utm_source=openai))

---

## 2. Mechanical assemblies, interfaces, and product models

### Early assembly representations

- **Lee and Gossard, “A Hierarchical Data Structure for Representing Assemblies” (1985).**  
  An early CAD-oriented treatment of hierarchical assembly representation; it is frequently cited as a precursor to later assembly information models. ([onlinelibrary.wiley.com](https://onlinelibrary.wiley.com/doi/abs/10.1609/aimag.v11i1.824?utm_source=openai))

- **Bourjault, *Contribution à une approche méthodologique de l’assemblage automatisé: élaboration automatique des séquences opératoires* (doctoral thesis, 1984).**  
  Established the liaison-based tradition in automated assembly-sequence generation. ([onlinelibrary.wiley.com](https://onlinelibrary.wiley.com/doi/abs/10.1609/aimag.v11i1.824?utm_source=openai))

- **De Fazio and Whitney, “Simplified Generation of All Mechanical Assembly Sequences,” *IEEE Journal of Robotics and Automation* 3(6), 640–658 (1987).**  
  Develops a practical liaison-based method for generating feasible sequences. DOI: `10.1109/JRA.1987.1087132`. ([scienceopen.com](https://www.scienceopen.com/document?vid=8bd00521-adba-4b85-b361-17179fce5453&utm_source=openai))

### Product and assembly information models

- **Rachuri et al., “Information Models for Product Representation: Core and Assembly Models,” *International Journal of Product Development* 2(3), 2005.**  
  Unifies the NIST **Core Product Model** and **Open Assembly Model**. It covers assembly hierarchy, part–feature relationships, fixed and movable connections, relative motion, kinematics, tolerances, function, form, and behavior. DOI: `10.1504/IJPD.2005.007248`. ([nist.gov](https://www.nist.gov/publications/information-models-product-representation-core-and-assembly-models?utm_source=openai))

- **NIST, *Assembly Model Report*, NISTIR 7057 (2003).**  
  Particularly relevant for a formal distinction among:
  - product-composition structure,
  - mating features,
  - fixed connections,
  - movable or kinematic connections,
  - intermittent connections,
  - relative position and orientation,
  - relative motion. ([nvlpubs.nist.gov](https://nvlpubs.nist.gov/nistpubs/Legacy/IR/nistir7057.pdf?utm_source=openai))

- **ISO 10303 / STEP, especially AP242.**  
  Important when the representation must exchange product hierarchy, B-rep geometry and topology, assembly structure, PMI, and kinematics between engineering systems. ([ap242.org](https://www.ap242.org/?utm_source=openai))

The particularly valuable idea in the Open Assembly Model is that a **joint between parts is associated with assembly features**—for example, a shaft cylinder and a bearing hole—rather than being represented only as an abstract edge between two part nodes. ([tsapps.nist.gov](https://tsapps.nist.gov/publication/get_pdf.cfm?pub_id=822185&utm_source=openai))

---

## 3. Graph topology of mechanisms, joints, and multibody systems

### Mechanism topology and synthesis

- **F. R. E. Crossley, “The Permutations of Kinematic Chains of Eight Members or Less from the Graph-Theoretic Viewpoint” (1965), pp. 467–486.**  
  A landmark application of graph isomorphism and enumeration to kinematic-chain structure. ([journals.sagepub.com](https://journals.sagepub.com/doi/pdf/10.1243/09544062jmes1071?utm_source=openai))

- **L. Dobrjanskyj and F. Freudenstein, “Some Applications of Graph Theory to the Structural Analysis of Mechanisms,” *Journal of Engineering for Industry* 89, 153–158 (1967).**  
  Covers structural identity, incidence representations, automatic sketching, and systematic analysis of mechanism graphs. ([sciencedirect.com](https://www.sciencedirect.com/science/article/pii/0094114X87900668?utm_source=openai))

- **F. Freudenstein and E. R. Maki, “The Creation of Mechanisms According to Kinematic Structure and Function” (1979).**  
  Important for separating **kinematic structure** from geometry and intended function during mechanism synthesis. ([journals.sagepub.com](https://journals.sagepub.com/doi/10.1068/b060375?utm_source=openai))

In this tradition, the usual graph has:

\[
\text{vertex}=\text{rigid body or link},\qquad
\text{edge}=\text{joint or kinematic pair}.
\]

The edge must normally be attributed by joint type, allowed motion subspace, joint frame, axis, limits, and constitutive properties.

### Classical multibody formulations

- **J. Wittenburg, *Dynamics of Systems of Rigid Bodies* (1977); revised as *Dynamics of Multibody Systems*.**  
  A classical systematic formulation of rigid multibody topology and dynamics. ([link.springer.com](https://link.springer.com/book/10.1007/978-3-540-73914-2?utm_source=openai))

- **R. E. Roberson and R. Schwertassek, *Dynamics of Multibody Systems* (1988).**  
  A foundational computer-oriented treatment of multibody-system description, equation generation, kinematics, dynamics, and simulation. ([link.springer.com](https://link.springer.com/book/10.1007/978-3-642-86464-3?utm_source=openai))

- **E. J. Haug, *Computer-Aided Kinematics and Dynamics of Mechanical Systems, Vol. I: Basic Methods* (1989).**  
  Central reference for constraint-equation and Cartesian-coordinate formulations of mechanical systems. ([search.worldcat.org](https://search.worldcat.org/title/Computer-aided-kinematics-and-dynamics-of-mechanical-systems/oclc/18350115?utm_source=openai))

- **A. A. Shabana, *Dynamics of Multibody Systems* (first edition 1989; subsequent editions).**  
  A standard reference for interconnected rigid and flexible bodies, joints, constraints, and computational formulations. ([cambridge.org](https://www.cambridge.org/highereducation/books/dynamics-of-multibody-systems/E287DA737B6138E040AA96FC12F7D7DF?utm_source=openai))

### Explicit graph-theoretic multibody dynamics

- **A. Jain, “Graph Theoretic Foundations of Multibody Dynamics, Part I: Structural Properties,” *Multibody System Dynamics* 26, 307–333 (2011).**
- **A. Jain, “Part II: Analysis and Algorithms,” 26, 335–365 (2011).**

These papers give a particularly clean modern account of how multibody topology becomes a rooted directed graph and how tree structure induces spatial operators, matrix factorizations, and recursive algorithms. DOI: `10.1007/s11044-011-9266-7` and `10.1007/s11044-011-9267-6`. ([pmc.ncbi.nlm.nih.gov](https://pmc.ncbi.nlm.nih.gov/articles/PMC3217277/?utm_source=openai))

---

## 4. Assembly sequences and changing topology

- **Homem de Mello and Sanderson, “AND/OR Graph Representation of Assembly Plans,” *IEEE Transactions on Robotics and Automation* 6(2), 188–199 (1990).**  
  Represents alternative decompositions into subassemblies as an AND/OR graph. DOI: `10.1109/70.54734`. ([scispace.com](https://scispace.com/papers/and-or-graph-representation-of-assembly-plans-2ies2jatc2?utm_source=openai))

- **Homem de Mello and Sanderson, “Representations of Mechanical Assembly Sequences,” *IEEE Transactions on Robotics and Automation* 7(2), 211–227 (1991).**  
  Compares directed graphs, AND/OR graphs, establishment conditions, and precedence relations. DOI: `10.1109/70.75904`. ([cir.nii.ac.jp](https://cir.nii.ac.jp/crid/1360579816153082752?utm_source=openai))

- **Sanderson, Homem de Mello, and Zhang, “Assembly Sequence Planning,” *AI Magazine* 11(1), 62–81 (1990).**  
  A readable survey connecting geometric constraints, stability, subassemblies, and plan representations. ([onlinelibrary.wiley.com](https://onlinelibrary.wiley.com/doi/abs/10.1609/aimag.v11i1.824?utm_source=openai))

These sources are essential if “topology” means not only the final body–joint graph, but also the sequence of topology-changing operations:

\[
G_0 \rightarrow G_1 \rightarrow \cdots \rightarrow G_{\text{assembled}}.
\]

---

## Recommended unified abstraction

For engineering assemblies, I would **not** represent the entire system as only one combinatorial map. A more robust architecture is:

### A. Part topology

Each part has its own cellular/B-rep complex:

\[
K_i=(C_i,\partial_i,\text{embedding}_i).
\]

This stores vertices, edges, faces, volumes, incidence, orientation, and geometry.

### B. Assembly-feature layer

Selected cells or cell subsets are promoted to assembly features:

\[
F_{ij}^{(a)}\subseteq K_i,\qquad F_{ji}^{(b)}\subseteq K_j.
\]

Examples include holes, cylindrical faces, planar mounting regions, spline surfaces, and datum frames.

### C. Connection or joint hypergraph

Use a typed attributed graph or hypergraph:

\[
G_A=(B,J,I),
\]

where:

- \(B\): bodies, parts, or subassemblies;
- \(J\): joints, contacts, fasteners, welds, or constraints;
- \(I\): incidence between connections, bodies, and assembly features.

A hypergraph is preferable when a connection involves more than two bodies—for example, a bolt passing through several plates.

### D. Kinematic semantics

Associate each movable joint \(j\) with:

- participating body frames;
- constraint manifold \(C_j(q)=0\);
- allowed twist or motion subspace;
- reaction-wrench subspace;
- joint limits;
- compliance, friction, damping, and actuation.

### E. Process/state layer

Represent assembly, disassembly, locking, contact activation, and metamorphic mechanisms as transitions between attributed assembly graphs.

---

## Short essential reading list

If only six sources are needed, start with:

1. **Brisson (1993)** — cell tuples and dimension-independent cellular topology.  
2. **Lienhardt (1994)** — generalized combinatorial maps.  
3. **Rachuri et al. (2005)** — engineering product and assembly semantics.  
4. **Dobrjanskyj and Freudenstein (1967)** — graph topology of mechanisms.  
5. **Wittenburg or Roberson–Schwertassek** — systematic multibody modeling.  
6. **Jain Parts I–II (2011)** — direct connection between topology, algebra, and efficient multibody algorithms.

The central research opportunity is to connect **cell-level part topology**, **feature-level physical interfaces**, and **body-level joint graphs** without conflating geometric incidence with kinematic constraint.

Cited sources:
- Bibliography entry: MR30759—Kerodon: https://kerodon.net/bibliography/MR30759?utm_source=openai
- A Combinatorial Representation for Oriented Polyhedral Surfaces - John Robert Edmonds - Google Books: https://books.google.com/books/about/A_Combinatorial_Representation_for_Orien.html?id=vo2ENwAACAAJ&utm_source=openai
- EUDML  |  Representing Geometric Structures in d Dimensions: Topology and Order.: https://eudml.org/doc/131254?utm_source=openai
- Topological models for boundary representation: a comparison with n-dimensional generalized maps - ScienceDirect: https://www.sciencedirect.com/science/article/pii/0010448591900828?utm_source=openai
- : https://xlim-sic.labo.univ-poitiers.fr/publications/view-publi.php?lang=en&publiId=175&utm_source=openai
- 3D Data and Model Management for the Geosciences with Particular Emphasis on Topology and Time: https://publikationen.bibliothek.kit.edu/1000049567/3715515?utm_source=openai
- Discrete Exterior Calculus: https://arxiv.org/abs/math/0508341?utm_source=openai
- Finite element exterior calculus: from Hodge theory to numerical stability: https://arxiv.org/abs/0906.4325?utm_source=openai
- Assembly Sequence Planning - Sanderson - 1990 - AI Magazine - Wiley Online Library: https://onlinelibrary.wiley.com/doi/abs/10.1609/aimag.v11i1.824?utm_source=openai
- Simplified generation of all mechanical assembly sequences – ScienceOpen: https://www.scienceopen.com/document?vid=8bd00521-adba-4b85-b361-17179fce5453&utm_source=openai
- Information Models for Product Representation: Core and Assembly Models | NIST: https://www.nist.gov/publications/information-models-product-representation-core-and-assembly-models?utm_source=openai
- Assembly Model Report: https://nvlpubs.nist.gov/nistpubs/Legacy/IR/nistir7057.pdf?utm_source=openai
- Welcome - ePLM Interoperability: https://www.ap242.org/?utm_source=openai
- Proceedings of: https://tsapps.nist.gov/publication/get_pdf.cfm?pub_id=822185&utm_source=openai
- Enumeration of kinematic chains and mechanisms - R Simoni, A P Carboni, D Martins, 2009: https://journals.sagepub.com/doi/pdf/10.1243/09544062jmes1071?utm_source=openai
- Structural classification of kinematic chains and mechanisms - ScienceDirect: https://www.sciencedirect.com/science/article/pii/0094114X87900668?utm_source=openai
- The Creation of Mechanisms According to Kinematic Structure and Function - F Freudenstein, E R Maki, 1979: https://journals.sagepub.com/doi/10.1068/b060375?utm_source=openai
- Dynamics of Multibody Systems | Springer Nature Link: https://link.springer.com/book/10.1007/978-3-540-73914-2?utm_source=openai
- Dynamics of Multibody Systems | Springer Nature Link: https://link.springer.com/book/10.1007/978-3-642-86464-3?utm_source=openai
- Computer aided kinematics and dynamics of mechanical systems | WorldCat.org: https://search.worldcat.org/title/Computer-aided-kinematics-and-dynamics-of-mechanical-systems/oclc/18350115?utm_source=openai
- Dynamics of Multibody Systems | Cambridge Aspire website: https://www.cambridge.org/highereducation/books/dynamics-of-multibody-systems/E287DA737B6138E040AA96FC12F7D7DF?utm_source=openai
- Graph Theoretic Foundations of Multibody Dynamics Part I: Structural Properties - PMC: https://pmc.ncbi.nlm.nih.gov/articles/PMC3217277/?utm_source=openai
- (PDF) AND/OR graph representation of assembly plans (1990) | L.S. Homem de Mello | 654 Citations: https://scispace.com/papers/and-or-graph-representation-of-assembly-plans-2ies2jatc2?utm_source=openai
- Representations of mechanical assembly sequences | CiNii Research: https://cir.nii.ac.jp/crid/1360579816153082752?utm_source=openai

### 47. Tool result: web_search

WEB SEARCH RESULTS
Query: literature port-Hamiltonian systems bond graphs discrete exterior calculus cell complexes physical systems engineering

These topics form a coherent literature around **energy-based, compositional, and structure-preserving modeling of multiphysical systems**. A useful way to organize the field is:

\[
\text{bond graphs}
\longrightarrow
\text{Dirac structures / port-Hamiltonian systems}
\longrightarrow
\text{Stokes–Dirac PDE models}
\longrightarrow
\text{cell complexes and exterior calculus}
\longrightarrow
\text{structure-preserving discrete models}.
\]

## 1. Core conceptual connections

| Engineering concept | Mathematical representation |
|---|---|
| Physical component | Energy-storage, dissipation, or source relation |
| Bond | Paired effort–flow variables |
| Junction structure | Dirac structure |
| Power | Pairing \(e^\top f\), or an exterior-form pairing |
| Stored energy | Hamiltonian \(H\) |
| Network topology | Graph incidence/boundary operators |
| Distributed field | Differential forms on a manifold |
| Boundary interaction | Boundary ports |
| Spatial discretization | Cochains on primal/dual cell complexes |
| Gradient, curl, divergence | Coboundary operators |
| Constitutive/metric information | Hodge-star or discrete material operators |

The important separation is between:

1. **Topology/interconnection** — incidence matrices, exterior derivative, boundary ports;
2. **Energy storage** — Hamiltonian;
3. **Constitutive geometry** — Hodge star, mass matrices, material laws;
4. **Dissipation** — resistive relations.

That separation is what makes these approaches attractive for physical-systems engineering.

---

## 2. Essential port-Hamiltonian literature

### Foundations

- **A. J. van der Schaft, “Port-Hamiltonian systems: an introductory survey.”**  
  A standard entry into Hamiltonian systems with ports, Dirac structures, passivity, interconnection, and physical modeling. ([core.ac.uk](https://core.ac.uk/works/4864137?utm_source=openai))

- **V. Duindam et al., eds., *Modeling and Control of Complex Physical Systems: The Port-Hamiltonian Approach* (2009).**  
  Broad treatment of modeling, mechanics, distributed systems, control, and multiphysics applications.

- **B. Jacob and H. Zwart, *Linear Port-Hamiltonian Systems on Infinite-Dimensional Spaces* (2012).**  
  Particularly useful for rigorous PDE well-posedness, boundary control, stability, and operator-theoretic formulations. ([link.springer.com](https://link.springer.com/book/10.1007/978-3-0348-0399-1?utm_source=openai))

- **R. Rashad et al., “Twenty years of distributed port-Hamiltonian systems: a literature review” (2020).**  
  Probably the best overview of distributed-parameter port-Hamiltonian systems, including differential-form formulations, Stokes–Dirac structures, bond-graph interpretations, and discretization. ([academic.oup.com](https://academic.oup.com/imamci/article/37/4/1400/5877069?utm_source=openai))

### Interconnection and composition

- **J. Cervera, A. J. van der Schaft, and A. Baños, “Interconnection of port-Hamiltonian systems and composition of Dirac structures” (2007).**  
  Establishes how power-conserving subsystem interconnection corresponds to composition of Dirac structures. This is central for modular systems engineering. ([sciencedirect.com](https://www.sciencedirect.com/science/article/pii/S0005109806003682?utm_source=openai))

- **A. J. van der Schaft and B. M. Maschke, “Generalized Port-Hamiltonian DAE Systems” (2018).**  
  Relevant when bond-graph causality or physical constraints produce differential-algebraic rather than explicit state-space models. ([arxiv.org](https://arxiv.org/abs/1808.01845?utm_source=openai))

---

## 3. Bond graphs and port-Hamiltonian systems

Historically and conceptually, bond graphs supply the **engineering graphical language**, while port-Hamiltonian theory supplies a geometric and algebraic interpretation of the same power-conserving structure.

### Key references

- **B. Maschke, A. J. van der Schaft, and P. Breedveld, “An intrinsic Hamiltonian formulation of network dynamics: non-standard Poisson structures and gyrators” (1992).**  
  An early bridge between generalized bond graphs, network topology, and Hamiltonian structure. ([sciencedirect.com](https://www.sciencedirect.com/science/article/pii/S001600329290049M?utm_source=openai))

- **M. Pfeifer et al., “Automated Generation of Explicit Port-Hamiltonian Models from Multi-Bond Graphs” (2019).**  
  Gives a constructive algorithm for obtaining explicit port-Hamiltonian models from multi-bond graphs and examines conditions under which such an explicit realization exists. ([arxiv.org](https://arxiv.org/abs/1909.02848?utm_source=openai))

- **M. Pfeifer et al., “Explicit Port-Hamiltonian Formulation of Bond Graphs.”**  
  Useful for the detailed transition from graphical bond-graph models to mathematical pH representations. ([publikationen.bibliothek.kit.edu](https://publikationen.bibliothek.kit.edu/1000099899/48229676?utm_source=openai))

- **“Exergetic Port-Hamiltonian Systems modeling language” (2025).**  
  A more recent compositional modeling direction that connects bond graphs, port-Hamiltonian systems, thermodynamics, and executable multiphysics model construction. ([sciencedirect.com](https://www.sciencedirect.com/science/article/pii/S2405844025025940?utm_source=openai))

- **“Exergetic port-Hamiltonian systems for multibody dynamics” (2024/2025).**  
  Demonstrates the approach for modular rigid-body and joint modeling, with explicit connections to bond-graph representations and multiphysical composition. ([link.springer.com](https://link.springer.com/article/10.1007/s11044-024-10038-w?utm_source=openai))

### Main modeling issue

A bond graph does not always immediately produce an explicit ODE

\[
\dot{x}=(J-R)\nabla H(x)+Gu.
\]

Depending on causality and constraints, the natural outcome may instead be a port-Hamiltonian DAE. For automated engineering tools, it is therefore important not to force every model prematurely into explicit state-space form.

---

## 4. Graphs and cell complexes

### Graph-based systems

- **A. J. van der Schaft and B. M. Maschke, “Port-Hamiltonian Systems on Graphs” (2013).**

This is the primary reference for pH systems whose topology is represented by an open directed graph. Its incidence matrix defines a graph Dirac structure connecting edge and vertex efforts and flows. It covers physical networks and related systems such as consensus dynamics. ([epubs.siam.org](https://epubs.siam.org/doi/abs/10.1137/110840091?utm_source=openai))

For a directed graph,

\[
\partial_1:C_1\rightarrow C_0
\]

is represented by the incidence matrix \(B\). Its dual,

\[
\delta_0=\partial_1^\top:C^0\rightarrow C^1,
\]

acts as a discrete gradient. Kirchhoff-type conservation and compatibility laws consequently arise from the chain/cochain structure.

### Generalization to cell complexes

A graph is only a one-dimensional complex. For field systems, one generally needs

\[
C_n \xrightarrow{\partial_n} C_{n-1}
\xrightarrow{\partial_{n-1}}\cdots
\xrightarrow{\partial_1} C_0,
\qquad
\partial_{k-1}\partial_k=0.
\]

The dual cochain complex is

\[
C^0 \xrightarrow{\delta_0} C^1
\xrightarrow{\delta_1}\cdots
\xrightarrow{\delta_{n-1}} C^n,
\qquad
\delta_{k+1}\delta_k=0.
\]

These identities encode discrete analogues of

\[
\operatorname{curl}\operatorname{grad}=0,
\qquad
\operatorname{div}\operatorname{curl}=0.
\]

This makes cell complexes especially appropriate for electromagnetism, continuum mechanics, fluid mechanics, acoustics, transmission systems, and conservation laws.

---

## 5. Discrete exterior calculus and port-Hamiltonian systems

### DEC foundation

- **M. Desbrun, A. Hirani, M. Leok, and J. Marsden, “Discrete Exterior Calculus” (2005).**  
  Foundational treatment of discrete forms, vector fields, simplicial complexes, primal–dual meshes, and circumcentric duals. ([arxiv.org](https://arxiv.org/abs/math/0508341?utm_source=openai))

### Direct pH–DEC connection

- **M. Seslija, A. J. van der Schaft, and J. M. A. Scherpen, “Discrete Exterior Geometry Approach to Structure-Preserving Discretization of Distributed-Parameter Port-Hamiltonian Systems.”**

This is the most direct reference at the intersection of your terms. It:

- replaces the spatial manifold by a simplicial complex and its dual;
- represents differential forms by primal and dual cochains;
- replaces \(d\) by the coboundary operator;
- constructs a **simplicial Dirac structure**;
- preserves the discrete boundary power balance;
- discretizes the Stokes–Dirac structure before imposing constitutive dynamics. ([arxiv.org](https://arxiv.org/abs/1111.6403?utm_source=openai))

The guiding continuous relation is Stokes’ theorem,

\[
\int_M d\alpha=\int_{\partial M}\operatorname{tr}\alpha,
\]

which becomes a discrete summation-by-parts relation involving incidence matrices and boundary trace operators. This relation is responsible for power conservation between the interior and the boundary.

### Why DEC is important here

DEC preserves exact topological identities independently of the mesh metric. Consequently:

- conservation laws are tied to incidence matrices;
- topology is separated from constitutive coefficients;
- boundary ports remain visible;
- discrete interconnection can retain the Dirac structure;
- meshes can represent nontrivial domain topology.

---

## 6. Finite element exterior calculus and related methods

DEC is not the only exterior-calculus route. **Finite element exterior calculus (FEEC)** places differential forms in compatible finite-element spaces forming a discrete de Rham complex.

### Principal references

- **A. Brugnoli, R. Rashad, and S. Stramigioli, “Dual field structure-preserving discretization of port-Hamiltonian systems using finite element exterior calculus” (2022).**

This introduces a dual-field FEEC formulation that preserves conservation and boundary power balances without requiring an explicit discrete Hodge-star construction. Numerical examples include three-dimensional wave and Maxwell systems. ([arxiv.org](https://arxiv.org/abs/2202.04390?utm_source=openai))

- **A. Brugnoli et al., “Finite element hybridization of port-Hamiltonian systems” (2025).**

This extends FEEC-based pH discretization through hybridization. An especially relevant systems-engineering interpretation is that finite-element assembly can be viewed as the interconnection of local port-Hamiltonian descriptor systems. ([sciencedirect.com](https://www.sciencedirect.com/science/article/pii/S0096300325001043?utm_source=openai))

- **N. Kumar, J. J. W. van der Vegt, and H. J. Zwart, “Port-Hamiltonian discontinuous Galerkin finite element methods.”**

Develops DG formulations that retain pH-compatible energy balances while providing greater flexibility in mesh geometry, numerical fluxes, and approximation spaces. ([research.utwente.nl](https://research.utwente.nl/en/publications/port-hamiltonian-discontinuous-galerkin-finite-element-methods?utm_source=openai))

### DEC versus FEEC

| DEC | FEEC |
|---|---|
| Cochains on primal/dual complexes | Differential-form finite-element spaces |
| Strongly combinatorial/topological | Functional-analytic and variational |
| Explicit primal–dual geometry | Compatible weak formulations |
| Often diagonal circumcentric Hodge stars | Generally sparse mass matrices |
| Natural for network/cell-complex interpretation | Natural for convergence and finite-element analysis |

They are better viewed as related compatible-discretization approaches rather than competitors.

---

## 7. Recent directions through 2026

Recent work is moving beyond basic energy-balance preservation toward stability, nonlinear constitutive laws, hybridization, DAEs, and complex continuum systems:

- **Structure-preserving discretization of differential and nonlocal constitutive relations** using Stokes–Lagrange structures, with examples including nanorods, shear beams, and incompressible flow. ([arxiv.org](https://arxiv.org/abs/2507.06869?utm_source=openai))
- **Discrete-gradient time integration for port-Hamiltonian DAEs**, aimed at preserving energy structure under temporal discretization. ([arxiv.org](https://arxiv.org/abs/2505.18810?utm_source=openai))
- **Uniform exponential-stability preservation** for spatially discretized boundary-controlled pH systems. ([sciencedirect.com](https://www.sciencedirect.com/science/article/pii/S0022039625008927?utm_source=openai))
- **Mixed structure-preserving formulations for finite elasticity**, producing discrete pH systems through finite-element discretization. ([papers.ssrn.com](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=5551747&utm_source=openai))
- **FEEC for Hamiltonian PDEs**, combining compatible spatial discretization with symplectic time integration and local multisymplectic conservation. ([arxiv.org](https://arxiv.org/abs/2601.00103?utm_source=openai))

---

## 8. Suggested reading sequence

### Engineering-oriented route

1. Bond-graph fundamentals and effort–flow variables.
2. Van der Schaft’s introductory pH survey.
3. *Modeling and Control of Complex Physical Systems*.
4. “Port-Hamiltonian Systems on Graphs.”
5. Pfeifer et al. on converting bond graphs into explicit pH models.
6. Rashad et al.’s distributed-pH literature review.
7. Seslija et al. on DEC and simplicial Dirac structures.
8. Brugnoli et al. on FEEC.
9. Recent hybridization, DG, and constitutive-relation papers.

### Mathematics/numerics-oriented route

1. Differential forms and Stokes’ theorem.
2. Chain complexes, cochains, and homology.
3. Desbrun et al. on DEC.
4. Dirac structures and port-Hamiltonian interconnection.
5. Stokes–Dirac structures.
6. Seslija et al.
7. FEEC and discrete de Rham complexes.
8. Compatible DG/hybrid methods.
9. Energy-preserving or symplectic time integration.

---

## 9. Promising research questions

A strong research program at this intersection could examine:

1. **Bond graphs on higher-dimensional cell complexes**  
   Extend junction and bond semantics beyond graphs to faces, volumes, and general \(k\)-cells.

2. **Automated compilation**
   \[
   \text{physical architecture}
   \rightarrow
   \text{bond graph}
   \rightarrow
   \text{cell-complex Dirac structure}
   \rightarrow
   \text{discrete pH DAE}.
   \]

3. **Discrete multiphysics coupling**  
   Couple mechanics, electromagnetism, fluids, thermal systems, and chemical networks while preserving a common power/exergy balance.

4. **Mesh-local compositionality**  
   Treat every element or cell as a component with ports; global finite-element assembly then becomes power-conserving interconnection.

5. **Topology-aware model reduction**  
   Preserve cohomology, conservation laws, Casimirs, passivity, and boundary ports during reduction.

6. **Dynamic or adaptive complexes**  
   Develop pH formulations for remeshing, fracture, switching topology, moving boundaries, and adaptive refinement.

7. **Software architecture**  
   Combine symbolic physical modeling, compatible mesh complexes, automatic differentiation, pH-DAE generation, and structure-preserving simulation.

The most central starting trio is therefore:

1. **van der Schaft and Maschke — Port-Hamiltonian Systems on Graphs**;  
2. **Desbrun et al. — Discrete Exterior Calculus**;  
3. **Seslija, van der Schaft, and Scherpen — Discrete Exterior Geometry for distributed pH systems**.

Cited sources:
- Port-Hamiltonian systems: an introductory survey - CORE: https://core.ac.uk/works/4864137?utm_source=openai
- Linear Port-Hamiltonian Systems on Infinite-dimensional Spaces | Springer Nature Link: https://link.springer.com/book/10.1007/978-3-0348-0399-1?utm_source=openai
- Twenty years of distributed port-Hamiltonian systems: a literature review | IMA Journal of Mathematical Control and Information | Oxford Academic: https://academic.oup.com/imamci/article/37/4/1400/5877069?utm_source=openai
- Interconnection of port-Hamiltonian systems and composition of Dirac structures - ScienceDirect: https://www.sciencedirect.com/science/article/pii/S0005109806003682?utm_source=openai
- Generalized Port-Hamiltonian DAE Systems: https://arxiv.org/abs/1808.01845?utm_source=openai
- An intrinsic hamiltonian formulation of network dynamics: non-standard poisson structures and gyrators - ScienceDirect: https://www.sciencedirect.com/science/article/pii/S001600329290049M?utm_source=openai
- Automated Generation of Explicit Port-Hamiltonian Models from Multi-Bond Graphs: https://arxiv.org/abs/1909.02848?utm_source=openai
- Explicit Port-Hamiltonian Formulation of Bond Graphs: https://publikationen.bibliothek.kit.edu/1000099899/48229676?utm_source=openai
- Exergetic Port-Hamiltonian systems modeling language - ScienceDirect: https://www.sciencedirect.com/science/article/pii/S2405844025025940?utm_source=openai
- Exergetic port-Hamiltonian systems for multibody dynamics | Multibody System Dynamics | Springer Nature Link: https://link.springer.com/article/10.1007/s11044-024-10038-w?utm_source=openai
- Port-Hamiltonian Systems on Graphs | SIAM Journal on Control and Optimization: https://epubs.siam.org/doi/abs/10.1137/110840091?utm_source=openai
- Discrete Exterior Calculus: https://arxiv.org/abs/math/0508341?utm_source=openai
- Discrete Exterior Geometry Approach to Structure-Preserving Discretization of Distributed-Parameter Port-Hamiltonian Systems: https://arxiv.org/abs/1111.6403?utm_source=openai
- Dual field structure-preserving discretization of port-Hamiltonian systems using finite element exterior calculus: https://arxiv.org/abs/2202.04390?utm_source=openai
- Finite element hybridization of port-Hamiltonian systems - ScienceDirect: https://www.sciencedirect.com/science/article/pii/S0096300325001043?utm_source=openai
- Port-Hamiltonian discontinuous Galerkin finite element methods - University of Twente Research Information: https://research.utwente.nl/en/publications/port-hamiltonian-discontinuous-galerkin-finite-element-methods?utm_source=openai
- Structure-preserving space discretization of differential and nonlocal constitutive relations for port-Hamiltonian systems: https://arxiv.org/abs/2507.06869?utm_source=openai
- Discrete gradient methods for port-Hamiltonian differential-algebraic equations: https://arxiv.org/abs/2505.18810?utm_source=openai
- Exponential stability preserving of two spatially discretized port-Hamiltonian systems - ScienceDirect: https://www.sciencedirect.com/science/article/pii/S0022039625008927?utm_source=openai
- Port-Hamiltonian formulation and structure-preserving discretization of finite elasticity based on a mixed Hu-Washizu-type formulation by Moritz Hille, Peter Betsch, Marlon Franke :: SSRN: https://papers.ssrn.com/sol3/papers.cfm?abstract_id=5551747&utm_source=openai
- Finite element exterior calculus for time-dependent Hamiltonian partial differential equations: https://arxiv.org/abs/2601.00103?utm_source=openai

### 48. Tool result: web_search

WEB SEARCH RESULTS
Query: mereotopology engineering assemblies components joints ontology literature

## Mereotopology for engineering assemblies: literature map

Mereotopology is particularly useful for engineering assemblies because it combines:

- **Mereology:** component–subassembly–assembly and feature–component relations.
- **Topology:** connection, contact, overlap, boundary and interior relations.
- **Geometry/shape:** surfaces, axes, curves, points and volumes realizing joints.
- **Temporality:** how these relations change during assembly or disassembly.

It therefore offers a formal basis for representing **components, interfaces, joints, joining processes and assembly states**.

### Core literature

1. **Smith, B. (1996). “Mereotopology: A Theory of Parts and Boundaries.”**  
   *Data & Knowledge Engineering*, 20(3), 287–303.  
   DOI: `10.1016/S0169-023X(96)00015-8`  
   Foundational treatment of parthood, boundaries, interiors, contact and connectedness. ([sciencedirect.com](https://www.sciencedirect.com/science/article/pii/S0169023X96000158/pdf?utm_source=openai))

2. **Casati, R., & Varzi, A. C. (1999). *Parts and Places: The Structures of Spatial Representation*.**  
   MIT Press.  
   A standard foundation for region-based mereology and mereotopology; especially relevant when distinguishing components from their surfaces, boundaries, holes and occupied spatial regions. ([mitpress.mit.edu](https://mitpress.mit.edu/9780262032667/parts-and-places/?utm_source=openai))

3. **Borst, P., Akkermans, H., & Top, J. (1997). “Engineering Ontologies.”**  
   *International Journal of Human–Computer Studies*, 46(2–3), 365–406.  
   DOI: `10.1006/ijhc.1996.0096`  
   Introduces an engineering ontology grounded in mereology, topology and systems theory, including reusable components and interconnections. ([research.utwente.nl](https://research.utwente.nl/en/publications/engineering-ontologies/?utm_source=openai))

### Directly concerned with assemblies and joints

4. **Kim, K.-Y. (2008). “Ontology and Assembly Joint Topology Representation.”**  
   *Computer-Aided Design and Applications*, 5(5), 630–638.  
   DOI: `10.3722/cadaps.2008.630-638`  
   An early, directly relevant ontology covering `Assembly`, `Part`, `Feature`, `JointFeature`, `MatingFeature`, `JoiningProcess`, constraints and spatial relationships. It implements assembly-joint semantics using OWL and SWRL. ([cad-journal.net](https://www.cad-journal.net/files/vol_5/CAD_5%285%29_2008_630-638.pdf))

5. **Kim, K.-Y., Yang, H.-J., & Kim, D.-W. (2008). “Mereotopological Assembly Joint Information Representation for Collaborative Product Design.”**  
   *Robotics and Computer-Integrated Manufacturing*, 24(6), 744–754.  
   DOI: `10.1016/j.rcim.2008.03.010`  
   Probably the closest match to your keywords. It uses mereotopological relations and SWRL rules to differentiate geometrically similar joints produced by different joining processes. ([sciencedirect.com](https://www.sciencedirect.com/science/article/pii/S0736584508000367?utm_source=openai))

6. **Demoly, F., Matsokis, A., & Kiritsis, D. (2012). “A Mereotopological Product Relationship Description Approach for Assembly Oriented Design.”**  
   *Robotics and Computer-Integrated Manufacturing*, 28(6), 681–693.  
   DOI: `10.1016/j.rcim.2012.03.003`  
   Extends the subject from individual joints to product relationships and assembly sequences. It provides a mathematical model and an OWL-DL/SWRL implementation for PLM and CAx integration. ([sciencedirect.com](https://www.sciencedirect.com/science/article/abs/pii/S0736584512000361?utm_source=openai))

7. **Gruhier, E., Demoly, F., Dutartre, O., Abboudi, S., & Gomes, S. (2015). “A Formal Ontology-Based Spatiotemporal Mereotopology for Integrated Product Design and Assembly Sequence Planning.”**  
   *Advanced Engineering Informatics*, 29(3), 495–512.  
   DOI: `10.1016/j.aei.2015.04.004`  
   Introduces the **JANUS theory** and **PRONOIA2 ontology**, adding temporal and spatiotemporal relations so that successive assembly states can be represented and checked. ([sciencedirect.com](https://www.sciencedirect.com/science/article/pii/S1474034615000506?utm_source=openai))

8. **Aameri, B., Cheong, H., & Beck, J. C. (2019). “Towards an Ontology for Generative Design of Mechanical Assemblies.”**  
   *Applied Ontology*, 14(2).  
   DOI: `10.3233/AO-190207`  
   Extends Ground Mereotopology to multiple dimensions and combines it with qualitative shape theory. It models connection, parthood, boundaries and joint geometry for generative configuration design, illustrated through suspension components and mechanical joints. ([journals.sagepub.com](https://journals.sagepub.com/doi/10.3233/AO-190207))

### CAD, STEP and product-data integration

9. **Barbau, R., Krima, S., Rachuri, S., et al. (2012). “OntoSTEP: Enriching Product Model Data Using Ontologies.”**  
   *Computer-Aided Design*, 44(6), 575–590.  
   DOI: `10.1016/j.cad.2012.01.008`  
   Relevant for connecting a mereotopological assembly ontology to actual STEP/CAD data. OntoSTEP converts EXPRESS schemas and STEP instances into OWL, allowing geometry to be integrated with function, behavior and assembly semantics. ([sciencedirect.com](https://www.sciencedirect.com/science/article/pii/S001044851200022X?utm_source=openai))

10. **“A New Implementation of OntoSTEP: Flexible Generation of Ontology and Knowledge Graphs of EXPRESS-Driven Data” (2022).**  
    *Journal of Computing and Information Science in Engineering*.  
    DOI: `10.1115/1.4053079`  
    Updates the STEP-to-OWL pipeline and supports generating engineering knowledge graphs from more recent ISO 10303 schemas. ([doi.org](https://doi.org/10.1115/1.4053079?utm_source=openai))

11. **Product-Assembly Planning Ontology—PAPO (2026).**  
    *Automation*, 7(4), Article 109.  
    DOI: `10.3390/automation7040109`  
    A very recent framework integrating product assembly design with assembly-process planning. Its review identifies limited treatment of complex assemblies as an unresolved problem for existing mereotopological approaches. ([doi.org](https://doi.org/10.3390/automation7040109?utm_source=openai))

## Suggested ontology structure

A practical assembly ontology could use the following modules:

```text
EngineeringObject
├── Product
├── Assembly
│   └── Subassembly
├── Component
├── Feature
│   ├── InterfaceFeature
│   ├── MatingFeature
│   └── JointFeature
└── MaterialEntity

Connection
├── Joint
│   ├── FixedJoint
│   ├── RevoluteJoint
│   ├── PrismaticJoint
│   ├── CylindricalJoint
│   └── SphericalJoint
└── JoiningResult
    ├── WeldedJoint
    ├── BoltedJoint
    ├── RivetedJoint
    ├── AdhesiveJoint
    └── InterferenceFit

Process
├── AssemblyOperation
├── JoiningProcess
└── DisassemblyOperation
```

### Important distinctions

Do not collapse all meanings of **joint** into one class:

1. **Topological connection** — two objects are connected or in contact.
2. **Kinematic joint** — a constraint on relative degrees of freedom.
3. **Technological joint** — bolt, weld, adhesive, rivet or press fit.
4. **Joint region** — the physical region, material or interface realizing the joint.
5. **Assembly operation** — the process that creates the joint.

These should be linked, for example:

```text
BoltJoint123 rdf:type BoltedJoint
BoltJoint123 connects ComponentA
BoltJoint123 connects ComponentB
BoltJoint123 realizedBy Bolt123
BoltJoint123 createdBy FasteningOperation45
BoltJoint123 hasInterface SurfaceA
BoltJoint123 hasInterface SurfaceB
BoltJoint123 constrainsDOF TranslationX
```

### Core mereotopological relations

Useful relations include:

- `properPartOf`
- `partOf`
- `hasPart`
- `connectedTo`
- `externallyConnectedTo`
- `overlaps`
- `disconnectedFrom`
- `inContactWith`
- `hasBoundary`
- `hasInterior`
- `occupiesRegion`
- `coincidesWith`
- `incidentWith`

Engineering-specific extensions would include:

- `componentOf`
- `directComponentOf`
- `hasInterface`
- `matesWith`
- `connects`
- `fastenedTo`
- `constrainsRelativeMotion`
- `realizedBy`
- `createdByJoiningProcess`
- `presentDuringAssemblyState`

## Productive search queries

Use these in Scopus, Web of Science or Google Scholar:

```text
"mereotopology" AND "mechanical assembly"
"mereotopological ontology" AND joint
"assembly joint topology" AND ontology
mereology AND topology AND "assembly modelling"
"spatiotemporal mereotopology" AND assembly
"component connection ontology" AND engineering
"joint feature" AND OWL AND SWRL
"assembly ontology" AND STEP
"mereotopology" AND PLM AND CAD
"qualitative spatial reasoning" AND mechanical joints
```

The most coherent reading sequence is **Smith → Casati and Varzi → Kim → Demoly et al. → Gruhier et al. → Aameri et al.**, followed by OntoSTEP for CAD implementation.

Cited sources:
- Mereotopology: A theory of parts and boundaries - ScienceDirect: https://www.sciencedirect.com/science/article/pii/S0169023X96000158/pdf?utm_source=openai
- Parts and Places: https://mitpress.mit.edu/9780262032667/parts-and-places/?utm_source=openai
- Engineering ontologies - University of Twente Research Information: https://research.utwente.nl/en/publications/engineering-ontologies/?utm_source=openai
- Microsoft Word - CAD_5_5__630-638: https://www.cad-journal.net/files/vol_5/CAD_5%285%29_2008_630-638.pdf
- Mereotopological assembly joint information representation for collaborative product design - ScienceDirect: https://www.sciencedirect.com/science/article/pii/S0736584508000367?utm_source=openai
- A mereotopological product relationship description approach for assembly oriented design - ScienceDirect: https://www.sciencedirect.com/science/article/abs/pii/S0736584512000361?utm_source=openai
- A formal ontology-based spatiotemporal mereotopology for integrated product design and assembly sequence planning - ScienceDirect: https://www.sciencedirect.com/science/article/pii/S1474034615000506?utm_source=openai
- Towards an ontology for generative design of mechanical assemblies - Bahar Aameri, Hyunmin Cheong, J. Christopher Beck, 2019 : https://journals.sagepub.com/doi/10.3233/AO-190207
- OntoSTEP: Enriching product model data using ontologies - ScienceDirect: https://www.sciencedirect.com/science/article/pii/S001044851200022X?utm_source=openai
- A New Implementation of ontostep: Flexible Generation of Ontology and Knowledge Graphs of express-Driven Data | J. Comput. Inf. Sci. Eng. | ASME Digital Collection: https://doi.org/10.1115/1.4053079?utm_source=openai
- Product-Assembly Planning Ontology for Integrating Product Design and Assembly Process Planning (APP): https://doi.org/10.3390/automation7040109?utm_source=openai

### 49. Assistant tool calls

#### Tool call: `web_search`

```json
{
  "query": "applied category theory compositional systems wiring diagrams operads engineering physical systems literature Fong Spivak"
}
```

#### Tool call: `web_search`

```json
{
  "query": "configuration spaces robot mechanisms joints constraints foundational literature Murray Li Sastry Bullo Lewis multibody"
}
```

#### Tool call: `web_search`

```json
{
  "query": "topological data structures cell complex combinatorial maps Brisson Lienhardt book recommendation"
}
```

### 50. Tool result: web_search

WEB SEARCH RESULTS
Query: applied category theory compositional systems wiring diagrams operads engineering physical systems literature Fong Spivak

## Literature map: applied category theory for compositional engineering systems

The literature associated with **Brendan Fong and David Spivak** can be organized around two closely related approaches:

1. **Operads and wiring diagrams** — emphasize hierarchical substitution: many component systems are inserted into a larger wiring architecture.
2. **Cospans, hypergraph categories, and symmetric monoidal categories** — emphasize open systems, boundary interconnection, parallel/serial composition, and compositional “black-box” semantics.

A symmetric monoidal category generates an operad, so these are complementary rather than competing frameworks.

### Best entry point

- **Brendan Fong and David I. Spivak, _An Invitation to Applied Category Theory: Seven Sketches in Compositionality_** (Cambridge, 2019; preprint titled _Seven Sketches in Compositionality_).  
  Especially:
  - Chapter 4: co-design and profunctors
  - Chapter 5: signal-flow graphs and props
  - Chapter 6: circuits, hypergraph categories, decorated cospans, and operads  
  This is the clearest general introduction and explicitly connects the Fong and Spivak traditions. ([cambridge.org](https://www.cambridge.org/core/books/abs/an-invitation-to-applied-category-theory/contents/5D33E877C3B12061D7DA79A6B883C9C9?utm_source=openai))

## 1. Operads and wiring-diagram semantics

- **David I. Spivak, “The Operad of Wiring Diagrams: Formalizing a Graphical Language for Databases, Recursion, and Plug-and-Play Circuits”** (2013).  
  The foundational paper for the operadic approach. Wiring diagrams are operations whose substitution law captures hierarchical nesting. The same wiring syntax can support different semantic algebras—relations, machines, circuits, or dynamical systems. ([arxiv.org](https://arxiv.org/abs/1305.0297?utm_source=openai))

- **Dmitry Vagner, David I. Spivak, and Eugene Lerman, “Algebras of Open Dynamical Systems on the Operad of Wiring Diagrams”** (2015).  
  Probably the most directly relevant early paper for engineering and physical systems. It treats controlled dynamical systems as an algebra over a wiring-diagram operad and includes interconnected tanks as an example. ([arxiv.org](https://arxiv.org/abs/1408.1598?utm_source=openai))

- **Donald Yau, _Operads of Wiring Diagrams_** (Springer, Lecture Notes in Mathematics 2192, 2018).  
  A systematic, self-contained mathematical treatment of Spivak-style wiring-diagram operads, including presentations and algebras for discrete systems, propagators, open dynamical systems, and relations. ([link.springer.com](https://link.springer.com/book/10.1007/978-3-319-95001-3?utm_source=openai))

- **Sophie Libkind, Andrew Baas, Evan Patterson, and James Fairbanks, “Operadic Modeling of Dynamical Systems: Mathematics and Computation”** (2021).  
  Modernizes the framework using \(C\)-sets and implements directed and undirected dynamical-system composition in **Catlab/AlgebraicJulia**. It is especially useful if you want executable rather than purely formal models. ([arxiv.org](https://arxiv.org/abs/2105.12282?utm_source=openai))

- **Evan Patterson, David Spivak, and Dmitry Vagner, “Wiring Diagrams as Normal Forms for Computing in Symmetric Monoidal Categories”** (2021).  
  Connects operadic wiring diagrams to computational representations of symmetric monoidal categories and explains why wiring diagrams can serve as canonical combinatorial representations. ([arxiv.org](https://arxiv.org/abs/2101.12046?utm_source=openai))

## 2. Fong’s open-system and network-composition framework

- **Brendan Fong, “Decorated Cospans”** (2015).  
  The foundational construction for turning closed structures—graphs, circuits, reaction networks, and similar objects—into open systems with designated interfaces. Composition is performed by gluing interfaces via pushouts. ([cs.ox.ac.uk](https://www.cs.ox.ac.uk/files/7074/DecoratedCospans.pdf?utm_source=openai))

- **Brendan Fong, _The Algebra of Open and Interconnected Systems_** (Oxford DPhil thesis, 2016).  
  A comprehensive treatment of hypergraph categories, decorated cospans, decorated corelations, linear time-invariant systems, and passive linear networks. This is arguably the central technical reference for Fong’s side of the literature. ([arxiv.org](https://arxiv.org/abs/1609.05382?utm_source=openai))

- **Brendan Fong and David I. Spivak, “Hypergraph Categories”** (2019).  
  Establishes a general categorical setting for network-style diagrammatic languages and relates hypergraph categories to cospan algebras. Applications include circuits, automata, databases, relations, graph rewriting, and belief propagation. ([arxiv.org](https://arxiv.org/abs/1806.08304?utm_source=openai))

- **John Baez and Kenny Courser, “Structured Cospans”** (2020).  
  An important successor to decorated cospans. Structured cospans often provide a cleaner treatment when interfaces and internal systems naturally live in different categories. Examples include electrical circuits, Petri nets, and reaction networks. ([arxiv.org](https://arxiv.org/abs/1911.04630?utm_source=openai))

- **John Baez, Kenny Courser, and Christina Vasilakopoulou, “Structured versus Decorated Cospans”** (2022).  
  Explains precisely how the two constructions are related through the Grothendieck construction, with applications to circuits, Petri nets, dynamical systems, and epidemiology. ([arxiv.org](https://arxiv.org/abs/2101.09363?utm_source=openai))

## 3. Electrical circuits, signal flow, and black-boxing

- **John Baez and Brendan Fong, “A Compositional Framework for Passive Linear Networks”** (2018).  
  A major example of compositional physical modeling. Open RLC circuits form a category; a black-box functor maps circuit structure to externally observable current–potential behavior, represented by Lagrangian relations. ([arxiv.org](https://arxiv.org/abs/1504.05625?utm_source=openai))

- **Brendan Fong and collaborators on corelations and linear systems.**  
  The key idea is that the internal presentation of a network and its external behavior generally belong to different categories. A compositional semantics is then a symmetric monoidal or hypergraph functor from syntax to behavior.

- **Brandon Coya, “A Compositional Framework for Bond Graphs”** (2017), and _Circuits, Bond Graphs, and Signal-Flow Diagrams: A Categorical Perspective_ (2018).  
  These works connect categorical network theory with bond graphs, effort/flow variables, Lagrangian relations, signal-flow diagrams, and engineering models. ([arxiv.org](https://arxiv.org/abs/1710.00098?utm_source=openai))

## 4. Cyber-physical systems, contracts, and systems engineering

- **Georgios Bakirtzis, Cody Fleming, and Christina Vasilakopoulou, “Categorical Semantics of Cyber-Physical Systems Theory”** (2021).  
  Applies the systems-as-algebras paradigm to architecture, behavior, and safety contracts. It is one of the clearest bridges from the abstract wiring-diagram literature to requirements engineering and cyber-physical-system assurance. ([arxiv.org](https://arxiv.org/abs/2010.08003?utm_source=openai))

- **John Baez and John Foley, “Operads for Designing Systems of Systems”** (2020).  
  Uses network operads for system-of-systems design and tasking, including changing abstraction levels and a maritime search-and-rescue application. ([arxiv.org](https://arxiv.org/abs/2009.12647?utm_source=openai))

These papers embody a recurring engineering architecture:

\[
\text{wiring syntax}
\longrightarrow
\text{system behavior}
\longrightarrow
\text{contracts or analyses}.
\]

Each stage is an algebra or functor, so a single architecture can be interpreted as differential equations, steady-state relations, safety contracts, costs, feasibility conditions, or simulations.

## 5. Multiphysics, bond graphs, and port-Hamiltonian systems

- **Markus Lohmayer, Owen Lynch, and Sigrid Leyendecker, “Exergetic Port-Hamiltonian Systems Modeling Language”** (2024).  
  Develops a thermodynamically consistent graphical modeling language whose syntax refines the operad of undirected wiring diagrams. This is especially relevant to multiphysics, energy systems, thermodynamics, and computer-aided engineering. ([arxiv.org](https://arxiv.org/abs/2402.17640?utm_source=openai))

- **Matteo Capucci, Owen Lynch, and David I. Spivak, “Organizing Physics with Open Energy-Driven Systems”** (2024/2025).  
  Constructs symmetric monoidal categories of open energy-driven systems and open differential equations, linked by functorial semantics. An \(n\)-fold pendulum illustrates componentwise construction of a physical system. ([arxiv.org](https://arxiv.org/abs/2404.16140?utm_source=openai))

These extend the earlier circuit and bond-graph literature toward genuinely nonlinear mechanics and thermodynamic modeling.

## Conceptual comparison

| Framework | Components represented as | Composition | Especially suitable for |
|---|---|---|---|
| Wiring-diagram operad | Elements of an algebra assigned to interfaces | Multivariable substitution | Hierarchical modeling and reusable component architectures |
| Symmetric monoidal category / prop | Morphisms \(X\to Y\) | Sequential and parallel composition | Signal flow, control, processes |
| Decorated cospans | Structures with designated boundary nodes | Gluing boundaries by pushout | Networks, circuits, Petri nets, reaction networks |
| Corelations | Boundary relations after redundant internal structure is removed | Relational gluing | External behavior and black-box semantics |
| Hypergraph category | Morphisms with coherent copying, merging and deletion structure | Network-style wiring | General diagrammatic network languages |
| Structured cospans / double categories | Systems and interface maps retained explicitly | Horizontal gluing plus maps between systems | Rich open-system semantics and model transformations |
| Sheaves/toposes/contracts | Local behaviors and predicates | Compatibility and logical composition | Safety, requirements and temporal behavior |

## Recommended reading order

1. **Fong–Spivak, _Seven Sketches_**, Chapters 5–6.  
2. **Spivak, “The Operad of Wiring Diagrams.”**  
3. **Vagner–Spivak–Lerman, “Algebras of Open Dynamical Systems.”**  
4. **Fong, “Decorated Cospans.”**  
5. **Fong, _The Algebra of Open and Interconnected Systems_.**  
6. **Baez–Fong, passive linear networks.**  
7. **Fong–Spivak, “Hypergraph Categories.”**  
8. **Libkind et al., operadic dynamical-system modeling**, for computation.  
9. Then choose an application branch:
   - **Coya** for bond graphs and signal flow;
   - **Bakirtzis et al.** for cyber-physical systems and contracts;
   - **Lohmayer et al.** for port-Hamiltonian and thermodynamic systems;
   - **Baez–Foley** for system-of-systems engineering.

Useful literature-search phrases include **“systems as algebras,” “functorial semantics,” “open systems decorated cospans,” “wiring diagram operad dynamical systems,” “black-box functor,” “hypergraph categories circuits,”** and **“compositional port-Hamiltonian systems.”**

Cited sources:
- Contents - An Invitation to Applied Category Theory: https://www.cambridge.org/core/books/abs/an-invitation-to-applied-category-theory/contents/5D33E877C3B12061D7DA79A6B883C9C9?utm_source=openai
- The operad of wiring diagrams: formalizing a graphical language for databases, recursion, and plug-and-play circuits: https://arxiv.org/abs/1305.0297?utm_source=openai
- Algebras of Open Dynamical Systems on the Operad of Wiring Diagrams: https://arxiv.org/abs/1408.1598?utm_source=openai
- Operads of Wiring Diagrams | Springer Nature Link: https://link.springer.com/book/10.1007/978-3-319-95001-3?utm_source=openai
- Operadic Modeling of Dynamical Systems: Mathematics and Computation: https://arxiv.org/abs/2105.12282?utm_source=openai
- Wiring diagrams as normal forms for computing in symmetric monoidal categories: https://arxiv.org/abs/2101.12046?utm_source=openai
- DECORATED COSPANS: https://www.cs.ox.ac.uk/files/7074/DecoratedCospans.pdf?utm_source=openai
- The Algebra of Open and Interconnected Systems: https://arxiv.org/abs/1609.05382?utm_source=openai
- Hypergraph Categories: https://arxiv.org/abs/1806.08304?utm_source=openai
- Structured Cospans: https://arxiv.org/abs/1911.04630?utm_source=openai
- Structured versus Decorated Cospans: https://arxiv.org/abs/2101.09363?utm_source=openai
- A Compositional Framework for Passive Linear Networks: https://arxiv.org/abs/1504.05625?utm_source=openai
- A Compositional Framework for Bond Graphs: https://arxiv.org/abs/1710.00098?utm_source=openai
- Categorical Semantics of Cyber-Physical Systems Theory: https://arxiv.org/abs/2010.08003?utm_source=openai
- Operads for Designing Systems of Systems: https://arxiv.org/abs/2009.12647?utm_source=openai
- Exergetic Port-Hamiltonian Systems Modeling Language: https://arxiv.org/abs/2402.17640?utm_source=openai
- Organizing Physics with Open Energy-Driven Systems: https://arxiv.org/abs/2404.16140?utm_source=openai

### 51. Tool result: web_search

WEB SEARCH RESULTS
Query: configuration spaces robot mechanisms joints constraints foundational literature Murray Li Sastry Bullo Lewis multibody

If you are assembling a **foundational reading list on configuration spaces of robot mechanisms, joints, constraints, and multibody systems**, the literature divides naturally into geometric robotics, geometric mechanics/control, mechanism theory, and computational multibody dynamics.

## 1. Core mathematical picture

For \(N\) unconstrained spatial rigid bodies, an ambient configuration space is

\[
Q_{\mathrm{amb}} = SE(3)^N .
\]

A joint between bodies restricts their relative transformation to an allowable subset of \(SE(3)\):

- revolute joint: \(S^1\),
- prismatic joint: \(\mathbb{R}\) or an interval,
- cylindrical joint: \(S^1\times\mathbb{R}\),
- spherical joint: \(SO(3)\),
- planar joint: \(SE(2)\),
- fixed joint: a point.

In an **open kinematic tree**, joint variables often provide local or global minimal coordinates,

\[
Q \simeq Q_1\times\cdots\times Q_m.
\]

For **closed-loop mechanisms**, it is usually cleaner to start with redundant body or joint coordinates and impose loop-closure equations

\[
\Phi(q)=0.
\]

At a regular configuration,

\[
Q=\Phi^{-1}(0), \qquad
T_qQ=\ker D\Phi(q),
\]

and

\[
\dim Q=\dim Q_{\mathrm{amb}}-\operatorname{rank}D\Phi(q).
\]

Rank loss identifies kinematic singularities; globally, a mechanism’s configuration set may be disconnected, self-intersecting, or stratified rather than one smooth manifold.

Constrained multibody dynamics commonly takes the differential-algebraic form

\[
M(q)\ddot q+h(q,\dot q)
   =f(q,\dot q,u)+D\Phi(q)^{T}\lambda,
\]

together with \(\Phi(q)=0\). The multipliers \(\lambda\) represent constraint reactions.

## 2. Essential robotics and Lie-group texts

### Murray, Li, and Sastry

**Richard M. Murray, Zexiang Li, and S. Shankar Sastry, _A Mathematical Introduction to Robotic Manipulation_ (1994).**

This is the central bridge between classical mechanism kinematics and modern geometric robotics. Its main contributions for this topic are:

- rigid motions as \(SE(3)\),
- twists and screws as \(\mathfrak{se}(3)\),
- product-of-exponentials kinematics,
- manipulator Jacobians,
- singularities,
- Lagrangian dynamics,
- nonholonomic robotic systems.

It is particularly strong for serial chains and for understanding joints as one-parameter subgroups rather than merely as Denavit–Hartenberg tables. ([cds.caltech.edu](https://www.cds.caltech.edu/~murray/mlswiki/index.php/First_edition?utm_source=openai))

### Denavit and Hartenberg

**J. Denavit and R. S. Hartenberg, “A Kinematic Notation for Lower-Pair Mechanisms Based on Matrices,” _Journal of Applied Mechanics_, 22, 215–221 (1955).**

Historically indispensable for coordinate-based serial-chain modeling, although the Lie-group/product-of-exponentials treatment is usually conceptually cleaner for modern theoretical work. ([oamonitor.ireland.openaire.eu](https://oamonitor.ireland.openaire.eu/national/search/publication?pid=10.1115%2F1.4011045&utm_source=openai))

### Planning interpretation

**Steven M. LaValle, _Planning Algorithms_ (2006), especially Chapters 3–5 and 13.**

This develops configuration spaces from the motion-planning side: rigid bodies, chains, closed chains, configuration-space obstacles, manifolds, algebraic varieties, nonholonomic constraints, and kinodynamic planning. ([lavalle.pl](https://lavalle.pl/planning/?utm_source=openai))

**John Canny, _The Complexity of Robot Motion Planning_ (1988).**

Foundational for treating collision-free configuration spaces as semi-algebraic sets and for exact motion-planning complexity. ([mitpress.mit.edu](https://mitpress.mit.edu/9780262031363/complexity-of-robot-motion-planning/?utm_source=openai))

## 3. Geometric mechanics and control

### Bullo and Lewis

**Francesco Bullo and Andrew D. Lewis, _Geometric Control of Mechanical Systems: Modeling, Analysis, and Design for Simple Mechanical Control Systems_ (2004).**

This should follow Murray–Li–Sastry if your goal is intrinsic mechanics and control. It treats:

- the configuration space as a differentiable manifold,
- tangent and cotangent bundles,
- Riemannian metrics induced by kinetic energy,
- affine connections and geodesic dynamics,
- force and control vector fields,
- distributions and nonholonomic constraints,
- controllability of mechanical systems,
- kinematic reductions.

Where Murray–Li–Sastry emphasizes robot kinematics and manipulation, Bullo–Lewis emphasizes the intrinsic geometry of controlled mechanical systems. ([fbullo.github.io](https://fbullo.github.io/gcms/?utm_source=openai))

### Deeper mechanics foundations

- **V. I. Arnold, _Mathematical Methods of Classical Mechanics_, 2nd ed. (1989).** Geometric Lagrangian and Hamiltonian mechanics, phase spaces, flows, Lie groups, symplectic manifolds, and rigid-body motion. ([link.springer.com](https://link.springer.com/book/10.1007/978-1-4757-2063-1?utm_source=openai))
- **Ralph Abraham and Jerrold E. Marsden, _Foundations of Mechanics_, 2nd ed.** A more systematic differential-geometric foundation for configuration manifolds, tangent/cotangent bundles, symplectic geometry, reduction, and constrained mechanics. ([cds.caltech.edu](https://www.cds.caltech.edu/~marsden/books/Foundations_of_Mechanics.html?utm_source=openai))

## 4. Classical mechanism and linkage geometry

These are especially important when the object is a **closed-chain mechanism**, parallel robot, or linkage rather than a conventional serial manipulator.

### Hunt

**K. H. Hunt, _Kinematic Geometry of Mechanisms_ (1978).**

A foundational geometric account of planar and spatial mechanisms, mobility, instantaneous motion, screw systems, special configurations, and overconstrained mechanisms. ([books.google.com](https://books.google.com/books/about/Kinematic_Geometry_of_Mechanisms.html?id=B6cjho7N3EoC&utm_source=openai))

### Bottema and Roth

**O. Bottema and B. Roth, _Theoretical Kinematics_ (1979).**

A classical, mathematically deep treatment of:

- Euclidean displacements,
- instantaneous kinematics,
- multiparameter motions,
- position synthesis,
- special motions,
- algebraic and projective methods.

It remains one of the deepest sources for the geometry underlying mechanism configuration sets. ([search.worldcat.org](https://search.worldcat.org/title/Theoretical-kinematics/oclc/3609142?utm_source=openai))

### McCarthy and Soh

**J. Michael McCarthy and Gim Song Soh, _Geometric Design of Linkages_, 2nd ed. (2011).**

A more accessible continuation of Hunt and Bottema–Roth, covering planar, spherical, and spatial chains, multiloop linkages, platform manipulators, synthesis, Clifford algebra, and end-effector reachable sets. ([link.springer.com](https://link.springer.com/book/10.1007/978-1-4419-7892-9?utm_source=openai))

## 5. Computational multibody dynamics

This literature generally starts from body coordinates and algebraic joint constraints, rather than from a globally minimal configuration manifold.

### Early foundational treatments

- **Jens Wittenburg, _Dynamics of Systems of Rigid Bodies_ (1977).** One of the foundational systematic accounts of general rigid multibody systems. ([link.springer.com](https://link.springer.com/book/10.1007/978-3-322-90942-8?utm_source=openai))
- **Parviz E. Nikravesh, _Computer-Aided Analysis of Mechanical Systems_ (1988).** Classical treatment of body coordinates, joint constraint equations, Jacobians, Lagrange multipliers, reaction forces, and numerical integration. ([books.google.com](https://books.google.com/books/about/Computer_aided_Analysis_of_Mechanical_Sy.html?id=Lu1SAAAAMAAJ&utm_source=openai))
- **Edward J. Haug, _Computer Aided Kinematics and Dynamics of Mechanical Systems, Vol. 1: Basic Methods_ (1989).** A standard reference for redundant-coordinate kinematics and constrained dynamics. ([books.google.com](https://books.google.com/books/about/Computer_Aided_Kinematics_and_Dynamics_o.html?id=8ETkAQAACAAJ&utm_source=openai))

### Modern comprehensive treatments

**Ahmed A. Shabana, _Dynamics of Multibody Systems_, 5th ed. (2020).**

The broad reference for rigid and flexible multibody systems, including spatial kinematics, equation formulation, floating-frame methods, finite elements, and absolute nodal coordinates. ([cambridge.org](https://www.cambridge.org/highereducation/books/dynamics-of-multibody-systems/E287DA737B6138E040AA96FC12F7D7DF?utm_source=openai))

**Roy Featherstone, _Rigid Body Dynamics Algorithms_ (2008).**

Essential for computational dynamics in minimal or reduced coordinates:

- spatial-vector algebra,
- recursive Newton–Euler inverse dynamics,
- composite-rigid-body methods,
- articulated-body forward dynamics,
- closed loops,
- contact and impact.

Featherstone is the key bridge from geometric rigid-body modeling to efficient robot and multibody algorithms. ([link.springer.com](https://link.springer.com/book/10.1007/978-1-4899-7560-7?utm_source=openai))

## 6. How the traditions fit together

| Tradition | Basic object | Typical representation | Main strength |
|---|---|---|---|
| Murray–Li–Sastry | Lie groups and joint motions | Minimal joint coordinates, \(SE(3)\), twists | Robot kinematics and control |
| Bullo–Lewis | Configuration manifold \(Q\) | Intrinsic differential geometry | Mechanics and nonlinear control |
| Hunt / Bottema–Roth | Linkage displacement geometry | Screws, algebraic equations | Mechanisms and singular geometry |
| Nikravesh / Haug / Shabana | Constrained body system | Redundant coordinates, \(\Phi(q)=0\) | General-purpose simulation |
| Featherstone | Articulated rigid-body tree | Spatial vectors, recursive algorithms | Fast dynamics computation |
| Canny / LaValle | Free configuration space | Semi-algebraic and topological sets | Collision avoidance and planning |

The key conceptual equivalence is:

\[
\boxed{
\text{joints define constraints}
\;\Longrightarrow\;
\text{constraints define configuration space}
\;\Longrightarrow\;
\text{its tangent space defines admissible velocities}
}
\]

The geometric-mechanics literature studies this intrinsically; the multibody literature enforces it computationally through constraint equations and multipliers.

## Recommended reading sequence

1. **Murray–Li–Sastry** — rigid motions, twists, joints, Jacobians.
2. **Hunt** or **McCarthy–Soh** — closed chains and mechanism geometry.
3. **Bullo–Lewis** — configuration manifolds, constraints, and control.
4. **Nikravesh or Haug** — explicit joint-constraint formulations and DAEs.
5. **Featherstone** — efficient reduced-coordinate algorithms.
6. **Shabana** — general and flexible multibody systems.
7. **Arnold / Abraham–Marsden** — deeper geometric-mechanics foundations.
8. **LaValle / Canny** — topology, obstacles, and motion planning.

Cited sources:
- First edition - MLSwiki: https://www.cds.caltech.edu/~murray/mlswiki/index.php/First_edition?utm_source=openai
- A Kinematic Notation for Lower-Pair Mechanisms Based on Matrices: https://oamonitor.ireland.openaire.eu/national/search/publication?pid=10.1115%2F1.4011045&utm_source=openai
- Planning Algorithms / Motion Planning: https://lavalle.pl/planning/?utm_source=openai
- Complexity of Robot Motion Planning: https://mitpress.mit.edu/9780262031363/complexity-of-robot-motion-planning/?utm_source=openai
- Geometric Control of Mechanical Systems: https://fbullo.github.io/gcms/?utm_source=openai
- Mathematical Methods of Classical Mechanics | Springer Nature Link: https://link.springer.com/book/10.1007/978-1-4757-2063-1?utm_source=openai
- Foundations_of_Mechanics: https://www.cds.caltech.edu/~marsden/books/Foundations_of_Mechanics.html?utm_source=openai
- Kinematic Geometry of Mechanisms - Kenneth Henderson Hunt - Google Books: https://books.google.com/books/about/Kinematic_Geometry_of_Mechanisms.html?id=B6cjho7N3EoC&utm_source=openai
- Theoretical kinematics | WorldCat.org: https://search.worldcat.org/title/Theoretical-kinematics/oclc/3609142?utm_source=openai
- Geometric Design of Linkages | Springer Nature Link: https://link.springer.com/book/10.1007/978-1-4419-7892-9?utm_source=openai
- Dynamics of Systems of Rigid Bodies | Springer Nature Link: https://link.springer.com/book/10.1007/978-3-322-90942-8?utm_source=openai
- Computer-aided Analysis of Mechanical Systems - Parviz E. Nikravesh - Google Books: https://books.google.com/books/about/Computer_aided_Analysis_of_Mechanical_Sy.html?id=Lu1SAAAAMAAJ&utm_source=openai
- Computer Aided Kinematics and Dynamics of Mechanical Systems - Edward J. Haug - Google Books: https://books.google.com/books/about/Computer_Aided_Kinematics_and_Dynamics_o.html?id=8ETkAQAACAAJ&utm_source=openai
- Dynamics of Multibody Systems | Cambridge Aspire website: https://www.cambridge.org/highereducation/books/dynamics-of-multibody-systems/E287DA737B6138E040AA96FC12F7D7DF?utm_source=openai
- Rigid Body Dynamics Algorithms | Springer Nature Link: https://link.springer.com/book/10.1007/978-1-4899-7560-7?utm_source=openai

### 52. Tool result: web_search

WEB SEARCH RESULTS
Query: topological data structures cell complex combinatorial maps Brisson Lienhardt book recommendation

## Best single recommendation

**Guillaume Damiand and Pascal Lienhardt — _Combinatorial Maps: Efficient Data Structures for Computer Graphics and Image Processing_ (2015).**

This is the closest book-length treatment of the subject you describe. It covers:

- \(n\)-dimensional combinatorial and generalized maps
- darts, involutions and cell orbits
- incidence and adjacency traversal
- sewing, removal, contraction and insertion operations
- geometric embeddings
- relationships with simplicial structures
- comparisons with other cellular data structures

It is aimed at graduate students and researchers in geometric modeling, computational geometry and image processing. ([routledge.com](https://www.routledge.com/Combinatorial-Maps-Efficient-Data-Structures-for-Computer-Graphics-and/Damiand-Lienhardt/p/book/9781482206524?utm_source=openai))

## Essential Brisson companion

Brisson’s relevant work is primarily the paper:

**E. Brisson — “Representing Geometric Structures in \(d\) Dimensions: Topology and Order,” _Discrete & Computational Geometry_ 9 (1993), 387–426.**

This introduces the **cell-tuple structure**, representing incidence, ordering, boundaries and dual structures uniformly in arbitrary dimensions. It is the conceptual predecessor/relative of generalized and combinatorial maps. ([eudml.org](https://eudml.org/doc/131254?utm_source=openai))

Also useful:

**Pascal Lienhardt — “Topological Models for Boundary Representation: A Comparison with \(n\)-Dimensional Generalized Maps” (1991).**

It compares incidence-graph representations with ordered, dart-like representations used in boundary modeling. ([sciencedirect.com](https://www.sciencedirect.com/science/article/pii/0010448591900828?utm_source=openai))

## Supplementary books by objective

1. **For practical surface-mesh structures:**  
   Botsch, Kobbelt, Pauly, Alliez and Lévy, _Polygon Mesh Processing_.  
   Chapter 2 covers face-, edge-, halfedge- and directed-edge structures. It is practical but mainly two-dimensional manifold meshes, rather than arbitrary-dimensional cell complexes. ([routledge.com](https://www.routledge.com/Polygon-Mesh-Processing/Botsch-Kobbelt-Pauly-Alliez-Levy/p/book/9781568814261?utm_source=openai))

2. **For topology and homology of complexes:**  
   Edelsbrunner and Harer, _Computational Topology: An Introduction_.  
   Use this for simplicial complexes, filtrations, homology and persistence—not primarily mutable incidence data structures.

3. **For current implementation work:**  
   Read the **CGAL Combinatorial Maps** and **Linear Cell Complex** manuals alongside Damiand–Lienhardt. CGAL treats combinatorial maps as higher-dimensional generalizations of halfedge structures and supports geometry through vertex-associated points. ([doc.cgal.org](https://doc.cgal.org/latest/Combinatorial_map/index.html?utm_source=openai))

### Suggested reading order

1. Botsch et al., Chapter 2 — intuitive 2D halfedge foundations  
2. Brisson — cell tuples  
3. Lienhardt’s 1991 comparison paper  
4. Damiand–Lienhardt — complete systematic treatment  
5. CGAL manuals — concrete C++ implementation

**Bottom line:** If buying only one book, choose **Damiand and Lienhardt**. Pair it with **Brisson’s 1993 paper** for the theoretical lineage.

Cited sources:
- Combinatorial Maps: Efficient Data Structures for Computer Graphics an: https://www.routledge.com/Combinatorial-Maps-Efficient-Data-Structures-for-Computer-Graphics-and/Damiand-Lienhardt/p/book/9781482206524?utm_source=openai
- EUDML  |  Representing Geometric Structures in d Dimensions: Topology and Order.: https://eudml.org/doc/131254?utm_source=openai
- Topological models for boundary representation: a comparison with n-dimensional generalized maps - ScienceDirect: https://www.sciencedirect.com/science/article/pii/0010448591900828?utm_source=openai
- Polygon Mesh Processing - 1st Edition - Mario Botsch - Leif Kobbelt -: https://www.routledge.com/Polygon-Mesh-Processing/Botsch-Kobbelt-Pauly-Alliez-Levy/p/book/9781568814261?utm_source=openai
- CGAL 6.2 - Combinatorial Maps: User Manual: https://doc.cgal.org/latest/Combinatorial_map/index.html?utm_source=openai

### 53. Assistant

Yes. The word **complex** is appropriate, but several neighboring literatures describe different aspects of what you have in mind. For an engine, I would not try to make one mathematical structure represent all of them.

## 1. First distinguish the spaces involved

### A. Cell or incidence complex: “what bounds or meets what?”

A **cell complex** consists of cells of different dimensions and their incidence/boundary relations:

$$
C_n \xrightarrow{\partial_n} C_{n-1}
\longrightarrow \cdots
\xrightarrow{\partial_2} C_1
\xrightarrow{\partial_1} C_0,
\qquad
\partial_{k-1}\partial_k=0.
$$

For a geometric object:

- $0$-cells: vertices;
- $1$-cells: edges;
- $2$-cells: faces;
- $3$-cells: volumes.

The important structure is not merely containment but **boundary and incidence**. This is the right literature for meshes, interfaces, contact surfaces, terrain tissues, B-reps, and geometric features of parts.

Useful variants:

- **simplicial complex** — triangles, tetrahedra;
- **cubical complex** — squares, cubes;
- **CW complex** — general cells attached along boundaries;
- **combinatorial map / generalized map** — a computational representation of a cell complex;
- **chain complex** — its algebraic boundary structure;
- **cochain complex** — values placed on cells: potentials on vertices, flows on edges, fluxes through faces.

This directly supports the cellular tissue proposed in `ideas/structure-of-space.md`. It is less directly the structure of an entire mechanical assembly.

### B. Assembly graph or hypergraph: “which components are connected?”

For an assembly, the usual representation is an **attributed graph**:

$$
\text{vertices}=\text{bodies or components},\qquad
\text{edges}=\text{joints, contacts, fasteners, or interfaces}.
$$

A **hypergraph** is better when one connection involves several components—for example a bolt passing through four plates.

This is closest to Smith’s engineered causal unity: reciprocally fitted components are connected by bearings, screws, fasteners, and similar mechanisms (#KX52RU), while installed components can remain objects in their own right (#DS4CF6).

### C. Configuration space: “how can this assembly move?”

If an assembly has $N$ unconstrained rigid bodies, its ambient configuration space is approximately

$$
Q_{\mathrm{ambient}}=SE(3)^N.
$$

Joints impose constraints:

$$
\Phi(q)=0,
$$

so the actual configuration space is

$$
Q=\Phi^{-1}(0).
$$

A revolute joint contributes something locally like $S^1$; a prismatic joint like an interval; a fixed joint like a point. Closed mechanisms can produce singular, disconnected, or stratified configuration spaces rather than one simple manifold.

This is the mathematical home of “joints and physics.” The **assembly graph** says what is connected; the **configuration space** says what motions that connection permits.

### D. Port or bond graph: “how does power pass between components?”

A **bond graph** or **port-Hamiltonian system** treats components through exchanges of power:

- effort: force, torque, voltage, pressure;
- flow: velocity, angular velocity, current, volume flow;
- power: effort $\times$ flow.

This gives a strong account of a component as a functional subsystem with an interface—very close to the spatial-functional hierarchy in Smith, Papakin, and Munn. Their key move is to combine structural parthood with the processes those structures enable (#L7X8QD, #77LY9W).

### E. Wiring diagram or open system: “how do systems compose?”

Applied category theory studies components with explicit interfaces and composition rules:

```text
component + ports
      ↓ connect
larger open system
      ↓ black-box
externally visible behavior
```

This is particularly relevant if you want one assembly structure to admit several interpretations:

- physics equations;
- rendering;
- control;
- damage;
- resource flow;
- gameplay behavior.

It supplies a formal version of “one architecture, several granular projections.”

---

## 2. Best literature by route

### Route I: cellular topology and implementable complexes

Start here if your interest is the discrete substrate itself—vertices, edges, faces, volumes, adjacency, sewing, subdivision, and remeshing.

1. **E. Brisson, “Representing Geometric Structures in $d$ Dimensions: Topology and Order” (1993).**  
   Introduces the **cell-tuple structure**, a dimension-independent way to represent cells, incidence, adjacency, orientation, and duality. Probably the strongest single paper for your question.

2. **Pascal Lienhardt, “Topological Models for Boundary Representation” (1991)** and **“N-Dimensional Generalized Combinatorial Maps and Cellular Quasi-Manifolds” (1994).**  
   Generalized maps represent a complex through small combinatorial primitives called darts and involutions. They handle boundaries, non-manifold conjunctions, orientation, and higher dimensions.

3. **Guillaume Damiand and Pascal Lienhardt, _Combinatorial Maps: Efficient Data Structures for Computer Graphics and Image Processing_ (2015).**  
   The best book-length, implementation-oriented treatment. It covers sewing, insertion, removal, contraction, traversal, embeddings, and arbitrary-dimensional cells.

4. **Botsch et al., _Polygon Mesh Processing_.**  
   Read the early chapters first if half-edge and winged-edge structures are unfamiliar. It is the accessible two-dimensional precursor to the more general structures above.

5. **Edelsbrunner and Harer, _Computational Topology: An Introduction_.**  
   Useful when you want to ask global questions of the complex: connected components, holes, cycles, filtrations, merge trees, and persistent structure. Moppe’s current hydrological merge tree already sits near this tradition.

**Relevance to Moppe:** `SurfaceTissue` would naturally be a two-dimensional cell complex with a terrain embedding. Construction could sprout sparse three-dimensional complexes from selected surface cells.

---

### Route II: mechanical assemblies as topological and semantic systems

This is the most direct bridge between Barry Smith and actual CAD/assembly representations.

1. **Kyoung-Yun Kim, “Ontology and Assembly Joint Topology Representation” (2008).**

2. **Kim, Yang, and Kim, “Mereotopological Assembly Joint Information Representation for Collaborative Product Design” (2008).**  
   This is probably the single closest paper to your question. It distinguishes parts, mating features, joint features, joining processes, and mereotopological relations.

3. **Demoly, Matsokis, and Kiritsis, “A Mereotopological Product Relationship Description Approach for Assembly Oriented Design” (2012).**  
   Extends the approach toward product relationships, assembly-oriented design, and formal knowledge representation.

4. **Gruhier et al., “A Formal Ontology-Based Spatiotemporal Mereotopology for Integrated Product Design and Assembly Sequence Planning” (2015).**  
   Important because an assembly is not merely a final graph. Assembly and disassembly change topology through time.

5. **Aameri, Cheong, and Beck, “Towards an Ontology for Generative Design of Mechanical Assemblies” (2019).**  
   Especially relevant to Ellerman’s generative side: it combines mereotopology, shape, connection, and joint geometry for generative configuration design.

6. **NIST, _Assembly Model Report_, NISTIR 7057 (2003)** and **Rachuri et al., “Information Models for Product Representation: Core and Assembly Models” (2005).**  
   These make practical distinctions among:
   - assembly hierarchy;
   - mating features;
   - fixed connections;
   - movable connections;
   - relative position;
   - relative motion;
   - form, function, and behavior.

This literature gives a useful multilayer model:

```text
Part
  owns a geometric cell complex

Assembly feature
  refers to selected faces, axes, holes, or regions of that complex

Connection
  relates features belonging to different parts

Kinematic joint
  constrains relative motion

Joining process
  creates or removes the connection
```

That avoids making “joint” mean five different things at once.

---

### Route III: mechanisms and multibody configuration spaces

Start here if your primary interest is turning an assembly into a physics engine.

1. **Murray, Li, and Sastry, _A Mathematical Introduction to Robotic Manipulation_ (1994).**  
   The best conceptual introduction to rigid motions as $SE(3)$, twists, screws, joint motions, Jacobians, and product-of-exponentials kinematics. Freely available from Caltech.

2. **K. H. Hunt, _Kinematic Geometry of Mechanisms_ (1978).**  
   Excellent for understanding mechanisms geometrically rather than merely as arrays of coordinates.

3. **McCarthy and Soh, _Geometric Design of Linkages_ (2011).**  
   More approachable than Hunt for linkages, closed chains, multiloop mechanisms, and synthesis.

4. **Roy Featherstone, _Rigid Body Dynamics Algorithms_ (2008).**  
   The engine-facing book: spatial vectors, articulated-body dynamics, recursive algorithms, joints, closed loops, and contacts.

5. **Abhinandan Jain, “Graph Theoretic Foundations of Multibody Dynamics,” Parts I and II (2011).**  
   Particularly relevant to this conversation because it shows explicitly how the body–joint graph generates operators and efficient dynamics algorithms.

6. **Shabana, _Dynamics of Multibody Systems_.**  
   The broad reference for constrained rigid and flexible multibody simulation.

The central chain is:

$$
\text{assembly graph}
\Longrightarrow
\text{joint constraints}
\Longrightarrow
\text{configuration space}
\Longrightarrow
\text{admissible velocities}
\Longrightarrow
\text{dynamics}.
$$

For a motorcycle, this would turn the frame–fork–wheel assembly graph into a constrained configuration manifold and then into an articulated-body solver.

---

### Route IV: physical systems as networks of energy exchange

This may be the most conceptually fertile route if you want “components” to mean functional physical components rather than ECS records.

1. **Henry Paynter, _Analysis and Design of Engineering Systems_ (1961).**  
   The origin of bond graphs.

2. **Dean Karnopp, Donald Margolis, and Ronald Rosenberg, _System Dynamics: Modeling, Simulation, and Control of Mechatronic Systems_.**  
   The standard engineering introduction to bond graphs and multiphysics composition.

3. **A. J. van der Schaft, “Port-Hamiltonian Systems: An Introductory Survey.”**

4. **van der Schaft and Maschke, “Port-Hamiltonian Systems on Graphs” (2013).**  
   Graph incidence defines the interconnection structure; energy and constitutive laws are added separately.

5. **Duindam et al., _Modeling and Control of Complex Physical Systems: The Port-Hamiltonian Approach_ (2009).**

This literature has an extremely useful separation:

```text
topology       incidence and interconnection
geometry       frames, lengths, inertia
constitution   springs, damping, friction, materials
state          stored energy and momentum
process        power flow and dissipation
```

That separation resonates with *Against Fantology*: relations, qualities, processes, and objects should not be flattened into one undifferentiated table.

---

### Route V: discrete exterior calculus

Read this if you want a cell complex to carry physical quantities while preserving conservation and boundary laws.

1. **Desbrun, Hirani, Leok, and Marsden, “Discrete Exterior Calculus” (2005).**

2. **Arnold, Falk, and Winther, “Finite Element Exterior Calculus: From Hodge Theory to Numerical Stability” (2010).**

3. **Seslija, van der Schaft, and Scherpen, “Discrete Exterior Geometry Approach to Structure-Preserving Discretization of Distributed-Parameter Port-Hamiltonian Systems.”**

The basic allocation is:

| Cell | Typical quantity |
|---|---|
| vertices | scalar potentials |
| edges | differences, circulation, transport |
| faces | flux |
| volumes | density or stored amount |

The topology supplies exact identities such as “the boundary of a boundary is zero”; geometry and material laws enter separately through a Hodge-star-like operator.

This is more naturally relevant to terrain, fluids, flexible bodies, electrical networks, and distributed structures than to a small rigid-body solver. But it could eventually unify Moppe’s terrain tissue, water transport, construction, and physical exchange.

---

### Route VI: compositional systems and wiring diagrams

For a more abstract but powerful account of assemblies as things built by plugging open components together:

1. **Fong and Spivak, _An Invitation to Applied Category Theory: Seven Sketches in Compositionality_ (2019).**  
   Start with Chapters 5–6.

2. **Spivak, “The Operad of Wiring Diagrams” (2013).**

3. **Vagner, Spivak, and Lerman, “Algebras of Open Dynamical Systems on the Operad of Wiring Diagrams” (2015).**

4. **Brendan Fong, “Decorated Cospans” (2015)** and _The Algebra of Open and Interconnected Systems_ (2016).

5. **Brandon Coya, “A Compositional Framework for Bond Graphs” (2017).**

The useful idea is that composition occurs at declared boundaries:

$$
A:X\to Y,\qquad B:Y\to Z
\quad\Longrightarrow\quad
B\circ A:X\to Z.
$$

The same wiring diagram can then be interpreted as:

- a dynamic model;
- a relation among admissible states;
- an energy network;
- a control architecture;
- a gameplay dependency system.

That resembles Smith’s systems of granular partitions: different selective views can project onto the same structured reality rather than being forced into one universal hierarchy (#FTYFBV).

---

## 3. The representation I would aim toward

For Moppe, I would use several linked structures:

```text
Part complex
  vertices, edges, faces, volumes
  boundary and incidence

Assembly hypergraph
  component objects
  mating features
  fasteners and material connections

Kinematic graph
  rigid bodies
  permitted relative motions
  joint frames and limits

Configuration space
  all configurations satisfying the constraints

Port graph
  forces, torques, velocities and energy transfer

Process history
  assembly, motion, contact, damage and disassembly

Granular partitions
  gameplay, physics, rendering, damage and inspection views
```

A joint would connect these layers:

```text
bearing surfaces in two part complexes
        ↓ realize
material bearing assembly
        ↓ represented by
revolute kinematic edge
        ↓ restricts
configuration space
        ↓ transmits
forces and power
        ↓ participates in
rotation, wear, impact and failure processes
```

That is much richer than saying only `Joint { body_a, body_b }`, while still permitting the runtime solver to use exactly that compressed representation.

## 4. A short reading order

If you want the most efficient route, I would read:

1. **Brisson (1993)** — what a general cell complex representation looks like.
2. **Damiand and Lienhardt** — how to implement and modify one.
3. **Kim, Yang, and Kim (2008)** — mereotopological assembly joints.
4. **NIST Assembly Model Report** — practical assembly semantics.
5. **Murray, Li, and Sastry** — joints and configuration spaces.
6. **Featherstone** — executable articulated-body dynamics.
7. **van der Schaft and Maschke** — physical systems on graphs.
8. **Fong and Spivak** — composition and multiple semantics.

The most important terminological insight is:

> A geometric part may be a **cell complex**; an assembly is usually an **attributed graph or hypergraph** of such parts; its possible motions form a **configuration space**; and its physical interactions form a **port or bond graph**.

Those are four related spaces, not four names for the same one.
