Overview

A world model is a conceptual map of a system - a simplified representation that captures the essential building blocks, their relationships, and the rules that govern them.

The Map Analogy

Just as a map is not the territory it represents, a world model is not the system itself. Maps serve specific purposes:

Map TypePurposeOmits
Road mapNavigationTerrain elevation
Topographic mapTerrain analysisRoad conditions
Transit mapRoute planningGeographic accuracy

Similarly, a CFSE world model focuses on security-relevant structure, omitting implementation details that don't affect security properties.

Logic Layer vs Implementation Layer

CFSE operates at two abstraction levels:

Logic Layer

The logic layer contains abstract security rules independent of implementation:

  • Concepts (what entities exist)
  • Invariants (what rules must hold)
  • Flows (what sequences are legitimate)

Example: "Only the owner of a resource can delete it"

Implementation Layer

The implementation layer contains concrete realizations:

  • Code (functions, classes, modules)
  • Configuration (ACLs, policies, settings)
  • Infrastructure (services, databases, networks)

Example: if resource.owner_id != current_user.id: raise PermissionDenied

Why Separate?

BenefitExplanation
StabilityLogic layer changes less often than implementation
PortabilitySame invariants apply across different implementations
ClaritySecurity rules are explicit, not buried in code
TestabilityCan verify logic layer compliance independently

Building a World Model

A world model is built through progressive refinement:

code
1. Identify Concepts    -> What are the "nouns"?
2. Map Interactions     -> How do concepts connect?
3. Document Flows       -> What are legitimate sequences?
4. Define Invariants    -> What rules must always hold?

World Model Quality

A good world model is:

PropertyMeaning
CompleteCovers all security-relevant concepts
MinimalNo redundant or unnecessary concepts
ConsistentNo contradictory invariants
TestableInvariants can be verified through exploration

Relationship to Artifacts

ArtifactWorld Model Role
ConceptBuilding block of the model
InteractionConnection between building blocks
FlowPath through the model
InvariantRule constraining the model
ScenarioHypothesis about model weakness
ExplorationTest of model behavior