Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
257 commits
Select commit Hold shift + click to select a range
09fc443
Add Levi Lemma case 1
jefrai Sep 2, 2025
14e5ef8
Complete Levi Lemma
jefrai Sep 4, 2025
f1f7ace
Add interim comments
jefrai Sep 4, 2025
9a4f026
Rewrite definitions + proofs to use standard Lists
jefrai Sep 11, 2025
7e1a8d0
Add possible notation for dependency morphisms
jefrai Sep 11, 2025
29e2145
Add some dependency morphism results
jefrai Sep 15, 2025
fdd06fb
Reorganize project + Populate List.induction_right
richwill28 Sep 16, 2025
db33270
Fix CI for Lean
richwill28 Sep 16, 2025
e0328ea
Define list projection and cancellation + related lemmas
richwill28 Sep 16, 2025
a7ae6e8
Add dependency morphism uniqueness theorem
jefrai Sep 16, 2025
0a2fc20
Add more related lemmas + quality fixes
richwill28 Sep 17, 2025
30e5d65
Add some basic definitions + Define trace equivalence
richwill28 Sep 17, 2025
bad2ea9
Redefine trace equivalence without using ConGen.Rel
richwill28 Sep 17, 2025
607adb8
Make trace equivalence less verbose
richwill28 Sep 18, 2025
e1c7145
Introduce dependence graphs
jefrai Sep 18, 2025
ff8865e
Add dependence graph isomorphism + monoid
jefrai Sep 25, 2025
e550d82
Clean-up up to fact 1.9
yisiox Sep 29, 2025
0d7697c
Add infix notation for cancel_right
yisiox Sep 29, 2025
9721a76
Move singleton_cancel_right to Basic
yisiox Sep 29, 2025
6caf2ae
Shorten long theorem name
yisiox Sep 29, 2025
5d178f2
Add fact 1.10 on traces
yisiox Oct 1, 2025
bdfb373
Add up to fact 1.10 and clean up simp usage for efficiency
yisiox Oct 1, 2025
a5d7c66
Update to correctly state independency of strings
yisiox Oct 1, 2025
016c92a
Clean up proposition 1.3.3
yisiox Oct 1, 2025
3d8254f
Move lemma about right cancellation over concatenation to Basic.lean
yisiox Oct 1, 2025
b7e8864
Improve proof of equiv_of_length_two
yisiox Oct 1, 2025
1e2c25b
Complete case (1) of Levi's lemma for traces
yisiox Oct 2, 2025
250d440
Add dependence graph lemmas
jefrai Oct 2, 2025
27106de
Update naming and partially complete case (2) of Levi's lemma
yisiox Oct 6, 2025
5a4845a
Complete Levi's lemma
yisiox Oct 6, 2025
1fce49a
Move custom cancel right infix op definition to Basic.lean
yisiox Oct 6, 2025
79f505f
Clean-up minor details of Trace.lean
yisiox Oct 6, 2025
d538abe
Update style of inducedIndependency to match style guide of Lean4
yisiox Oct 7, 2025
ec950c7
Add the trace monoid
yisiox Oct 7, 2025
ea7ea9d
Add partial proof for existence of greatest common prefix
yisiox Oct 7, 2025
c224638
Clean-up minor details and complete exists gcp proof
yisiox Oct 8, 2025
2e203fa
Complete partially lemma about exists least common dominant
yisiox Oct 8, 2025
6023ee5
Shorten commute -> comm
yisiox Oct 8, 2025
5828f06
Rename independency -> indepedence
yisiox Oct 8, 2025
957f0ff
Add dependence graph inductive lemmas
jefrai Oct 8, 2025
a3fe733
Complete lcd existence proof
yisiox Oct 9, 2025
38a357e
Add alternative proof of exist_gcd and clean-up slightly
yisiox Oct 9, 2025
44176c7
Remove redundant symm use and clean-up slightly
yisiox Oct 9, 2025
7505fd8
Write parts of graph morphism surjectivity
jefrai Oct 9, 2025
e4a8003
Continue graph morphism surjectivity
jefrai Oct 14, 2025
52d6953
Continue graph morphism surjectivity again
jefrai Oct 15, 2025
236a116
Begin dependency morphism onto graph monoid
jefrai Oct 21, 2025
a5a8d59
Add theorem 1.3.9 on natural homomorphism is dependence morphism
yisiox Oct 22, 2025
204f66f
Fix up to 1.3.6
yisiox Oct 22, 2025
4fbf715
Complete lemma 1.3.7
yisiox Oct 22, 2025
de4b9d7
Complete 1.3.8 and clean-up slightly
yisiox Oct 23, 2025
733de77
Make naming of not equal consistent
yisiox Oct 23, 2025
687cc99
Init DependenceGraph.lean
yisiox Oct 23, 2025
24706bb
Add suspicious proposition 1.4.2
yisiox Oct 23, 2025
8fd427e
Fill graph dependency morphism properties 1, 2, 4
jefrai Oct 23, 2025
b968f45
Complete partially compose
yisiox Oct 23, 2025
9269b9d
Complete composition of d-graphs
yisiox Oct 26, 2025
b7edc0a
Label compose function as proof of 1.4.4 as well
yisiox Oct 26, 2025
6426f24
Complete proof that proposition 1.4.2 is wrong
yisiox Oct 27, 2025
b541f6c
Complete theorem 1.4.5 on G(D) is a monoid
yisiox Oct 27, 2025
940f75d
Remove unneeded newline
yisiox Oct 27, 2025
b47060a
Complete scaffolding for proposition 1.4.6
yisiox Oct 28, 2025
467c7ed
Complete proposition 1.4.6
yisiox Oct 28, 2025
1abc3fa
Add fromString lemmas and init proposition 1.4.7
yisiox Oct 28, 2025
2f95780
Complete up to A1 of dependence graph dependence morphism
yisiox Oct 28, 2025
beb4e19
Complete A2 of proposition 1.4.7
yisiox Oct 29, 2025
9e3dfbe
Add string cancellation / graph composition lemmas
jefrai Oct 30, 2025
a021ccf
Continue graph dependency morphism property 3
jefrai Oct 30, 2025
25f9fca
Clean-up and improve variable scoping
yisiox Nov 18, 2025
4083bf0
Improve variable scoping for DependenceGraph.lean
yisiox Nov 18, 2025
306035e
Complete property A4 in proposition 1.4.7
yisiox Nov 18, 2025
fcc36d7
Progress proposition 1.4.7
yisiox Nov 18, 2025
429af4c
Complete proof of proposition 1.4.7
yisiox Nov 18, 2025
e37bdb3
Complete proof of theorem 1.4.8
yisiox Nov 18, 2025
3f622e1
Change type of symbol Type* -> Type
yisiox Dec 1, 2025
b608e3f
Trace.lean: Fix linting checks
yisiox Dec 1, 2025
aaf89e8
DependenceGraph.lean: Fix linting checks
yisiox Dec 1, 2025
f4bfe8c
Basic.lean: Clean-up partially
yisiox Dec 1, 2025
50a18e4
Fix typo isomorphism -> isomorphic
yisiox Dec 3, 2025
3b27507
Init History.lean for section 1.5
yisiox Dec 5, 2025
46dbf67
Trace.lean: Fix minor style errors
yisiox Dec 7, 2025
c84921a
Complete proposition 1.5.2
yisiox Dec 11, 2025
1ef9988
Complete up to A1 of theorem 1.5.3
yisiox Dec 11, 2025
d0fba90
Complete theorem 1.5.3
yisiox Dec 12, 2025
d39fb0f
Complete theorem 1.5.4
yisiox Dec 12, 2025
74b8130
Format minor changes
yisiox Dec 12, 2025
e0247a7
Minor improvements to naming and tactics use
yisiox Dec 15, 2025
3877a61
Make minor improvements to naming and tactics use
yisiox Dec 15, 2025
c6d01ee
Merge branch 'ys-working' of github.com:focs-lab/trace-theory-lean in…
yisiox Dec 15, 2025
389a3bc
Merge branch 'main' into beta
yisiox Dec 15, 2025
8c2e58a
Add binary relation ~
yisiox Dec 18, 2025
8d95789
Complete binary relation ~
yisiox Dec 18, 2025
d1bf593
Trace.lean: Standardise newlines
yisiox Dec 18, 2025
9554c4b
Basic.lean: Clean up by using existing mathlib constructs
yisiox Dec 18, 2025
9d23645
Clean up cancelRight_append
yisiox Dec 18, 2025
3413683
Change cancelRight_append -> append_cancelRight
yisiox Dec 18, 2025
a640315
Update History.lean with new naming
yisiox Dec 18, 2025
25be497
Remove induction_right
yisiox Dec 18, 2025
c623451
Complete projection lemma
yisiox Dec 20, 2025
f2710fc
Fix dependence graph proofs after lemma renamed
yisiox Dec 20, 2025
93f9fd3
Remove TODO require ordered vertices
yisiox Dec 21, 2025
ebf4dfa
Merge branch 'ys-working' into beta
yisiox Jan 9, 2026
a2bf55b
Introduce Occurrence / 1.6 string definitions
jefrai Jan 11, 2026
abb29c7
Init Language.lean
yisiox Jan 19, 2026
a9b1070
Complete proof of characterization of LexNF
yisiox Jan 19, 2026
d2dce47
Remove unneeded angle brackets
yisiox Jan 19, 2026
04ac399
Language.lean: Make formatting changes
yisiox Jan 19, 2026
e5ce130
Update lexNf_of_factorCondition to not require classical logic
yisiox Jan 20, 2026
5b63780
Add Generalized Levi Lemma from PCT text
jefrai Jan 27, 2026
7625ac7
Init refactor
yisiox Jan 29, 2026
233ebe0
Add List utils file
yisiox Jan 29, 2026
7d88fb1
Remove breaking import
yisiox Jan 29, 2026
a60bd92
Remove unused attributes
yisiox Jan 29, 2026
0a70bc0
Rename indepedent -> Independent
yisiox Jan 29, 2026
3a9f9ee
Update attempt to prove that LexNF is regular
yisiox Jan 29, 2026
dafd4dd
Add missing implicit variable
yisiox Jan 30, 2026
2015c2e
Update attempt at proving LexNF is regular
yisiox Jan 30, 2026
2e5f562
Fix theorem broken by SubType update
yisiox Jan 30, 2026
d55731d
Update toolchain and manifest due to updating mathlib
yisiox Jan 30, 2026
ffab597
Add draft of Monoid Recognizability definitions + equivalence
jefrai Feb 3, 2026
a766b3a
Update proof that LexNF is regular
yisiox Feb 5, 2026
ee0a362
Init Computability helpers
yisiox Feb 5, 2026
65107f5
Add definitions for PCT Prop 4.1 :: (i) <-> (ii)
jefrai Feb 5, 2026
9085e24
Update proof that the language of only the empty string is regular
yisiox Feb 5, 2026
58a471e
Update attempt of construction of epsilon NFA
yisiox Feb 5, 2026
c237133
Remove unnecessary definition of star of independent letters
yisiox Feb 6, 2026
36599c8
Complete proof of closure of regular languages under concatenation
yisiox Feb 7, 2026
6b72aa5
Update proof that the singleton language is regular
yisiox Feb 8, 2026
a362101
Update DFA and EpsilonNFA namespacing
yisiox Feb 8, 2026
2462682
Update concat and kstar lemmas
yisiox Feb 8, 2026
36509dd
Complete proof that if x is in L(M)*, then x is in L(kstar(M))
yisiox Feb 8, 2026
4a7b922
Rename helper lemma for closure under Kleene star
yisiox Feb 8, 2026
8ad59b7
Complete proof that regular languages are closed under Kleene star
yisiox Feb 8, 2026
8e9741e
Add first direction of Kleene's theorem
yisiox Feb 8, 2026
02aaa9f
Clean up concat
yisiox Feb 8, 2026
ffad2e0
Clean up DFA section
yisiox Feb 8, 2026
42240d4
Clean up Kleene star section
yisiox Feb 9, 2026
b32e9e1
Add comments to function definitions in Computability.lean
yisiox Feb 9, 2026
08854cc
Sketch Prop 4.1 :: (i) -> (ii)
jefrai Feb 10, 2026
dfc6cea
Add decidability tags to DFA and NFA constructions
yisiox Feb 11, 2026
27b9289
Patch Prop 4.1 :: (i) -> (ii) hole
jefrai Feb 12, 2026
294432b
Update attempt of Kleene's theorem via Kleene's algorithm
yisiox Feb 12, 2026
d153f47
Add matches'_foldl_sum helper and progress Kleene's theorem
yisiox Feb 12, 2026
5aae34e
Fix variable naming of isRestrictedPath_iff_isPath
yisiox Feb 12, 2026
719f6dd
Update based on mathlib style
yisiox Feb 15, 2026
5605bfa
Update based on mathlib style
yisiox Feb 15, 2026
96ad93a
Progress proof of every regular language has a regular expression mat…
yisiox Feb 16, 2026
7e9ae57
Add proof of accepts_toRegex
yisiox Feb 16, 2026
ac4de22
Complete proof of Kleene's theorem epsilon NFA to regex direction
yisiox Feb 17, 2026
d41a6e5
Improve Kleene's Theorem by cleaning up and removing Classical
yisiox Feb 19, 2026
416a7d2
Refine IsRestrictedPath proofs
yisiox Feb 20, 2026
806a54c
Refine proof of correctness of toRegex further
yisiox Feb 21, 2026
4f788ca
Add Prop 4.1 :: (i) <-> (iv)
jefrai Feb 26, 2026
3b014cd
Computability.lean: Update to match mathlib PR version
yisiox Mar 6, 2026
8c38698
Init rank section for trace languages
yisiox Mar 7, 2026
2c7a3cd
Add lemma that interpreting a RatExp on Trace languages = interpretin…
jefrai Mar 8, 2026
f11951f
Add Ochmanski Theorem 4.1 (ii) => (iii)
jefrai Mar 9, 2026
729f051
Fix connectedness definition
jefrai Mar 9, 2026
3a32dee
Fix partial Theorem 4.1 (iii) => (iv)
jefrai Mar 11, 2026
747073f
Add Ochmanski Theorem 4.1 (iii) => (iv)
jefrai Mar 11, 2026
d2084c0
Improve lemmas
jefrai Mar 11, 2026
80914b6
Fix comments
jefrai Mar 11, 2026
e150e6a
Fix Theorem 4.1 (iii) => (iv)
jefrai Mar 11, 2026
222bc8c
Init refactor to use Con
yisiox Mar 12, 2026
3150d81
Merge branch 'ys-working' of github.com:focs-lab/trace-theory-lean in…
yisiox Mar 12, 2026
6c50f58
Cleanup lemmas
jefrai Mar 12, 2026
ca087f5
Add refactor tests and rename some symbols
yisiox Mar 12, 2026
dc2ddfd
Change equiv to eqv
yisiox Mar 12, 2026
b27047b
Prepare refactor
jefrai Mar 13, 2026
8f7ca7f
Merge remote-tracking branch 'origin/jeff-working' into ys-working
yisiox Mar 13, 2026
125a33f
Refactor files
jefrai Mar 13, 2026
82afb29
Move lemmas
jefrai Mar 13, 2026
7190aed
Clean RegularExpressions
jefrai Mar 13, 2026
194c0d4
Merge remote-tracking branch 'origin/jeff-working' into ys-working
yisiox Mar 13, 2026
01d0ad1
Progress merge and refactor
yisiox Mar 13, 2026
8300d76
Fix Ochmanski for refactor
jefrai Mar 13, 2026
b8ea195
Fix Myhill-Nerode and golf
yisiox Mar 13, 2026
4564c4e
Merge remote-tracking branch 'origin/ys-working' into jeff-working
jefrai Mar 13, 2026
8028563
Scratchwork for 4.1 (i) => (ii)
jefrai Mar 15, 2026
6f2cd08
Fix History.lean imports
yisiox Mar 16, 2026
ff63f0a
Delete refactor test file
yisiox Mar 16, 2026
8d4acdf
Fix everything up to Ochmanski.lean
yisiox Mar 16, 2026
3521f98
Golf ochmanski (ii)->(iii) and (iii)->(iv)
yisiox Mar 19, 2026
956b26f
Progress Ochmanski's Theorem
yisiox Mar 19, 2026
cb33e01
Delete duplicate helper lemma
yisiox Mar 19, 2026
e1b743f
Merge remote-tracking branch 'origin/ys-working' into jeff-working
jefrai Mar 19, 2026
e31bd55
Outline of Ochmanski (i) => (ii)
jefrai Mar 19, 2026
cd959e1
Sketch alternative for Ochmanski (i) => (ii)
jefrai Mar 19, 2026
0f58102
Add Hashiguchi's theorem
yisiox Mar 20, 2026
887c408
Merge remote-tracking branch 'origin/ys-working' into jeff-working
jefrai Mar 20, 2026
b331405
More Ochmanski (i) => (ii)
jefrai Mar 20, 2026
c3cc4d2
Complete proof that every trace has rep in LexNF
yisiox Mar 20, 2026
da29a4e
More Ochmanski (i) => (ii) 2
jefrai Mar 20, 2026
db0d45a
Add proof of concat of closed has rank at most one
yisiox Mar 20, 2026
16232bb
Add Ochmanski (i) => (ii) lemmas
jefrai Mar 20, 2026
b14784e
Add EpsMonoid for epsilon is recognizable
yisiox Mar 20, 2026
61feae8
Add Ochmanski (i) => (ii) lemmas 2
jefrai Mar 20, 2026
e85004e
Add epsilon and char are recognizable
yisiox Mar 21, 2026
423686c
Add union is recognizable
yisiox Mar 21, 2026
2774eb1
Add concat is recognizable
yisiox Mar 21, 2026
f9cf1ef
Init cstar is recognizable
yisiox Mar 21, 2026
f135196
Merge remote-tracking branch 'origin/ys-working' into jeff-working
jefrai Mar 24, 2026
b861b33
Add cstar is recognizable
yisiox Mar 24, 2026
0f0e41a
Progress star of closed and connected has finite rank
yisiox Mar 25, 2026
58f6629
Ochmanski (i) => (ii) fragments
jefrai Mar 26, 2026
6d9989f
Progress star of closed and connected has finite rank and fix rank
yisiox Mar 26, 2026
30b5958
Ochmanski (i) => (ii) fragments 2
jefrai Mar 26, 2026
bd90873
Complete star of closed and connected has finite rank
yisiox Mar 26, 2026
c74911a
Ochmanski (i) => (ii) fragments 3
jefrai Mar 26, 2026
34f4815
Merge remote-tracking branch 'origin/ys-working' into jeff-working
jefrai Mar 26, 2026
77c1fa8
Ochmanski (i) => (ii) fragments 4
jefrai Mar 26, 2026
f3077c5
Ochmanski (i) => (ii) fragments 5
jefrai Mar 26, 2026
8e84763
Finish Ochmanski (i) => (ii)
jefrai Mar 27, 2026
a0abba5
Merge remote-tracking branch 'origin/ys-working' into jeff-working
jefrai Mar 27, 2026
3a13887
Add iff about LexNF
yisiox Mar 27, 2026
5c4b89a
Clean Basic, Defs and List
yisiox Mar 27, 2026
f0f9fa7
Clean DependenceMorphism, DependenceGraph and add EdgeSubset
yisiox Mar 27, 2026
a9a8099
Clean History.lean
yisiox Mar 27, 2026
0077132
Clean Language and Occurrence, and update Basic
yisiox Mar 27, 2026
4e5a83b
Update namespacing for (in)dependences
yisiox Mar 28, 2026
eb08334
Clean up to Myhill-Nerode
yisiox Mar 28, 2026
f214c70
Squash clean up to Ochmanski's theorem
yisiox Mar 28, 2026
a3a7e08
Readd proof that trace equiv is equiv closure of swapping once
yisiox Mar 28, 2026
26aa45e
Merge branch 'ys-working' into beta
yisiox Mar 29, 2026
41089b2
Fix typo strcuture -> structure
yisiox Mar 31, 2026
51ad1ac
Replace <- with ←
yisiox Mar 31, 2026
e526d83
Format Language.lean, change lexNf -> lexNF
yisiox Mar 31, 2026
a9cf974
Update variable names in List.lean
yisiox Apr 1, 2026
70b6287
Update factoring proofs
yisiox Apr 1, 2026
fb6fc83
Init README.md
yisiox Apr 1, 2026
533d19b
Defs.lean: Update variable names
yisiox Apr 1, 2026
2042def
Basic.lean: Update variable names and clean up
yisiox Apr 1, 2026
4c6ac8c
DependenceMorphism.lean: Update variable names
yisiox Apr 1, 2026
cebb118
DependenceGraph.lean: Update comments
yisiox Apr 1, 2026
1236454
History.lean: Update variable names and proofs
yisiox Apr 1, 2026
501a101
Language.lean: Update formatting
yisiox Apr 1, 2026
7c7c983
RegularExpressions.lean: Clean up formatting
yisiox Apr 1, 2026
f278c5c
Make minor format updates
yisiox Apr 1, 2026
1c20e07
Merge branch 'ys-working' into beta
yisiox Apr 1, 2026
ab9fd7a
Fix critical error in finite rank proof
yisiox Apr 1, 2026
89e5412
Merge branch 'ys-working' into beta
yisiox Apr 1, 2026
9b6c51a
Try to prove Hashiguchi's theorem
yisiox Apr 4, 2026
ec32c3a
Add another doomed Hashiguchi attempt
yisiox Apr 5, 2026
ebd5be8
Complete Hashiguchi's theorem
yisiox Apr 5, 2026
19c7a9d
Clean up hashiguchi's theorem
yisiox Apr 6, 2026
1325bf1
Add comments for Hashiguchi.lean
yisiox Apr 6, 2026
0ac76b8
Update README.md
yisiox Apr 6, 2026
64fe9e7
Merge branch 'ys-working' into beta
yisiox Apr 6, 2026
43fefaf
Update REAMDE.md
yisiox Apr 9, 2026
ad7ca6e
Merge branch 'ys-working' into beta
yisiox Apr 9, 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
22 changes: 0 additions & 22 deletions .github/workflows/create-release.yml

This file was deleted.

9 changes: 2 additions & 7 deletions .github/workflows/lean_action_ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,12 @@ on:
pull_request:
workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read # Read access to repository contents
pages: write # Write access to GitHub Pages
id-token: write # Write access to ID tokens

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: leanprover/lean-action@v1
- uses: leanprover-community/docgen-action@v1
with:
lake-package-directory: TraceTheory
41 changes: 0 additions & 41 deletions .github/workflows/update.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1 @@
/.lake
/*.pdf
45 changes: 36 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,40 @@
# trace-theory-lean
# Trace Theory Lean

## GitHub configuration
This repository contains a formalization of Mazurkiewicz trace theory in the Lean theorem prover.

To set up your new GitHub repository, follow these steps:
## Structure

* Under your repository name, click **Settings**.
* In the **Actions** section of the sidebar, click "General".
* Check the box **Allow GitHub Actions to create and approve pull requests**.
* Click the **Pages** section of the settings sidebar.
* In the **Source** dropdown menu, select "GitHub Actions".
### Core
- `Defs.lean` contains fundamental definitions for traces.
- `Basic.lean` contains basic properties of the algebra of traces.
- `DependenceMorphism.lean` provides a way to show isomorphism to the algebra of traces via dependence morphisms.

After following the steps above, you can remove this section from the README file.
### Isomorphic Algebras
- `DependenceGraph.lean` contains a definition of the algebra of dependence graphs and proof of its isomorphism to traces.
- `Histories.lean` contains a definition of the algebra of histories and proof of its isomorphism to traces.

### Ochmański's Theorem
- `Language.lean` contains basic definitions and lemmas for trace languages.
- `MyhillNerode.lean` supplies a proof of the Myhill-Nerode theorem in the context of monoids.
- `Hashiguchi.lean` contains a proof of Hashiguchi's theorem on recognizable trace closures.
- `RegularExpressions.lean` reinterprets mathlib4's `RegularExpression` on traces.
- `Ochmanski.lean` contains the proof of Ochmański's theorem on recognizable trace languages and lemmas leading up to it.

### Misc
- `List.lean` contains misc. definitions and lemmas for `List` (string) manipulation.
- `Occurrence.lean` formalizes ordering of symbol occurrences.
- `EdgeSubset.lean` is a proof of the negation of a claim in The Book of Traces (Proposition 1.4.2).
- `Computability.lean` supplies a full proof of Kleene's theorem together with mathlib4.

## Naming Convention

General guideline:

- `a, b, c, d, e` for symbols.
- `i, j, k` for indices.
- `n, m` for sizes.
- `u, v, w, x, y, z` for strings, `x', x''` or `x₁, x₂` or `p, q, r` for factoring.
- `s, t, u, v` for traces or monoid elements.
- `S` for (subsets of) alphabets.
- `X` for word (string) languages.
- `T` for trace langauges.
1 change: 1 addition & 0 deletions TraceTheory/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/.lake
4 changes: 4 additions & 0 deletions TraceTheory/TraceTheory.lean
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
import TraceTheory.DependenceGraph
import TraceTheory.History
import TraceTheory.Occurrence
import TraceTheory.Ochmanski
Loading
Loading