🗺️

cartographer

a tool for string diagrammatic reasoning

Editing Diagrams

Place and delete generators, connect and disconnect wires.

Add Generators

Add a generator to the diagram by clicking its button in the toolbar, then clicking where you want to place it in the diagram.

Delete Generators

Remove a generator using the "delete generator" button.

Connect Ports

Connect ports by clicking a dangling wire or boundary port, then clicking where you want to connect. Valid connection points will be highlighted in red. Connect to boundaries by clicking on the left- and right-hand-sides of the grid.

Watch out: a gap in the boundary will be interpreted as an unconnected port.

Disconnect Ports

Disconnect a wire from a port using the "disconnect wires" button.

Create Theories

Add generators and rewrite rules

Create Generators

Add a generator using the "+" button in the "signature" section.

Create Rewrite Rules

Add a rewrite rule using the "+" button in the "rewrite rules" section.

Watch out: a gap in the boundary will be interpreted as an unconnected port.

Prove Theorems

Draw your starting term, and apply rewrites

Draw Start Term

Draw your starting term

Apply Rewrites

Hover over rewrite rules to highlight the part of the diagram that will be rewritten, then click to apply the rule.

Identity and Twist

drawing some simple diagrams

Draw Identity

The identity wire can be drawn by clicking the left boundary port, then the right.

Draw Twist

Drawing the "twist" morphism is similar: click the first left boundary port, then the second right boundary port, and vice-versa.