Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1109 commits
Select commit Hold shift + click to select a range
c79d5cc
Rose trees worked example.
rolyp Jul 11, 2026
69d751f
Onto conservativity; cite Lawvere on hyperdoctrines.
rolyp Jul 11, 2026
77793e3
Covers.
rolyp Jul 11, 2026
cdf6ae9
Theorem about set semantics.
rolyp Jul 11, 2026
6ebf78b
Fullness of embedding.
rolyp Jul 11, 2026
778f34c
Fullness of embedding.
rolyp Jul 11, 2026
d160402
Happy with 2.3.
rolyp Jul 11, 2026
580006a
Some citations.
rolyp Jul 11, 2026
99fcb59
Some structure.
rolyp Jul 11, 2026
84ab73a
collapse -> realisation invariance.
rolyp Jul 11, 2026
fe1bac7
collapse -> realisation invariance.
rolyp Jul 11, 2026
abba7b2
Good up to 2.4 for first draft.
rolyp Jul 11, 2026
a22ca80
Good up to 2.4 for first draft.
rolyp Jul 11, 2026
d413efa
Onto 2.5.
rolyp Jul 11, 2026
d73e2f2
Onto 2.5.
rolyp Jul 12, 2026
a36f9df
Onto 2.5.
rolyp Jul 17, 2026
bc92ce3
Clarify final proof.
rolyp Jul 17, 2026
b3ca836
Clarify final proof.
rolyp Jul 17, 2026
84357f7
Some renaming.
rolyp Jul 17, 2026
78c3282
Renaming pass.
rolyp Jul 17, 2026
45cdd85
New Act datatype.
rolyp Jul 17, 2026
2a405a5
Some migration to Act.
rolyp Jul 17, 2026
d6da9b0
Factor through fusion lemma.
rolyp Jul 17, 2026
81a82d3
Add value-level signature algebras.
rolyp Jul 18, 2026
58fb789
Add example signature with value-level interpretation.
rolyp Jul 18, 2026
742107f
Type-level substitution fusion laws and nested-mu unfolding lemma.
rolyp Jul 18, 2026
be1cb1b
Big-step operational semantics over mu-types.
rolyp Jul 18, 2026
ff657fc
Replace duplicate example signature with value-level algebra for exam…
rolyp Jul 18, 2026
66a9421
Matrix-decorated big-step evaluation.
rolyp Jul 18, 2026
01e212e
Trace and dependence-graph tooling over matrix-decorated derivations.
rolyp Jul 18, 2026
b0f58e4
Skeleton and design for the logical relation module.
rolyp Jul 18, 2026
576ef35
Trim module commentary.
rolyp Jul 18, 2026
bdf069c
Strip comments derivable from the code.
rolyp Jul 18, 2026
a0b745e
Logical relation and fundamental property statement.
rolyp Jul 18, 2026
f57658f
Action of Mat(S) on free semimodules.
rolyp Jul 18, 2026
3587dda
Instantiate the logical relation: Boolean dependency model over ratio…
rolyp Jul 18, 2026
ac5fbea
Totality predicate: existence content of the logical relation.
rolyp Jul 18, 2026
428d53d
Acc-irrelevance for the totality predicate.
rolyp Jul 18, 2026
2753936
Arrow-leaf size bound, preserved by renaming, substitution and unfold…
rolyp Jul 18, 2026
bcefdb4
Restore mrel-mu: explicit fibre-subst endpoints fix the stuck unifica…
rolyp Jul 18, 2026
128c4c2
Conversion between totality at substituted types and the mu family.
rolyp Jul 18, 2026
f47bbfe
Fundamental lemma for totality; evaluator for closed terms.
rolyp Jul 18, 2026
7f5048b
Trace harness at the Boolean model with golden tests.
rolyp Jul 18, 2026
fe0a6b5
Port dump-graphs IO main; ignore GHC build directory.
rolyp Jul 18, 2026
5c219c7
Rename evaluation judgements to turnstile form.
rolyp Jul 19, 2026
2ca0e26
Revert "Rename evaluation judgements to turnstile form."
rolyp Jul 19, 2026
1a20aeb
Single-comma evaluation judgements, matching the paper.
rolyp Jul 19, 2026
f433cd3
Term-indexed markings for intermediates.
rolyp Jul 19, 2026
f0b2e25
Group operational-semantics modules under operational namespace.
rolyp Jul 19, 2026
f98ee32
Rename namespace to language-operational; add instrumentation.
rolyp Jul 19, 2026
be87291
Instrumentation harness: flattening, width and erasure tests.
rolyp Jul 19, 2026
f7d48ae
Instrumentation instantiated alongside totality in the Boolean example.
rolyp Jul 19, 2026
e994a3e
Move logical-relation into language-operational.
rolyp Jul 19, 2026
4cf35d6
Fix the Boolean semiring in logical-relation, matching the paper.
rolyp Jul 19, 2026
2d0de83
Rewrap comments to 110 columns.
rolyp Jul 19, 2026
1bdea78
Use the existing Boolean dependency model; drop the duplicate constru…
rolyp Jul 19, 2026
c3cfa63
Prune dead imports.
rolyp Jul 19, 2026
474464a
Derive the value-level algebra from the model by projection.
rolyp Jul 19, 2026
9aaa326
Relation takes the model only; algebra derived as its points; sort-em…
rolyp Jul 19, 2026
bd764e3
Delete the hand-written example algebra.
rolyp Jul 19, 2026
182a511
Bundle agreement data as a Presentation record; derive the matrix act…
rolyp Jul 19, 2026
04bda92
Rename points to index terminology.
rolyp Jul 19, 2026
881d016
Syntactic fibre choices: FreeObjects at the FO interface; widths and …
rolyp Jul 19, 2026
0ab31e7
Nest FreeObjects in Interpretation; prune relation-boolean.
rolyp Jul 19, 2026
d309bb4
Generator in the Interpretation telescope; free tower built from its …
rolyp Jul 19, 2026
37a3663
Fix operational semantics at the Boolean semiring; drop the S parameter.
rolyp Jul 19, 2026
725bef0
Rename op-mat to op-rel (Boolean matrix is a relation); WithOpMats to…
rolyp Jul 19, 2026
a0fbc42
Build ⟦sort⟧ from a single sort-fibre via shared free-object; widths …
rolyp Jul 19, 2026
236c48f
Delete the unused approx sort and its operations.
rolyp Jul 20, 2026
5f40d2b
Rename free-object to approx; FreeObj to Approx, fwidth to width.
rolyp Jul 20, 2026
f5fcb99
Compute each sort's fibre object from its approximation description.
rolyp Jul 20, 2026
af1ba3b
Delete the unused SynMonad record.
rolyp Jul 20, 2026
7bbfa2c
Make op-rel take the argument values.
rolyp Jul 20, 2026
e2a2272
Normalise S^ so the free object of width one is 𝕀.
rolyp Jul 20, 2026
acfda32
Replace the fibre description language with the free object of a width.
rolyp Jul 20, 2026
c7f1779
Rename 𝕀^ to approx; drop freeness claims where unused.
rolyp Jul 20, 2026
4e49a7e
Define op-rel as F⁻¹ of the interpretation's fibre morphism at the ar…
rolyp Jul 20, 2026
86cdca5
Read the matrix embedding at the caller's semiring; drop matrix-semim…
rolyp Jul 20, 2026
a395d40
Run the operational model over the self-dual semimodules, not the Boo…
rolyp Jul 20, 2026
a3d6701
Merge evaluation into evaluation-mat and drop the -mat suffix.
rolyp Jul 20, 2026
fd375c9
Move widths and dependency relations into the Algebra record, over se…
rolyp Jul 20, 2026
eb335e4
Rename Algebra to Primitives.
rolyp Jul 20, 2026
2968b0d
Make rel-pred a setoid morphism.
rolyp Jul 20, 2026
1c5b3bd
Move primitives to the top level.
rolyp Jul 20, 2026
ddc6dd4
Parameterize Primitives by the semiring; add generic predicates to fam.
rolyp Jul 20, 2026
62afcc8
Interpret the primitives in Fam(SDSemiMod(S)).
rolyp Jul 20, 2026
7078ee0
Home the primitives interpretation in ho-model-sd-semimod.
rolyp Jul 20, 2026
e07630e
Retire the Boolean-algebra instance and its examples.
rolyp Jul 20, 2026
10f2145
Tie the logical relation to the model determined by the primitives.
rolyp Jul 20, 2026
e187b94
State the Boolean primitives directly and derive the model from them.
rolyp Jul 20, 2026
99a6919
Fix module path in dependency-mavg.
rolyp Jul 20, 2026
1378144
Inline sort-can; hoist local imports; drop a narrating comment.
rolyp Jul 20, 2026
512f6e9
Open Primitives in dependency; give the sort fields by copatterns.
rolyp Jul 20, 2026
4a7b405
Delete IndexAlgebra.
rolyp Jul 20, 2026
5aa3bfc
Rename op-rel to op-deps.
rolyp Jul 20, 2026
c59df22
Retire four semiring examples; state the rationals primitives directly.
rolyp Jul 20, 2026
ded3281
State the intervals primitives directly; retire signature-interpretat…
rolyp Jul 20, 2026
d6d27ea
Fix dump-graphs imports.
rolyp Jul 20, 2026
9cb891e
Write the dependency relations in block form.
rolyp Jul 20, 2026
991524c
Move the block combinators into Mat.
rolyp Jul 20, 2026
d64c436
Fix leftover local combinator in intervals.
rolyp Jul 20, 2026
b9e0056
Refresh stale comments in everything.agda.
rolyp Jul 20, 2026
754f287
Share the setoid-side data of the example primitives.
rolyp Jul 20, 2026
e3137d8
Extract the dependence graph over intermediates, with golden and dot …
rolyp Jul 20, 2026
b7628ab
Retire GraphWriter; the full graph is the everything-marked dependenc…
rolyp Jul 20, 2026
9dc3399
Check the query dependence graph as a dot artefact rather than a refl…
rolyp Jul 20, 2026
a1d427c
Declare every vertex in dot output.
rolyp Jul 21, 2026
edf2674
Label graph vertices with intermediate values.
rolyp Jul 21, 2026
35c1479
Render whole rationals without the denominator.
rolyp Jul 21, 2026
91f4254
Split the intermediates graph from its per-edge position relations; c…
rolyp Jul 21, 2026
307959a
Drop the -boolean suffix from the example harnesses; align run names …
rolyp Jul 21, 2026
0e66aa7
Render list values bracketed.
rolyp Jul 21, 2026
828e324
Label aggregating edges with their relation; draw them dotted.
rolyp Jul 21, 2026
b14b9fc
Use the undeprecated any.
rolyp Jul 21, 2026
b394263
Partition value tests from artefact rendering; drop derivation traces…
rolyp Jul 21, 2026
97cce7b
Rename artefact to graph-viz; render nested pairs as flat tuples.
rolyp Jul 21, 2026
72d63ad
Flatten only right-nested pairs, keeping the rendering injective.
rolyp Jul 21, 2026
69fa574
Right-associate the moving-average tuples.
rolyp Jul 21, 2026
687674b
Coarse marking for the moving average.
rolyp Jul 21, 2026
7877dc4
Assert dependence graphs only via the dot files; drop the word artefact.
rolyp Jul 21, 2026
24b9ff0
Derivation-shaped markings; instrument by pullback then instrument-d.
rolyp Jul 21, 2026
8d49e2c
Node paths, blank and full overlays, mark-at/unmark-at.
rolyp Jul 21, 2026
030644f
Untyped paths; examples as navigation sequences over overlays.
rolyp Jul 21, 2026
3b8bd83
Remove term markings and the pullback.
rolyp Jul 21, 2026
4bc654c
Rename marking vocabulary to visibility.
rolyp Jul 21, 2026
7569610
Add explicit dependence-graph module (adjacency list, no block decodi…
rolyp Jul 22, 2026
95ee15d
Rewrite instrument onto the explicit dependence graph; update consumers.
rolyp Jul 22, 2026
4e804c5
Fix edge-rel coordinate order (source, target) in the dot rendering.
rolyp Jul 22, 2026
e7424bd
Introduce named tensor (+); build the graph bottom-up via tensor and …
rolyp Jul 22, 2026
10e078e
Tensor uses standard notation: rename the operator to (x).
rolyp Jul 22, 2026
2da8bd7
Remove the instrument and dependence-graph prototypes
rolyp Jul 29, 2026
921742b
Drop the AD example tests, keeping Boolean dependency only
rolyp Jul 29, 2026
f94ce58
Add intrinsically typed paths of a derivation with width lookup
rolyp Jul 29, 2026
7839d21
Add derivation-indexed dependence graphs and the graph judgement
rolyp Jul 29, 2026
bbbe287
Use R for edge relations in the graph helpers
rolyp Jul 29, 2026
2599a25
Rename the root-edge helpers to edge; self-contained comments
rolyp Jul 29, 2026
371fa60
Enumerate the paths of a derivation in evaluation order
rolyp Jul 29, 2026
e8e4356
Decide first-order types; FO(D) as the revealable paths
rolyp Jul 29, 2026
b44a015
Add hiding and the first-order dependence graph
rolyp Jul 29, 2026
b6d4ada
Add adjacency and regions
rolyp Jul 29, 2026
20ebea5
Import Bool members directly rather than qualifying
rolyp Jul 29, 2026
05522cc
Add path equality and membership
rolyp Jul 29, 2026
74f3032
Add configurations, region summaries, and the initial configuration
rolyp Jul 29, 2026
03709cf
Add the visible graph of a configuration
rolyp Jul 29, 2026
486ae05
Import foldr, hiding the object-language one
rolyp Jul 29, 2026
39bed7f
Add the hide and reveal moves
rolyp Jul 29, 2026
d366319
Use copatterns for the moves
rolyp Jul 29, 2026
6027509
Test hide and reveal on a concrete run
rolyp Jul 29, 2026
6c18df1
Add derivation sizes and completion ranks
rolyp Jul 29, 2026
b70b0e9
Record parked metatheory in the README
rolyp Jul 29, 2026
3c0bdde
Exercise rewiring in the interaction test, replacing the pair run
rolyp Jul 29, 2026
c3e93a4
Add collapse with a concrete agreement check
rolyp Jul 29, 2026
25b153f
Start agreement: axiom rules
rolyp Jul 29, 2026
a1ccb8c
Factor the enumeration through interior, root first definitionally
rolyp Jul 29, 2026
ceb69da
Add root-sink and absorb lemmas; shrink axiom cases
rolyp Jul 29, 2026
56baf70
Add the embedding simulation for an inl premise
rolyp Jul 29, 2026
fabdc3d
Pare back the invariant comment
rolyp Jul 29, 2026
80dc35c
Rename the invariant to Embeds
rolyp Jul 29, 2026
223eebf
Prove agree-inl: collapsing inl collapses its premise
rolyp Jul 29, 2026
2470c6f
Use G for the composite graph in Embeds
rolyp Jul 29, 2026
4c59700
Condense the inl embedding via distrib-root
rolyp Jul 29, 2026
6c024b7
Name embedding fields by source and target
rolyp Jul 29, 2026
3a69084
Use Bool as a module synonym for Data.Bool
rolyp Jul 29, 2026
2473827
Prove agreement for all single-premise rules
rolyp Jul 29, 2026
c1cb916
Prove agree-pair via the two-phase embedding
rolyp Jul 29, 2026
e81484f
Use specialised composition congruences
rolyp Jul 29, 2026
e57752f
Factor step and base helpers; condense and reflow the case modules
rolyp Jul 29, 2026
6c07f46
Prove agreement for both case rules
rolyp Jul 29, 2026
d0716dc
Prove agree-app via the three-phase embedding
rolyp Jul 29, 2026
11abbcd
Prove agreement for the operand family, bop, and brel
rolyp Jul 29, 2026
a79bb24
Add M-family hiding and both collapses; path root tests
rolyp Jul 29, 2026
0fb1245
Add keep helpers and the fold-family lemma battery
rolyp Jul 29, 2026
cfae2ca
Add cast toolkit and leaf fold-action agreement
rolyp Jul 29, 2026
8d2eb14
Prove agreement for the injection fold actions
rolyp Jul 29, 2026
41ade3a
Prove agreement for the mu fold action through the width casts
rolyp Jul 29, 2026
e5036ad
Add composite step helpers; number premise derivations
rolyp Jul 29, 2026
8d348a2
Prove agreement for the pair fold action
rolyp Jul 29, 2026
8b300e2
Finish premise renaming across the fold-family lemmas
rolyp Jul 29, 2026
950b74b
Prove agreement for the recursion fold action
rolyp Jul 29, 2026
35987f3
Prove agreement for the fold rule
rolyp Jul 29, 2026
28fa1d1
Close the agreement theorem by mutual induction
rolyp Jul 29, 2026
29171a5
Record agreement as proved in the README
rolyp Jul 29, 2026
95ff85b
Uniform lemma and premise names across the graph development
rolyp Jul 29, 2026
546ebdc
Drop proof-tactics commentary from the README
rolyp Jul 30, 2026
d4cc70a
Drop the proofs section from the README
rolyp Jul 30, 2026
d76c8a4
Tidy line breaks in the fold-action modules
rolyp Jul 30, 2026
8d1b544
Prove the forward-edge lemma
rolyp Jul 30, 2026
133776f
Derive acyclicity from the forward-edge lemma
rolyp Jul 30, 2026
ba969c3
Hiding preserves the forward-edge property
rolyp Jul 30, 2026
cdf18ce
Move the non-zero inversion lemmas into two
rolyp Jul 30, 2026
df95bfe
Introduction forms and antisymmetry at I in two
rolyp Jul 30, 2026
590422b
Hiding two vertices of a forward graph commutes
rolyp Jul 30, 2026
f973e68
Hide-all is invariant under permutation of the hidden list
rolyp Jul 30, 2026
91502bb
Rename acyclicity to forward
rolyp Jul 30, 2026
9ad2aa8
Rename forward to topological-order
rolyp Jul 30, 2026
40c731a
Drop stale parked-agreement remark from the collapse comment
rolyp Jul 30, 2026
5046ce5
Expose entrywise congruence of hide-all
rolyp Jul 30, 2026
93225c6
Start maintenance: summaries are stable under region permutation
rolyp Jul 30, 2026
5e39de2
Region lists up to permutation and the regions congruence step
rolyp Jul 30, 2026
fa8326d
Order-independence of the regions computation
rolyp Jul 30, 2026
989cff3
Extract generic list lemmas into a list module
rolyp Jul 30, 2026
6c6971e
Unify the abstract hiding lemmas over one ranked vertex set
rolyp Jul 30, 2026
027567a
Hiding along an ascending list sums the paths through it
rolyp Jul 30, 2026
e5b7d75
Add the ascending path enumeration
rolyp Jul 30, 2026
439e375
Revert "Add the ascending path enumeration"
rolyp Jul 30, 2026
aeef6b1
Rename maintenance to moves
rolyp Jul 30, 2026
1faa949
State the Summarised invariant on configurations
rolyp Jul 30, 2026
14d702c
Partition recombination and permutation embeddings in list
rolyp Jul 30, 2026
0fe2e21
The initial configuration is correctly summarised
rolyp Jul 30, 2026
8410a0c
Partition preserves All and commutes with map
rolyp Jul 30, 2026
b141fa6
Factor the region step congruence out of regions-prep
rolyp Jul 30, 2026
5ff0ae3
Hiding a vertex merges the adjacent regions of the enlarged hidden set
rolyp Jul 30, 2026
c01a83e
Nested-search commutation and AllPairs partition lemmas
rolyp Jul 30, 2026
7c28c64
Apartness of regions and its preservation by merging
rolyp Jul 30, 2026
6ccce23
State the Summarised invariant with pairwise-apart regions
rolyp Jul 30, 2026
4d10e5b
Drop the region-permutation apparatus
rolyp Jul 30, 2026
d1623b2
Drop the filter and double-permutation lemmas
rolyp Jul 30, 2026
b786ab8
Equality-level join laws for Two
rolyp Jul 30, 2026
a0150ce
Join-algebra laws for hiding: increasing, inert summands, agreeing gr…
rolyp Jul 30, 2026
fece731
Membership and falseness extraction lemmas for any
rolyp Jul 30, 2026
7d6f15d
Path equality is reflexive
rolyp Jul 30, 2026
bb76ba9
A zero adjacency test means every entry is zero
rolyp Jul 30, 2026
58fb337
Zero rows and columns persist under hiding
rolyp Jul 30, 2026
d154194
Boolean membership lookup through All
rolyp Jul 30, 2026
cddf20f
Path equality is sound
rolyp Jul 30, 2026
b7f3577
Hiding a region inside a larger restriction adds its summary
rolyp Jul 30, 2026
781dac1
A region neither containing nor adjacent to a vertex has a blank summ…
rolyp Jul 30, 2026
13b6586
Hiding disjoint apart regions adds exactly their summaries
rolyp Jul 30, 2026
90e4ef2
Any-based extraction and map congruence lemmas
rolyp Jul 30, 2026
a4fce16
AllPairs map and zip
rolyp Jul 30, 2026
46fceca
Snoc form of summaries, block containment, and entrywise fold lemmas
rolyp Jul 30, 2026
e0a1f44
Expose the graph sum used by the hide move
rolyp Jul 30, 2026
604414c
The assembled graph hidden at p is the merged region's summary
rolyp Jul 30, 2026
99d9212
Replace moves-local Two-fold and refutation helpers with shared lemmas
rolyp Jul 30, 2026
078642f
Consolidate the ranked hiding module onto hide-algebra
rolyp Jul 30, 2026
c2361da
Prune unused acyclicity variants, hiding wrappers, and the path-sum c…
rolyp Jul 30, 2026
5dfb7c4
Promote the base-agreement lemma out of merged-summary
rolyp Jul 30, 2026
fbfe7fa
Inline single-use locals in base agreement and merged-summary
rolyp Jul 30, 2026
04cc95c
Rename opaque locals to follow existing conventions
rolyp Jul 30, 2026
3bba95f
The path enumeration is pairwise distinct
rolyp Jul 30, 2026
9252943
A failing path-equality test fails in the flipped order
rolyp Jul 30, 2026
d7c701c
Filter, append, and permutation transport for All and AllPairs
rolyp Jul 30, 2026
bb5110e
Stored regions of a summarised configuration are pairwise disjoint
rolyp Jul 30, 2026
8ee96cd
The hide move preserves correct summarisation
rolyp Jul 30, 2026
c411532
Expose the region split used by the reveal move
rolyp Jul 30, 2026
6f84c30
Membership survives un-filtering
rolyp Jul 30, 2026
5320763
Apartness is monotone under region inclusion
rolyp Jul 30, 2026
011f041
The reveal move preserves correct summarisation
rolyp Jul 30, 2026
e1386a9
The visible graph is the first-order entries joined with the hidden s…
rolyp Jul 30, 2026
7b20f5b
Reveal after hide restores the configuration's observable content
rolyp Jul 30, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,14 @@
*.out
*.fdb_latexmk
*.fls
*.loc
*.soc
*.pdf
*.zip
*.DS_Store
*.fdb_latexmk
*.fls

# Claude Code local state (memory, transcripts, and git worktrees it manages)
/.claude/
agda/_build/
13 changes: 12 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
.PHONY: main notes clean submit arXiv # otherwise confused by folders with the same name
.PHONY: main notes mu-types clean submit arXiv # otherwise confused by folders with the same name

default: main

main: main.pdf
notes: notes.pdf
mu-types: mu-types.pdf

# -out2dir unsupported on default Mac installation
LATEXMK_OPTS:=-output-format=pdf -outdir=_latex
Expand All @@ -18,6 +19,15 @@ main.pdf: main.tex $(MAIN_DEPS)
cp _latex/main.pdf .
@! grep -qE "LaTeX Warning: There were undefined references\.|natbib Warning: There were undefined citations\." _latex/main.log

MU_TYPES_DEPS:=$(wildcard mu-types/*.tex) $(wildcard fig/*.tex) macros.tex bib.bib

mu-types.pdf: mu-types.tex $(MU_TYPES_DEPS)
latexmk $(LATEXMK_OPTS) mu-types
cd _latex && bibtex mu-types
latexmk $(LATEXMK_OPTS) -g mu-types
cp _latex/mu-types.pdf .
@! grep -qE "LaTeX Warning: There were undefined references\.|natbib Warning: There were undefined citations\." _latex/mu-types.log

NOTES_DEPS:=$(wildcard notes/*.tex) $(wildcard fig/*.tex) macros.tex bib.bib

notes.pdf: notes.tex $(NOTES_DEPS)
Expand Down Expand Up @@ -66,3 +76,4 @@ clean:
rm -f suppl-submit.zip
rm -f arXiv.zip
rm -f notes.pdf
rm -f mu-types.pdf
34 changes: 33 additions & 1 deletion agda/src/approx-numbers.agda
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ open import categories using (HasTerminal; Category)

import fam

open import Data.Rational using (ℚ; _≤_; _⊔_; _⊓_; _+_; _-_; 0ℚ; -_; Positive; _*_; _÷_; NonZero)
open import Data.Rational using (ℚ; _≤_; _⊔_; _⊓_; _+_; _-_; 0ℚ; 1ℚ; -_; Positive; _*_; _÷_; NonZero)
open import Data.Rational.Properties
using (
≤-refl; ≤-trans; ⊓-glb; ⊔-lub; p⊓q≤p; p⊓q≤q; +-mono-≤; module ≤-Reasoning; +-comm; ≤-reflexive; +-assoc;
Expand Down Expand Up @@ -335,6 +335,20 @@ module Galois where
zero-mor .famf .transf _ ._⇒g_.left⊣right {tt} {< x >} .proj₂ _ = x .l≤q , x .q≤u
zero-mor .famf .natural e .right-eq .eqfun _ = (liftS ≤-refl , liftS ≤-refl) , liftS ≤-refl , liftS ≤-refl

one-mor : Fam.Mor 𝟙 ℚ-intv
one-mor .idxf .prop-setoid._⇒_.func _ = 1ℚ
one-mor .idxf .prop-setoid._⇒_.func-resp-≈ _ = liftS ≡-refl
one-mor .famf .transf _ ._⇒g_.right ._=>_.fun _ =
< record { lower = 1ℚ ; upper = 1ℚ ; l≤q = liftS ≤-refl ; q≤u = liftS ≤-refl } >
one-mor .famf .transf _ ._⇒g_.right ._=>_.mono _ = liftS ≤-refl , liftS ≤-refl
one-mor .famf .transf _ ._⇒g_.left ._=>_.fun _ = tt
one-mor .famf .transf _ ._⇒g_.left ._=>_.mono _ = tt
one-mor .famf .transf _ ._⇒g_.left⊣right {tt} {y} .proj₁ _ = tt
one-mor .famf .transf _ ._⇒g_.left⊣right {tt} {bottom} .proj₂ _ = tt
one-mor .famf .transf _ ._⇒g_.left⊣right {tt} {< x >} .proj₂ _ = x .l≤q , x .q≤u
one-mor .famf .natural e .right-eq .eqfun _ = (liftS ≤-refl , liftS ≤-refl) , liftS ≤-refl , liftS ≤-refl
one-mor .famf .natural e .left-eq .eqfun _ = tt , tt

------------------------------------------------------------------------------
-- Conjugate (forward) interpretation
module Conjugate where
Expand Down Expand Up @@ -628,6 +642,24 @@ module Conjugate where
zero-mor .famf .natural e ._≃c_.left-eq ._≃J_.eqfunc ._≃m_.eqfun bottom = tt , tt
zero-mor .famf .natural e ._≃c_.left-eq ._≃J_.eqfunc ._≃m_.eqfun < x > = tt , tt

one-mor : Fam.Mor 𝟙 ℚ-intv
one-mor .idxf .prop-setoid._⇒_.func _ = 1ℚ
one-mor .idxf .prop-setoid._⇒_.func-resp-≈ _ = liftS ≡-refl
one-mor .famf .transf _ ._⇒c_.right ._=>J_.func ._=>_.fun tt = bottom
one-mor .famf .transf _ ._⇒c_.right ._=>J_.func ._=>_.mono {tt} {tt} _ = tt
one-mor .famf .transf _ ._⇒c_.right ._=>J_.∨-preserving = tt
one-mor .famf .transf _ ._⇒c_.right ._=>J_.⊥-preserving = tt
one-mor .famf .transf _ ._⇒c_.left ._=>J_.func ._=>_.fun _ = tt
one-mor .famf .transf _ ._⇒c_.left ._=>J_.func ._=>_.mono _ = tt
one-mor .famf .transf _ ._⇒c_.left ._=>J_.∨-preserving = tt
one-mor .famf .transf _ ._⇒c_.left ._=>J_.⊥-preserving = tt
one-mor .famf .transf _ ._⇒c_.conjugate .proj₁ _ = tt
one-mor .famf .transf _ ._⇒c_.conjugate {x = tt} {y = bottom} .proj₂ _ = tt
one-mor .famf .transf _ ._⇒c_.conjugate {x = tt} {y = < _ >} .proj₂ _ = tt
one-mor .famf .natural e ._≃c_.right-eq ._≃J_.eqfunc ._≃m_.eqfun tt = tt , tt
one-mor .famf .natural e ._≃c_.left-eq ._≃J_.eqfunc ._≃m_.eqfun bottom = tt , tt
one-mor .famf .natural e ._≃c_.left-eq ._≃J_.eqfunc ._≃m_.eqfun < x > = tt , tt

add-mor : Fam.Mor (ℚ-intv ⊗ ℚ-intv) ℚ-intv
add-mor .idxf .prop-setoid._⇒_.func (q₁ , q₂) = q₁ + q₂
add-mor .idxf .prop-setoid._⇒_.func-resp-≈ (liftS ≡-refl , liftS ≡-refl) = liftS ≡-refl
Expand Down
2 changes: 1 addition & 1 deletion agda/src/cartesian-monoidal.agda
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ _×m_ = prod-m
×m-comp : ∀ {x₁ x₂ y₁ y₂ z₁ z₂}
(f₁ : y₁ ⇒ z₁) (f₂ : y₂ ⇒ z₂) (g₁ : x₁ ⇒ y₁) (g₂ : x₂ ⇒ y₂) →
((f₁ ∘ g₁) ×m (f₂ ∘ g₂)) ≈ ((f₁ ×m f₂) ∘ (g₁ ×m g₂))
×m-comp = pair-functorial
×m-comp = prod-m-comp

-- Associativity
×-assoc : ∀ {x y z} → ((x × y) × z) ⇒ (x × (y × z))
Expand Down
Loading