summaryrefslogtreecommitdiff
path: root/test/golden
diff options
context:
space:
mode:
authoradelon <22380201+adelon@users.noreply.github.com>2024-02-10 02:22:14 +0100
committeradelon <22380201+adelon@users.noreply.github.com>2024-02-10 02:22:14 +0100
commit442d732696ad431b84f6e5c72b6ee785be4fd968 (patch)
treeb476f395e7e91d67bacb6758bc84914b8711593f /test/golden
Initial commit
Diffstat (limited to 'test/golden')
-rw-r--r--test/golden/abbr/encoding tasks.golden26
-rw-r--r--test/golden/abbr/generating tasks.golden836
-rw-r--r--test/golden/abbr/glossing.golden384
-rw-r--r--test/golden/abbr/parsing.golden408
-rw-r--r--test/golden/abbr/scanning.golden19
-rw-r--r--test/golden/abbr/tokenizing.golden164
-rw-r--r--test/golden/abbr/verification.golden1
-rw-r--r--test/golden/byRef/encoding tasks.golden22
-rw-r--r--test/golden/byRef/generating tasks.golden352
-rw-r--r--test/golden/byRef/glossing.golden155
-rw-r--r--test/golden/byRef/parsing.golden168
-rw-r--r--test/golden/byRef/scanning.golden1
-rw-r--r--test/golden/byRef/tokenizing.golden71
-rw-r--r--test/golden/byRef/verification.golden1
-rw-r--r--test/golden/calc/encoding tasks.golden30
-rw-r--r--test/golden/calc/generating tasks.golden464
-rw-r--r--test/golden/calc/glossing.golden160
-rw-r--r--test/golden/calc/parsing.golden174
-rw-r--r--test/golden/calc/scanning.golden1
-rw-r--r--test/golden/calc/tokenizing.golden71
-rw-r--r--test/golden/calc/verification.golden1
-rw-r--r--test/golden/coord/encoding tasks.golden41
-rw-r--r--test/golden/coord/generating tasks.golden1968
-rw-r--r--test/golden/coord/glossing.golden437
-rw-r--r--test/golden/coord/parsing.golden367
-rw-r--r--test/golden/coord/scanning.golden16
-rw-r--r--test/golden/coord/tokenizing.golden150
-rw-r--r--test/golden/coord/verification.golden1
-rw-r--r--test/golden/finite-set-terms/encoding tasks.golden3
-rw-r--r--test/golden/finite-set-terms/generating tasks.golden165
-rw-r--r--test/golden/finite-set-terms/glossing.golden135
-rw-r--r--test/golden/finite-set-terms/parsing.golden124
-rw-r--r--test/golden/finite-set-terms/scanning.golden6
-rw-r--r--test/golden/finite-set-terms/tokenizing.golden48
-rw-r--r--test/golden/finite-set-terms/verification.golden1
-rw-r--r--test/golden/formula/encoding tasks.golden4
-rw-r--r--test/golden/formula/generating tasks.golden108
-rw-r--r--test/golden/formula/glossing.golden79
-rw-r--r--test/golden/formula/parsing.golden76
-rw-r--r--test/golden/formula/scanning.golden1
-rw-r--r--test/golden/formula/tokenizing.golden33
-rw-r--r--test/golden/formula/verification.golden1
-rw-r--r--test/golden/geometry/encoding tasks.golden109
-rw-r--r--test/golden/geometry/generating tasks.golden14419
-rw-r--r--test/golden/geometry/glossing.golden2187
-rw-r--r--test/golden/geometry/parsing.golden1198
-rw-r--r--test/golden/geometry/scanning.golden15
-rw-r--r--test/golden/geometry/tokenizing.golden975
-rw-r--r--test/golden/geometry/verification.golden1
-rw-r--r--test/golden/indefinite-terms/encoding tasks.golden3
-rw-r--r--test/golden/indefinite-terms/generating tasks.golden13
-rw-r--r--test/golden/indefinite-terms/glossing.golden31
-rw-r--r--test/golden/indefinite-terms/parsing.golden81
-rw-r--r--test/golden/indefinite-terms/scanning.golden1
-rw-r--r--test/golden/indefinite-terms/tokenizing.golden19
-rw-r--r--test/golden/indefinite-terms/verification.golden1
-rw-r--r--test/golden/inductive/encoding tasks.golden170
-rw-r--r--test/golden/inductive/generating tasks.golden8965
-rw-r--r--test/golden/inductive/glossing.golden1136
-rw-r--r--test/golden/inductive/parsing.golden1076
-rw-r--r--test/golden/inductive/scanning.golden92
-rw-r--r--test/golden/inductive/tokenizing.golden514
-rw-r--r--test/golden/inductive/verification.golden1
-rw-r--r--test/golden/no-reflexive-set/encoding tasks.golden2
-rw-r--r--test/golden/no-reflexive-set/generating tasks.golden64
-rw-r--r--test/golden/no-reflexive-set/glossing.golden43
-rw-r--r--test/golden/no-reflexive-set/parsing.golden54
-rw-r--r--test/golden/no-reflexive-set/scanning.golden1
-rw-r--r--test/golden/no-reflexive-set/tokenizing.golden29
-rw-r--r--test/golden/no-reflexive-set/verification.golden1
-rw-r--r--test/golden/proofassume/encoding tasks.golden17
-rw-r--r--test/golden/proofassume/generating tasks.golden261
-rw-r--r--test/golden/proofassume/glossing.golden171
-rw-r--r--test/golden/proofassume/parsing.golden201
-rw-r--r--test/golden/proofassume/scanning.golden1
-rw-r--r--test/golden/proofassume/tokenizing.golden80
-rw-r--r--test/golden/proofassume/verification.golden1
-rw-r--r--test/golden/proofdefinefunction/encoding tasks.golden9
-rw-r--r--test/golden/proofdefinefunction/generating tasks.golden332
-rw-r--r--test/golden/proofdefinefunction/glossing.golden163
-rw-r--r--test/golden/proofdefinefunction/parsing.golden184
-rw-r--r--test/golden/proofdefinefunction/scanning.golden30
-rw-r--r--test/golden/proofdefinefunction/tokenizing.golden94
-rw-r--r--test/golden/proofdefinefunction/verification.golden1
-rw-r--r--test/golden/prooffix/encoding tasks.golden4
-rw-r--r--test/golden/prooffix/generating tasks.golden48
-rw-r--r--test/golden/prooffix/glossing.golden55
-rw-r--r--test/golden/prooffix/parsing.golden56
-rw-r--r--test/golden/prooffix/scanning.golden1
-rw-r--r--test/golden/prooffix/tokenizing.golden31
-rw-r--r--test/golden/prooffix/verification.golden1
-rw-r--r--test/golden/relation-notation/encoding tasks.golden1
-rw-r--r--test/golden/relation-notation/generating tasks.golden61
-rw-r--r--test/golden/relation-notation/glossing.golden67
-rw-r--r--test/golden/relation-notation/parsing.golden47
-rw-r--r--test/golden/relation-notation/scanning.golden1
-rw-r--r--test/golden/relation-notation/tokenizing.golden24
-rw-r--r--test/golden/relation-notation/verification.golden1
-rw-r--r--test/golden/replace/encoding tasks.golden17
-rw-r--r--test/golden/replace/generating tasks.golden1378
-rw-r--r--test/golden/replace/glossing.golden350
-rw-r--r--test/golden/replace/parsing.golden304
-rw-r--r--test/golden/replace/scanning.golden21
-rw-r--r--test/golden/replace/tokenizing.golden129
-rw-r--r--test/golden/replace/verification.golden1
-rw-r--r--test/golden/russell/encoding tasks.golden24
-rw-r--r--test/golden/russell/generating tasks.golden769
-rw-r--r--test/golden/russell/glossing.golden155
-rw-r--r--test/golden/russell/parsing.golden198
-rw-r--r--test/golden/russell/scanning.golden6
-rw-r--r--test/golden/russell/tokenizing.golden80
-rw-r--r--test/golden/russell/verification.golden1
-rw-r--r--test/golden/separation/encoding tasks.golden1
-rw-r--r--test/golden/separation/generating tasks.golden65
-rw-r--r--test/golden/separation/glossing.golden40
-rw-r--r--test/golden/separation/parsing.golden44
-rw-r--r--test/golden/separation/scanning.golden1
-rw-r--r--test/golden/separation/tokenizing.golden18
-rw-r--r--test/golden/separation/verification.golden1
-rw-r--r--test/golden/union/encoding tasks.golden21
-rw-r--r--test/golden/union/generating tasks.golden1335
-rw-r--r--test/golden/union/glossing.golden456
-rw-r--r--test/golden/union/parsing.golden406
-rw-r--r--test/golden/union/scanning.golden1
-rw-r--r--test/golden/union/tokenizing.golden168
-rw-r--r--test/golden/union/verification.golden1
126 files changed, 46408 insertions, 0 deletions
diff --git a/test/golden/abbr/encoding tasks.golden b/test/golden/abbr/encoding tasks.golden
new file mode 100644
index 0000000..18ba749
--- /dev/null
+++ b/test/golden/abbr/encoding tasks.golden
@@ -0,0 +1,26 @@
+fof(dummy_abbr_test_adj,conjecture,~?[Xy]:elem(Xy,fx)=>~?[Xy]:elem(Xy,fx)).
+------------------
+fof(dummy_abbr_test_noun,conjecture,fx=fx).
+fof(dummy_abbr_test_adj,axiom,![Xx]:(~?[Xy]:elem(Xy,Xx)=>~?[Xy]:elem(Xy,Xx))).
+------------------
+fof(dummy_abbr_test_verb,conjecture,fx=fy=>fx=fy).
+fof(dummy_abbr_test_noun,axiom,![Xx]:Xx=Xx).
+fof(dummy_abbr_test_adj,axiom,![Xx]:(~?[Xy]:elem(Xy,Xx)=>~?[Xy]:elem(Xy,Xx))).
+------------------
+fof(abbr_test_notin,conjecture,~elem(fx,fy)=>~elem(fx,fy)).
+fof(dummy_abbr_test_verb,axiom,![Xx,Xy]:(Xx=Xy=>Xx=Xy)).
+fof(dummy_abbr_test_noun,axiom,![Xx]:Xx=Xx).
+fof(dummy_abbr_test_adj,axiom,![Xx]:(~?[Xy]:elem(Xy,Xx)=>~?[Xy]:elem(Xy,Xx))).
+------------------
+fof(abbr_test_elementof_is_in,conjecture,elem(fx,fy)=>elem(fx,fy)).
+fof(abbr_test_notin,axiom,![Xx,Xy]:(~elem(Xx,Xy)=>~elem(Xx,Xy))).
+fof(dummy_abbr_test_verb,axiom,![Xx,Xy]:(Xx=Xy=>Xx=Xy)).
+fof(dummy_abbr_test_noun,axiom,![Xx]:Xx=Xx).
+fof(dummy_abbr_test_adj,axiom,![Xx]:(~?[Xy]:elem(Xy,Xx)=>~?[Xy]:elem(Xy,Xx))).
+------------------
+fof(abbr_test_equals_is_eq,conjecture,fx=fy=>fx=fy).
+fof(abbr_test_elementof_is_in,axiom,![Xx,Xy]:(elem(Xx,Xy)=>elem(Xx,Xy))).
+fof(abbr_test_notin,axiom,![Xx,Xy]:(~elem(Xx,Xy)=>~elem(Xx,Xy))).
+fof(dummy_abbr_test_verb,axiom,![Xx,Xy]:(Xx=Xy=>Xx=Xy)).
+fof(dummy_abbr_test_noun,axiom,![Xx]:Xx=Xx).
+fof(dummy_abbr_test_adj,axiom,![Xx]:(~?[Xy]:elem(Xy,Xx)=>~?[Xy]:elem(Xy,Xx))). \ No newline at end of file
diff --git a/test/golden/abbr/generating tasks.golden b/test/golden/abbr/generating tasks.golden
new file mode 100644
index 0000000..397fafe
--- /dev/null
+++ b/test/golden/abbr/generating tasks.golden
@@ -0,0 +1,836 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses = []
+ , taskConjectureLabel = Marker "dummy_abbr_test_adj"
+ , taskConjecture = Connected Implication
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "x" )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "x" )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "dummy_abbr_test_adj"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "dummy_abbr_test_noun"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "dummy_abbr_test_noun"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "dummy_abbr_test_adj"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "dummy_abbr_test_verb"
+ , taskConjecture = Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "dummy_abbr_test_verb"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "dummy_abbr_test_noun"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "dummy_abbr_test_adj"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "abbr_test_notin"
+ , taskConjecture = Connected Implication
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "abbr_test_notin"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "dummy_abbr_test_verb"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "dummy_abbr_test_noun"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "dummy_abbr_test_adj"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "abbr_test_elementof_is_in"
+ , taskConjecture = Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "abbr_test_elementof_is_in"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "abbr_test_notin"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "dummy_abbr_test_verb"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "dummy_abbr_test_noun"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "dummy_abbr_test_adj"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "abbr_test_equals_is_eq"
+ , taskConjecture = Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ }
+] \ No newline at end of file
diff --git a/test/golden/abbr/glossing.golden b/test/golden/abbr/glossing.golden
new file mode 100644
index 0000000..152fbe1
--- /dev/null
+++ b/test/golden/abbr/glossing.golden
@@ -0,0 +1,384 @@
+[ BlockAbbr
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "empty" )
+ ( Abbreviation
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "empty" )
+ ]
+ )
+ )
+ ( Scope
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B 0 )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "dummy_abbr_test_adj" )
+ ( Lemma []
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "empty" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "empty" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ )
+ )
+, BlockAbbr
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 11
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "function" )
+ ( Abbreviation
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "function" )
+ ]
+ , pl =
+ [ Just
+ ( Word "functions" )
+ ]
+ }
+ )
+ )
+ )
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B 0 )
+ , TermVar
+ ( B 0 )
+ ]
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 15
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "dummy_abbr_test_noun" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "function" )
+ ]
+ , pl =
+ [ Just
+ ( Word "functions" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ )
+, BlockAbbr
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 21
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "converges" )
+ ( Abbreviation
+ ( SymbolPredicate
+ ( PredicateVerb
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "converges" )
+ , Just
+ ( Word "to" )
+ , Nothing
+ ]
+ , pl =
+ [ Just
+ ( Word "converge" )
+ , Just
+ ( Word "to" )
+ , Nothing
+ ]
+ }
+ )
+ )
+ )
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B 0 )
+ , TermVar
+ ( B 1 )
+ ]
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 25
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "dummy_abbr_test_verb" )
+ ( Lemma []
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateVerb
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "converges" )
+ , Just
+ ( Word "to" )
+ , Nothing
+ ]
+ , pl =
+ [ Just
+ ( Word "converge" )
+ , Just
+ ( Word "to" )
+ , Nothing
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 31
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "abbr_test_notin" )
+ ( Lemma []
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "notin" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 37
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "abbr_test_elementof_is_in" )
+ ( Lemma []
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "element" )
+ , Just
+ ( Word "of" )
+ , Nothing
+ ]
+ , pl =
+ [ Just
+ ( Word "elements" )
+ , Just
+ ( Word "of" )
+ , Nothing
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 43
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "abbr_test_equals_is_eq" )
+ ( Lemma []
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateVerb
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "equals" )
+ , Nothing
+ ]
+ , pl =
+ [ Just
+ ( Word "equal" )
+ , Nothing
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/abbr/parsing.golden b/test/golden/abbr/parsing.golden
new file mode 100644
index 0000000..bad58c3
--- /dev/null
+++ b/test/golden/abbr/parsing.golden
@@ -0,0 +1,408 @@
+[ BlockAbbr
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "empty" )
+ ( AbbreviationAdj
+ ( NamedVar "x" )
+ ( Adj
+ [ Just
+ ( Word "empty" )
+ ] []
+ )
+ ( StmtNeg
+ ( SymbolicQuantified Existentially
+ ( NamedVar "y" :| [] ) Unbounded Nothing
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "dummy_abbr_test_adj" )
+ ( Lemma []
+ ( StmtConnected Implication
+ ( StmtVerbPhrase
+ ( TermExpr
+ ( ExprVar
+ ( NamedVar "x" )
+ ) :| []
+ )
+ ( VPAdj
+ ( Adj
+ [ Just
+ ( Word "empty" )
+ ] [] :| []
+ )
+ )
+ )
+ ( StmtVerbPhrase
+ ( TermExpr
+ ( ExprVar
+ ( NamedVar "x" )
+ ) :| []
+ )
+ ( VPAdj
+ ( Adj
+ [ Just
+ ( Word "empty" )
+ ] [] :| []
+ )
+ )
+ )
+ )
+ )
+, BlockAbbr
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 11
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "function" )
+ ( AbbreviationNoun
+ ( NamedVar "x" )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "function" )
+ ]
+ , pl =
+ [ Just
+ ( Word "functions" )
+ ]
+ }
+ ) []
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 15
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "dummy_abbr_test_noun" )
+ ( Lemma []
+ ( StmtNoun
+ ( TermExpr
+ ( ExprVar
+ ( NamedVar "x" )
+ )
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "function" )
+ ]
+ , pl =
+ [ Just
+ ( Word "functions" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ )
+ )
+, BlockAbbr
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 21
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "converges" )
+ ( AbbreviationVerb
+ ( NamedVar "x" )
+ ( Verb
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "converges" )
+ , Just
+ ( Word "to" )
+ , Nothing
+ ]
+ , pl =
+ [ Just
+ ( Word "converge" )
+ , Just
+ ( Word "to" )
+ , Nothing
+ ]
+ }
+ )
+ [ NamedVar "y" ]
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 25
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "dummy_abbr_test_verb" )
+ ( Lemma []
+ ( StmtConnected Implication
+ ( StmtVerbPhrase
+ ( TermExpr
+ ( ExprVar
+ ( NamedVar "x" )
+ ) :| []
+ )
+ ( VPVerb
+ ( Verb
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "converges" )
+ , Just
+ ( Word "to" )
+ , Nothing
+ ]
+ , pl =
+ [ Just
+ ( Word "converge" )
+ , Just
+ ( Word "to" )
+ , Nothing
+ ]
+ }
+ )
+ [ TermExpr
+ ( ExprVar
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 31
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "abbr_test_notin" )
+ ( Lemma []
+ ( StmtConnected Implication
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "notin" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Negative
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 37
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "abbr_test_elementof_is_in" )
+ ( Lemma []
+ ( StmtConnected Implication
+ ( StmtNoun
+ ( TermExpr
+ ( ExprVar
+ ( NamedVar "x" )
+ )
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "element" )
+ , Just
+ ( Word "of" )
+ , Nothing
+ ]
+ , pl =
+ [ Just
+ ( Word "elements" )
+ , Just
+ ( Word "of" )
+ , Nothing
+ ]
+ }
+ )
+ [ TermExpr
+ ( ExprVar
+ ( NamedVar "y" )
+ )
+ ]
+ ) ( Nothing ) ( [] ) ( Nothing )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/abbr.tex"
+ , sourceLine = Pos 43
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "abbr_test_equals_is_eq" )
+ ( Lemma []
+ ( StmtConnected Implication
+ ( StmtVerbPhrase
+ ( TermExpr
+ ( ExprVar
+ ( NamedVar "x" )
+ ) :| []
+ )
+ ( VPVerb
+ ( Verb
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "equals" )
+ , Nothing
+ ]
+ , pl =
+ [ Just
+ ( Word "equal" )
+ , Nothing
+ ]
+ }
+ )
+ [ TermExpr
+ ( ExprVar
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/abbr/scanning.golden b/test/golden/abbr/scanning.golden
new file mode 100644
index 0000000..397e257
--- /dev/null
+++ b/test/golden/abbr/scanning.golden
@@ -0,0 +1,19 @@
+[ ScanAdj
+ [ Just
+ ( Word "empty" )
+ ]
+ ( Marker "empty" )
+, ScanNoun
+ [ Just
+ ( Word "function" )
+ ]
+ ( Marker "function" )
+, ScanVerb
+ [ Just
+ ( Word "converges" )
+ , Just
+ ( Word "to" )
+ , Nothing
+ ]
+ ( Marker "converges" )
+] \ No newline at end of file
diff --git a/test/golden/abbr/tokenizing.golden b/test/golden/abbr/tokenizing.golden
new file mode 100644
index 0000000..8da4b07
--- /dev/null
+++ b/test/golden/abbr/tokenizing.golden
@@ -0,0 +1,164 @@
+[ BeginEnv "abbreviation"
+, Label "empty"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "is"
+, Word "empty"
+, Word "iff"
+, Word "there"
+, Word "exists"
+, Word "no"
+, BeginEnv "math"
+, Variable "y"
+, EndEnv "math"
+, Word "such"
+, Word "that"
+, BeginEnv "math"
+, Variable "y"
+, Command "in"
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "abbreviation"
+, BeginEnv "proposition"
+, Label "dummy_abbr_test_adj"
+, Word "if"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "is"
+, Word "empty"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "is"
+, Word "empty"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "abbreviation"
+, Label "function"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "is"
+, Word "a"
+, Word "function"
+, Word "iff"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "abbreviation"
+, BeginEnv "proposition"
+, Label "dummy_abbr_test_noun"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "is"
+, Word "a"
+, Word "function"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "abbreviation"
+, Label "converges"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "converges"
+, Word "to"
+, BeginEnv "math"
+, Variable "y"
+, EndEnv "math"
+, Word "iff"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "abbreviation"
+, BeginEnv "proposition"
+, Label "dummy_abbr_test_verb"
+, Word "if"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "converges"
+, Word "to"
+, BeginEnv "math"
+, Variable "y"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proposition"
+, Label "abbr_test_notin"
+, Word "if"
+, BeginEnv "math"
+, Variable "x"
+, Command "notin"
+, Variable "y"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Command "not"
+, Command "in"
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proposition"
+, Label "abbr_test_elementof_is_in"
+, Word "if"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "is"
+, Word "an"
+, Word "element"
+, Word "of"
+, BeginEnv "math"
+, Variable "y"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proposition"
+, Label "abbr_test_equals_is_eq"
+, Word "if"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "equals"
+, BeginEnv "math"
+, Variable "y"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+] \ No newline at end of file
diff --git a/test/golden/abbr/verification.golden b/test/golden/abbr/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/abbr/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/byRef/encoding tasks.golden b/test/golden/byRef/encoding tasks.golden
new file mode 100644
index 0000000..75c9e78
--- /dev/null
+++ b/test/golden/byRef/encoding tasks.golden
@@ -0,0 +1,22 @@
+fof(first_proposition,conjecture,fa=fa).
+------------------
+fof(second_proposition,conjecture,fb=fb).
+fof(first_proposition,axiom,![Xa]:Xa=Xa).
+------------------
+fof(third_proposition,conjecture,fc=fc).
+fof(first_proposition,axiom,![Xa]:Xa=Xa).
+------------------
+fof(fourth_proposition,conjecture,![Xd]:Xd=Xd).
+fof(first_proposition,axiom,![Xa]:Xa=Xa).
+------------------
+fof(fourth_proposition,conjecture,fe=fe).
+fof(third_proposition,axiom,![Xc]:Xc=Xc).
+fof(second_proposition,axiom,![Xb]:Xb=Xb).
+fof(first_proposition,axiom,![Xa]:Xa=Xa).
+fof(fourth_proposition1,axiom,![Xd]:Xd=Xd).
+------------------
+fof(fifth_proposition,conjecture,ff=ff).
+fof(fourth_proposition,axiom,![Xe]:Xe=Xe).
+fof(third_proposition,axiom,![Xc]:Xc=Xc).
+fof(second_proposition,axiom,![Xb]:Xb=Xb).
+fof(first_proposition,axiom,![Xa]:Xa=Xa). \ No newline at end of file
diff --git a/test/golden/byRef/generating tasks.golden b/test/golden/byRef/generating tasks.golden
new file mode 100644
index 0000000..3187198
--- /dev/null
+++ b/test/golden/byRef/generating tasks.golden
@@ -0,0 +1,352 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses = []
+ , taskConjectureLabel = Marker "first_proposition"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "a" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "first_proposition"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "second_proposition"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "first_proposition"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "third_proposition"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "first_proposition"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "fourth_proposition"
+ , taskConjecture = Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "third_proposition"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "second_proposition"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "first_proposition"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fourth_proposition1"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "fourth_proposition"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "e" )
+ , TermVar
+ ( NamedVar "e" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "fourth_proposition"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "third_proposition"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "second_proposition"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "first_proposition"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "fifth_proposition"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "f" )
+ , TermVar
+ ( NamedVar "f" )
+ ]
+ }
+] \ No newline at end of file
diff --git a/test/golden/byRef/glossing.golden b/test/golden/byRef/glossing.golden
new file mode 100644
index 0000000..e213bc9
--- /dev/null
+++ b/test/golden/byRef/glossing.golden
@@ -0,0 +1,155 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "first_proposition" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "second_proposition" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 9
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "third_proposition" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 12
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Qed
+ ( JustificationRef
+ ( Marker "first_proposition" :| [] )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 16
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "fourth_proposition" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "e" )
+ , TermVar
+ ( NamedVar "e" )
+ ]
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 19
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Have
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ )
+ ( JustificationRef
+ ( Marker "first_proposition" :| [] )
+ ) ( Qed JustificationEmpty )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 23
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "fifth_proposition" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "f" )
+ , TermVar
+ ( NamedVar "f" )
+ ]
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/byRef/parsing.golden b/test/golden/byRef/parsing.golden
new file mode 100644
index 0000000..2cf91b6
--- /dev/null
+++ b/test/golden/byRef/parsing.golden
@@ -0,0 +1,168 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "first_proposition" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "second_proposition" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "b" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "b" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 9
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "third_proposition" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "c" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "c" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 12
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Qed
+ ( JustificationRef
+ ( Marker "first_proposition" :| [] )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 16
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "fourth_proposition" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "e" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "e" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 19
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Have Nothing
+ ( SymbolicQuantified Universally
+ ( NamedVar "d" :| [] ) Unbounded Nothing
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "d" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "d" ) :| []
+ )
+ )
+ )
+ )
+ )
+ ( JustificationRef
+ ( Marker "first_proposition" :| [] )
+ ) ( Qed JustificationEmpty )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/byRef.tex"
+ , sourceLine = Pos 23
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "fifth_proposition" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "f" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "f" ) :| []
+ )
+ )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/byRef/scanning.golden b/test/golden/byRef/scanning.golden
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/test/golden/byRef/scanning.golden
@@ -0,0 +1 @@
+[] \ No newline at end of file
diff --git a/test/golden/byRef/tokenizing.golden b/test/golden/byRef/tokenizing.golden
new file mode 100644
index 0000000..2ae8ea6
--- /dev/null
+++ b/test/golden/byRef/tokenizing.golden
@@ -0,0 +1,71 @@
+[ BeginEnv "proposition"
+, Label "first_proposition"
+, BeginEnv "math"
+, Variable "a"
+, Symbol "="
+, Variable "a"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proposition"
+, Label "second_proposition"
+, BeginEnv "math"
+, Variable "b"
+, Symbol "="
+, Variable "b"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proposition"
+, Label "third_proposition"
+, BeginEnv "math"
+, Variable "c"
+, Symbol "="
+, Variable "c"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proof"
+, Word "follows"
+, Word "by"
+, Ref
+ ( "first_proposition" :| [] )
+, Symbol "."
+, EndEnv "proof"
+, BeginEnv "proposition"
+, Label "fourth_proposition"
+, BeginEnv "math"
+, Variable "e"
+, Symbol "="
+, Variable "e"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proof"
+, Word "for"
+, Word "all"
+, BeginEnv "math"
+, Variable "d"
+, EndEnv "math"
+, Word "we"
+, Word "have"
+, BeginEnv "math"
+, Variable "d"
+, Symbol "="
+, Variable "d"
+, EndEnv "math"
+, Word "by"
+, Ref
+ ( "first_proposition" :| [] )
+, Symbol "."
+, EndEnv "proof"
+, BeginEnv "proposition"
+, Label "fifth_proposition"
+, BeginEnv "math"
+, Variable "f"
+, Symbol "="
+, Variable "f"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+] \ No newline at end of file
diff --git a/test/golden/byRef/verification.golden b/test/golden/byRef/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/byRef/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/calc/encoding tasks.golden b/test/golden/calc/encoding tasks.golden
new file mode 100644
index 0000000..d4104e6
--- /dev/null
+++ b/test/golden/calc/encoding tasks.golden
@@ -0,0 +1,30 @@
+fof(trivial,conjecture,fx=fx).
+------------------
+fof(irrelevant,conjecture,fz=fz).
+fof(trivial,axiom,![Xx]:Xx=Xx).
+------------------
+fof(alsotrivial,conjecture,fy=fy).
+fof(irrelevant,axiom,![Xz]:Xz=Xz).
+fof(trivial,axiom,![Xx]:Xx=Xx).
+------------------
+fof(alsotrivial,conjecture,fy=fy).
+fof(trivial,axiom,![Xx]:Xx=Xx).
+------------------
+fof(alsotrivial,conjecture,fy=fy).
+fof(irrelevant,axiom,![Xz]:Xz=Xz).
+fof(trivial,axiom,![Xx]:Xx=Xx).
+fof(alsotrivial1,axiom,fy=fy).
+------------------
+fof(trivial_biconditionals,conjecture,fy=fy).
+fof(alsotrivial,axiom,![Xy]:Xy=Xy).
+fof(irrelevant,axiom,![Xz]:Xz=Xz).
+fof(trivial,axiom,![Xx]:Xx=Xx).
+------------------
+fof(trivial_biconditionals,conjecture,fy=fy).
+fof(trivial,axiom,![Xx]:Xx=Xx).
+------------------
+fof(trivial_biconditionals,conjecture,fy=fy).
+fof(alsotrivial,axiom,![Xy]:Xy=Xy).
+fof(irrelevant,axiom,![Xz]:Xz=Xz).
+fof(trivial,axiom,![Xx]:Xx=Xx).
+fof(trivial_biconditionals1,axiom,fy=fy<=>fy=fy). \ No newline at end of file
diff --git a/test/golden/calc/generating tasks.golden b/test/golden/calc/generating tasks.golden
new file mode 100644
index 0000000..6bd518c
--- /dev/null
+++ b/test/golden/calc/generating tasks.golden
@@ -0,0 +1,464 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses = []
+ , taskConjectureLabel = Marker "trivial"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "trivial"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "irrelevant"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "z" )
+ , TermVar
+ ( NamedVar "z" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "irrelevant"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "trivial"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "alsotrivial"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "trivial"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "alsotrivial"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "irrelevant"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "trivial"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "alsotrivial1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "alsotrivial"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "alsotrivial"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "irrelevant"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "trivial"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "trivial_biconditionals"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "trivial"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "trivial_biconditionals"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "alsotrivial"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "irrelevant"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "trivial"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "trivial_biconditionals1"
+ , Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "trivial_biconditionals"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ }
+] \ No newline at end of file
diff --git a/test/golden/calc/glossing.golden b/test/golden/calc/glossing.golden
new file mode 100644
index 0000000..96366d4
--- /dev/null
+++ b/test/golden/calc/glossing.golden
@@ -0,0 +1,160 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/calc.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "trivial" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/calc.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "irrelevant" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "z" )
+ , TermVar
+ ( NamedVar "z" )
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/calc.tex"
+ , sourceLine = Pos 9
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "alsotrivial" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/calc.tex"
+ , sourceLine = Pos 12
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Calc
+ ( Equation
+ ( TermVar
+ ( NamedVar "y" )
+ )
+ (
+ ( TermVar
+ ( NamedVar "y" )
+ , JustificationEmpty
+ ) :|
+ [
+ ( TermVar
+ ( NamedVar "y" )
+ , JustificationRef
+ ( Marker "trivial" :| [] )
+ )
+ ]
+ )
+ ) ( Qed JustificationEmpty )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/calc.tex"
+ , sourceLine = Pos 22
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "trivial_biconditionals" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/calc.tex"
+ , sourceLine = Pos 25
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Calc
+ ( Biconditionals
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ (
+ ( PropositionalConstant IsTop
+ , JustificationEmpty
+ ) :|
+ [
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ , JustificationRef
+ ( Marker "trivial" :| [] )
+ )
+ ]
+ )
+ ) ( Qed JustificationEmpty )
+ )
+] \ No newline at end of file
diff --git a/test/golden/calc/parsing.golden b/test/golden/calc/parsing.golden
new file mode 100644
index 0000000..3d86683
--- /dev/null
+++ b/test/golden/calc/parsing.golden
@@ -0,0 +1,174 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/calc.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "trivial" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/calc.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "irrelevant" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "z" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "z" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/calc.tex"
+ , sourceLine = Pos 9
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "alsotrivial" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/calc.tex"
+ , sourceLine = Pos 12
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Calc
+ ( Equation
+ ( ExprVar
+ ( NamedVar "y" )
+ )
+ (
+ ( ExprVar
+ ( NamedVar "y" )
+ , JustificationEmpty
+ ) :|
+ [
+ ( ExprVar
+ ( NamedVar "y" )
+ , JustificationRef
+ ( Marker "trivial" :| [] )
+ )
+ ]
+ )
+ ) ( Qed JustificationEmpty )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/calc.tex"
+ , sourceLine = Pos 22
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "trivial_biconditionals" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/calc.tex"
+ , sourceLine = Pos 25
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Calc
+ ( Biconditionals
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ (
+ ( PropositionalConstant IsTop
+ , JustificationEmpty
+ ) :|
+ [
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ , JustificationRef
+ ( Marker "trivial" :| [] )
+ )
+ ]
+ )
+ ) ( Qed JustificationEmpty )
+ )
+] \ No newline at end of file
diff --git a/test/golden/calc/scanning.golden b/test/golden/calc/scanning.golden
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/test/golden/calc/scanning.golden
@@ -0,0 +1 @@
+[] \ No newline at end of file
diff --git a/test/golden/calc/tokenizing.golden b/test/golden/calc/tokenizing.golden
new file mode 100644
index 0000000..a99980c
--- /dev/null
+++ b/test/golden/calc/tokenizing.golden
@@ -0,0 +1,71 @@
+[ BeginEnv "proposition"
+, Label "trivial"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proposition"
+, Label "irrelevant"
+, BeginEnv "math"
+, Variable "z"
+, Symbol "="
+, Variable "z"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proposition"
+, Label "alsotrivial"
+, BeginEnv "math"
+, Variable "y"
+, Symbol "="
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proof"
+, BeginEnv "align*"
+, Variable "y"
+, Symbol "&="
+, Variable "y"
+, Symbol "&="
+, Variable "y"
+, BeginEnv "text"
+, Word "by"
+, Ref
+ ( "trivial" :| [] )
+, EndEnv "text"
+, EndEnv "align*"
+, EndEnv "proof"
+, BeginEnv "proposition"
+, Label "trivial_biconditionals"
+, BeginEnv "math"
+, Variable "y"
+, Symbol "="
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proof"
+, BeginEnv "align*"
+, Variable "y"
+, Symbol "="
+, Variable "y"
+, Symbol "&"
+, Command "iff"
+, Command "top"
+, Symbol "&"
+, Command "iff"
+, Variable "y"
+, Symbol "="
+, Variable "y"
+, BeginEnv "text"
+, Word "by"
+, Ref
+ ( "trivial" :| [] )
+, EndEnv "text"
+, EndEnv "align*"
+, EndEnv "proof"
+] \ No newline at end of file
diff --git a/test/golden/calc/verification.golden b/test/golden/calc/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/calc/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/coord/encoding tasks.golden b/test/golden/coord/encoding tasks.golden
new file mode 100644
index 0000000..3776aed
--- /dev/null
+++ b/test/golden/coord/encoding tasks.golden
@@ -0,0 +1,41 @@
+fof(nouns,conjecture,fx=fx).
+fof(baz,axiom,![Xx]:(baz(Xx)<=>Xx=Xx)).
+fof(foo,axiom,![Xx]:(foo(Xx)<=>Xx=Xx)).
+fof(bar,axiom,![Xx]:(bar(Xx)<=>Xx=Xx)).
+fof(nouns1,axiom,bar(fy)).
+fof(nouns2,axiom,bar(fx)).
+------------------
+fof(adj_nouns,conjecture,fx=fx).
+fof(nouns,axiom,![Xx,Xy]:((bar(Xx)&bar(Xy))=>Xx=Xx)).
+fof(baz,axiom,![Xx]:(baz(Xx)<=>Xx=Xx)).
+fof(foo,axiom,![Xx]:(foo(Xx)<=>Xx=Xx)).
+fof(bar,axiom,![Xx]:(bar(Xx)<=>Xx=Xx)).
+fof(adj_nouns1,axiom,bar(fy)&foo(fy)).
+fof(adj_nouns2,axiom,bar(fx)&foo(fx)).
+------------------
+fof(nouns_suchthat,conjecture,fx=fx).
+fof(adj_nouns,axiom,![Xx,Xy]:((bar(Xx)&foo(Xx)&bar(Xy)&foo(Xy))=>Xx=Xx)).
+fof(nouns,axiom,![Xx,Xy]:((bar(Xx)&bar(Xy))=>Xx=Xx)).
+fof(baz,axiom,![Xx]:(baz(Xx)<=>Xx=Xx)).
+fof(foo,axiom,![Xx]:(foo(Xx)<=>Xx=Xx)).
+fof(bar,axiom,![Xx]:(bar(Xx)<=>Xx=Xx)).
+fof(nouns_suchthat1,axiom,bar(fy)).
+fof(nouns_suchthat2,axiom,bar(fx)).
+fof(nouns_suchthat3,axiom,foo(fx)&baz(fy)).
+------------------
+fof(noun_verb,conjecture,fx=fy<=>(bar(fx)&fx=fy)).
+fof(nouns_suchthat,axiom,![Xx,Xy]:((foo(Xx)&baz(Xy)&bar(Xx)&bar(Xy))=>Xx=Xx)).
+fof(adj_nouns,axiom,![Xx,Xy]:((bar(Xx)&foo(Xx)&bar(Xy)&foo(Xy))=>Xx=Xx)).
+fof(nouns,axiom,![Xx,Xy]:((bar(Xx)&bar(Xy))=>Xx=Xx)).
+fof(baz,axiom,![Xx]:(baz(Xx)<=>Xx=Xx)).
+fof(foo,axiom,![Xx]:(foo(Xx)<=>Xx=Xx)).
+fof(bar,axiom,![Xx]:(bar(Xx)<=>Xx=Xx)).
+------------------
+fof(adjs,conjecture,foo(fx)&baz(fx)).
+fof(noun_verb,axiom,![Xx,Xy]:(Xx=Xy<=>(bar(Xx)&Xx=Xy))).
+fof(nouns_suchthat,axiom,![Xx,Xy]:((foo(Xx)&baz(Xy)&bar(Xx)&bar(Xy))=>Xx=Xx)).
+fof(adj_nouns,axiom,![Xx,Xy]:((bar(Xx)&foo(Xx)&bar(Xy)&foo(Xy))=>Xx=Xx)).
+fof(nouns,axiom,![Xx,Xy]:((bar(Xx)&bar(Xy))=>Xx=Xx)).
+fof(baz,axiom,![Xx]:(baz(Xx)<=>Xx=Xx)).
+fof(foo,axiom,![Xx]:(foo(Xx)<=>Xx=Xx)).
+fof(bar,axiom,![Xx]:(bar(Xx)<=>Xx=Xx)). \ No newline at end of file
diff --git a/test/golden/coord/generating tasks.golden b/test/golden/coord/generating tasks.golden
new file mode 100644
index 0000000..0e43d0e
--- /dev/null
+++ b/test/golden/coord/generating tasks.golden
@@ -0,0 +1,1968 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "baz"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "baz" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "foo"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "bar"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "nouns1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ,
+ ( Marker "nouns2"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "nouns"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "nouns"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "baz"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "baz" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "foo"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "bar"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "adj_nouns1"
+ , Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ ,
+ ( Marker "adj_nouns2"
+ , Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "adj_nouns"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "adj_nouns"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "nouns"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "baz"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "baz" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "foo"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "bar"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "nouns_suchthat1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ,
+ ( Marker "nouns_suchthat2"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ ,
+ ( Marker "nouns_suchthat3"
+ , Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "baz" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "nouns_suchthat"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "nouns_suchthat"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "baz" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "adj_nouns"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "nouns"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "baz"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "baz" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "foo"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "bar"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "noun_verb"
+ , taskConjecture = Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "noun_verb"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "nouns_suchthat"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "baz" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "adj_nouns"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "nouns"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "baz"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "baz" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "foo"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "bar"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "adjs"
+ , taskConjecture = Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "baz" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ }
+] \ No newline at end of file
diff --git a/test/golden/coord/glossing.golden b/test/golden/coord/glossing.golden
new file mode 100644
index 0000000..c051fe9
--- /dev/null
+++ b/test/golden/coord/glossing.golden
@@ -0,0 +1,437 @@
+[ BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "bar" )
+ ( DefnPredicate []
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ ( NamedVar "x" :| [] )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "foo" )
+ ( DefnPredicate []
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ ( NamedVar "x" :| [] )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 9
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "baz" )
+ ( DefnPredicate []
+ ( PredicateAdj
+ [ Just
+ ( Word "baz" )
+ ]
+ )
+ ( NamedVar "x" :| [] )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 13
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "nouns" )
+ ( Lemma
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ]
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 18
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "adj_nouns" )
+ ( Lemma
+ [ Asm
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ )
+ , Asm
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ ]
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 24
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "nouns_suchthat" )
+ ( Lemma
+ [ Asm
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "baz" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ]
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 30
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "noun_verb" )
+ ( Lemma []
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 35
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "adjs" )
+ ( Lemma []
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "baz" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/coord/parsing.golden b/test/golden/coord/parsing.golden
new file mode 100644
index 0000000..555b86b
--- /dev/null
+++ b/test/golden/coord/parsing.golden
@@ -0,0 +1,367 @@
+[ BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "bar" )
+ ( Defn []
+ ( DefnNoun
+ ( NamedVar "x" )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ ) []
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "foo" )
+ ( Defn []
+ ( DefnAdj Nothing
+ ( NamedVar "x" )
+ ( Adj
+ [ Just
+ ( Word "foo" )
+ ] []
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 9
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "baz" )
+ ( Defn []
+ ( DefnAdj Nothing
+ ( NamedVar "x" )
+ ( Adj
+ [ Just
+ ( Word "baz" )
+ ] []
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 13
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "nouns" )
+ ( Lemma
+ [ AsmLetNoun
+ ( NamedVar "x" :|
+ [ NamedVar "y" ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 18
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "adj_nouns" )
+ ( Lemma
+ [ AsmLetNoun
+ ( NamedVar "x" :|
+ [ NamedVar "y" ]
+ ) NounPhrase
+ (
+ [ AdjL
+ [ Just
+ ( Word "foo" )
+ ] []
+ ]
+ )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 24
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "nouns_suchthat" )
+ ( Lemma
+ [ AsmLetNoun
+ ( NamedVar "x" :|
+ [ NamedVar "y" ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] )
+ ( Just
+ ( StmtConnected Conjunction
+ ( StmtVerbPhrase
+ ( TermExpr
+ ( ExprVar
+ ( NamedVar "x" )
+ ) :| []
+ )
+ ( VPAdj
+ ( Adj
+ [ Just
+ ( Word "foo" )
+ ] [] :| []
+ )
+ )
+ )
+ ( StmtVerbPhrase
+ ( TermExpr
+ ( ExprVar
+ ( NamedVar "y" )
+ ) :| []
+ )
+ ( VPAdj
+ ( Adj
+ [ Just
+ ( Word "baz" )
+ ] [] :| []
+ )
+ )
+ )
+ )
+ )
+ ]
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 30
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "noun_verb" )
+ ( Lemma []
+ ( StmtConnected Equivalence
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ ( StmtNoun
+ ( TermExpr
+ ( ExprVar
+ ( NamedVar "x" )
+ )
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "bar" )
+ ]
+ , pl =
+ [ Just
+ ( Word "bars" )
+ ]
+ }
+ ) []
+ ) ( Nothing )
+ (
+ [ AdjR
+ [ Just
+ ( Word "equal" )
+ , Just
+ ( Word "to" )
+ , Nothing
+ ]
+ [ TermExpr
+ ( ExprVar
+ ( NamedVar "y" )
+ )
+ ]
+ ]
+ ) ( Nothing )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/coord.tex"
+ , sourceLine = Pos 35
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "adjs" )
+ ( Lemma []
+ ( StmtVerbPhrase
+ ( TermExpr
+ ( ExprVar
+ ( NamedVar "x" )
+ ) :| []
+ )
+ ( VPAdj
+ ( Adj
+ [ Just
+ ( Word "foo" )
+ ] [] :|
+ [ Adj
+ [ Just
+ ( Word "baz" )
+ ] []
+ ]
+ )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/coord/scanning.golden b/test/golden/coord/scanning.golden
new file mode 100644
index 0000000..f405a1f
--- /dev/null
+++ b/test/golden/coord/scanning.golden
@@ -0,0 +1,16 @@
+[ ScanNoun
+ [ Just
+ ( Word "bar" )
+ ]
+ ( Marker "bar" )
+, ScanAdj
+ [ Just
+ ( Word "foo" )
+ ]
+ ( Marker "foo" )
+, ScanAdj
+ [ Just
+ ( Word "baz" )
+ ]
+ ( Marker "baz" )
+] \ No newline at end of file
diff --git a/test/golden/coord/tokenizing.golden b/test/golden/coord/tokenizing.golden
new file mode 100644
index 0000000..0516d7a
--- /dev/null
+++ b/test/golden/coord/tokenizing.golden
@@ -0,0 +1,150 @@
+[ BeginEnv "definition"
+, Label "bar"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "is"
+, Word "a"
+, Word "bar"
+, Word "iff"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "definition"
+, Label "foo"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "is"
+, Word "foo"
+, Word "iff"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "definition"
+, Label "baz"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "is"
+, Word "baz"
+, Word "iff"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "proposition"
+, Label "nouns"
+, Word "let"
+, BeginEnv "math"
+, Variable "x"
+, Symbol ","
+, Variable "y"
+, EndEnv "math"
+, Word "be"
+, Word "bars"
+, Symbol "."
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proposition"
+, Label "adj_nouns"
+, Word "let"
+, BeginEnv "math"
+, Variable "x"
+, Symbol ","
+, Variable "y"
+, EndEnv "math"
+, Word "be"
+, Word "foo"
+, Word "bars"
+, Symbol "."
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proposition"
+, Label "nouns_suchthat"
+, Word "let"
+, BeginEnv "math"
+, Variable "x"
+, Symbol ","
+, Variable "y"
+, EndEnv "math"
+, Word "be"
+, Word "bars"
+, Word "such"
+, Word "that"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "is"
+, Word "foo"
+, Word "and"
+, BeginEnv "math"
+, Variable "y"
+, EndEnv "math"
+, Word "is"
+, Word "baz"
+, Symbol "."
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proposition"
+, Label "noun_verb"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "y"
+, EndEnv "math"
+, Word "iff"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "is"
+, Word "a"
+, Word "bar"
+, Word "equal"
+, Word "to"
+, BeginEnv "math"
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proposition"
+, Label "adjs"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "is"
+, Word "foo"
+, Word "and"
+, Word "baz"
+, Symbol "."
+, EndEnv "proposition"
+] \ No newline at end of file
diff --git a/test/golden/coord/verification.golden b/test/golden/coord/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/coord/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/finite-set-terms/encoding tasks.golden b/test/golden/finite-set-terms/encoding tasks.golden
new file mode 100644
index 0000000..381bdf0
--- /dev/null
+++ b/test/golden/finite-set-terms/encoding tasks.golden
@@ -0,0 +1,3 @@
+fof(emptyset_in_unit,conjecture,elem(emptyset,unit)).
+fof(unit,axiom,![Xany]:(elem(Xany,unit)<=>(elem(Xany,emptyset)|Xany=emptyset))).
+fof(cons,axiom,![Xx,Xy,XX]:(elem(Xx,cons(Xy,XX))<=>(Xx=Xy|elem(Xx,XX)))). \ No newline at end of file
diff --git a/test/golden/finite-set-terms/generating tasks.golden b/test/golden/finite-set-terms/generating tasks.golden
new file mode 100644
index 0000000..84df2ba
--- /dev/null
+++ b/test/golden/finite-set-terms/generating tasks.golden
@@ -0,0 +1,165 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "unit"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "any" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "any" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "any" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "X" )
+ )
+ ]
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "X" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "emptyset_in_unit"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ ]
+ }
+] \ No newline at end of file
diff --git a/test/golden/finite-set-terms/glossing.golden b/test/golden/finite-set-terms/glossing.golden
new file mode 100644
index 0000000..7bafb15
--- /dev/null
+++ b/test/golden/finite-set-terms/glossing.golden
@@ -0,0 +1,135 @@
+[ BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/finite-set-terms.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cons" )
+ ( Axiom []
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "X" )
+ ]
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "X" )
+ ]
+ )
+ )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/finite-set-terms.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "unit" )
+ ( DefnOp
+ [ Just
+ ( Command "unit" )
+ ] []
+ ( TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/finite-set-terms.tex"
+ , sourceLine = Pos 9
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "emptyset_in_unit" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ ]
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/finite-set-terms/parsing.golden b/test/golden/finite-set-terms/parsing.golden
new file mode 100644
index 0000000..c30f70b
--- /dev/null
+++ b/test/golden/finite-set-terms/parsing.golden
@@ -0,0 +1,124 @@
+[ BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/finite-set-terms.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cons" )
+ ( Axiom []
+ ( StmtConnected Equivalence
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "y" )
+ , ExprVar
+ ( NamedVar "X" )
+ ] :| []
+ )
+ )
+ )
+ )
+ ( StmtConnected Disjunction
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "X" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/finite-set-terms.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "unit" )
+ ( DefnOp
+ ( SymbolPattern
+ [ Just
+ ( Command "unit" )
+ ] []
+ )
+ ( ExprFiniteSet
+ ( ExprOp
+ [ Just
+ ( Command "emptyset" )
+ ] [] :| []
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/finite-set-terms.tex"
+ , sourceLine = Pos 9
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "emptyset_in_unit" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "emptyset" )
+ ] [] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "unit" )
+ ] [] :| []
+ )
+ )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/finite-set-terms/scanning.golden b/test/golden/finite-set-terms/scanning.golden
new file mode 100644
index 0000000..1a9f920
--- /dev/null
+++ b/test/golden/finite-set-terms/scanning.golden
@@ -0,0 +1,6 @@
+[ ScanFunctionSymbol
+ [ Just
+ ( Command "unit" )
+ ]
+ ( Marker "unit" )
+] \ No newline at end of file
diff --git a/test/golden/finite-set-terms/tokenizing.golden b/test/golden/finite-set-terms/tokenizing.golden
new file mode 100644
index 0000000..761cbde
--- /dev/null
+++ b/test/golden/finite-set-terms/tokenizing.golden
@@ -0,0 +1,48 @@
+[ BeginEnv "axiom"
+, Label "cons"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Command "cons"
+, InvisibleBraceL
+, Variable "y"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "X"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "iff"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "y"
+, EndEnv "math"
+, Word "or"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "X"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "axiom"
+, BeginEnv "definition"
+, Label "unit"
+, BeginEnv "math"
+, Command "unit"
+, Symbol "="
+, VisibleBraceL
+, Command "emptyset"
+, VisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "proposition"
+, Label "emptyset_in_unit"
+, BeginEnv "math"
+, Command "emptyset"
+, Command "in"
+, Command "unit"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+] \ No newline at end of file
diff --git a/test/golden/finite-set-terms/verification.golden b/test/golden/finite-set-terms/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/finite-set-terms/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/formula/encoding tasks.golden b/test/golden/formula/encoding tasks.golden
new file mode 100644
index 0000000..ab149dd
--- /dev/null
+++ b/test/golden/formula/encoding tasks.golden
@@ -0,0 +1,4 @@
+fof(formula_test_forall,conjecture,![Xx,Xy]:(Xx=Xx&Xy=Xy)).
+------------------
+fof(formula_test_exists,conjecture,?[Xx,Xy]:Xx=Xy).
+fof(formula_test_forall,axiom,![Xx,Xy]:(Xx=Xx&Xy=Xy)). \ No newline at end of file
diff --git a/test/golden/formula/generating tasks.golden b/test/golden/formula/generating tasks.golden
new file mode 100644
index 0000000..db5d39e
--- /dev/null
+++ b/test/golden/formula/generating tasks.golden
@@ -0,0 +1,108 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses = []
+ , taskConjectureLabel = Marker "formula_test_forall"
+ , taskConjecture = Quantified Universally
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "formula_test_forall"
+ , Quantified Universally
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "formula_test_exists"
+ , taskConjecture = Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ }
+] \ No newline at end of file
diff --git a/test/golden/formula/glossing.golden b/test/golden/formula/glossing.golden
new file mode 100644
index 0000000..bb72370
--- /dev/null
+++ b/test/golden/formula/glossing.golden
@@ -0,0 +1,79 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/formula.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "formula_test_forall" )
+ ( Lemma []
+ ( Quantified Universally
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/formula.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "formula_test_exists" )
+ ( Lemma []
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/formula/parsing.golden b/test/golden/formula/parsing.golden
new file mode 100644
index 0000000..4c6321d
--- /dev/null
+++ b/test/golden/formula/parsing.golden
@@ -0,0 +1,76 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/formula.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "formula_test_forall" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaQuantified Universally
+ ( NamedVar "x" :|
+ [ NamedVar "y" ]
+ ) Unbounded
+ ( Connected Conjunction
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/formula.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "formula_test_exists" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaQuantified Existentially
+ ( NamedVar "x" :|
+ [ NamedVar "y" ]
+ ) Unbounded
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/formula/scanning.golden b/test/golden/formula/scanning.golden
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/test/golden/formula/scanning.golden
@@ -0,0 +1 @@
+[] \ No newline at end of file
diff --git a/test/golden/formula/tokenizing.golden b/test/golden/formula/tokenizing.golden
new file mode 100644
index 0000000..3cb9b0e
--- /dev/null
+++ b/test/golden/formula/tokenizing.golden
@@ -0,0 +1,33 @@
+[ BeginEnv "proposition"
+, Label "formula_test_forall"
+, BeginEnv "math"
+, Command "forall"
+, Variable "x"
+, Symbol ","
+, Variable "y"
+, Symbol "."
+, Variable "x"
+, Symbol "="
+, Variable "x"
+, Command "land"
+, Variable "y"
+, Symbol "="
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proposition"
+, Label "formula_test_exists"
+, BeginEnv "math"
+, Command "exists"
+, Variable "x"
+, Symbol ","
+, Variable "y"
+, Symbol "."
+, Variable "x"
+, Symbol "="
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+] \ No newline at end of file
diff --git a/test/golden/formula/verification.golden b/test/golden/formula/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/formula/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/geometry/encoding tasks.golden b/test/golden/geometry/encoding tasks.golden
new file mode 100644
index 0000000..f4bbc14
--- /dev/null
+++ b/test/golden/geometry/encoding tasks.golden
@@ -0,0 +1,109 @@
+fof(cong_refl,conjecture,'Cong'(fa,fb,fa,fb)).
+fof(upperdim,axiom,![Xx,Xy,Xz,Xu,Xv]:((point(Xx)&point(Xy)&point(Xz)&point(Xu)&point(Xv))=>(('Cong'(Xx,Xu,Xx,Xv)&'Cong'(Xy,Xu,Xy,Xv)&'Cong'(Xz,Xu,Xz,Xv)&Xu!=Xv)=>collinear(Xx,Xy,Xz)))).
+fof(innerpasch,axiom,![Xx,Xy,Xz,Xu,Xv,Xw]:((point(Xx)&point(Xy)&point(Xz)&point(Xu)&point(Xv)&point(Xw))=>(('Betw'(Xx,Xu,Xz)&'Betw'(Xy,Xv,Xz))=>?[Xw]:(point(Xw)&'Betw'(Xu,Xw,Xy)&'Betw'(Xv,Xw,Xx))))).
+fof(betw_id,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>('Betw'(Xa,Xb,Xa)=>Xa=Xb))).
+fof(five_segment,axiom,![Xa,Xb,Xc,Xd,Xaprime,Xbprime,Xcprime,Xdprime]:((point(Xa)&point(Xb)&point(Xc)&point(Xd)&point(Xaprime)&point(Xbprime)&point(Xcprime)&point(Xdprime))=>(('OFS'(Xa,Xb,Xc,Xd,Xaprime,Xbprime,Xcprime,Xdprime)&Xa!=Xb)=>'Cong'(Xc,Xd,Xcprime,Xdprime)))).
+fof(ofs,axiom,![Xx,Xy,Xz,Xr,Xu,Xv,Xw,Xp]:((point(Xx)&point(Xy)&point(Xz)&point(Xr)&point(Xu)&point(Xv)&point(Xw)&point(Xp))=>('OFS'(Xx,Xy,Xz,Xr,Xu,Xv,Xw,Xp)<=>('Betw'(Xx,Xy,Xz)&'Betw'(Xu,Xv,Xw)&'Cong'(Xx,Xy,Xu,Xv)&'Cong'(Xy,Xz,Xv,Xw)&'Cong'(Xx,Xr,Xu,Xp)&'Cong'(Xy,Xr,Xv,Xp))))).
+fof(segment_construction,axiom,![Xa,Xb,Xd,Xe]:?[Xc]:(point(Xc)&'Betw'(Xa,Xb,Xc)&'Cong'(Xb,Xc,Xd,Xe))).
+fof(cong_id,axiom,![Xa,Xb,Xc]:((point(Xa)&point(Xb)&point(Xc))=>('Cong'(Xa,Xb,Xc,Xc)=>Xa=Xb))).
+fof(cong_pseudotransitive,axiom,![Xa,Xb,Xc,Xd,Xe,Xf]:((point(Xa)&point(Xb)&point(Xc)&point(Xd))=>(('Cong'(Xc,Xd,Xa,Xb)&'Cong'(Xc,Xd,Xe,Xf))=>'Cong'(Xa,Xb,Xe,Xf)))).
+fof(cong_refl_swap,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>'Cong'(Xa,Xb,Xb,Xa))).
+fof(collinear,axiom,![Xa,Xb,Xc]:(collinear(Xa,Xb,Xc)<=>('Betw'(Xa,Xb,Xc)|'Betw'(Xb,Xc,Xa)|'Betw'(Xc,Xa,Xb)))).
+fof(cong_refl1,axiom,point(fb)).
+fof(cong_refl2,axiom,point(fa)).
+------------------
+fof(cong_sym,conjecture,'Cong'(fc,fd,fa,fb)).
+fof(cong_refl,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>'Cong'(Xa,Xb,Xa,Xb))).
+fof(upperdim,axiom,![Xx,Xy,Xz,Xu,Xv]:((point(Xx)&point(Xy)&point(Xz)&point(Xu)&point(Xv))=>(('Cong'(Xx,Xu,Xx,Xv)&'Cong'(Xy,Xu,Xy,Xv)&'Cong'(Xz,Xu,Xz,Xv)&Xu!=Xv)=>collinear(Xx,Xy,Xz)))).
+fof(innerpasch,axiom,![Xx,Xy,Xz,Xu,Xv,Xw]:((point(Xx)&point(Xy)&point(Xz)&point(Xu)&point(Xv)&point(Xw))=>(('Betw'(Xx,Xu,Xz)&'Betw'(Xy,Xv,Xz))=>?[Xw]:(point(Xw)&'Betw'(Xu,Xw,Xy)&'Betw'(Xv,Xw,Xx))))).
+fof(betw_id,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>('Betw'(Xa,Xb,Xa)=>Xa=Xb))).
+fof(five_segment,axiom,![Xa,Xb,Xc,Xd,Xaprime,Xbprime,Xcprime,Xdprime]:((point(Xa)&point(Xb)&point(Xc)&point(Xd)&point(Xaprime)&point(Xbprime)&point(Xcprime)&point(Xdprime))=>(('OFS'(Xa,Xb,Xc,Xd,Xaprime,Xbprime,Xcprime,Xdprime)&Xa!=Xb)=>'Cong'(Xc,Xd,Xcprime,Xdprime)))).
+fof(ofs,axiom,![Xx,Xy,Xz,Xr,Xu,Xv,Xw,Xp]:((point(Xx)&point(Xy)&point(Xz)&point(Xr)&point(Xu)&point(Xv)&point(Xw)&point(Xp))=>('OFS'(Xx,Xy,Xz,Xr,Xu,Xv,Xw,Xp)<=>('Betw'(Xx,Xy,Xz)&'Betw'(Xu,Xv,Xw)&'Cong'(Xx,Xy,Xu,Xv)&'Cong'(Xy,Xz,Xv,Xw)&'Cong'(Xx,Xr,Xu,Xp)&'Cong'(Xy,Xr,Xv,Xp))))).
+fof(segment_construction,axiom,![Xa,Xb,Xd,Xe]:?[Xc]:(point(Xc)&'Betw'(Xa,Xb,Xc)&'Cong'(Xb,Xc,Xd,Xe))).
+fof(cong_id,axiom,![Xa,Xb,Xc]:((point(Xa)&point(Xb)&point(Xc))=>('Cong'(Xa,Xb,Xc,Xc)=>Xa=Xb))).
+fof(cong_pseudotransitive,axiom,![Xa,Xb,Xc,Xd,Xe,Xf]:((point(Xa)&point(Xb)&point(Xc)&point(Xd))=>(('Cong'(Xc,Xd,Xa,Xb)&'Cong'(Xc,Xd,Xe,Xf))=>'Cong'(Xa,Xb,Xe,Xf)))).
+fof(cong_refl_swap,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>'Cong'(Xa,Xb,Xb,Xa))).
+fof(collinear,axiom,![Xa,Xb,Xc]:(collinear(Xa,Xb,Xc)<=>('Betw'(Xa,Xb,Xc)|'Betw'(Xb,Xc,Xa)|'Betw'(Xc,Xa,Xb)))).
+fof(cong_sym1,axiom,'Cong'(fa,fb,fc,fd)).
+fof(cong_sym2,axiom,point(fd)).
+fof(cong_sym3,axiom,point(fc)).
+fof(cong_sym4,axiom,point(fb)).
+fof(cong_sym5,axiom,point(fa)).
+------------------
+fof(cong_transitive,conjecture,('Cong'(fa,fb,fc,fd)&'Cong'(fc,fd,fe,ff))=>'Cong'(fa,fb,fe,ff)).
+fof(cong_sym,axiom,![Xa,Xb,Xc,Xd]:((point(Xa)&point(Xb)&point(Xc)&point(Xd)&'Cong'(Xa,Xb,Xc,Xd))=>'Cong'(Xc,Xd,Xa,Xb))).
+fof(cong_refl,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>'Cong'(Xa,Xb,Xa,Xb))).
+fof(upperdim,axiom,![Xx,Xy,Xz,Xu,Xv]:((point(Xx)&point(Xy)&point(Xz)&point(Xu)&point(Xv))=>(('Cong'(Xx,Xu,Xx,Xv)&'Cong'(Xy,Xu,Xy,Xv)&'Cong'(Xz,Xu,Xz,Xv)&Xu!=Xv)=>collinear(Xx,Xy,Xz)))).
+fof(innerpasch,axiom,![Xx,Xy,Xz,Xu,Xv,Xw]:((point(Xx)&point(Xy)&point(Xz)&point(Xu)&point(Xv)&point(Xw))=>(('Betw'(Xx,Xu,Xz)&'Betw'(Xy,Xv,Xz))=>?[Xw]:(point(Xw)&'Betw'(Xu,Xw,Xy)&'Betw'(Xv,Xw,Xx))))).
+fof(betw_id,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>('Betw'(Xa,Xb,Xa)=>Xa=Xb))).
+fof(five_segment,axiom,![Xa,Xb,Xc,Xd,Xaprime,Xbprime,Xcprime,Xdprime]:((point(Xa)&point(Xb)&point(Xc)&point(Xd)&point(Xaprime)&point(Xbprime)&point(Xcprime)&point(Xdprime))=>(('OFS'(Xa,Xb,Xc,Xd,Xaprime,Xbprime,Xcprime,Xdprime)&Xa!=Xb)=>'Cong'(Xc,Xd,Xcprime,Xdprime)))).
+fof(ofs,axiom,![Xx,Xy,Xz,Xr,Xu,Xv,Xw,Xp]:((point(Xx)&point(Xy)&point(Xz)&point(Xr)&point(Xu)&point(Xv)&point(Xw)&point(Xp))=>('OFS'(Xx,Xy,Xz,Xr,Xu,Xv,Xw,Xp)<=>('Betw'(Xx,Xy,Xz)&'Betw'(Xu,Xv,Xw)&'Cong'(Xx,Xy,Xu,Xv)&'Cong'(Xy,Xz,Xv,Xw)&'Cong'(Xx,Xr,Xu,Xp)&'Cong'(Xy,Xr,Xv,Xp))))).
+fof(segment_construction,axiom,![Xa,Xb,Xd,Xe]:?[Xc]:(point(Xc)&'Betw'(Xa,Xb,Xc)&'Cong'(Xb,Xc,Xd,Xe))).
+fof(cong_id,axiom,![Xa,Xb,Xc]:((point(Xa)&point(Xb)&point(Xc))=>('Cong'(Xa,Xb,Xc,Xc)=>Xa=Xb))).
+fof(cong_pseudotransitive,axiom,![Xa,Xb,Xc,Xd,Xe,Xf]:((point(Xa)&point(Xb)&point(Xc)&point(Xd))=>(('Cong'(Xc,Xd,Xa,Xb)&'Cong'(Xc,Xd,Xe,Xf))=>'Cong'(Xa,Xb,Xe,Xf)))).
+fof(cong_refl_swap,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>'Cong'(Xa,Xb,Xb,Xa))).
+fof(collinear,axiom,![Xa,Xb,Xc]:(collinear(Xa,Xb,Xc)<=>('Betw'(Xa,Xb,Xc)|'Betw'(Xb,Xc,Xa)|'Betw'(Xc,Xa,Xb)))).
+fof(cong_transitive1,axiom,point(ff)).
+fof(cong_transitive2,axiom,point(fe)).
+fof(cong_transitive3,axiom,point(fd)).
+fof(cong_transitive4,axiom,point(fc)).
+fof(cong_transitive5,axiom,point(fb)).
+fof(cong_transitive6,axiom,point(fa)).
+------------------
+fof(cong_shuffle_left,conjecture,'Cong'(fa,fb,fc,fd)=>'Cong'(fb,fa,fc,fd)).
+fof(cong_transitive,axiom,![Xa,Xb,Xc,Xd,Xe,Xf]:((point(Xa)&point(Xb)&point(Xc)&point(Xd)&point(Xe)&point(Xf))=>(('Cong'(Xa,Xb,Xc,Xd)&'Cong'(Xc,Xd,Xe,Xf))=>'Cong'(Xa,Xb,Xe,Xf)))).
+fof(cong_sym,axiom,![Xa,Xb,Xc,Xd]:((point(Xa)&point(Xb)&point(Xc)&point(Xd)&'Cong'(Xa,Xb,Xc,Xd))=>'Cong'(Xc,Xd,Xa,Xb))).
+fof(cong_refl,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>'Cong'(Xa,Xb,Xa,Xb))).
+fof(upperdim,axiom,![Xx,Xy,Xz,Xu,Xv]:((point(Xx)&point(Xy)&point(Xz)&point(Xu)&point(Xv))=>(('Cong'(Xx,Xu,Xx,Xv)&'Cong'(Xy,Xu,Xy,Xv)&'Cong'(Xz,Xu,Xz,Xv)&Xu!=Xv)=>collinear(Xx,Xy,Xz)))).
+fof(innerpasch,axiom,![Xx,Xy,Xz,Xu,Xv,Xw]:((point(Xx)&point(Xy)&point(Xz)&point(Xu)&point(Xv)&point(Xw))=>(('Betw'(Xx,Xu,Xz)&'Betw'(Xy,Xv,Xz))=>?[Xw]:(point(Xw)&'Betw'(Xu,Xw,Xy)&'Betw'(Xv,Xw,Xx))))).
+fof(betw_id,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>('Betw'(Xa,Xb,Xa)=>Xa=Xb))).
+fof(five_segment,axiom,![Xa,Xb,Xc,Xd,Xaprime,Xbprime,Xcprime,Xdprime]:((point(Xa)&point(Xb)&point(Xc)&point(Xd)&point(Xaprime)&point(Xbprime)&point(Xcprime)&point(Xdprime))=>(('OFS'(Xa,Xb,Xc,Xd,Xaprime,Xbprime,Xcprime,Xdprime)&Xa!=Xb)=>'Cong'(Xc,Xd,Xcprime,Xdprime)))).
+fof(ofs,axiom,![Xx,Xy,Xz,Xr,Xu,Xv,Xw,Xp]:((point(Xx)&point(Xy)&point(Xz)&point(Xr)&point(Xu)&point(Xv)&point(Xw)&point(Xp))=>('OFS'(Xx,Xy,Xz,Xr,Xu,Xv,Xw,Xp)<=>('Betw'(Xx,Xy,Xz)&'Betw'(Xu,Xv,Xw)&'Cong'(Xx,Xy,Xu,Xv)&'Cong'(Xy,Xz,Xv,Xw)&'Cong'(Xx,Xr,Xu,Xp)&'Cong'(Xy,Xr,Xv,Xp))))).
+fof(segment_construction,axiom,![Xa,Xb,Xd,Xe]:?[Xc]:(point(Xc)&'Betw'(Xa,Xb,Xc)&'Cong'(Xb,Xc,Xd,Xe))).
+fof(cong_id,axiom,![Xa,Xb,Xc]:((point(Xa)&point(Xb)&point(Xc))=>('Cong'(Xa,Xb,Xc,Xc)=>Xa=Xb))).
+fof(cong_pseudotransitive,axiom,![Xa,Xb,Xc,Xd,Xe,Xf]:((point(Xa)&point(Xb)&point(Xc)&point(Xd))=>(('Cong'(Xc,Xd,Xa,Xb)&'Cong'(Xc,Xd,Xe,Xf))=>'Cong'(Xa,Xb,Xe,Xf)))).
+fof(cong_refl_swap,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>'Cong'(Xa,Xb,Xb,Xa))).
+fof(collinear,axiom,![Xa,Xb,Xc]:(collinear(Xa,Xb,Xc)<=>('Betw'(Xa,Xb,Xc)|'Betw'(Xb,Xc,Xa)|'Betw'(Xc,Xa,Xb)))).
+fof(cong_shuffle_left1,axiom,point(fd)).
+fof(cong_shuffle_left2,axiom,point(fc)).
+fof(cong_shuffle_left3,axiom,point(fb)).
+fof(cong_shuffle_left4,axiom,point(fa)).
+------------------
+fof(cong_shuffle_right,conjecture,'Cong'(fa,fb,fc,fd)=>'Cong'(fb,fa,fd,fc)).
+fof(cong_shuffle_left,axiom,![Xa,Xb,Xc,Xd]:((point(Xa)&point(Xb)&point(Xc)&point(Xd))=>('Cong'(Xa,Xb,Xc,Xd)=>'Cong'(Xb,Xa,Xc,Xd)))).
+fof(cong_transitive,axiom,![Xa,Xb,Xc,Xd,Xe,Xf]:((point(Xa)&point(Xb)&point(Xc)&point(Xd)&point(Xe)&point(Xf))=>(('Cong'(Xa,Xb,Xc,Xd)&'Cong'(Xc,Xd,Xe,Xf))=>'Cong'(Xa,Xb,Xe,Xf)))).
+fof(cong_sym,axiom,![Xa,Xb,Xc,Xd]:((point(Xa)&point(Xb)&point(Xc)&point(Xd)&'Cong'(Xa,Xb,Xc,Xd))=>'Cong'(Xc,Xd,Xa,Xb))).
+fof(cong_refl,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>'Cong'(Xa,Xb,Xa,Xb))).
+fof(upperdim,axiom,![Xx,Xy,Xz,Xu,Xv]:((point(Xx)&point(Xy)&point(Xz)&point(Xu)&point(Xv))=>(('Cong'(Xx,Xu,Xx,Xv)&'Cong'(Xy,Xu,Xy,Xv)&'Cong'(Xz,Xu,Xz,Xv)&Xu!=Xv)=>collinear(Xx,Xy,Xz)))).
+fof(innerpasch,axiom,![Xx,Xy,Xz,Xu,Xv,Xw]:((point(Xx)&point(Xy)&point(Xz)&point(Xu)&point(Xv)&point(Xw))=>(('Betw'(Xx,Xu,Xz)&'Betw'(Xy,Xv,Xz))=>?[Xw]:(point(Xw)&'Betw'(Xu,Xw,Xy)&'Betw'(Xv,Xw,Xx))))).
+fof(betw_id,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>('Betw'(Xa,Xb,Xa)=>Xa=Xb))).
+fof(five_segment,axiom,![Xa,Xb,Xc,Xd,Xaprime,Xbprime,Xcprime,Xdprime]:((point(Xa)&point(Xb)&point(Xc)&point(Xd)&point(Xaprime)&point(Xbprime)&point(Xcprime)&point(Xdprime))=>(('OFS'(Xa,Xb,Xc,Xd,Xaprime,Xbprime,Xcprime,Xdprime)&Xa!=Xb)=>'Cong'(Xc,Xd,Xcprime,Xdprime)))).
+fof(ofs,axiom,![Xx,Xy,Xz,Xr,Xu,Xv,Xw,Xp]:((point(Xx)&point(Xy)&point(Xz)&point(Xr)&point(Xu)&point(Xv)&point(Xw)&point(Xp))=>('OFS'(Xx,Xy,Xz,Xr,Xu,Xv,Xw,Xp)<=>('Betw'(Xx,Xy,Xz)&'Betw'(Xu,Xv,Xw)&'Cong'(Xx,Xy,Xu,Xv)&'Cong'(Xy,Xz,Xv,Xw)&'Cong'(Xx,Xr,Xu,Xp)&'Cong'(Xy,Xr,Xv,Xp))))).
+fof(segment_construction,axiom,![Xa,Xb,Xd,Xe]:?[Xc]:(point(Xc)&'Betw'(Xa,Xb,Xc)&'Cong'(Xb,Xc,Xd,Xe))).
+fof(cong_id,axiom,![Xa,Xb,Xc]:((point(Xa)&point(Xb)&point(Xc))=>('Cong'(Xa,Xb,Xc,Xc)=>Xa=Xb))).
+fof(cong_pseudotransitive,axiom,![Xa,Xb,Xc,Xd,Xe,Xf]:((point(Xa)&point(Xb)&point(Xc)&point(Xd))=>(('Cong'(Xc,Xd,Xa,Xb)&'Cong'(Xc,Xd,Xe,Xf))=>'Cong'(Xa,Xb,Xe,Xf)))).
+fof(cong_refl_swap,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>'Cong'(Xa,Xb,Xb,Xa))).
+fof(collinear,axiom,![Xa,Xb,Xc]:(collinear(Xa,Xb,Xc)<=>('Betw'(Xa,Xb,Xc)|'Betw'(Xb,Xc,Xa)|'Betw'(Xc,Xa,Xb)))).
+fof(cong_shuffle_right1,axiom,point(fd)).
+fof(cong_shuffle_right2,axiom,point(fc)).
+fof(cong_shuffle_right3,axiom,point(fb)).
+fof(cong_shuffle_right4,axiom,point(fa)).
+------------------
+fof(cong_zero,conjecture,'Cong'(fa,fa,fb,fb)).
+fof(cong_shuffle_right,axiom,![Xa,Xb,Xc,Xd]:((point(Xa)&point(Xb)&point(Xc)&point(Xd))=>('Cong'(Xa,Xb,Xc,Xd)=>'Cong'(Xb,Xa,Xd,Xc)))).
+fof(cong_shuffle_left,axiom,![Xa,Xb,Xc,Xd]:((point(Xa)&point(Xb)&point(Xc)&point(Xd))=>('Cong'(Xa,Xb,Xc,Xd)=>'Cong'(Xb,Xa,Xc,Xd)))).
+fof(cong_transitive,axiom,![Xa,Xb,Xc,Xd,Xe,Xf]:((point(Xa)&point(Xb)&point(Xc)&point(Xd)&point(Xe)&point(Xf))=>(('Cong'(Xa,Xb,Xc,Xd)&'Cong'(Xc,Xd,Xe,Xf))=>'Cong'(Xa,Xb,Xe,Xf)))).
+fof(cong_sym,axiom,![Xa,Xb,Xc,Xd]:((point(Xa)&point(Xb)&point(Xc)&point(Xd)&'Cong'(Xa,Xb,Xc,Xd))=>'Cong'(Xc,Xd,Xa,Xb))).
+fof(cong_refl,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>'Cong'(Xa,Xb,Xa,Xb))).
+fof(upperdim,axiom,![Xx,Xy,Xz,Xu,Xv]:((point(Xx)&point(Xy)&point(Xz)&point(Xu)&point(Xv))=>(('Cong'(Xx,Xu,Xx,Xv)&'Cong'(Xy,Xu,Xy,Xv)&'Cong'(Xz,Xu,Xz,Xv)&Xu!=Xv)=>collinear(Xx,Xy,Xz)))).
+fof(innerpasch,axiom,![Xx,Xy,Xz,Xu,Xv,Xw]:((point(Xx)&point(Xy)&point(Xz)&point(Xu)&point(Xv)&point(Xw))=>(('Betw'(Xx,Xu,Xz)&'Betw'(Xy,Xv,Xz))=>?[Xw]:(point(Xw)&'Betw'(Xu,Xw,Xy)&'Betw'(Xv,Xw,Xx))))).
+fof(betw_id,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>('Betw'(Xa,Xb,Xa)=>Xa=Xb))).
+fof(five_segment,axiom,![Xa,Xb,Xc,Xd,Xaprime,Xbprime,Xcprime,Xdprime]:((point(Xa)&point(Xb)&point(Xc)&point(Xd)&point(Xaprime)&point(Xbprime)&point(Xcprime)&point(Xdprime))=>(('OFS'(Xa,Xb,Xc,Xd,Xaprime,Xbprime,Xcprime,Xdprime)&Xa!=Xb)=>'Cong'(Xc,Xd,Xcprime,Xdprime)))).
+fof(ofs,axiom,![Xx,Xy,Xz,Xr,Xu,Xv,Xw,Xp]:((point(Xx)&point(Xy)&point(Xz)&point(Xr)&point(Xu)&point(Xv)&point(Xw)&point(Xp))=>('OFS'(Xx,Xy,Xz,Xr,Xu,Xv,Xw,Xp)<=>('Betw'(Xx,Xy,Xz)&'Betw'(Xu,Xv,Xw)&'Cong'(Xx,Xy,Xu,Xv)&'Cong'(Xy,Xz,Xv,Xw)&'Cong'(Xx,Xr,Xu,Xp)&'Cong'(Xy,Xr,Xv,Xp))))).
+fof(segment_construction,axiom,![Xa,Xb,Xd,Xe]:?[Xc]:(point(Xc)&'Betw'(Xa,Xb,Xc)&'Cong'(Xb,Xc,Xd,Xe))).
+fof(cong_id,axiom,![Xa,Xb,Xc]:((point(Xa)&point(Xb)&point(Xc))=>('Cong'(Xa,Xb,Xc,Xc)=>Xa=Xb))).
+fof(cong_pseudotransitive,axiom,![Xa,Xb,Xc,Xd,Xe,Xf]:((point(Xa)&point(Xb)&point(Xc)&point(Xd))=>(('Cong'(Xc,Xd,Xa,Xb)&'Cong'(Xc,Xd,Xe,Xf))=>'Cong'(Xa,Xb,Xe,Xf)))).
+fof(cong_refl_swap,axiom,![Xa,Xb]:((point(Xa)&point(Xb))=>'Cong'(Xa,Xb,Xb,Xa))).
+fof(collinear,axiom,![Xa,Xb,Xc]:(collinear(Xa,Xb,Xc)<=>('Betw'(Xa,Xb,Xc)|'Betw'(Xb,Xc,Xa)|'Betw'(Xc,Xa,Xb)))).
+fof(cong_zero1,axiom,point(fb)).
+fof(cong_zero2,axiom,point(fa)). \ No newline at end of file
diff --git a/test/golden/geometry/generating tasks.golden b/test/golden/geometry/generating tasks.golden
new file mode 100644
index 0000000..a2869ea
--- /dev/null
+++ b/test/golden/geometry/generating tasks.golden
@@ -0,0 +1,14419 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "upperdim"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "innerpasch"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "betw_id"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "five_segment"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "aprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "bprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "OFS" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "aprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "bprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "ofs"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ ]
+ )
+ )
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "OFS" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "segment_construction"
+ , Quantified Universally
+ ( Scope
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_id"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_pseudotransitive"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_refl_swap"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "collinear"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_refl1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ,
+ ( Marker "cong_refl2"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "cong_refl"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "cong_refl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "upperdim"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "innerpasch"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "betw_id"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "five_segment"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "aprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "bprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "OFS" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "aprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "bprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "ofs"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ ]
+ )
+ )
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "OFS" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "segment_construction"
+ , Quantified Universally
+ ( Scope
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_id"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_pseudotransitive"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_refl_swap"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "collinear"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_sym1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ,
+ ( Marker "cong_sym2"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ,
+ ( Marker "cong_sym3"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ ,
+ ( Marker "cong_sym4"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ,
+ ( Marker "cong_sym5"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "cong_sym"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ , TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "cong_sym"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_refl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "upperdim"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "innerpasch"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "betw_id"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "five_segment"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "aprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "bprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "OFS" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "aprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "bprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "ofs"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ ]
+ )
+ )
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "OFS" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "segment_construction"
+ , Quantified Universally
+ ( Scope
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_id"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_pseudotransitive"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_refl_swap"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "collinear"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_transitive1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "f" )
+ ]
+ )
+ ,
+ ( Marker "cong_transitive2"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "e" )
+ ]
+ )
+ ,
+ ( Marker "cong_transitive3"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ,
+ ( Marker "cong_transitive4"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ ,
+ ( Marker "cong_transitive5"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ,
+ ( Marker "cong_transitive6"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "cong_transitive"
+ , taskConjecture = Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ , TermVar
+ ( NamedVar "e" )
+ , TermVar
+ ( NamedVar "f" )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "e" )
+ , TermVar
+ ( NamedVar "f" )
+ ]
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "cong_transitive"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_sym"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_refl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "upperdim"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "innerpasch"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "betw_id"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "five_segment"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "aprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "bprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "OFS" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "aprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "bprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "ofs"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ ]
+ )
+ )
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "OFS" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "segment_construction"
+ , Quantified Universally
+ ( Scope
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_id"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_pseudotransitive"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_refl_swap"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "collinear"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_shuffle_left1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ,
+ ( Marker "cong_shuffle_left2"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ ,
+ ( Marker "cong_shuffle_left3"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ,
+ ( Marker "cong_shuffle_left4"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "cong_shuffle_left"
+ , taskConjecture = Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "cong_shuffle_left"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_transitive"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_sym"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_refl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "upperdim"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "innerpasch"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "betw_id"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "five_segment"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "aprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "bprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "OFS" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "aprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "bprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "ofs"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ ]
+ )
+ )
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "OFS" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "segment_construction"
+ , Quantified Universally
+ ( Scope
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_id"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_pseudotransitive"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_refl_swap"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "collinear"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_shuffle_right1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ,
+ ( Marker "cong_shuffle_right2"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ ,
+ ( Marker "cong_shuffle_right3"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ,
+ ( Marker "cong_shuffle_right4"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "cong_shuffle_right"
+ , taskConjecture = Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "d" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "cong_shuffle_right"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_shuffle_left"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_transitive"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_sym"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_refl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "upperdim"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "innerpasch"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "betw_id"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "five_segment"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "aprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "bprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "OFS" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "aprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "bprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "cprime" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "dprime" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "ofs"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ ]
+ )
+ )
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "OFS" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "u" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "r" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "v" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "p" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "segment_construction"
+ , Quantified Universally
+ ( Scope
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_id"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_pseudotransitive"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ ]
+ )
+ )
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "d" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "e" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_refl_swap"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "collinear"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cong_zero1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ,
+ ( Marker "cong_zero2"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "cong_zero"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ }
+] \ No newline at end of file
diff --git a/test/golden/geometry/glossing.golden b/test/golden/geometry/glossing.golden
new file mode 100644
index 0000000..f1e1bd2
--- /dev/null
+++ b/test/golden/geometry/glossing.golden
@@ -0,0 +1,2187 @@
+[ BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "collinear" )
+ ( DefnPredicate []
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ ( NamedVar "a" :|
+ [ NamedVar "b"
+ , NamedVar "c"
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_refl_swap" )
+ ( Axiom
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ]
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 10
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_pseudotransitive" )
+ ( Axiom
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ]
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ , TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ , TermVar
+ ( NamedVar "e" )
+ , TermVar
+ ( NamedVar "f" )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "e" )
+ , TermVar
+ ( NamedVar "f" )
+ ]
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 15
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_id" )
+ ( Axiom
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ ]
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 21
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "segment_construction" )
+ ( Axiom []
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "a" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "b" )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "b" )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "d" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "e" )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 26
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "ofs" )
+ ( DefnPredicate
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "z" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "r" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "u" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "v" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "w" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "p" )
+ ]
+ )
+ ]
+ ( PredicateSymbol "OFS" )
+ ( NamedVar "x" :|
+ [ NamedVar "y"
+ , NamedVar "z"
+ , NamedVar "r"
+ , NamedVar "u"
+ , NamedVar "v"
+ , NamedVar "w"
+ , NamedVar "p"
+ ]
+ )
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "z" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( NamedVar "u" )
+ , TermVar
+ ( NamedVar "v" )
+ , TermVar
+ ( NamedVar "w" )
+ ]
+ )
+ )
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "u" )
+ , TermVar
+ ( NamedVar "v" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "z" )
+ , TermVar
+ ( NamedVar "v" )
+ , TermVar
+ ( NamedVar "w" )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "r" )
+ , TermVar
+ ( NamedVar "u" )
+ , TermVar
+ ( NamedVar "p" )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "r" )
+ , TermVar
+ ( NamedVar "v" )
+ , TermVar
+ ( NamedVar "p" )
+ ]
+ )
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 39
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "five_segment" )
+ ( Axiom
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "aprime" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "bprime" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "cprime" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "dprime" )
+ ]
+ )
+ ]
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "OFS" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ , TermVar
+ ( NamedVar "aprime" )
+ , TermVar
+ ( NamedVar "bprime" )
+ , TermVar
+ ( NamedVar "cprime" )
+ , TermVar
+ ( NamedVar "dprime" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ , TermVar
+ ( NamedVar "cprime" )
+ , TermVar
+ ( NamedVar "dprime" )
+ ]
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 46
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "betw_id" )
+ ( Axiom
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ]
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 52
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "innerpasch" )
+ ( Axiom
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "z" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "u" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "v" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "w" )
+ ]
+ )
+ ]
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "u" )
+ , TermVar
+ ( NamedVar "z" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "v" )
+ , TermVar
+ ( NamedVar "z" )
+ ]
+ )
+ )
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "u" )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "y" )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Betw" )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "v" )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "x" )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 66
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "upperdim" )
+ ( Axiom
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "z" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "u" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "v" )
+ ]
+ )
+ ]
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "u" )
+ , TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "v" )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "u" )
+ , TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "v" )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "z" )
+ , TermVar
+ ( NamedVar "u" )
+ , TermVar
+ ( NamedVar "z" )
+ , TermVar
+ ( NamedVar "v" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "neq" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "u" )
+ , TermVar
+ ( NamedVar "v" )
+ ]
+ )
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "z" )
+ ]
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 82
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_refl" )
+ ( Lemma
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ]
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 88
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_sym" )
+ ( Lemma
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ]
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ , TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 95
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_transitive" )
+ ( Lemma
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "e" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "f" )
+ ]
+ )
+ ]
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ , TermVar
+ ( NamedVar "e" )
+ , TermVar
+ ( NamedVar "f" )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "e" )
+ , TermVar
+ ( NamedVar "f" )
+ ]
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 102
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_shuffle_left" )
+ ( Lemma
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ]
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 109
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_shuffle_right" )
+ ( Lemma
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ]
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ , TermVar
+ ( NamedVar "d" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "d" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 116
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_zero" )
+ ( Lemma
+ [ Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ ]
+ )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ]
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateSymbol "Cong" )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/geometry/parsing.golden b/test/golden/geometry/parsing.golden
new file mode 100644
index 0000000..b57f76c
--- /dev/null
+++ b/test/golden/geometry/parsing.golden
@@ -0,0 +1,1198 @@
+[ BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "collinear" )
+ ( Defn []
+ ( DefnAdj Nothing
+ ( NamedVar "a" )
+ ( Adj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ [ NamedVar "b"
+ , NamedVar "c"
+ ]
+ )
+ )
+ ( StmtConnected Disjunction
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Betw" 3 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "c" )
+ ]
+ )
+ )
+ )
+ ( StmtConnected Disjunction
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Betw" 3 )
+ ( ExprVar
+ ( NamedVar "b" ) :|
+ [ ExprVar
+ ( NamedVar "c" )
+ , ExprVar
+ ( NamedVar "a" )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Betw" 3 )
+ ( ExprVar
+ ( NamedVar "c" ) :|
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_refl_swap" )
+ ( Axiom
+ [ AsmLetNoun
+ ( NamedVar "a" :|
+ [ NamedVar "b" ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "a" )
+ ]
+ )
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 10
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_pseudotransitive" )
+ ( Axiom
+ [ AsmLetNoun
+ ( NamedVar "a" :|
+ [ NamedVar "b"
+ , NamedVar "c"
+ , NamedVar "d"
+ ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtConnected Implication
+ ( StmtConnected Conjunction
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "c" ) :|
+ [ ExprVar
+ ( NamedVar "d" )
+ , ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "c" ) :|
+ [ ExprVar
+ ( NamedVar "d" )
+ , ExprVar
+ ( NamedVar "e" )
+ , ExprVar
+ ( NamedVar "f" )
+ ]
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "e" )
+ , ExprVar
+ ( NamedVar "f" )
+ ]
+ )
+ )
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 15
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_id" )
+ ( Axiom
+ [ AsmLetNoun
+ ( NamedVar "a" :|
+ [ NamedVar "b"
+ , NamedVar "c"
+ ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtConnected Implication
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "c" )
+ , ExprVar
+ ( NamedVar "c" )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "b" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 21
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "segment_construction" )
+ ( Axiom []
+ ( StmtExists NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ )
+ (
+ [ NamedVar "c" ]
+ ) ( [] )
+ ( Just
+ ( StmtConnected Conjunction
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Betw" 3 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "c" )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "b" ) :|
+ [ ExprVar
+ ( NamedVar "c" )
+ , ExprVar
+ ( NamedVar "d" )
+ , ExprVar
+ ( NamedVar "e" )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 26
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "ofs" )
+ ( Defn
+ [ AsmLetNoun
+ ( NamedVar "x" :|
+ [ NamedVar "y"
+ , NamedVar "z"
+ , NamedVar "r"
+ , NamedVar "u"
+ , NamedVar "v"
+ , NamedVar "w"
+ , NamedVar "p"
+ ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( DefnSymbolicPredicate
+ ( PrefixPredicate "OFS" 8 )
+ ( NamedVar "x" :|
+ [ NamedVar "y"
+ , NamedVar "z"
+ , NamedVar "r"
+ , NamedVar "u"
+ , NamedVar "v"
+ , NamedVar "w"
+ , NamedVar "p"
+ ]
+ )
+ )
+ ( StmtConnected Conjunction
+ ( StmtFormula
+ ( Connected Conjunction
+ ( FormulaPredicate
+ ( PrefixPredicate "Betw" 3 )
+ ( ExprVar
+ ( NamedVar "x" ) :|
+ [ ExprVar
+ ( NamedVar "y" )
+ , ExprVar
+ ( NamedVar "z" )
+ ]
+ )
+ )
+ ( FormulaPredicate
+ ( PrefixPredicate "Betw" 3 )
+ ( ExprVar
+ ( NamedVar "u" ) :|
+ [ ExprVar
+ ( NamedVar "v" )
+ , ExprVar
+ ( NamedVar "w" )
+ ]
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "x" ) :|
+ [ ExprVar
+ ( NamedVar "y" )
+ , ExprVar
+ ( NamedVar "u" )
+ , ExprVar
+ ( NamedVar "v" )
+ ]
+ )
+ )
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "y" ) :|
+ [ ExprVar
+ ( NamedVar "z" )
+ , ExprVar
+ ( NamedVar "v" )
+ , ExprVar
+ ( NamedVar "w" )
+ ]
+ )
+ )
+ )
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "x" ) :|
+ [ ExprVar
+ ( NamedVar "r" )
+ , ExprVar
+ ( NamedVar "u" )
+ , ExprVar
+ ( NamedVar "p" )
+ ]
+ )
+ )
+ )
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "y" ) :|
+ [ ExprVar
+ ( NamedVar "r" )
+ , ExprVar
+ ( NamedVar "v" )
+ , ExprVar
+ ( NamedVar "p" )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 39
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "five_segment" )
+ ( Axiom
+ [ AsmLetNoun
+ ( NamedVar "a" :|
+ [ NamedVar "b"
+ , NamedVar "c"
+ , NamedVar "d"
+ , NamedVar "aprime"
+ , NamedVar "bprime"
+ , NamedVar "cprime"
+ , NamedVar "dprime"
+ ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtConnected Implication
+ ( StmtConnected Conjunction
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "OFS" 8 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "c" )
+ , ExprVar
+ ( NamedVar "d" )
+ , ExprVar
+ ( NamedVar "aprime" )
+ , ExprVar
+ ( NamedVar "bprime" )
+ , ExprVar
+ ( NamedVar "cprime" )
+ , ExprVar
+ ( NamedVar "dprime" )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "neq" )
+ )
+ ( ExprVar
+ ( NamedVar "b" ) :| []
+ )
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "c" ) :|
+ [ ExprVar
+ ( NamedVar "d" )
+ , ExprVar
+ ( NamedVar "cprime" )
+ , ExprVar
+ ( NamedVar "dprime" )
+ ]
+ )
+ )
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 46
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "betw_id" )
+ ( Axiom
+ [ AsmLetNoun
+ ( NamedVar "a" :|
+ [ NamedVar "b" ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtConnected Implication
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Betw" 3 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "a" )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "b" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 52
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "innerpasch" )
+ ( Axiom
+ [ AsmLetNoun
+ ( NamedVar "x" :|
+ [ NamedVar "y"
+ , NamedVar "z"
+ , NamedVar "u"
+ , NamedVar "v"
+ , NamedVar "w"
+ ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtConnected Implication
+ ( StmtConnected Conjunction
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Betw" 3 )
+ ( ExprVar
+ ( NamedVar "x" ) :|
+ [ ExprVar
+ ( NamedVar "u" )
+ , ExprVar
+ ( NamedVar "z" )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Betw" 3 )
+ ( ExprVar
+ ( NamedVar "y" ) :|
+ [ ExprVar
+ ( NamedVar "v" )
+ , ExprVar
+ ( NamedVar "z" )
+ ]
+ )
+ )
+ )
+ )
+ ( StmtExists NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ )
+ (
+ [ NamedVar "w" ]
+ ) ( [] )
+ ( Just
+ ( StmtConnected Conjunction
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Betw" 3 )
+ ( ExprVar
+ ( NamedVar "u" ) :|
+ [ ExprVar
+ ( NamedVar "w" )
+ , ExprVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Betw" 3 )
+ ( ExprVar
+ ( NamedVar "v" ) :|
+ [ ExprVar
+ ( NamedVar "w" )
+ , ExprVar
+ ( NamedVar "x" )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 66
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "upperdim" )
+ ( Axiom
+ [ AsmLetNoun
+ ( NamedVar "x" :|
+ [ NamedVar "y"
+ , NamedVar "z"
+ , NamedVar "u"
+ , NamedVar "v"
+ ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtConnected Implication
+ ( StmtConnected Conjunction
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "x" ) :|
+ [ ExprVar
+ ( NamedVar "u" )
+ , ExprVar
+ ( NamedVar "x" )
+ , ExprVar
+ ( NamedVar "v" )
+ ]
+ )
+ )
+ )
+ ( StmtConnected Conjunction
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "y" ) :|
+ [ ExprVar
+ ( NamedVar "u" )
+ , ExprVar
+ ( NamedVar "y" )
+ , ExprVar
+ ( NamedVar "v" )
+ ]
+ )
+ )
+ )
+ ( StmtConnected Conjunction
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "z" ) :|
+ [ ExprVar
+ ( NamedVar "u" )
+ , ExprVar
+ ( NamedVar "z" )
+ , ExprVar
+ ( NamedVar "v" )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "u" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "neq" )
+ )
+ ( ExprVar
+ ( NamedVar "v" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ( StmtVerbPhrase
+ ( TermExpr
+ ( ExprVar
+ ( NamedVar "x" )
+ ) :| []
+ )
+ ( VPAdj
+ ( Adj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ [ TermExpr
+ ( ExprVar
+ ( NamedVar "y" )
+ )
+ , TermExpr
+ ( ExprVar
+ ( NamedVar "z" )
+ )
+ ] :| []
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 82
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_refl" )
+ ( Lemma
+ [ AsmLetNoun
+ ( NamedVar "a" :|
+ [ NamedVar "b" ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 88
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_sym" )
+ ( Lemma
+ [ AsmLetNoun
+ ( NamedVar "a" :|
+ [ NamedVar "b"
+ , NamedVar "c"
+ , NamedVar "d"
+ ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ , AsmSuppose
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "c" )
+ , ExprVar
+ ( NamedVar "d" )
+ ]
+ )
+ )
+ )
+ ]
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "c" ) :|
+ [ ExprVar
+ ( NamedVar "d" )
+ , ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 95
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_transitive" )
+ ( Lemma
+ [ AsmLetNoun
+ ( NamedVar "a" :|
+ [ NamedVar "b"
+ , NamedVar "c"
+ , NamedVar "d"
+ , NamedVar "e"
+ , NamedVar "f"
+ ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtConnected Implication
+ ( StmtConnected Conjunction
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "c" )
+ , ExprVar
+ ( NamedVar "d" )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "c" ) :|
+ [ ExprVar
+ ( NamedVar "d" )
+ , ExprVar
+ ( NamedVar "e" )
+ , ExprVar
+ ( NamedVar "f" )
+ ]
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "e" )
+ , ExprVar
+ ( NamedVar "f" )
+ ]
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 102
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_shuffle_left" )
+ ( Lemma
+ [ AsmLetNoun
+ ( NamedVar "a" :|
+ [ NamedVar "b"
+ , NamedVar "c"
+ , NamedVar "d"
+ ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtConnected Implication
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "c" )
+ , ExprVar
+ ( NamedVar "d" )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "b" ) :|
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "c" )
+ , ExprVar
+ ( NamedVar "d" )
+ ]
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 109
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_shuffle_right" )
+ ( Lemma
+ [ AsmLetNoun
+ ( NamedVar "a" :|
+ [ NamedVar "b"
+ , NamedVar "c"
+ , NamedVar "d"
+ ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtConnected Implication
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "c" )
+ , ExprVar
+ ( NamedVar "d" )
+ ]
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "b" ) :|
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "d" )
+ , ExprVar
+ ( NamedVar "c" )
+ ]
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/geometry.tex"
+ , sourceLine = Pos 116
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cong_zero" )
+ ( Lemma
+ [ AsmLetNoun
+ ( NamedVar "a" :|
+ [ NamedVar "b" ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "point" )
+ ]
+ , pl =
+ [ Just
+ ( Word "points" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtFormula
+ ( FormulaPredicate
+ ( PrefixPredicate "Cong" 4 )
+ ( ExprVar
+ ( NamedVar "a" ) :|
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/geometry/scanning.golden b/test/golden/geometry/scanning.golden
new file mode 100644
index 0000000..c041c1a
--- /dev/null
+++ b/test/golden/geometry/scanning.golden
@@ -0,0 +1,15 @@
+[ ScanAdj
+ [ Just
+ ( Word "collinear" )
+ , Just
+ ( Word "with" )
+ , Nothing
+ , Just
+ ( Word "and" )
+ , Nothing
+ ]
+ ( Marker "collinear" )
+, ScanPrefixPredicate
+ ( PrefixPredicate "OFS" 8 )
+ ( Marker "ofs" )
+] \ No newline at end of file
diff --git a/test/golden/geometry/tokenizing.golden b/test/golden/geometry/tokenizing.golden
new file mode 100644
index 0000000..ab899fe
--- /dev/null
+++ b/test/golden/geometry/tokenizing.golden
@@ -0,0 +1,975 @@
+[ BeginEnv "definition"
+, Label "collinear"
+, BeginEnv "math"
+, Variable "a"
+, EndEnv "math"
+, Word "is"
+, Word "collinear"
+, Word "with"
+, BeginEnv "math"
+, Variable "b"
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Variable "c"
+, EndEnv "math"
+, Word "iff"
+, BeginEnv "math"
+, Command "Betw"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "or"
+, BeginEnv "math"
+, Command "Betw"
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "or"
+, BeginEnv "math"
+, Command "Betw"
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "axiom"
+, BracketL
+, Word "reflexivity"
+, Word "of"
+, Word "congruence"
+, BracketR
+, Label "cong_refl_swap"
+, Word "let"
+, BeginEnv "math"
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, Word "then"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "axiom"
+, BeginEnv "axiom"
+, BracketL
+, Word "pseudotransitivity"
+, Word "of"
+, Word "congruence"
+, BracketR
+, Label "cong_pseudotransitive"
+, Word "let"
+, BeginEnv "math"
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, Symbol ","
+, Variable "c"
+, Symbol ","
+, Variable "d"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, Word "if"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "d"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "d"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "e"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "f"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "then"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "e"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "f"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "axiom"
+, BeginEnv "axiom"
+, BracketL
+, Word "identity"
+, Word "of"
+, Word "congruence"
+, BracketR
+, Label "cong_id"
+, Word "let"
+, BeginEnv "math"
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, Symbol ","
+, Variable "c"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, Word "if"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "then"
+, BeginEnv "math"
+, Variable "a"
+, Symbol "="
+, Variable "b"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "axiom"
+, BeginEnv "axiom"
+, BracketL
+, Word "segment"
+, Word "construction"
+, BracketR
+, Label "segment_construction"
+, Word "there"
+, Word "exists"
+, Word "a"
+, Word "point"
+, BeginEnv "math"
+, Variable "c"
+, EndEnv "math"
+, Word "such"
+, Word "that"
+, BeginEnv "math"
+, Command "Betw"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "d"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "e"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "axiom"
+, BeginEnv "definition"
+, Label "ofs"
+, Word "let"
+, BeginEnv "math"
+, Variable "x"
+, Symbol ","
+, Variable "y"
+, Symbol ","
+, Variable "z"
+, Symbol ","
+, Variable "r"
+, Symbol ","
+, Variable "u"
+, Symbol ","
+, Variable "v"
+, Symbol ","
+, Variable "w"
+, Symbol ","
+, Variable "p"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, BeginEnv "math"
+, Command "OFS"
+, InvisibleBraceL
+, Variable "x"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "y"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "z"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "r"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "u"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "v"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "w"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "p"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "if"
+, Word "and"
+, Word "only"
+, Word "if"
+, BeginEnv "math"
+, Command "Betw"
+, InvisibleBraceL
+, Variable "x"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "y"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "z"
+, InvisibleBraceR
+, Command "land"
+, Command "Betw"
+, InvisibleBraceL
+, Variable "u"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "v"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "w"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "x"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "y"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "u"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "v"
+, InvisibleBraceR
+, Command "land"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "y"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "z"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "v"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "w"
+, InvisibleBraceR
+, Command "land"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "x"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "r"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "u"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "p"
+, InvisibleBraceR
+, Command "land"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "y"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "r"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "v"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "p"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "axiom"
+, BracketL
+, Word "five"
+, Word "segment"
+, Word "axiom"
+, BracketR
+, Label "five_segment"
+, Word "let"
+, BeginEnv "math"
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, Symbol ","
+, Variable "c"
+, Symbol ","
+, Variable "d"
+, Symbol ","
+, Variable "aprime"
+, Symbol ","
+, Variable "bprime"
+, Symbol ","
+, Variable "cprime"
+, Symbol ","
+, Variable "dprime"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, Word "if"
+, BeginEnv "math"
+, Command "OFS"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "d"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "aprime"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "bprime"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "cprime"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "dprime"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Variable "a"
+, Command "neq"
+, Variable "b"
+, EndEnv "math"
+, Word "then"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "d"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "cprime"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "dprime"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "axiom"
+, BeginEnv "axiom"
+, BracketL
+, Word "identity"
+, Word "of"
+, Word "betweenness"
+, BracketR
+, Label "betw_id"
+, Word "let"
+, BeginEnv "math"
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, Word "if"
+, BeginEnv "math"
+, Command "Betw"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "then"
+, BeginEnv "math"
+, Variable "a"
+, Symbol "="
+, Variable "b"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "axiom"
+, BeginEnv "axiom"
+, BracketL
+, Word "inner"
+, Word "pasch"
+, BracketR
+, Label "innerpasch"
+, Word "let"
+, BeginEnv "math"
+, Variable "x"
+, Symbol ","
+, Variable "y"
+, Symbol ","
+, Variable "z"
+, Symbol ","
+, Variable "u"
+, Symbol ","
+, Variable "v"
+, Symbol ","
+, Variable "w"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, Word "if"
+, BeginEnv "math"
+, Command "Betw"
+, InvisibleBraceL
+, Variable "x"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "u"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "z"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Command "Betw"
+, InvisibleBraceL
+, Variable "y"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "v"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "z"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "then"
+, Word "there"
+, Word "exists"
+, Word "a"
+, Word "point"
+, BeginEnv "math"
+, Variable "w"
+, EndEnv "math"
+, Word "such"
+, Word "that"
+, BeginEnv "math"
+, Command "Betw"
+, InvisibleBraceL
+, Variable "u"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "w"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "y"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Command "Betw"
+, InvisibleBraceL
+, Variable "v"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "w"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "x"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "axiom"
+, BeginEnv "axiom"
+, BracketL
+, Word "upper"
+, Word "dimension"
+, BracketR
+, Label "upperdim"
+, Word "let"
+, BeginEnv "math"
+, Variable "x"
+, Symbol ","
+, Variable "y"
+, Symbol ","
+, Variable "z"
+, Symbol ","
+, Variable "u"
+, Symbol ","
+, Variable "v"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, Word "if"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "x"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "u"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "x"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "v"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "y"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "u"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "y"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "v"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "z"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "u"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "z"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "v"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Variable "u"
+, Command "neq"
+, Variable "v"
+, EndEnv "math"
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "is"
+, Word "collinear"
+, Word "with"
+, BeginEnv "math"
+, Variable "y"
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Variable "z"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "axiom"
+, BeginEnv "lemma"
+, BracketL
+, Word "reflexivity"
+, Word "of"
+, Word "congruence"
+, BracketR
+, Label "cong_refl"
+, Word "let"
+, BeginEnv "math"
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, Word "then"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "lemma"
+, BeginEnv "lemma"
+, BracketL
+, Word "symmetry"
+, Word "of"
+, Word "congruence"
+, BracketR
+, Label "cong_sym"
+, Word "let"
+, BeginEnv "math"
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, Symbol ","
+, Variable "c"
+, Symbol ","
+, Variable "d"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, Word "suppose"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "d"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, Word "then"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "d"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "lemma"
+, BeginEnv "lemma"
+, BracketL
+, Word "transitivity"
+, Word "of"
+, Word "congruence"
+, BracketR
+, Label "cong_transitive"
+, Word "let"
+, BeginEnv "math"
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, Symbol ","
+, Variable "c"
+, Symbol ","
+, Variable "d"
+, Symbol ","
+, Variable "e"
+, Symbol ","
+, Variable "f"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, Word "if"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "d"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "d"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "e"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "f"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "then"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "e"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "f"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "lemma"
+, BeginEnv "lemma"
+, Label "cong_shuffle_left"
+, Word "let"
+, BeginEnv "math"
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, Symbol ","
+, Variable "c"
+, Symbol ","
+, Variable "d"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, Word "if"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "d"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "then"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "d"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "lemma"
+, BeginEnv "lemma"
+, Label "cong_shuffle_right"
+, Word "let"
+, BeginEnv "math"
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, Symbol ","
+, Variable "c"
+, Symbol ","
+, Variable "d"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, Word "if"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "d"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "then"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "d"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "c"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "lemma"
+, BeginEnv "lemma"
+, BracketL
+, Word "zero"
+, Word "segments"
+, Word "are"
+, Word "congruent"
+, BracketR
+, Label "cong_zero"
+, Word "let"
+, BeginEnv "math"
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, EndEnv "math"
+, Word "be"
+, Word "points"
+, Symbol "."
+, Word "then"
+, BeginEnv "math"
+, Command "Cong"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "b"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "lemma"
+] \ No newline at end of file
diff --git a/test/golden/geometry/verification.golden b/test/golden/geometry/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/geometry/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/indefinite-terms/encoding tasks.golden b/test/golden/indefinite-terms/encoding tasks.golden
new file mode 100644
index 0000000..54d9e2a
--- /dev/null
+++ b/test/golden/indefinite-terms/encoding tasks.golden
@@ -0,0 +1,3 @@
+fof(indefinite_test_forall,conjecture,$true).
+------------------
+fof(indefinite_test_exists,conjecture,$true). \ No newline at end of file
diff --git a/test/golden/indefinite-terms/generating tasks.golden b/test/golden/indefinite-terms/generating tasks.golden
new file mode 100644
index 0000000..1f573ac
--- /dev/null
+++ b/test/golden/indefinite-terms/generating tasks.golden
@@ -0,0 +1,13 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses = []
+ , taskConjectureLabel = Marker "indefinite_test_forall"
+ , taskConjecture = PropositionalConstant IsTop
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses = []
+ , taskConjectureLabel = Marker "indefinite_test_exists"
+ , taskConjecture = PropositionalConstant IsTop
+ }
+] \ No newline at end of file
diff --git a/test/golden/indefinite-terms/glossing.golden b/test/golden/indefinite-terms/glossing.golden
new file mode 100644
index 0000000..b7d3d2a
--- /dev/null
+++ b/test/golden/indefinite-terms/glossing.golden
@@ -0,0 +1,31 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/indefinite-terms.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "indefinite_test_forall" )
+ ( Lemma []
+ ( Quantified Universally
+ ( Scope
+ ( Connected Implication ( PropositionalConstant IsTop ) ( PropositionalConstant IsTop ) )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/indefinite-terms.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "indefinite_test_exists" )
+ ( Lemma []
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction ( PropositionalConstant IsTop ) ( PropositionalConstant IsTop ) )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/indefinite-terms/parsing.golden b/test/golden/indefinite-terms/parsing.golden
new file mode 100644
index 0000000..8c468ab
--- /dev/null
+++ b/test/golden/indefinite-terms/parsing.golden
@@ -0,0 +1,81 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/indefinite-terms.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "indefinite_test_forall" )
+ ( Lemma []
+ ( StmtNoun
+ ( TermQuantified Universally NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "set" )
+ ]
+ , pl =
+ [ Just
+ ( Word "sets" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "set" )
+ ]
+ , pl =
+ [ Just
+ ( Word "sets" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/indefinite-terms.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "indefinite_test_exists" )
+ ( Lemma []
+ ( StmtNoun
+ ( TermQuantified Existentially NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "set" )
+ ]
+ , pl =
+ [ Just
+ ( Word "sets" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "set" )
+ ]
+ , pl =
+ [ Just
+ ( Word "sets" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/indefinite-terms/scanning.golden b/test/golden/indefinite-terms/scanning.golden
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/test/golden/indefinite-terms/scanning.golden
@@ -0,0 +1 @@
+[] \ No newline at end of file
diff --git a/test/golden/indefinite-terms/tokenizing.golden b/test/golden/indefinite-terms/tokenizing.golden
new file mode 100644
index 0000000..39b9bcf
--- /dev/null
+++ b/test/golden/indefinite-terms/tokenizing.golden
@@ -0,0 +1,19 @@
+[ BeginEnv "theorem"
+, Label "indefinite_test_forall"
+, Word "every"
+, Word "set"
+, Word "is"
+, Word "a"
+, Word "set"
+, Symbol "."
+, EndEnv "theorem"
+, BeginEnv "theorem"
+, Label "indefinite_test_exists"
+, Word "some"
+, Word "set"
+, Word "is"
+, Word "a"
+, Word "set"
+, Symbol "."
+, EndEnv "theorem"
+] \ No newline at end of file
diff --git a/test/golden/indefinite-terms/verification.golden b/test/golden/indefinite-terms/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/indefinite-terms/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/inductive/encoding tasks.golden b/test/golden/inductive/encoding tasks.golden
new file mode 100644
index 0000000..2e9a2d5
--- /dev/null
+++ b/test/golden/inductive/encoding tasks.golden
@@ -0,0 +1,170 @@
+fof(fin,conjecture,elem(emptyset,pow(fA))).
+fof(lmao,axiom,![Xx]:elem(Xx,emptyset)).
+fof(preimg,axiom,![XR,XA]:preimg(XR,XA)=emptyset).
+fof(fld,axiom,![XR]:fld(XR)=emptyset).
+fof(times,axiom,![XA,XB]:times(XA,XB)=emptyset).
+fof(cons,axiom,![Xa,XB]:cons(Xa,XB)=emptyset).
+fof(pow,axiom,![XA]:pow(XA)=emptyset).
+fof(subseteq,axiom,![XA,XB]:(subseteq(XA,XB)<=>XA=XB)).
+------------------
+fof(fin,conjecture,(elem(fa,fA)&elem(fB,pow(fA)))=>elem(cons(fa,fB),pow(fA))).
+fof(lmao,axiom,![Xx]:elem(Xx,emptyset)).
+fof(preimg,axiom,![XR,XA]:preimg(XR,XA)=emptyset).
+fof(fld,axiom,![XR]:fld(XR)=emptyset).
+fof(times,axiom,![XA,XB]:times(XA,XB)=emptyset).
+fof(cons,axiom,![Xa,XB]:cons(Xa,XB)=emptyset).
+fof(pow,axiom,![XA]:pow(XA)=emptyset).
+fof(subseteq,axiom,![XA,XB]:(subseteq(XA,XB)<=>XA=XB)).
+------------------
+fof(fin_mono,conjecture,subseteq(fin(fA),fin(fB))).
+fof(fin,axiom,![Xa,XA,XB]:((elem(Xa,XA)&elem(XB,fin(XA)))=>elem(cons(Xa,XB),fin(XA)))).
+fof(fin,axiom,![XA]:elem(emptyset,fin(XA))).
+fof(fin,axiom,![XA]:subseteq(fin(XA),pow(XA))).
+fof(lmao,axiom,![Xx]:elem(Xx,emptyset)).
+fof(preimg,axiom,![XR,XA]:preimg(XR,XA)=emptyset).
+fof(fld,axiom,![XR]:fld(XR)=emptyset).
+fof(times,axiom,![XA,XB]:times(XA,XB)=emptyset).
+fof(cons,axiom,![Xa,XB]:cons(Xa,XB)=emptyset).
+fof(pow,axiom,![XA]:pow(XA)=emptyset).
+fof(subseteq,axiom,![XA,XB]:(subseteq(XA,XB)<=>XA=XB)).
+fof(fin_mono1,axiom,subseteq(fA,fB)).
+------------------
+fof(tracl,conjecture,elem(fw,fR)=>elem(fw,times(fld(fR),fld(fR)))).
+fof(fin_mono,axiom,![XA,XB]:(subseteq(XA,XB)=>subseteq(fin(XA),fin(XB)))).
+fof(fin,axiom,![Xa,XA,XB]:((elem(Xa,XA)&elem(XB,fin(XA)))=>elem(cons(Xa,XB),fin(XA)))).
+fof(fin,axiom,![XA]:elem(emptyset,fin(XA))).
+fof(fin,axiom,![XA]:subseteq(fin(XA),pow(XA))).
+fof(lmao,axiom,![Xx]:elem(Xx,emptyset)).
+fof(preimg,axiom,![XR,XA]:preimg(XR,XA)=emptyset).
+fof(fld,axiom,![XR]:fld(XR)=emptyset).
+fof(times,axiom,![XA,XB]:times(XA,XB)=emptyset).
+fof(cons,axiom,![Xa,XB]:cons(Xa,XB)=emptyset).
+fof(pow,axiom,![XA]:pow(XA)=emptyset).
+fof(subseteq,axiom,![XA,XB]:(subseteq(XA,XB)<=>XA=XB)).
+------------------
+fof(tracl,conjecture,(elem(pair(fa,fb),times(fld(fR),fld(fR)))&elem(pair(fb,fc),fR))=>elem(pair(fa,fc),times(fld(fR),fld(fR)))).
+fof(fin_mono,axiom,![XA,XB]:(subseteq(XA,XB)=>subseteq(fin(XA),fin(XB)))).
+fof(fin,axiom,![Xa,XA,XB]:((elem(Xa,XA)&elem(XB,fin(XA)))=>elem(cons(Xa,XB),fin(XA)))).
+fof(fin,axiom,![XA]:elem(emptyset,fin(XA))).
+fof(fin,axiom,![XA]:subseteq(fin(XA),pow(XA))).
+fof(lmao,axiom,![Xx]:elem(Xx,emptyset)).
+fof(preimg,axiom,![XR,XA]:preimg(XR,XA)=emptyset).
+fof(fld,axiom,![XR]:fld(XR)=emptyset).
+fof(times,axiom,![XA,XB]:times(XA,XB)=emptyset).
+fof(cons,axiom,![Xa,XB]:cons(Xa,XB)=emptyset).
+fof(pow,axiom,![XA]:pow(XA)=emptyset).
+fof(subseteq,axiom,![XA,XB]:(subseteq(XA,XB)<=>XA=XB)).
+------------------
+fof(quasirefltracl,conjecture,elem(fa,fld(fR))=>elem(pair(fa,fa),times(fld(fR),fld(fR)))).
+fof(tracl,axiom,![Xa,Xb,XR,Xc]:((elem(pair(Xa,Xb),tracl(XR))&elem(pair(Xb,Xc),XR))=>elem(pair(Xa,Xc),tracl(XR)))).
+fof(tracl,axiom,![Xw,XR]:(elem(Xw,XR)=>elem(Xw,tracl(XR)))).
+fof(tracl,axiom,![XR]:subseteq(tracl(XR),times(fld(XR),fld(XR)))).
+fof(fin_mono,axiom,![XA,XB]:(subseteq(XA,XB)=>subseteq(fin(XA),fin(XB)))).
+fof(fin,axiom,![Xa,XA,XB]:((elem(Xa,XA)&elem(XB,fin(XA)))=>elem(cons(Xa,XB),fin(XA)))).
+fof(fin,axiom,![XA]:elem(emptyset,fin(XA))).
+fof(fin,axiom,![XA]:subseteq(fin(XA),pow(XA))).
+fof(lmao,axiom,![Xx]:elem(Xx,emptyset)).
+fof(preimg,axiom,![XR,XA]:preimg(XR,XA)=emptyset).
+fof(fld,axiom,![XR]:fld(XR)=emptyset).
+fof(times,axiom,![XA,XB]:times(XA,XB)=emptyset).
+fof(cons,axiom,![Xa,XB]:cons(Xa,XB)=emptyset).
+fof(pow,axiom,![XA]:pow(XA)=emptyset).
+fof(subseteq,axiom,![XA,XB]:(subseteq(XA,XB)<=>XA=XB)).
+------------------
+fof(quasirefltracl,conjecture,(elem(pair(fa,fb),times(fld(fR),fld(fR)))&elem(pair(fb,fc),fR))=>elem(pair(fa,fc),times(fld(fR),fld(fR)))).
+fof(tracl,axiom,![Xa,Xb,XR,Xc]:((elem(pair(Xa,Xb),tracl(XR))&elem(pair(Xb,Xc),XR))=>elem(pair(Xa,Xc),tracl(XR)))).
+fof(tracl,axiom,![Xw,XR]:(elem(Xw,XR)=>elem(Xw,tracl(XR)))).
+fof(tracl,axiom,![XR]:subseteq(tracl(XR),times(fld(XR),fld(XR)))).
+fof(fin_mono,axiom,![XA,XB]:(subseteq(XA,XB)=>subseteq(fin(XA),fin(XB)))).
+fof(fin,axiom,![Xa,XA,XB]:((elem(Xa,XA)&elem(XB,fin(XA)))=>elem(cons(Xa,XB),fin(XA)))).
+fof(fin,axiom,![XA]:elem(emptyset,fin(XA))).
+fof(fin,axiom,![XA]:subseteq(fin(XA),pow(XA))).
+fof(lmao,axiom,![Xx]:elem(Xx,emptyset)).
+fof(preimg,axiom,![XR,XA]:preimg(XR,XA)=emptyset).
+fof(fld,axiom,![XR]:fld(XR)=emptyset).
+fof(times,axiom,![XA,XB]:times(XA,XB)=emptyset).
+fof(cons,axiom,![Xa,XB]:cons(Xa,XB)=emptyset).
+fof(pow,axiom,![XA]:pow(XA)=emptyset).
+fof(subseteq,axiom,![XA,XB]:(subseteq(XA,XB)<=>XA=XB)).
+------------------
+fof(refltracl,conjecture,elem(fa,fA)=>elem(pair(fa,fa),times(fA,fA))).
+fof(quasirefltracl,axiom,![Xa,Xb,XR,Xc]:((elem(pair(Xa,Xb),quasirefltracl(XR))&elem(pair(Xb,Xc),XR))=>elem(pair(Xa,Xc),quasirefltracl(XR)))).
+fof(quasirefltracl,axiom,![Xa,XR]:(elem(Xa,fld(XR))=>elem(pair(Xa,Xa),quasirefltracl(XR)))).
+fof(quasirefltracl,axiom,![XR]:subseteq(quasirefltracl(XR),times(fld(XR),fld(XR)))).
+fof(tracl,axiom,![Xa,Xb,XR,Xc]:((elem(pair(Xa,Xb),tracl(XR))&elem(pair(Xb,Xc),XR))=>elem(pair(Xa,Xc),tracl(XR)))).
+fof(tracl,axiom,![Xw,XR]:(elem(Xw,XR)=>elem(Xw,tracl(XR)))).
+fof(tracl,axiom,![XR]:subseteq(tracl(XR),times(fld(XR),fld(XR)))).
+fof(fin_mono,axiom,![XA,XB]:(subseteq(XA,XB)=>subseteq(fin(XA),fin(XB)))).
+fof(fin,axiom,![Xa,XA,XB]:((elem(Xa,XA)&elem(XB,fin(XA)))=>elem(cons(Xa,XB),fin(XA)))).
+fof(fin,axiom,![XA]:elem(emptyset,fin(XA))).
+fof(fin,axiom,![XA]:subseteq(fin(XA),pow(XA))).
+fof(lmao,axiom,![Xx]:elem(Xx,emptyset)).
+fof(preimg,axiom,![XR,XA]:preimg(XR,XA)=emptyset).
+fof(fld,axiom,![XR]:fld(XR)=emptyset).
+fof(times,axiom,![XA,XB]:times(XA,XB)=emptyset).
+fof(cons,axiom,![Xa,XB]:cons(Xa,XB)=emptyset).
+fof(pow,axiom,![XA]:pow(XA)=emptyset).
+fof(subseteq,axiom,![XA,XB]:(subseteq(XA,XB)<=>XA=XB)).
+------------------
+fof(refltracl,conjecture,(elem(pair(fa,fb),times(fA,fA))&elem(pair(fb,fc),fR))=>elem(pair(fa,fc),times(fA,fA))).
+fof(quasirefltracl,axiom,![Xa,Xb,XR,Xc]:((elem(pair(Xa,Xb),quasirefltracl(XR))&elem(pair(Xb,Xc),XR))=>elem(pair(Xa,Xc),quasirefltracl(XR)))).
+fof(quasirefltracl,axiom,![Xa,XR]:(elem(Xa,fld(XR))=>elem(pair(Xa,Xa),quasirefltracl(XR)))).
+fof(quasirefltracl,axiom,![XR]:subseteq(quasirefltracl(XR),times(fld(XR),fld(XR)))).
+fof(tracl,axiom,![Xa,Xb,XR,Xc]:((elem(pair(Xa,Xb),tracl(XR))&elem(pair(Xb,Xc),XR))=>elem(pair(Xa,Xc),tracl(XR)))).
+fof(tracl,axiom,![Xw,XR]:(elem(Xw,XR)=>elem(Xw,tracl(XR)))).
+fof(tracl,axiom,![XR]:subseteq(tracl(XR),times(fld(XR),fld(XR)))).
+fof(fin_mono,axiom,![XA,XB]:(subseteq(XA,XB)=>subseteq(fin(XA),fin(XB)))).
+fof(fin,axiom,![Xa,XA,XB]:((elem(Xa,XA)&elem(XB,fin(XA)))=>elem(cons(Xa,XB),fin(XA)))).
+fof(fin,axiom,![XA]:elem(emptyset,fin(XA))).
+fof(fin,axiom,![XA]:subseteq(fin(XA),pow(XA))).
+fof(lmao,axiom,![Xx]:elem(Xx,emptyset)).
+fof(preimg,axiom,![XR,XA]:preimg(XR,XA)=emptyset).
+fof(fld,axiom,![XR]:fld(XR)=emptyset).
+fof(times,axiom,![XA,XB]:times(XA,XB)=emptyset).
+fof(cons,axiom,![Xa,XB]:cons(Xa,XB)=emptyset).
+fof(pow,axiom,![XA]:pow(XA)=emptyset).
+fof(subseteq,axiom,![XA,XB]:(subseteq(XA,XB)<=>XA=XB)).
+------------------
+fof(acc,conjecture,![Xxa,Xxb]:(subseteq(Xxa,Xxb)=>subseteq(pow(Xxa),pow(Xxb)))).
+fof(refltracl,axiom,![Xa,Xb,XA,XR,Xc]:((elem(pair(Xa,Xb),refltracl(XA,XR))&elem(pair(Xb,Xc),XR))=>elem(pair(Xa,Xc),refltracl(XA,XR)))).
+fof(refltracl,axiom,![Xa,XA,XR]:(elem(Xa,XA)=>elem(pair(Xa,Xa),refltracl(XA,XR)))).
+fof(refltracl,axiom,![XA,XR]:subseteq(refltracl(XA,XR),times(XA,XA))).
+fof(quasirefltracl,axiom,![Xa,Xb,XR,Xc]:((elem(pair(Xa,Xb),quasirefltracl(XR))&elem(pair(Xb,Xc),XR))=>elem(pair(Xa,Xc),quasirefltracl(XR)))).
+fof(quasirefltracl,axiom,![Xa,XR]:(elem(Xa,fld(XR))=>elem(pair(Xa,Xa),quasirefltracl(XR)))).
+fof(quasirefltracl,axiom,![XR]:subseteq(quasirefltracl(XR),times(fld(XR),fld(XR)))).
+fof(tracl,axiom,![Xa,Xb,XR,Xc]:((elem(pair(Xa,Xb),tracl(XR))&elem(pair(Xb,Xc),XR))=>elem(pair(Xa,Xc),tracl(XR)))).
+fof(tracl,axiom,![Xw,XR]:(elem(Xw,XR)=>elem(Xw,tracl(XR)))).
+fof(tracl,axiom,![XR]:subseteq(tracl(XR),times(fld(XR),fld(XR)))).
+fof(fin_mono,axiom,![XA,XB]:(subseteq(XA,XB)=>subseteq(fin(XA),fin(XB)))).
+fof(fin,axiom,![Xa,XA,XB]:((elem(Xa,XA)&elem(XB,fin(XA)))=>elem(cons(Xa,XB),fin(XA)))).
+fof(fin,axiom,![XA]:elem(emptyset,fin(XA))).
+fof(fin,axiom,![XA]:subseteq(fin(XA),pow(XA))).
+fof(lmao,axiom,![Xx]:elem(Xx,emptyset)).
+fof(preimg,axiom,![XR,XA]:preimg(XR,XA)=emptyset).
+fof(fld,axiom,![XR]:fld(XR)=emptyset).
+fof(times,axiom,![XA,XB]:times(XA,XB)=emptyset).
+fof(cons,axiom,![Xa,XB]:cons(Xa,XB)=emptyset).
+fof(pow,axiom,![XA]:pow(XA)=emptyset).
+fof(subseteq,axiom,![XA,XB]:(subseteq(XA,XB)<=>XA=XB)).
+------------------
+fof(acc,conjecture,(elem(fa,fld(fR))&elem(preimg(fR,cons(fa,emptyset)),pow(fld(fR))))=>elem(fa,fld(fR))).
+fof(refltracl,axiom,![Xa,Xb,XA,XR,Xc]:((elem(pair(Xa,Xb),refltracl(XA,XR))&elem(pair(Xb,Xc),XR))=>elem(pair(Xa,Xc),refltracl(XA,XR)))).
+fof(refltracl,axiom,![Xa,XA,XR]:(elem(Xa,XA)=>elem(pair(Xa,Xa),refltracl(XA,XR)))).
+fof(refltracl,axiom,![XA,XR]:subseteq(refltracl(XA,XR),times(XA,XA))).
+fof(quasirefltracl,axiom,![Xa,Xb,XR,Xc]:((elem(pair(Xa,Xb),quasirefltracl(XR))&elem(pair(Xb,Xc),XR))=>elem(pair(Xa,Xc),quasirefltracl(XR)))).
+fof(quasirefltracl,axiom,![Xa,XR]:(elem(Xa,fld(XR))=>elem(pair(Xa,Xa),quasirefltracl(XR)))).
+fof(quasirefltracl,axiom,![XR]:subseteq(quasirefltracl(XR),times(fld(XR),fld(XR)))).
+fof(tracl,axiom,![Xa,Xb,XR,Xc]:((elem(pair(Xa,Xb),tracl(XR))&elem(pair(Xb,Xc),XR))=>elem(pair(Xa,Xc),tracl(XR)))).
+fof(tracl,axiom,![Xw,XR]:(elem(Xw,XR)=>elem(Xw,tracl(XR)))).
+fof(tracl,axiom,![XR]:subseteq(tracl(XR),times(fld(XR),fld(XR)))).
+fof(fin_mono,axiom,![XA,XB]:(subseteq(XA,XB)=>subseteq(fin(XA),fin(XB)))).
+fof(fin,axiom,![Xa,XA,XB]:((elem(Xa,XA)&elem(XB,fin(XA)))=>elem(cons(Xa,XB),fin(XA)))).
+fof(fin,axiom,![XA]:elem(emptyset,fin(XA))).
+fof(fin,axiom,![XA]:subseteq(fin(XA),pow(XA))).
+fof(lmao,axiom,![Xx]:elem(Xx,emptyset)).
+fof(preimg,axiom,![XR,XA]:preimg(XR,XA)=emptyset).
+fof(fld,axiom,![XR]:fld(XR)=emptyset).
+fof(times,axiom,![XA,XB]:times(XA,XB)=emptyset).
+fof(cons,axiom,![Xa,XB]:cons(Xa,XB)=emptyset).
+fof(pow,axiom,![XA]:pow(XA)=emptyset).
+fof(subseteq,axiom,![XA,XB]:(subseteq(XA,XB)<=>XA=XB)). \ No newline at end of file
diff --git a/test/golden/inductive/generating tasks.golden b/test/golden/inductive/generating tasks.golden
new file mode 100644
index 0000000..2fb04fe
--- /dev/null
+++ b/test/golden/inductive/generating tasks.golden
@@ -0,0 +1,8965 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "lmao"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "preimg"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fld"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "pow"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "subseteq"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "fin"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ ]
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "lmao"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "preimg"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fld"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "pow"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "subseteq"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "fin"
+ , taskConjecture = Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "A" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "B" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ ]
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "B" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ ]
+ ]
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "lmao"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "preimg"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fld"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "pow"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "subseteq"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin_mono1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "B" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "fin_mono"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "B" )
+ ]
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "fin_mono"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "lmao"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "preimg"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fld"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "pow"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "subseteq"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "tracl"
+ , taskConjecture = Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "w" )
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "w" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ ]
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "fin_mono"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "lmao"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "preimg"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fld"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "pow"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "subseteq"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "tracl"
+ , taskConjecture = Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ ]
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin_mono"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "lmao"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "preimg"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fld"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "pow"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "subseteq"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "quasirefltracl"
+ , taskConjecture = Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "a" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ ]
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin_mono"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "lmao"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "preimg"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fld"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "pow"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "subseteq"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "quasirefltracl"
+ , taskConjecture = Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ ]
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "quasirefltracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "quasirefltracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "quasirefltracl"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin_mono"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "lmao"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "preimg"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fld"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "pow"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "subseteq"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "refltracl"
+ , taskConjecture = Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "A" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "a" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "A" )
+ ]
+ ]
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "quasirefltracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "quasirefltracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "quasirefltracl"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin_mono"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "lmao"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "preimg"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fld"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "pow"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "subseteq"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "refltracl"
+ , taskConjecture = Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "A" )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "A" )
+ ]
+ ]
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "refltracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "refltracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "refltracl"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "quasirefltracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "quasirefltracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "quasirefltracl"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin_mono"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "lmao"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "preimg"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fld"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "pow"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "subseteq"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "acc"
+ , taskConjecture = Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "xa" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "xb" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "xa" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "xb" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "refltracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "refltracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "refltracl"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "quasirefltracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "quasirefltracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "quasirefltracl"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "c" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "w" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "tracl"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin_mono"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fin"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "lmao"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "preimg"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "fld"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "R" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "pow"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "subseteq"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "acc"
+ , taskConjecture = Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ )
+ }
+] \ No newline at end of file
diff --git a/test/golden/inductive/glossing.golden b/test/golden/inductive/glossing.golden
new file mode 100644
index 0000000..e76a88f
--- /dev/null
+++ b/test/golden/inductive/glossing.golden
@@ -0,0 +1,1136 @@
+[ BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 3
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "subseteq" )
+ ( DefnPredicate []
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ ( NamedVar "A" :|
+ [ NamedVar "B" ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "B" )
+ ]
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 7
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "pow" )
+ ( DefnOp
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "A" ]
+ ( TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 11
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cons" )
+ ( DefnOp
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "a"
+ , NamedVar "B"
+ ]
+ ( TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 15
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "times" )
+ ( DefnOp
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ [ NamedVar "A"
+ , NamedVar "B"
+ ]
+ ( TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 19
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "fld" )
+ ( DefnOp
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "R" ]
+ ( TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 23
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "preimg" )
+ ( DefnOp
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "R"
+ , NamedVar "A"
+ ]
+ ( TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 27
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "lmao" )
+ ( Axiom []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+, BlockInductive
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 31
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "fin" )
+ ( Inductive
+ { inductiveSymbol =
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ , inductiveParams =
+ [ NamedVar "A" ]
+ , inductiveDomain = TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ ]
+ , inductiveIntros = IntroRule
+ { introConditions = []
+ , introResult = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ ]
+ ]
+ } :|
+ [ IntroRule
+ { introConditions =
+ [ TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "A" )
+ ]
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "B" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ ]
+ ]
+ ]
+ , introResult = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "B" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ ]
+ ]
+ }
+ ]
+ }
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 39
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "fin_mono" )
+ ( Lemma
+ [ Asm ( PropositionalConstant IsTop )
+ , Asm ( PropositionalConstant IsTop )
+ , Asm
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "B" )
+ ]
+ )
+ ]
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "subseteq" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "B" )
+ ]
+ ]
+ )
+ )
+, BlockInductive
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 45
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "tracl" )
+ ( Inductive
+ { inductiveSymbol =
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ , inductiveParams =
+ [ NamedVar "R" ]
+ , inductiveDomain = TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ , inductiveIntros = IntroRule
+ { introConditions =
+ [ TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "w" )
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ , introResult = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "w" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ } :|
+ [ IntroRule
+ { introConditions =
+ [ TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ , introResult = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ }
+ ]
+ }
+ )
+, BlockInductive
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 53
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "quasirefltracl" )
+ ( Inductive
+ { inductiveSymbol =
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ , inductiveParams =
+ [ NamedVar "R" ]
+ , inductiveDomain = TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ , inductiveIntros = IntroRule
+ { introConditions =
+ [ TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ ]
+ , introResult = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "a" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ } :|
+ [ IntroRule
+ { introConditions =
+ [ TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ , introResult = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ }
+ ]
+ }
+ )
+, BlockInductive
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 61
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "refltracl" )
+ ( Inductive
+ { inductiveSymbol =
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ , inductiveParams =
+ [ NamedVar "A"
+ , NamedVar "R"
+ ]
+ , inductiveDomain = TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "A" )
+ ]
+ , inductiveIntros = IntroRule
+ { introConditions =
+ [ TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "A" )
+ ]
+ ]
+ , introResult = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "a" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ } :|
+ [ IntroRule
+ { introConditions =
+ [ TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "b" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ , introResult = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "c" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ }
+ ]
+ }
+ )
+, BlockInductive
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 69
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "acc" )
+ ( Inductive
+ { inductiveSymbol =
+ [ Just
+ ( Command "acc" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ , inductiveParams =
+ [ NamedVar "R" ]
+ , inductiveDomain = TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ , inductiveIntros = IntroRule
+ { introConditions =
+ [ TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "acc" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ ]
+ ]
+ , introResult = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "acc" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ ]
+ ]
+ } :| []
+ }
+ )
+] \ No newline at end of file
diff --git a/test/golden/inductive/parsing.golden b/test/golden/inductive/parsing.golden
new file mode 100644
index 0000000..7438daa
--- /dev/null
+++ b/test/golden/inductive/parsing.golden
@@ -0,0 +1,1076 @@
+[ BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 3
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "subseteq" )
+ ( Defn []
+ ( DefnRel
+ ( NamedVar "A" )
+ ( Command "subseteq" )
+ ( NamedVar "B" )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "A" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "B" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 7
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "pow" )
+ ( DefnOp
+ ( SymbolPattern
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "A" ]
+ )
+ ( ExprOp
+ [ Just
+ ( Command "emptyset" )
+ ] []
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 11
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cons" )
+ ( DefnOp
+ ( SymbolPattern
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "a"
+ , NamedVar "B"
+ ]
+ )
+ ( ExprOp
+ [ Just
+ ( Command "emptyset" )
+ ] []
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 15
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "times" )
+ ( DefnOp
+ ( SymbolPattern
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ [ NamedVar "A"
+ , NamedVar "B"
+ ]
+ )
+ ( ExprOp
+ [ Just
+ ( Command "emptyset" )
+ ] []
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 19
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "fld" )
+ ( DefnOp
+ ( SymbolPattern
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "R" ]
+ )
+ ( ExprOp
+ [ Just
+ ( Command "emptyset" )
+ ] []
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 23
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "preimg" )
+ ( DefnOp
+ ( SymbolPattern
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "R"
+ , NamedVar "A"
+ ]
+ )
+ ( ExprOp
+ [ Just
+ ( Command "emptyset" )
+ ] []
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 27
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "lmao" )
+ ( Axiom []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "emptyset" )
+ ] [] :| []
+ )
+ )
+ )
+ )
+ )
+, BlockInductive
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 31
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "fin" )
+ ( Inductive
+ { inductiveSymbolPattern = SymbolPattern
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "A" ]
+ , inductiveDomain = ExprOp
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ ]
+ , inductiveIntros = IntroRule
+ { introConditions = []
+ , introResult = FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "emptyset" )
+ ] [] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ ] :| []
+ )
+ )
+ } :|
+ [ IntroRule
+ { introConditions =
+ [ FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "A" ) :| []
+ )
+ )
+ , FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "B" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ ] :| []
+ )
+ )
+ ]
+ , introResult = FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "B" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ ] :| []
+ )
+ )
+ }
+ ]
+ }
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 39
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "fin_mono" )
+ ( Lemma
+ [ AsmLetNoun
+ ( NamedVar "A" :|
+ [ NamedVar "B" ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "set" )
+ ]
+ , pl =
+ [ Just
+ ( Word "sets" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ , AsmSuppose
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "A" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "subseteq" )
+ )
+ ( ExprVar
+ ( NamedVar "B" ) :| []
+ )
+ )
+ )
+ )
+ ]
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "subseteq" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "B" )
+ ] :| []
+ )
+ )
+ )
+ )
+ )
+, BlockInductive
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 45
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "tracl" )
+ ( Inductive
+ { inductiveSymbolPattern = SymbolPattern
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "R" ]
+ , inductiveDomain = ExprOp
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ [ ExprOp
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ]
+ , ExprOp
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ]
+ ]
+ , inductiveIntros = IntroRule
+ { introConditions =
+ [ FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "w" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "R" ) :| []
+ )
+ )
+ ]
+ , introResult = FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "w" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ] :| []
+ )
+ )
+ } :|
+ [ IntroRule
+ { introConditions =
+ [ FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "b" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ] :| []
+ )
+ )
+ , FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "c" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "R" ) :| []
+ )
+ )
+ ]
+ , introResult = FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "c" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ] :| []
+ )
+ )
+ }
+ ]
+ }
+ )
+, BlockInductive
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 53
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "quasirefltracl" )
+ ( Inductive
+ { inductiveSymbolPattern = SymbolPattern
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "R" ]
+ , inductiveDomain = ExprOp
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ [ ExprOp
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ]
+ , ExprOp
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ]
+ ]
+ , inductiveIntros = IntroRule
+ { introConditions =
+ [ FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ] :| []
+ )
+ )
+ ]
+ , introResult = FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "a" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ] :| []
+ )
+ )
+ } :|
+ [ IntroRule
+ { introConditions =
+ [ FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "b" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ] :| []
+ )
+ )
+ , FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "c" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "R" ) :| []
+ )
+ )
+ ]
+ , introResult = FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "c" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ] :| []
+ )
+ )
+ }
+ ]
+ }
+ )
+, BlockInductive
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 61
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "refltracl" )
+ ( Inductive
+ { inductiveSymbolPattern = SymbolPattern
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "A"
+ , NamedVar "R"
+ ]
+ , inductiveDomain = ExprOp
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ , ExprVar
+ ( NamedVar "A" )
+ ]
+ , inductiveIntros = IntroRule
+ { introConditions =
+ [ FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "A" ) :| []
+ )
+ )
+ ]
+ , introResult = FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "a" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ , ExprVar
+ ( NamedVar "R" )
+ ] :| []
+ )
+ )
+ } :|
+ [ IntroRule
+ { introConditions =
+ [ FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "b" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ , ExprVar
+ ( NamedVar "R" )
+ ] :| []
+ )
+ )
+ , FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "b" )
+ , ExprVar
+ ( NamedVar "c" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "R" ) :| []
+ )
+ )
+ ]
+ , introResult = FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "c" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ , ExprVar
+ ( NamedVar "R" )
+ ] :| []
+ )
+ )
+ }
+ ]
+ }
+ )
+, BlockInductive
+ ( SourcePos
+ { sourceName = "test/examples/inductive.tex"
+ , sourceLine = Pos 69
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "acc" )
+ ( Inductive
+ { inductiveSymbolPattern = SymbolPattern
+ [ Just
+ ( Command "acc" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "R" ]
+ , inductiveDomain = ExprOp
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ]
+ , inductiveIntros = IntroRule
+ { introConditions =
+ [ FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ] :| []
+ )
+ )
+ , FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ , ExprFiniteSet
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprOp
+ [ Just
+ ( Command "acc" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ]
+ ] :| []
+ )
+ )
+ ]
+ , introResult = FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "acc" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "R" )
+ ] :| []
+ )
+ )
+ } :| []
+ }
+ )
+] \ No newline at end of file
diff --git a/test/golden/inductive/scanning.golden b/test/golden/inductive/scanning.golden
new file mode 100644
index 0000000..c3ad452
--- /dev/null
+++ b/test/golden/inductive/scanning.golden
@@ -0,0 +1,92 @@
+[ ScanRelationSymbol
+ ( Command "subseteq" )
+ ( Marker "subseteq" )
+, ScanFunctionSymbol
+ [ Just
+ ( Command "pow" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ ( Marker "pow" )
+, ScanFunctionSymbol
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ ( Marker "cons" )
+, ScanFunctionSymbol
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ ( Marker "times" )
+, ScanFunctionSymbol
+ [ Just
+ ( Command "fld" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ ( Marker "fld" )
+, ScanFunctionSymbol
+ [ Just
+ ( Command "preimg" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ ( Marker "preimg" )
+, ScanFunctionSymbol
+ [ Just
+ ( Command "fin" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ ( Marker "fin" )
+, ScanFunctionSymbol
+ [ Just
+ ( Command "tracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ ( Marker "tracl" )
+, ScanFunctionSymbol
+ [ Just
+ ( Command "qrefltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ ( Marker "quasirefltracl" )
+, ScanFunctionSymbol
+ [ Just
+ ( Command "refltracl" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ ( Marker "refltracl" )
+, ScanFunctionSymbol
+ [ Just
+ ( Command "acc" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ ( Marker "acc" )
+] \ No newline at end of file
diff --git a/test/golden/inductive/tokenizing.golden b/test/golden/inductive/tokenizing.golden
new file mode 100644
index 0000000..b43d176
--- /dev/null
+++ b/test/golden/inductive/tokenizing.golden
@@ -0,0 +1,514 @@
+[ BeginEnv "definition"
+, Label "subseteq"
+, BeginEnv "math"
+, Variable "A"
+, Command "subseteq"
+, Variable "B"
+, EndEnv "math"
+, Word "iff"
+, BeginEnv "math"
+, Variable "A"
+, Symbol "="
+, Variable "B"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "definition"
+, Label "pow"
+, BeginEnv "math"
+, Command "pow"
+, InvisibleBraceL
+, Variable "A"
+, InvisibleBraceR
+, Symbol "="
+, Command "emptyset"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "definition"
+, Label "cons"
+, BeginEnv "math"
+, Command "cons"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "B"
+, InvisibleBraceR
+, Symbol "="
+, Command "emptyset"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "definition"
+, Label "times"
+, BeginEnv "math"
+, Variable "A"
+, Command "times"
+, Variable "B"
+, Symbol "="
+, Command "emptyset"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "definition"
+, Label "fld"
+, BeginEnv "math"
+, Command "fld"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, Symbol "="
+, Command "emptyset"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "definition"
+, Label "preimg"
+, BeginEnv "math"
+, Command "preimg"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "A"
+, InvisibleBraceR
+, Symbol "="
+, Command "emptyset"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "axiom"
+, Label "lmao"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Command "emptyset"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "axiom"
+, BeginEnv "inductive"
+, Label "fin"
+, Word "define"
+, BeginEnv "math"
+, Command "fin"
+, InvisibleBraceL
+, Variable "A"
+, InvisibleBraceR
+, Command "subseteq"
+, Command "pow"
+, InvisibleBraceL
+, Variable "A"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "inductively"
+, Word "as"
+, Word "follows"
+, Symbol "."
+, BeginEnv "enumerate"
+, Command "item"
+, BeginEnv "math"
+, Command "emptyset"
+, Command "in"
+, Command "fin"
+, InvisibleBraceL
+, Variable "A"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, Command "item"
+, Word "if"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Variable "A"
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Variable "B"
+, Command "in"
+, Command "fin"
+, InvisibleBraceL
+, Variable "A"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Command "cons"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "B"
+, InvisibleBraceR
+, Command "in"
+, Command "fin"
+, InvisibleBraceL
+, Variable "A"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "enumerate"
+, EndEnv "inductive"
+, BeginEnv "lemma"
+, Label "fin_mono"
+, Word "let"
+, BeginEnv "math"
+, Variable "A"
+, Symbol ","
+, Variable "B"
+, EndEnv "math"
+, Word "be"
+, Word "sets"
+, Symbol "."
+, Word "suppose"
+, BeginEnv "math"
+, Variable "A"
+, Command "subseteq"
+, Variable "B"
+, EndEnv "math"
+, Symbol "."
+, Word "then"
+, BeginEnv "math"
+, Command "fin"
+, InvisibleBraceL
+, Variable "A"
+, InvisibleBraceR
+, Command "subseteq"
+, Command "fin"
+, InvisibleBraceL
+, Variable "B"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "lemma"
+, BeginEnv "inductive"
+, Label "tracl"
+, Word "define"
+, BeginEnv "math"
+, Command "tracl"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, Command "subseteq"
+, Command "fld"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, Command "times"
+, Command "fld"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "inductively"
+, Word "as"
+, Word "follows"
+, Symbol "."
+, BeginEnv "enumerate"
+, Command "item"
+, Word "if"
+, BeginEnv "math"
+, Variable "w"
+, Command "in"
+, Variable "R"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Variable "w"
+, Command "in"
+, Command "tracl"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, Command "item"
+, Word "if"
+, BeginEnv "math"
+, ParenL
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, ParenR
+, Command "in"
+, Command "tracl"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, ParenL
+, Variable "b"
+, Symbol ","
+, Variable "c"
+, ParenR
+, Command "in"
+, Variable "R"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, ParenL
+, Variable "a"
+, Symbol ","
+, Variable "c"
+, ParenR
+, Command "in"
+, Command "tracl"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "enumerate"
+, EndEnv "inductive"
+, BeginEnv "inductive"
+, Label "quasirefltracl"
+, Word "define"
+, BeginEnv "math"
+, Command "qrefltracl"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, Command "subseteq"
+, Command "fld"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, Command "times"
+, Command "fld"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "inductively"
+, Word "as"
+, Word "follows"
+, Symbol "."
+, BeginEnv "enumerate"
+, Command "item"
+, Word "if"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Command "fld"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, ParenL
+, Variable "a"
+, Symbol ","
+, Variable "a"
+, ParenR
+, Command "in"
+, Command "qrefltracl"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, Command "item"
+, Word "if"
+, BeginEnv "math"
+, ParenL
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, ParenR
+, Command "in"
+, Command "qrefltracl"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, ParenL
+, Variable "b"
+, Symbol ","
+, Variable "c"
+, ParenR
+, Command "in"
+, Variable "R"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, ParenL
+, Variable "a"
+, Symbol ","
+, Variable "c"
+, ParenR
+, Command "in"
+, Command "qrefltracl"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "enumerate"
+, EndEnv "inductive"
+, BeginEnv "inductive"
+, Label "refltracl"
+, Word "define"
+, BeginEnv "math"
+, Command "refltracl"
+, InvisibleBraceL
+, Variable "A"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, Command "subseteq"
+, Variable "A"
+, Command "times"
+, Variable "A"
+, EndEnv "math"
+, Word "inductively"
+, Word "as"
+, Word "follows"
+, Symbol "."
+, BeginEnv "enumerate"
+, Command "item"
+, Word "if"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Variable "A"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, ParenL
+, Variable "a"
+, Symbol ","
+, Variable "a"
+, ParenR
+, Command "in"
+, Command "refltracl"
+, InvisibleBraceL
+, Variable "A"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, Command "item"
+, Word "if"
+, BeginEnv "math"
+, ParenL
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, ParenR
+, Command "in"
+, Command "refltracl"
+, InvisibleBraceL
+, Variable "A"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, ParenL
+, Variable "b"
+, Symbol ","
+, Variable "c"
+, ParenR
+, Command "in"
+, Variable "R"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, ParenL
+, Variable "a"
+, Symbol ","
+, Variable "c"
+, ParenR
+, Command "in"
+, Command "refltracl"
+, InvisibleBraceL
+, Variable "A"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "enumerate"
+, EndEnv "inductive"
+, BeginEnv "inductive"
+, Label "acc"
+, Word "define"
+, BeginEnv "math"
+, Command "acc"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, Command "subseteq"
+, Command "fld"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "inductively"
+, Word "as"
+, Word "follows"
+, Symbol "."
+, BeginEnv "enumerate"
+, Command "item"
+, Word "if"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Command "fld"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Command "preimg"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, InvisibleBraceL
+, VisibleBraceL
+, Variable "a"
+, VisibleBraceR
+, InvisibleBraceR
+, Command "in"
+, Command "pow"
+, InvisibleBraceL
+, Command "acc"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Command "acc"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "enumerate"
+, EndEnv "inductive"
+] \ No newline at end of file
diff --git a/test/golden/inductive/verification.golden b/test/golden/inductive/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/inductive/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/no-reflexive-set/encoding tasks.golden b/test/golden/no-reflexive-set/encoding tasks.golden
new file mode 100644
index 0000000..dc79b95
--- /dev/null
+++ b/test/golden/no-reflexive-set/encoding tasks.golden
@@ -0,0 +1,2 @@
+fof(in_irrefl,conjecture,~elem(fA,fA)).
+fof(in_irrefl1,axiom,![XIndAntecedent]:(elem(XIndAntecedent,fA)=>~elem(XIndAntecedent,XIndAntecedent))). \ No newline at end of file
diff --git a/test/golden/no-reflexive-set/generating tasks.golden b/test/golden/no-reflexive-set/generating tasks.golden
new file mode 100644
index 0000000..3ed340b
--- /dev/null
+++ b/test/golden/no-reflexive-set/generating tasks.golden
@@ -0,0 +1,64 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "in_irrefl1"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "IndAntecedent" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ ]
+ )
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "IndAntecedent" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "IndAntecedent" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "in_irrefl"
+ , taskConjecture = Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "A" )
+ ]
+ )
+ }
+] \ No newline at end of file
diff --git a/test/golden/no-reflexive-set/glossing.golden b/test/golden/no-reflexive-set/glossing.golden
new file mode 100644
index 0000000..a58b5b7
--- /dev/null
+++ b/test/golden/no-reflexive-set/glossing.golden
@@ -0,0 +1,43 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/no-reflexive-set.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "in_irrefl" )
+ ( Lemma []
+ ( Quantified Universally
+ ( Scope
+ ( Connected Implication ( PropositionalConstant IsTop )
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/no-reflexive-set.tex"
+ , sourceLine = Pos 4
+ , sourceColumn = Pos 1
+ }
+ )
+ ( BySetInduction Nothing ( Qed JustificationEmpty ) )
+] \ No newline at end of file
diff --git a/test/golden/no-reflexive-set/parsing.golden b/test/golden/no-reflexive-set/parsing.golden
new file mode 100644
index 0000000..3de5dcc
--- /dev/null
+++ b/test/golden/no-reflexive-set/parsing.golden
@@ -0,0 +1,54 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/no-reflexive-set.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "in_irrefl" )
+ ( Lemma []
+ ( StmtQuantPhrase
+ ( QuantPhrase Universally NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "set" )
+ ]
+ , pl =
+ [ Just
+ ( Word "sets" )
+ ]
+ }
+ ) []
+ )
+ (
+ [ NamedVar "A" ]
+ ) ( [] ) ( Nothing )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "A" ) :| []
+ ) Negative
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "A" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/no-reflexive-set.tex"
+ , sourceLine = Pos 4
+ , sourceColumn = Pos 1
+ }
+ )
+ ( BySetInduction Nothing ( Qed JustificationEmpty ) )
+] \ No newline at end of file
diff --git a/test/golden/no-reflexive-set/scanning.golden b/test/golden/no-reflexive-set/scanning.golden
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/test/golden/no-reflexive-set/scanning.golden
@@ -0,0 +1 @@
+[] \ No newline at end of file
diff --git a/test/golden/no-reflexive-set/tokenizing.golden b/test/golden/no-reflexive-set/tokenizing.golden
new file mode 100644
index 0000000..16835be
--- /dev/null
+++ b/test/golden/no-reflexive-set/tokenizing.golden
@@ -0,0 +1,29 @@
+[ BeginEnv "proposition"
+, Label "in_irrefl"
+, Word "for"
+, Word "all"
+, Word "sets"
+, BeginEnv "math"
+, Variable "A"
+, EndEnv "math"
+, Word "we"
+, Word "have"
+, BeginEnv "math"
+, Variable "A"
+, Command "not"
+, Command "in"
+, Variable "A"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proof"
+, BracketL
+, Word "proof"
+, Word "by"
+, Command "in"
+, Word "-induction"
+, BracketR
+, Word "straightforward"
+, Symbol "."
+, EndEnv "proof"
+] \ No newline at end of file
diff --git a/test/golden/no-reflexive-set/verification.golden b/test/golden/no-reflexive-set/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/no-reflexive-set/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/proofassume/encoding tasks.golden b/test/golden/proofassume/encoding tasks.golden
new file mode 100644
index 0000000..43cc166
--- /dev/null
+++ b/test/golden/proofassume/encoding tasks.golden
@@ -0,0 +1,17 @@
+fof(assumetest,conjecture,elem(fx,fy)).
+fof(assumetest1,axiom,elem(fx,fy)).
+------------------
+fof(assumetest,conjecture,elem(fx,fy)).
+fof(assumetest1,axiom,elem(fx,fy)).
+fof(assumetest2,axiom,elem(fx,fy)).
+------------------
+fof(assumetesttwo,conjecture,elem(fx,fy)).
+fof(assumetest,axiom,![Xx,Xy]:(elem(Xx,Xy)=>elem(Xx,Xy))).
+fof(assumetesttwo1,axiom,elem(fx,fy)).
+fof(assumetesttwo2,axiom,elem(fa,fb)).
+------------------
+fof(assumetesttwo,conjecture,elem(fx,fy)).
+fof(assumetest,axiom,![Xx,Xy]:(elem(Xx,Xy)=>elem(Xx,Xy))).
+fof(assumetesttwo1,axiom,elem(fx,fy)).
+fof(assumetesttwo2,axiom,elem(fx,fy)).
+fof(assumetesttwo3,axiom,elem(fa,fb)). \ No newline at end of file
diff --git a/test/golden/proofassume/generating tasks.golden b/test/golden/proofassume/generating tasks.golden
new file mode 100644
index 0000000..e66cf4a
--- /dev/null
+++ b/test/golden/proofassume/generating tasks.golden
@@ -0,0 +1,261 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "assumetest1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "assumetest"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "assumetest1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ,
+ ( Marker "assumetest2"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "assumetest"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "assumetest"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "assumetesttwo1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ,
+ ( Marker "assumetesttwo2"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "assumetesttwo"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "assumetest"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "assumetesttwo1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ,
+ ( Marker "assumetesttwo2"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ,
+ ( Marker "assumetesttwo3"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "assumetesttwo"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ }
+] \ No newline at end of file
diff --git a/test/golden/proofassume/glossing.golden b/test/golden/proofassume/glossing.golden
new file mode 100644
index 0000000..28b0e79
--- /dev/null
+++ b/test/golden/proofassume/glossing.golden
@@ -0,0 +1,171 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/proofassume.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "assumetest" )
+ ( Lemma []
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/proofassume.tex"
+ , sourceLine = Pos 4
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Assume
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( Have
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ ) JustificationEmpty ( Qed JustificationEmpty )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/proofassume.tex"
+ , sourceLine = Pos 9
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "assumetesttwo" )
+ ( Lemma []
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/proofassume.tex"
+ , sourceLine = Pos 12
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Assume
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "b" )
+ ]
+ )
+ ( Assume
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( Have
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ ) JustificationEmpty ( Qed JustificationEmpty )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/proofassume/parsing.golden b/test/golden/proofassume/parsing.golden
new file mode 100644
index 0000000..57e542c
--- /dev/null
+++ b/test/golden/proofassume/parsing.golden
@@ -0,0 +1,201 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/proofassume.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "assumetest" )
+ ( Lemma []
+ ( StmtConnected Implication
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/proofassume.tex"
+ , sourceLine = Pos 4
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Assume
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ ( Have Nothing
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ ) JustificationEmpty ( Qed JustificationEmpty )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/proofassume.tex"
+ , sourceLine = Pos 9
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "assumetesttwo" )
+ ( Lemma []
+ ( StmtConnected Implication
+ ( StmtConnected Conjunction
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "b" ) :| []
+ )
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/proofassume.tex"
+ , sourceLine = Pos 12
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Assume
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "b" ) :| []
+ )
+ )
+ )
+ )
+ ( Assume
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ ( Have Nothing
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ ) JustificationEmpty ( Qed JustificationEmpty )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/proofassume/scanning.golden b/test/golden/proofassume/scanning.golden
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/test/golden/proofassume/scanning.golden
@@ -0,0 +1 @@
+[] \ No newline at end of file
diff --git a/test/golden/proofassume/tokenizing.golden b/test/golden/proofassume/tokenizing.golden
new file mode 100644
index 0000000..cc97454
--- /dev/null
+++ b/test/golden/proofassume/tokenizing.golden
@@ -0,0 +1,80 @@
+[ BeginEnv "proposition"
+, Label "assumetest"
+, Word "if"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "y"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proof"
+, Word "assume"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proof"
+, BeginEnv "proposition"
+, Label "assumetesttwo"
+, Word "if"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "y"
+, EndEnv "math"
+, Word "and"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Variable "b"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proof"
+, Word "assume"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Variable "b"
+, EndEnv "math"
+, Symbol "."
+, Word "assume"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proof"
+] \ No newline at end of file
diff --git a/test/golden/proofassume/verification.golden b/test/golden/proofassume/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/proofassume/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/proofdefinefunction/encoding tasks.golden b/test/golden/proofdefinefunction/encoding tasks.golden
new file mode 100644
index 0000000..36c916f
--- /dev/null
+++ b/test/golden/proofdefinefunction/encoding tasks.golden
@@ -0,0 +1,9 @@
+fof(definefunctiontest,conjecture,elem(fx,fy)=>elem(fx,fy)).
+fof(relation,axiom,![Xf]:(relation(Xf)<=>Xf=Xf)).
+fof(rightunique,axiom,![Xf]:(rightunique(Xf)<=>Xf=Xf)).
+fof(dom,axiom,![Xf]:dom(Xf)=Xf).
+fof(apply,axiom,![Xf,Xx]:apply(Xf,Xx)=Xx).
+fof(definefunctiontest1,axiom,relation(ff)).
+fof(definefunctiontest2,axiom,rightunique(ff)).
+fof(definefunctiontest3,axiom,![Xz]:(elem(Xz,fx)=>apply(ff,Xz)=Xz)).
+fof(definefunctiontest4,axiom,dom(ff)=fx). \ No newline at end of file
diff --git a/test/golden/proofdefinefunction/generating tasks.golden b/test/golden/proofdefinefunction/generating tasks.golden
new file mode 100644
index 0000000..3ab9857
--- /dev/null
+++ b/test/golden/proofdefinefunction/generating tasks.golden
@@ -0,0 +1,332 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "relation"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "relation" )
+ ]
+ , pl =
+ [ Just
+ ( Word "relations" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "rightunique"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "right-unique" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "dom"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "dom" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "apply"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "apply" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "f" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "definefunctiontest1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "relation" )
+ ]
+ , pl =
+ [ Just
+ ( Word "relations" )
+ ]
+ }
+ )
+ )
+ )
+ [ TermVar
+ ( NamedVar "f" )
+ ]
+ )
+ ,
+ ( Marker "definefunctiontest2"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "right-unique" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "f" )
+ ]
+ )
+ ,
+ ( Marker "definefunctiontest3"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "x" )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "apply" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "f" )
+ )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ , TermVar
+ ( B
+ ( NamedVar "z" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "definefunctiontest4"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "dom" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "f" )
+ ]
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "definefunctiontest"
+ , taskConjecture = Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ }
+] \ No newline at end of file
diff --git a/test/golden/proofdefinefunction/glossing.golden b/test/golden/proofdefinefunction/glossing.golden
new file mode 100644
index 0000000..931e5da
--- /dev/null
+++ b/test/golden/proofdefinefunction/glossing.golden
@@ -0,0 +1,163 @@
+[ BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/proofdefinefunction.tex"
+ , sourceLine = Pos 3
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "apply" )
+ ( DefnOp
+ [ Just
+ ( Command "apply" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "f"
+ , NamedVar "x"
+ ]
+ ( TermVar
+ ( NamedVar "x" )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/proofdefinefunction.tex"
+ , sourceLine = Pos 8
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "dom" )
+ ( DefnOp
+ [ Just
+ ( Command "dom" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "f" ]
+ ( TermVar
+ ( NamedVar "f" )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/proofdefinefunction.tex"
+ , sourceLine = Pos 13
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "rightunique" )
+ ( DefnPredicate []
+ ( PredicateAdj
+ [ Just
+ ( Word "right-unique" )
+ ]
+ )
+ ( NamedVar "f" :| [] )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "f" )
+ , TermVar
+ ( NamedVar "f" )
+ ]
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/proofdefinefunction.tex"
+ , sourceLine = Pos 18
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "relation" )
+ ( DefnPredicate []
+ ( PredicateNoun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "relation" )
+ ]
+ , pl =
+ [ Just
+ ( Word "relations" )
+ ]
+ }
+ )
+ )
+ ( NamedVar "f" :| [] )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "f" )
+ , TermVar
+ ( NamedVar "f" )
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/proofdefinefunction.tex"
+ , sourceLine = Pos 22
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "definefunctiontest" )
+ ( Lemma []
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/proofdefinefunction.tex"
+ , sourceLine = Pos 25
+ , sourceColumn = Pos 1
+ }
+ )
+ ( DefineFunction
+ ( NamedVar "f" )
+ ( NamedVar "z" )
+ ( TermVar
+ ( NamedVar "z" )
+ )
+ ( TermVar
+ ( NamedVar "x" )
+ ) ( Qed JustificationEmpty )
+ )
+] \ No newline at end of file
diff --git a/test/golden/proofdefinefunction/parsing.golden b/test/golden/proofdefinefunction/parsing.golden
new file mode 100644
index 0000000..eba14ec
--- /dev/null
+++ b/test/golden/proofdefinefunction/parsing.golden
@@ -0,0 +1,184 @@
+[ BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/proofdefinefunction.tex"
+ , sourceLine = Pos 3
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "apply" )
+ ( DefnOp
+ ( SymbolPattern
+ [ Just
+ ( Command "apply" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "f"
+ , NamedVar "x"
+ ]
+ )
+ ( ExprVar
+ ( NamedVar "x" )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/proofdefinefunction.tex"
+ , sourceLine = Pos 8
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "dom" )
+ ( DefnOp
+ ( SymbolPattern
+ [ Just
+ ( Command "dom" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "f" ]
+ )
+ ( ExprVar
+ ( NamedVar "f" )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/proofdefinefunction.tex"
+ , sourceLine = Pos 13
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "rightunique" )
+ ( Defn []
+ ( DefnAdj Nothing
+ ( NamedVar "f" )
+ ( Adj
+ [ Just
+ ( Word "right-unique" )
+ ] []
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "f" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "f" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/proofdefinefunction.tex"
+ , sourceLine = Pos 18
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "relation" )
+ ( Defn []
+ ( DefnNoun
+ ( NamedVar "f" )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "relation" )
+ ]
+ , pl =
+ [ Just
+ ( Word "relations" )
+ ]
+ }
+ ) []
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "f" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "f" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/proofdefinefunction.tex"
+ , sourceLine = Pos 22
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "definefunctiontest" )
+ ( Lemma []
+ ( StmtConnected Implication
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/proofdefinefunction.tex"
+ , sourceLine = Pos 25
+ , sourceColumn = Pos 1
+ }
+ )
+ ( DefineFunction
+ ( NamedVar "f" )
+ ( NamedVar "z" )
+ ( ExprVar
+ ( NamedVar "z" )
+ )
+ ( NamedVar "z" )
+ ( ExprVar
+ ( NamedVar "x" )
+ ) ( Qed JustificationEmpty )
+ )
+] \ No newline at end of file
diff --git a/test/golden/proofdefinefunction/scanning.golden b/test/golden/proofdefinefunction/scanning.golden
new file mode 100644
index 0000000..e5d7748
--- /dev/null
+++ b/test/golden/proofdefinefunction/scanning.golden
@@ -0,0 +1,30 @@
+[ ScanFunctionSymbol
+ [ Just
+ ( Command "apply" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ ( Marker "apply" )
+, ScanFunctionSymbol
+ [ Just
+ ( Command "dom" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ ( Marker "dom" )
+, ScanAdj
+ [ Just
+ ( Word "right-unique" )
+ ]
+ ( Marker "rightunique" )
+, ScanNoun
+ [ Just
+ ( Word "relation" )
+ ]
+ ( Marker "relation" )
+] \ No newline at end of file
diff --git a/test/golden/proofdefinefunction/tokenizing.golden b/test/golden/proofdefinefunction/tokenizing.golden
new file mode 100644
index 0000000..542a89c
--- /dev/null
+++ b/test/golden/proofdefinefunction/tokenizing.golden
@@ -0,0 +1,94 @@
+[ BeginEnv "definition"
+, Label "apply"
+, BeginEnv "math"
+, Command "apply"
+, InvisibleBraceL
+, Variable "f"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "x"
+, InvisibleBraceR
+, Symbol "="
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "definition"
+, Label "dom"
+, BeginEnv "math"
+, Command "dom"
+, InvisibleBraceL
+, Variable "f"
+, InvisibleBraceR
+, Symbol "="
+, Variable "f"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "definition"
+, Label "rightunique"
+, BeginEnv "math"
+, Variable "f"
+, EndEnv "math"
+, Word "is"
+, Word "right-unique"
+, Word "iff"
+, BeginEnv "math"
+, Variable "f"
+, Symbol "="
+, Variable "f"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "definition"
+, Label "relation"
+, BeginEnv "math"
+, Variable "f"
+, EndEnv "math"
+, Word "is"
+, Word "a"
+, Word "relation"
+, Word "iff"
+, BeginEnv "math"
+, Variable "f"
+, Symbol "="
+, Variable "f"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "proposition"
+, Label "definefunctiontest"
+, Word "if"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "y"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proof"
+, Word "let"
+, BeginEnv "math"
+, Variable "f"
+, ParenL
+, Variable "z"
+, ParenR
+, Symbol "="
+, Variable "z"
+, EndEnv "math"
+, Word "for"
+, BeginEnv "math"
+, Variable "z"
+, Command "in"
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proof"
+] \ No newline at end of file
diff --git a/test/golden/proofdefinefunction/verification.golden b/test/golden/proofdefinefunction/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/proofdefinefunction/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/prooffix/encoding tasks.golden b/test/golden/prooffix/encoding tasks.golden
new file mode 100644
index 0000000..b92e552
--- /dev/null
+++ b/test/golden/prooffix/encoding tasks.golden
@@ -0,0 +1,4 @@
+fof(assumetest,conjecture,fx=fx).
+------------------
+fof(assumetest,conjecture,fx=fx).
+fof(assumetest1,axiom,fx=fx). \ No newline at end of file
diff --git a/test/golden/prooffix/generating tasks.golden b/test/golden/prooffix/generating tasks.golden
new file mode 100644
index 0000000..7bba761
--- /dev/null
+++ b/test/golden/prooffix/generating tasks.golden
@@ -0,0 +1,48 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses = []
+ , taskConjectureLabel = Marker "assumetest"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "assumetest1"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ )
+ ]
+ , taskConjectureLabel = Marker "assumetest"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ }
+] \ No newline at end of file
diff --git a/test/golden/prooffix/glossing.golden b/test/golden/prooffix/glossing.golden
new file mode 100644
index 0000000..1b84ecc
--- /dev/null
+++ b/test/golden/prooffix/glossing.golden
@@ -0,0 +1,55 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/prooffix.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "assumetest" )
+ ( Lemma []
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/prooffix.tex"
+ , sourceLine = Pos 4
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Fix
+ ( NamedVar "x" :| [] ) ( PropositionalConstant IsTop )
+ ( Have
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "x" )
+ ]
+ ) JustificationEmpty ( Qed JustificationEmpty )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/prooffix/parsing.golden b/test/golden/prooffix/parsing.golden
new file mode 100644
index 0000000..26b2b35
--- /dev/null
+++ b/test/golden/prooffix/parsing.golden
@@ -0,0 +1,56 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/prooffix.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "assumetest" )
+ ( Lemma []
+ ( SymbolicQuantified Universally
+ ( NamedVar "x" :| [] ) Unbounded Nothing
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/prooffix.tex"
+ , sourceLine = Pos 4
+ , sourceColumn = Pos 1
+ }
+ )
+ ( FixSymbolic
+ ( NamedVar "x" :| [] ) Unbounded
+ ( Have Nothing
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ ) JustificationEmpty ( Qed JustificationEmpty )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/prooffix/scanning.golden b/test/golden/prooffix/scanning.golden
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/test/golden/prooffix/scanning.golden
@@ -0,0 +1 @@
+[] \ No newline at end of file
diff --git a/test/golden/prooffix/tokenizing.golden b/test/golden/prooffix/tokenizing.golden
new file mode 100644
index 0000000..55064a0
--- /dev/null
+++ b/test/golden/prooffix/tokenizing.golden
@@ -0,0 +1,31 @@
+[ BeginEnv "proposition"
+, Label "assumetest"
+, Word "for"
+, Word "all"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "we"
+, Word "have"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proof"
+, Word "fix"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "x"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proof"
+] \ No newline at end of file
diff --git a/test/golden/prooffix/verification.golden b/test/golden/prooffix/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/prooffix/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/relation-notation/encoding tasks.golden b/test/golden/relation-notation/encoding tasks.golden
new file mode 100644
index 0000000..0b26422
--- /dev/null
+++ b/test/golden/relation-notation/encoding tasks.golden
@@ -0,0 +1 @@
+fof(mathrel_notation_test,conjecture,elem(pair(fx,fy),fR)=>elem(pair(fx,fy),fR)). \ No newline at end of file
diff --git a/test/golden/relation-notation/generating tasks.golden b/test/golden/relation-notation/generating tasks.golden
new file mode 100644
index 0000000..401b93f
--- /dev/null
+++ b/test/golden/relation-notation/generating tasks.golden
@@ -0,0 +1,61 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses = []
+ , taskConjectureLabel = Marker "mathrel_notation_test"
+ , taskConjecture = Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ }
+] \ No newline at end of file
diff --git a/test/golden/relation-notation/glossing.golden b/test/golden/relation-notation/glossing.golden
new file mode 100644
index 0000000..4e4aa89
--- /dev/null
+++ b/test/golden/relation-notation/glossing.golden
@@ -0,0 +1,67 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/relation-notation.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "mathrel_notation_test" )
+ ( Lemma []
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/relation-notation/parsing.golden b/test/golden/relation-notation/parsing.golden
new file mode 100644
index 0000000..33f2808
--- /dev/null
+++ b/test/golden/relation-notation/parsing.golden
@@ -0,0 +1,47 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/relation-notation.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "mathrel_notation_test" )
+ ( Lemma []
+ ( StmtConnected Implication
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationExpr
+ ( ExprVar
+ ( NamedVar "R" )
+ )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationExpr
+ ( ExprVar
+ ( NamedVar "R" )
+ )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/relation-notation/scanning.golden b/test/golden/relation-notation/scanning.golden
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/test/golden/relation-notation/scanning.golden
@@ -0,0 +1 @@
+[] \ No newline at end of file
diff --git a/test/golden/relation-notation/tokenizing.golden b/test/golden/relation-notation/tokenizing.golden
new file mode 100644
index 0000000..6799562
--- /dev/null
+++ b/test/golden/relation-notation/tokenizing.golden
@@ -0,0 +1,24 @@
+[ BeginEnv "proposition"
+, Label "mathrel_notation_test"
+, Word "if"
+, BeginEnv "math"
+, Variable "x"
+, Command "mathrel"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, Variable "y"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Variable "x"
+, Command "mathrel"
+, InvisibleBraceL
+, Variable "R"
+, InvisibleBraceR
+, Variable "y"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+] \ No newline at end of file
diff --git a/test/golden/relation-notation/verification.golden b/test/golden/relation-notation/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/relation-notation/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/replace/encoding tasks.golden b/test/golden/replace/encoding tasks.golden
new file mode 100644
index 0000000..a939ff9
--- /dev/null
+++ b/test/golden/replace/encoding tasks.golden
@@ -0,0 +1,17 @@
+fof(pair_emptyset_in_times_unit,conjecture,elem(pair(emptyset,emptyset),times(unit,unit))).
+fof(unit,axiom,![Xany]:(elem(Xany,unit)<=>(elem(Xany,emptyset)|Xany=emptyset))).
+fof(times,axiom,![XA,XB]:![Xfrv]:(elem(Xfrv,times(XA,XB))<=>?[Xa,Xb]:(elem(Xa,XA)&elem(Xb,XB)&pair(Xa,Xb)=Xfrv))).
+fof(cons,axiom,![Xx,Xy,XX]:(elem(Xx,cons(Xy,XX))<=>(Xx=Xy|elem(Xx,XX)))).
+------------------
+fof(suc,conjecture,![X0]:(elem(X0,fa)=>![X1,X2]:((X1=cons(X0,emptyset)&X2=cons(X0,emptyset))=>X1=X2))).
+fof(pair_emptyset_in_times_unit,axiom,elem(pair(emptyset,emptyset),times(unit,unit))).
+fof(unit,axiom,![Xany]:(elem(Xany,unit)<=>(elem(Xany,emptyset)|Xany=emptyset))).
+fof(times,axiom,![XA,XB]:![Xfrv]:(elem(Xfrv,times(XA,XB))<=>?[Xa,Xb]:(elem(Xa,XA)&elem(Xb,XB)&pair(Xa,Xb)=Xfrv))).
+fof(cons,axiom,![Xx,Xy,XX]:(elem(Xx,cons(Xy,XX))<=>(Xx=Xy|elem(Xx,XX)))).
+------------------
+fof(times_replacement_test,conjecture,![Xfrv]:(elem(Xfrv,times(fA,fB))<=>?[Xa,Xb]:(elem(Xa,fA)&elem(Xb,fB)&pair(Xa,Xb)=Xfrv))).
+fof(suc,axiom,![X1,Xa]:(elem(X1,suc(Xa))<=>?[X0]:(elem(X0,Xa)&X1=cons(X0,emptyset)))).
+fof(pair_emptyset_in_times_unit,axiom,elem(pair(emptyset,emptyset),times(unit,unit))).
+fof(unit,axiom,![Xany]:(elem(Xany,unit)<=>(elem(Xany,emptyset)|Xany=emptyset))).
+fof(times,axiom,![XA,XB]:![Xfrv]:(elem(Xfrv,times(XA,XB))<=>?[Xa,Xb]:(elem(Xa,XA)&elem(Xb,XB)&pair(Xa,Xb)=Xfrv))).
+fof(cons,axiom,![Xx,Xy,XX]:(elem(Xx,cons(Xy,XX))<=>(Xx=Xy|elem(Xx,XX)))). \ No newline at end of file
diff --git a/test/golden/replace/generating tasks.golden b/test/golden/replace/generating tasks.golden
new file mode 100644
index 0000000..2d8fc5d
--- /dev/null
+++ b/test/golden/replace/generating tasks.golden
@@ -0,0 +1,1378 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "unit"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "any" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "any" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "any" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "frv" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ ]
+ )
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "frv" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "X" )
+ )
+ ]
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "X" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "pair_emptyset_in_times_unit"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ ]
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "pair_emptyset_in_times_unit"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ ]
+ ]
+ )
+ ,
+ ( Marker "unit"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "any" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "any" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "any" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "frv" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ ]
+ )
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "frv" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "X" )
+ )
+ ]
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "X" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "suc"
+ , taskConjecture = Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "a" )
+ )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 1 )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 2 )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 1 )
+ )
+ , TermVar
+ ( B
+ ( FreshVar 2 )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "suc"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 1 )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "suc" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ ]
+ ]
+ )
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( FreshVar 1 )
+ )
+ )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "pair_emptyset_in_times_unit"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ ]
+ ]
+ )
+ ,
+ ( Marker "unit"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "any" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "any" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "any" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "times"
+ , Quantified Universally
+ ( Scope
+ ( Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "frv" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ ]
+ )
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "frv" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "cons"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "X" )
+ )
+ ]
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "y" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "X" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "times_replacement_test"
+ , taskConjecture = Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "frv" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ ]
+ ]
+ )
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ )
+ )
+ ]
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "frv" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ }
+] \ No newline at end of file
diff --git a/test/golden/replace/glossing.golden b/test/golden/replace/glossing.golden
new file mode 100644
index 0000000..d6219fe
--- /dev/null
+++ b/test/golden/replace/glossing.golden
@@ -0,0 +1,350 @@
+[ BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/replace.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cons" )
+ ( Axiom []
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( NamedVar "y" )
+ , TermVar
+ ( NamedVar "X" )
+ ]
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "y" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "x" )
+ , TermVar
+ ( NamedVar "X" )
+ ]
+ )
+ )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/replace.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "times" )
+ ( DefnOp
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ [ NamedVar "A"
+ , NamedVar "B"
+ ]
+ ( ReplaceFun
+ (
+ ( NamedVar "a"
+ , TermVar
+ ( NamedVar "A" )
+ ) :|
+ [
+ ( NamedVar "b"
+ , TermVar
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( Scope
+ ( TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( Scope ( PropositionalConstant IsTop ) )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/replace.tex"
+ , sourceLine = Pos 9
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "unit" )
+ ( DefnOp
+ [ Just
+ ( Command "unit" )
+ ] []
+ ( TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/replace.tex"
+ , sourceLine = Pos 13
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "pair_emptyset_in_times_unit" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "unit" )
+ ]
+ ) []
+ ]
+ ]
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/replace.tex"
+ , sourceLine = Pos 19
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "suc" )
+ ( DefnOp
+ [ Just
+ ( Command "suc" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "a" ]
+ ( ReplacePred
+ ( NamedVar "y" )
+ ( NamedVar "x" )
+ ( TermVar
+ ( NamedVar "a" )
+ )
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar ( B ReplacementRangeVar )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar ( B ReplacementDomVar )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "emptyset" )
+ ]
+ ) []
+ ]
+ ]
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/replace.tex"
+ , sourceLine = Pos 25
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "times_replacement_test" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "B" )
+ ]
+ , ReplaceFun
+ (
+ ( NamedVar "a"
+ , TermVar
+ ( NamedVar "A" )
+ ) :|
+ [
+ ( NamedVar "b"
+ , TermVar
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ ( Scope
+ ( TermSymbol
+ ( SymbolMixfix
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "b" )
+ )
+ ]
+ )
+ )
+ ( Scope ( PropositionalConstant IsTop ) )
+ ]
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/replace/parsing.golden b/test/golden/replace/parsing.golden
new file mode 100644
index 0000000..c2cd815
--- /dev/null
+++ b/test/golden/replace/parsing.golden
@@ -0,0 +1,304 @@
+[ BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/replace.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "cons" )
+ ( Axiom []
+ ( StmtConnected Equivalence
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Just
+ ( Command "cons" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "y" )
+ , ExprVar
+ ( NamedVar "X" )
+ ] :| []
+ )
+ )
+ )
+ )
+ ( StmtConnected Disjunction
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "X" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/replace.tex"
+ , sourceLine = Pos 5
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "times" )
+ ( DefnOp
+ ( SymbolPattern
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ [ NamedVar "A"
+ , NamedVar "B"
+ ]
+ )
+ ( ExprReplace
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "b" )
+ ]
+ )
+ (
+ ( NamedVar "a"
+ , ExprVar
+ ( NamedVar "A" )
+ ) :|
+ [
+ ( NamedVar "b"
+ , ExprVar
+ ( NamedVar "B" )
+ )
+ ]
+ ) Nothing
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/replace.tex"
+ , sourceLine = Pos 9
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "unit" )
+ ( DefnOp
+ ( SymbolPattern
+ [ Just
+ ( Command "unit" )
+ ] []
+ )
+ ( ExprFiniteSet
+ ( ExprOp
+ [ Just
+ ( Command "emptyset" )
+ ] [] :| []
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/replace.tex"
+ , sourceLine = Pos 13
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "pair_emptyset_in_times_unit" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprOp
+ [ Just
+ ( Command "emptyset" )
+ ] []
+ , ExprOp
+ [ Just
+ ( Command "emptyset" )
+ ] []
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ [ ExprOp
+ [ Just
+ ( Command "unit" )
+ ] []
+ , ExprOp
+ [ Just
+ ( Command "unit" )
+ ] []
+ ] :| []
+ )
+ )
+ )
+ )
+ )
+, BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/replace.tex"
+ , sourceLine = Pos 19
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "suc" )
+ ( DefnOp
+ ( SymbolPattern
+ [ Just
+ ( Command "suc" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ NamedVar "a" ]
+ )
+ ( ExprReplacePred
+ ( NamedVar "y" )
+ ( NamedVar "x" )
+ ( ExprVar
+ ( NamedVar "a" )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "y" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprFiniteSet
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/replace.tex"
+ , sourceLine = Pos 25
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "times_replacement_test" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ , ExprVar
+ ( NamedVar "B" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprReplace
+ ( ExprOp
+ [ Just
+ ( Command "pair" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ [ ExprVar
+ ( NamedVar "a" )
+ , ExprVar
+ ( NamedVar "b" )
+ ]
+ )
+ (
+ ( NamedVar "a"
+ , ExprVar
+ ( NamedVar "A" )
+ ) :|
+ [
+ ( NamedVar "b"
+ , ExprVar
+ ( NamedVar "B" )
+ )
+ ]
+ ) Nothing :| []
+ )
+ )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/replace/scanning.golden b/test/golden/replace/scanning.golden
new file mode 100644
index 0000000..050e544
--- /dev/null
+++ b/test/golden/replace/scanning.golden
@@ -0,0 +1,21 @@
+[ ScanFunctionSymbol
+ [ Nothing
+ , Just
+ ( Command "times" )
+ , Nothing
+ ]
+ ( Marker "times" )
+, ScanFunctionSymbol
+ [ Just
+ ( Command "unit" )
+ ]
+ ( Marker "unit" )
+, ScanFunctionSymbol
+ [ Just
+ ( Command "suc" )
+ , Just InvisibleBraceL
+ , Nothing
+ , Just InvisibleBraceR
+ ]
+ ( Marker "suc" )
+] \ No newline at end of file
diff --git a/test/golden/replace/tokenizing.golden b/test/golden/replace/tokenizing.golden
new file mode 100644
index 0000000..3b9f65c
--- /dev/null
+++ b/test/golden/replace/tokenizing.golden
@@ -0,0 +1,129 @@
+[ BeginEnv "axiom"
+, Label "cons"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Command "cons"
+, InvisibleBraceL
+, Variable "y"
+, InvisibleBraceR
+, InvisibleBraceL
+, Variable "X"
+, InvisibleBraceR
+, EndEnv "math"
+, Word "iff"
+, BeginEnv "math"
+, Variable "x"
+, Symbol "="
+, Variable "y"
+, EndEnv "math"
+, Word "or"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "X"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "axiom"
+, BeginEnv "definition"
+, Label "times"
+, BeginEnv "math"
+, Variable "A"
+, Command "times"
+, Variable "B"
+, Symbol "="
+, VisibleBraceL
+, ParenL
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, ParenR
+, Command "mid"
+, Variable "a"
+, Command "in"
+, Variable "A"
+, Symbol ","
+, Variable "b"
+, Command "in"
+, Variable "B"
+, VisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "definition"
+, Label "unit"
+, BeginEnv "math"
+, Command "unit"
+, Symbol "="
+, VisibleBraceL
+, Command "emptyset"
+, VisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "proposition"
+, Label "pair_emptyset_in_times_unit"
+, BeginEnv "math"
+, ParenL
+, Command "emptyset"
+, Symbol ","
+, Command "emptyset"
+, ParenR
+, Command "in"
+, Command "unit"
+, Command "times"
+, Command "unit"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "definition"
+, Label "suc"
+, BeginEnv "math"
+, Command "suc"
+, InvisibleBraceL
+, Variable "a"
+, InvisibleBraceR
+, Symbol "="
+, VisibleBraceL
+, Variable "y"
+, Command "mid"
+, Command "exists"
+, Variable "x"
+, Command "in"
+, Variable "a"
+, Symbol "."
+, Variable "y"
+, Symbol "="
+, VisibleBraceL
+, Variable "x"
+, VisibleBraceR
+, VisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "proposition"
+, Label "times_replacement_test"
+, BeginEnv "math"
+, Variable "A"
+, Command "times"
+, Variable "B"
+, Symbol "="
+, VisibleBraceL
+, ParenL
+, Variable "a"
+, Symbol ","
+, Variable "b"
+, ParenR
+, Command "mid"
+, Variable "a"
+, Command "in"
+, Variable "A"
+, Symbol ","
+, Variable "b"
+, Command "in"
+, Variable "B"
+, VisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+] \ No newline at end of file
diff --git a/test/golden/replace/verification.golden b/test/golden/replace/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/replace/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/russell/encoding tasks.golden b/test/golden/russell/encoding tasks.golden
new file mode 100644
index 0000000..c8fa769
--- /dev/null
+++ b/test/golden/russell/encoding tasks.golden
@@ -0,0 +1,24 @@
+fof(no_universal_set,conjecture,?[XV]:universal_set(XV)).
+fof(universal_set,axiom,![XV]:(universal_set(XV)<=>![Xx]:elem(Xx,XV))).
+fof(no_universal_set1,axiom,~~?[X0]:universal_set(X0)).
+------------------
+fof(no_universal_set,conjecture,elem(fR,fR)<=>~elem(fR,fR)).
+fof(universal_set,axiom,![XV]:(universal_set(XV)<=>![Xx]:elem(Xx,XV))).
+fof(no_universal_set1,axiom,![Xx]:(elem(Xx,fR)<=>(elem(Xx,fV)&~elem(Xx,Xx)))).
+fof(no_universal_set2,axiom,universal_set(fV)).
+fof(no_universal_set3,axiom,~~?[X0]:universal_set(X0)).
+------------------
+fof(no_universal_set,conjecture,$false).
+fof(universal_set,axiom,![XV]:(universal_set(XV)<=>![Xx]:elem(Xx,XV))).
+fof(no_universal_set1,axiom,elem(fR,fR)<=>~elem(fR,fR)).
+fof(no_universal_set2,axiom,![Xx]:(elem(Xx,fR)<=>(elem(Xx,fV)&~elem(Xx,Xx)))).
+fof(no_universal_set3,axiom,universal_set(fV)).
+fof(no_universal_set4,axiom,~~?[X0]:universal_set(X0)).
+------------------
+fof(no_universal_set,conjecture,$false).
+fof(universal_set,axiom,![XV]:(universal_set(XV)<=>![Xx]:elem(Xx,XV))).
+fof(no_universal_set1,axiom,$false).
+fof(no_universal_set2,axiom,elem(fR,fR)<=>~elem(fR,fR)).
+fof(no_universal_set3,axiom,![Xx]:(elem(Xx,fR)<=>(elem(Xx,fV)&~elem(Xx,Xx)))).
+fof(no_universal_set4,axiom,universal_set(fV)).
+fof(no_universal_set5,axiom,~~?[X0]:universal_set(X0)). \ No newline at end of file
diff --git a/test/golden/russell/generating tasks.golden b/test/golden/russell/generating tasks.golden
new file mode 100644
index 0000000..a509323
--- /dev/null
+++ b/test/golden/russell/generating tasks.golden
@@ -0,0 +1,769 @@
+[ Task
+ { taskDirectness = Indirect
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction ( PropositionalConstant IsTop )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ , taskHypotheses =
+ [
+ ( Marker "universal_set"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "V" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "V" )
+ )
+ )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "no_universal_set1"
+ , Not
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "no_universal_set"
+ , taskConjecture = Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "V" )
+ )
+ ]
+ )
+ )
+ }
+, Task
+ { taskDirectness = Indirect
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction ( PropositionalConstant IsTop )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ , taskHypotheses =
+ [
+ ( Marker "universal_set"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "V" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "V" )
+ )
+ )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "no_universal_set1"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "R" )
+ )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "V" )
+ )
+ )
+ ]
+ )
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "no_universal_set2"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "V" )
+ ]
+ )
+ ,
+ ( Marker "no_universal_set3"
+ , Not
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "no_universal_set"
+ , taskConjecture = Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ )
+ }
+, Task
+ { taskDirectness = Indirect
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction ( PropositionalConstant IsTop )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ , taskHypotheses =
+ [
+ ( Marker "universal_set"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "V" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "V" )
+ )
+ )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "no_universal_set1"
+ , Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "no_universal_set2"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "R" )
+ )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "V" )
+ )
+ )
+ ]
+ )
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "no_universal_set3"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "V" )
+ ]
+ )
+ ,
+ ( Marker "no_universal_set4"
+ , Not
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "no_universal_set"
+ , taskConjecture = PropositionalConstant IsBottom
+ }
+, Task
+ { taskDirectness = Indirect
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction ( PropositionalConstant IsTop )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ , taskHypotheses =
+ [
+ ( Marker "universal_set"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "V" )
+ )
+ ]
+ )
+ ( Quantified Universally
+ ( Scope
+ ( Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "V" )
+ )
+ )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "no_universal_set1"
+ , PropositionalConstant IsBottom
+ )
+ ,
+ ( Marker "no_universal_set2"
+ , Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "no_universal_set3"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "R" )
+ )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "V" )
+ )
+ )
+ ]
+ )
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "no_universal_set4"
+ , TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "V" )
+ ]
+ )
+ ,
+ ( Marker "no_universal_set5"
+ , Not
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "no_universal_set"
+ , taskConjecture = PropositionalConstant IsBottom
+ }
+] \ No newline at end of file
diff --git a/test/golden/russell/glossing.golden b/test/golden/russell/glossing.golden
new file mode 100644
index 0000000..e8ef25d
--- /dev/null
+++ b/test/golden/russell/glossing.golden
@@ -0,0 +1,155 @@
+[ BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/russell.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "universal_set" )
+ ( DefnPredicate []
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ ( NamedVar "V" :| [] )
+ ( Quantified Universally
+ ( Scope
+ ( Connected Implication ( PropositionalConstant IsTop )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "V" )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/russell.tex"
+ , sourceLine = Pos 7
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "no_universal_set" )
+ ( Lemma []
+ ( Not
+ ( Quantified Existentially
+ ( Scope
+ ( Connected Conjunction ( PropositionalConstant IsTop )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( B
+ ( FreshVar 0 )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/russell.tex"
+ , sourceLine = Pos 10
+ , sourceColumn = Pos 1
+ }
+ )
+ ( ByContradiction
+ ( Take
+ ( NamedVar "V" :| [] )
+ ( Connected Conjunction ( PropositionalConstant IsTop )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ )
+ )
+ [ TermVar
+ ( NamedVar "V" )
+ ]
+ )
+ ) JustificationEmpty
+ ( Define
+ ( NamedVar "R" )
+ ( TermSep
+ ( NamedVar "x" )
+ ( TermVar
+ ( NamedVar "V" )
+ )
+ ( Scope
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B () )
+ , TermVar
+ ( B () )
+ ]
+ )
+ )
+ )
+ )
+ ( Have
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ ( Not
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "R" )
+ , TermVar
+ ( NamedVar "R" )
+ ]
+ )
+ )
+ ) JustificationEmpty
+ ( Have ( PropositionalConstant IsBottom ) JustificationEmpty ( Qed JustificationEmpty ) )
+ )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/russell/parsing.golden b/test/golden/russell/parsing.golden
new file mode 100644
index 0000000..f924229
--- /dev/null
+++ b/test/golden/russell/parsing.golden
@@ -0,0 +1,198 @@
+[ BlockDefn
+ ( SourcePos
+ { sourceName = "test/examples/russell.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "universal_set" )
+ ( Defn []
+ ( DefnAdj
+ ( Just NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "set" )
+ ]
+ , pl =
+ [ Just
+ ( Word "sets" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ )
+ ( NamedVar "V" )
+ ( Adj
+ [ Just
+ ( Word "universal" )
+ ] []
+ )
+ )
+ ( StmtQuantPhrase
+ ( QuantPhrase Universally NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "set" )
+ ]
+ , pl =
+ [ Just
+ ( Word "sets" )
+ ]
+ }
+ ) []
+ )
+ (
+ [ NamedVar "x" ]
+ ) ( [] ) ( Nothing )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "V" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/russell.tex"
+ , sourceLine = Pos 7
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "no_universal_set" )
+ ( Lemma []
+ ( StmtNeg
+ ( StmtExists NounPhrase
+ (
+ [ AdjL
+ [ Just
+ ( Word "universal" )
+ ] []
+ ]
+ )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "set" )
+ ]
+ , pl =
+ [ Just
+ ( Word "sets" )
+ ]
+ }
+ ) []
+ ) ( [] ) ( [] ) ( Nothing )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/russell.tex"
+ , sourceLine = Pos 10
+ , sourceColumn = Pos 1
+ }
+ )
+ ( ByContradiction
+ ( TakeNoun NounPhrase
+ (
+ [ AdjL
+ [ Just
+ ( Word "universal" )
+ ] []
+ ]
+ )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "set" )
+ ]
+ , pl =
+ [ Just
+ ( Word "sets" )
+ ]
+ }
+ ) []
+ )
+ (
+ [ NamedVar "V" ]
+ ) ( [] ) ( Nothing ) JustificationEmpty
+ ( Define
+ ( NamedVar "R" )
+ ( ExprSep
+ ( NamedVar "x" )
+ ( ExprVar
+ ( NamedVar "V" )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Negative
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ )
+ )
+ ( Have Nothing
+ ( StmtConnected Equivalence
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "R" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "R" ) :| []
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "R" ) :| []
+ ) Negative
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "R" ) :| []
+ )
+ )
+ )
+ )
+ ) JustificationEmpty
+ ( Have Nothing
+ ( StmtFormula ( PropositionalConstant IsBottom ) ) JustificationEmpty ( Qed JustificationEmpty )
+ )
+ )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/russell/scanning.golden b/test/golden/russell/scanning.golden
new file mode 100644
index 0000000..c0111b2
--- /dev/null
+++ b/test/golden/russell/scanning.golden
@@ -0,0 +1,6 @@
+[ ScanAdj
+ [ Just
+ ( Word "universal" )
+ ]
+ ( Marker "universal_set" )
+] \ No newline at end of file
diff --git a/test/golden/russell/tokenizing.golden b/test/golden/russell/tokenizing.golden
new file mode 100644
index 0000000..c2de55f
--- /dev/null
+++ b/test/golden/russell/tokenizing.golden
@@ -0,0 +1,80 @@
+[ BeginEnv "definition"
+, Label "universal_set"
+, Word "a"
+, Word "set"
+, BeginEnv "math"
+, Variable "V"
+, EndEnv "math"
+, Word "is"
+, Word "universal"
+, Word "iff"
+, Word "for"
+, Word "all"
+, Word "sets"
+, BeginEnv "math"
+, Variable "x"
+, EndEnv "math"
+, Word "we"
+, Word "have"
+, BeginEnv "math"
+, Variable "x"
+, Command "in"
+, Variable "V"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "definition"
+, BeginEnv "theorem"
+, Label "no_universal_set"
+, Word "there"
+, Word "exists"
+, Word "no"
+, Word "universal"
+, Word "set"
+, Symbol "."
+, EndEnv "theorem"
+, BeginEnv "proof"
+, Word "suppose"
+, Word "not"
+, Symbol "."
+, Word "take"
+, Word "a"
+, Word "universal"
+, Word "set"
+, BeginEnv "math"
+, Variable "V"
+, EndEnv "math"
+, Symbol "."
+, Word "let"
+, BeginEnv "math"
+, Variable "R"
+, Symbol "="
+, VisibleBraceL
+, Variable "x"
+, Command "in"
+, Variable "V"
+, Command "mid"
+, Variable "x"
+, Command "not"
+, Command "in"
+, Variable "x"
+, VisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, Word "then"
+, BeginEnv "math"
+, Variable "R"
+, Command "in"
+, Variable "R"
+, EndEnv "math"
+, Word "iff"
+, BeginEnv "math"
+, Variable "R"
+, Command "not"
+, Command "in"
+, Variable "R"
+, EndEnv "math"
+, Symbol "."
+, Word "contradiction"
+, Symbol "."
+, EndEnv "proof"
+] \ No newline at end of file
diff --git a/test/golden/russell/verification.golden b/test/golden/russell/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/russell/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/separation/encoding tasks.golden b/test/golden/separation/encoding tasks.golden
new file mode 100644
index 0000000..5d0994b
--- /dev/null
+++ b/test/golden/separation/encoding tasks.golden
@@ -0,0 +1 @@
+fof(sep_test,conjecture,![Xx]:(elem(Xx,fX)<=>(elem(Xx,fX)&Xx=Xx))). \ No newline at end of file
diff --git a/test/golden/separation/generating tasks.golden b/test/golden/separation/generating tasks.golden
new file mode 100644
index 0000000..889906b
--- /dev/null
+++ b/test/golden/separation/generating tasks.golden
@@ -0,0 +1,65 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses = []
+ , taskConjectureLabel = Marker "sep_test"
+ , taskConjecture = Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "X" )
+ )
+ )
+ ]
+ )
+ ( Connected Conjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "X" )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "x" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ }
+] \ No newline at end of file
diff --git a/test/golden/separation/glossing.golden b/test/golden/separation/glossing.golden
new file mode 100644
index 0000000..47d574b
--- /dev/null
+++ b/test/golden/separation/glossing.golden
@@ -0,0 +1,40 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/separation.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "sep_test" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "X" )
+ , TermSep
+ ( NamedVar "x" )
+ ( TermVar
+ ( NamedVar "X" )
+ )
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B () )
+ , TermVar
+ ( B () )
+ ]
+ )
+ )
+ ]
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/separation/parsing.golden b/test/golden/separation/parsing.golden
new file mode 100644
index 0000000..2a2110f
--- /dev/null
+++ b/test/golden/separation/parsing.golden
@@ -0,0 +1,44 @@
+[ BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/separation.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "sep_test" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "X" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprSep
+ ( NamedVar "x" )
+ ( ExprVar
+ ( NamedVar "X" )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "x" ) :| []
+ )
+ )
+ )
+ ) :| []
+ )
+ )
+ )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/separation/scanning.golden b/test/golden/separation/scanning.golden
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/test/golden/separation/scanning.golden
@@ -0,0 +1 @@
+[] \ No newline at end of file
diff --git a/test/golden/separation/tokenizing.golden b/test/golden/separation/tokenizing.golden
new file mode 100644
index 0000000..40b30d8
--- /dev/null
+++ b/test/golden/separation/tokenizing.golden
@@ -0,0 +1,18 @@
+[ BeginEnv "proposition"
+, Label "sep_test"
+, BeginEnv "math"
+, Variable "X"
+, Symbol "="
+, VisibleBraceL
+, Variable "x"
+, Command "in"
+, Variable "X"
+, Command "mid"
+, Variable "x"
+, Symbol "="
+, Variable "x"
+, VisibleBraceR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+] \ No newline at end of file
diff --git a/test/golden/separation/verification.golden b/test/golden/separation/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/separation/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file
diff --git a/test/golden/union/encoding tasks.golden b/test/golden/union/encoding tasks.golden
new file mode 100644
index 0000000..34d92fd
--- /dev/null
+++ b/test/golden/union/encoding tasks.golden
@@ -0,0 +1,21 @@
+fof(union_comm,conjecture,union(fA,fB)=union(fB,fA)).
+fof(union_defn,axiom,![Xa,XA,XB]:(elem(Xa,union(XA,XB))<=>(elem(Xa,XA)|elem(Xa,XB)))).
+fof(ext,axiom,![XA,XB]:(![Xa]:(elem(Xa,XA)<=>elem(Xa,XB))=>XA=XB)).
+------------------
+fof(union_assoc,conjecture,![Xa]:(elem(Xa,union(union(fA,fB),fC))=>elem(Xa,union(fA,union(fB,fC))))).
+fof(union_comm,axiom,![XA,XB]:union(XA,XB)=union(XB,XA)).
+fof(union_defn,axiom,![Xa,XA,XB]:(elem(Xa,union(XA,XB))<=>(elem(Xa,XA)|elem(Xa,XB)))).
+fof(ext,axiom,![XA,XB]:(![Xa]:(elem(Xa,XA)<=>elem(Xa,XB))=>XA=XB)).
+------------------
+fof(union_assoc,conjecture,![Xa]:(elem(Xa,union(fA,union(fB,fC)))=>elem(Xa,union(union(fA,fB),fC)))).
+fof(union_comm,axiom,![XA,XB]:union(XA,XB)=union(XB,XA)).
+fof(union_defn,axiom,![Xa,XA,XB]:(elem(Xa,union(XA,XB))<=>(elem(Xa,XA)|elem(Xa,XB)))).
+fof(ext,axiom,![XA,XB]:(![Xa]:(elem(Xa,XA)<=>elem(Xa,XB))=>XA=XB)).
+fof(union_assoc1,axiom,![Xa]:(elem(Xa,union(union(fA,fB),fC))=>elem(Xa,union(fA,union(fB,fC))))).
+------------------
+fof(union_assoc,conjecture,union(union(fA,fB),fC)=union(fA,union(fB,fC))).
+fof(union_comm,axiom,![XA,XB]:union(XA,XB)=union(XB,XA)).
+fof(union_defn,axiom,![Xa,XA,XB]:(elem(Xa,union(XA,XB))<=>(elem(Xa,XA)|elem(Xa,XB)))).
+fof(ext,axiom,![XA,XB]:(![Xa]:(elem(Xa,XA)<=>elem(Xa,XB))=>XA=XB)).
+fof(union_assoc1,axiom,![Xa]:(elem(Xa,union(fA,union(fB,fC)))=>elem(Xa,union(union(fA,fB),fC)))).
+fof(union_assoc2,axiom,![Xa]:(elem(Xa,union(union(fA,fB),fC))=>elem(Xa,union(fA,union(fB,fC))))). \ No newline at end of file
diff --git a/test/golden/union/generating tasks.golden b/test/golden/union/generating tasks.golden
new file mode 100644
index 0000000..f7f72bb
--- /dev/null
+++ b/test/golden/union/generating tasks.golden
@@ -0,0 +1,1335 @@
+[ Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "union_defn"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "ext"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "union_comm"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "B" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "B" )
+ , TermVar
+ ( NamedVar "A" )
+ ]
+ ]
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "union_comm"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "union_defn"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "ext"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "union_assoc"
+ , taskConjecture = Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ ]
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "union_comm"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "union_defn"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "ext"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "union_assoc1"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ ]
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "union_assoc"
+ , taskConjecture = Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ ]
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ }
+, Task
+ { taskDirectness = Direct
+ , taskHypotheses =
+ [
+ ( Marker "union_comm"
+ , Quantified Universally
+ ( Scope
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ,
+ ( Marker "union_defn"
+ , Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "ext"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "A" )
+ )
+ , TermVar
+ ( B
+ ( NamedVar "B" )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "union_assoc1"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ ]
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ,
+ ( Marker "union_assoc2"
+ , Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ ]
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ )
+ ]
+ , taskConjectureLabel = Marker "union_assoc"
+ , taskConjecture = TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "B" )
+ ]
+ , TermVar
+ ( NamedVar "C" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "B" )
+ , TermVar
+ ( NamedVar "C" )
+ ]
+ ]
+ ]
+ }
+] \ No newline at end of file
diff --git a/test/golden/union/glossing.golden b/test/golden/union/glossing.golden
new file mode 100644
index 0000000..1925c15
--- /dev/null
+++ b/test/golden/union/glossing.golden
@@ -0,0 +1,456 @@
+[ BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/union.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "ext" )
+ ( Axiom
+ [ Asm
+ ( Quantified Universally
+ ( Scope
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ ]
+ )
+ )
+ )
+ )
+ ]
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "B" )
+ ]
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/union.tex"
+ , sourceLine = Pos 6
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "union_defn" )
+ ( Axiom
+ [ Asm ( PropositionalConstant IsTop )
+ , Asm ( PropositionalConstant IsTop )
+ ]
+ ( Connected Equivalence
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "B" )
+ ]
+ ]
+ )
+ ( Connected Disjunction
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "A" )
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( NamedVar "a" )
+ , TermVar
+ ( NamedVar "B" )
+ ]
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/union.tex"
+ , sourceLine = Pos 11
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "union_comm" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "B" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "B" )
+ , TermVar
+ ( NamedVar "A" )
+ ]
+ ]
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/union.tex"
+ , sourceLine = Pos 15
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "union_assoc" )
+ ( Lemma []
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Symbol "=" )
+ )
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermVar
+ ( NamedVar "B" )
+ ]
+ , TermVar
+ ( NamedVar "C" )
+ ]
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "A" )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( NamedVar "B" )
+ , TermVar
+ ( NamedVar "C" )
+ ]
+ ]
+ ]
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/union.tex"
+ , sourceLine = Pos 18
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Have
+ ( Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ ]
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ ]
+ )
+ )
+ )
+ ) JustificationEmpty
+ ( Have
+ ( Quantified Universally
+ ( Scope
+ ( Connected Implication
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ ]
+ )
+ ( TermSymbol
+ ( SymbolPredicate
+ ( PredicateRelation
+ ( Command "in" )
+ )
+ )
+ [ TermVar
+ ( B
+ ( NamedVar "a" )
+ )
+ , TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermSymbol
+ ( SymbolMixfix
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ )
+ [ TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "A" )
+ )
+ )
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "B" )
+ )
+ )
+ ]
+ , TermVar
+ ( F
+ ( TermVar
+ ( NamedVar "C" )
+ )
+ )
+ ]
+ ]
+ )
+ )
+ )
+ ) JustificationEmpty ( Qed JustificationEmpty )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/union/parsing.golden b/test/golden/union/parsing.golden
new file mode 100644
index 0000000..391f039
--- /dev/null
+++ b/test/golden/union/parsing.golden
@@ -0,0 +1,406 @@
+[ BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/union.tex"
+ , sourceLine = Pos 1
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "ext" )
+ ( Axiom
+ [ AsmSuppose
+ ( SymbolicQuantified Universally
+ ( NamedVar "a" :| [] ) Unbounded Nothing
+ ( StmtConnected Equivalence
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "A" ) :| []
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "B" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+ ]
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "A" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprVar
+ ( NamedVar "B" ) :| []
+ )
+ )
+ )
+ )
+ )
+, BlockAxiom
+ ( SourcePos
+ { sourceName = "test/examples/union.tex"
+ , sourceLine = Pos 6
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "union_defn" )
+ ( Axiom
+ [ AsmLetNoun
+ ( NamedVar "A" :|
+ [ NamedVar "B" ]
+ ) NounPhrase ( [] )
+ ( Noun
+ ( SgPl
+ { sg =
+ [ Just
+ ( Word "set" )
+ ]
+ , pl =
+ [ Just
+ ( Word "sets" )
+ ]
+ }
+ ) []
+ ) ( Nothing ) ( [] ) ( Nothing )
+ ]
+ ( StmtConnected Equivalence
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ , ExprVar
+ ( NamedVar "B" )
+ ] :| []
+ )
+ )
+ )
+ )
+ ( StmtConnected Disjunction
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "A" ) :| []
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprVar
+ ( NamedVar "B" ) :| []
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/union.tex"
+ , sourceLine = Pos 11
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "union_comm" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ , ExprVar
+ ( NamedVar "B" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "B" )
+ , ExprVar
+ ( NamedVar "A" )
+ ] :| []
+ )
+ )
+ )
+ )
+ )
+, BlockLemma
+ ( SourcePos
+ { sourceName = "test/examples/union.tex"
+ , sourceLine = Pos 15
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Marker "union_assoc" )
+ ( Lemma []
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ , ExprVar
+ ( NamedVar "B" )
+ ]
+ , ExprVar
+ ( NamedVar "C" )
+ ] :| []
+ ) Positive
+ ( RelationSymbol
+ ( Symbol "=" )
+ )
+ ( ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ , ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "B" )
+ , ExprVar
+ ( NamedVar "C" )
+ ]
+ ] :| []
+ )
+ )
+ )
+ )
+ )
+, BlockProof
+ ( SourcePos
+ { sourceName = "test/examples/union.tex"
+ , sourceLine = Pos 18
+ , sourceColumn = Pos 1
+ }
+ )
+ ( Have Nothing
+ ( SymbolicQuantified Universally
+ ( NamedVar "a" :| [] ) Unbounded Nothing
+ ( StmtConnected Implication
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ , ExprVar
+ ( NamedVar "B" )
+ ]
+ , ExprVar
+ ( NamedVar "C" )
+ ] :| []
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ , ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "B" )
+ , ExprVar
+ ( NamedVar "C" )
+ ]
+ ] :| []
+ )
+ )
+ )
+ )
+ )
+ ) JustificationEmpty
+ ( Have Nothing
+ ( SymbolicQuantified Universally
+ ( NamedVar "a" :| [] ) Unbounded Nothing
+ ( StmtConnected Implication
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ , ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "B" )
+ , ExprVar
+ ( NamedVar "C" )
+ ]
+ ] :| []
+ )
+ )
+ )
+ )
+ ( StmtFormula
+ ( FormulaChain
+ ( ChainBase
+ ( ExprVar
+ ( NamedVar "a" ) :| []
+ ) Positive
+ ( RelationSymbol
+ ( Command "in" )
+ )
+ ( ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprOp
+ [ Nothing
+ , Just
+ ( Command "union" )
+ , Nothing
+ ]
+ [ ExprVar
+ ( NamedVar "A" )
+ , ExprVar
+ ( NamedVar "B" )
+ ]
+ , ExprVar
+ ( NamedVar "C" )
+ ] :| []
+ )
+ )
+ )
+ )
+ )
+ ) JustificationEmpty ( Qed JustificationEmpty )
+ )
+ )
+] \ No newline at end of file
diff --git a/test/golden/union/scanning.golden b/test/golden/union/scanning.golden
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/test/golden/union/scanning.golden
@@ -0,0 +1 @@
+[] \ No newline at end of file
diff --git a/test/golden/union/tokenizing.golden b/test/golden/union/tokenizing.golden
new file mode 100644
index 0000000..e336098
--- /dev/null
+++ b/test/golden/union/tokenizing.golden
@@ -0,0 +1,168 @@
+[ BeginEnv "axiom"
+, BracketL
+, Word "extensionality"
+, BracketR
+, Label "ext"
+, Word "suppose"
+, Word "for"
+, Word "all"
+, BeginEnv "math"
+, Variable "a"
+, EndEnv "math"
+, Word "we"
+, Word "have"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Variable "A"
+, EndEnv "math"
+, Word "iff"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Variable "B"
+, EndEnv "math"
+, Symbol "."
+, Word "then"
+, BeginEnv "math"
+, Variable "A"
+, Symbol "="
+, Variable "B"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "axiom"
+, BeginEnv "axiom"
+, Label "union_defn"
+, Word "let"
+, BeginEnv "math"
+, Variable "A"
+, Symbol ","
+, Variable "B"
+, EndEnv "math"
+, Word "be"
+, Word "sets"
+, Symbol "."
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Variable "A"
+, Command "union"
+, Variable "B"
+, EndEnv "math"
+, Word "iff"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Variable "A"
+, EndEnv "math"
+, Word "or"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Variable "B"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "axiom"
+, BeginEnv "proposition"
+, Label "union_comm"
+, BeginEnv "math"
+, Variable "A"
+, Command "union"
+, Variable "B"
+, Symbol "="
+, Variable "B"
+, Command "union"
+, Variable "A"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proposition"
+, Label "union_assoc"
+, BeginEnv "math"
+, ParenL
+, Variable "A"
+, Command "union"
+, Variable "B"
+, ParenR
+, Command "union"
+, Variable "C"
+, Symbol "="
+, Variable "A"
+, Command "union"
+, ParenL
+, Variable "B"
+, Command "union"
+, Variable "C"
+, ParenR
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proposition"
+, BeginEnv "proof"
+, Word "for"
+, Word "all"
+, BeginEnv "math"
+, Variable "a"
+, EndEnv "math"
+, Word "we"
+, Word "have"
+, Word "if"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, ParenL
+, Variable "A"
+, Command "union"
+, Variable "B"
+, ParenR
+, Command "union"
+, Variable "C"
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Variable "A"
+, Command "union"
+, ParenL
+, Variable "B"
+, Command "union"
+, Variable "C"
+, ParenR
+, EndEnv "math"
+, Symbol "."
+, Word "for"
+, Word "all"
+, BeginEnv "math"
+, Variable "a"
+, EndEnv "math"
+, Word "we"
+, Word "have"
+, Word "if"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, Variable "A"
+, Command "union"
+, ParenL
+, Variable "B"
+, Command "union"
+, Variable "C"
+, ParenR
+, EndEnv "math"
+, Symbol ","
+, Word "then"
+, BeginEnv "math"
+, Variable "a"
+, Command "in"
+, ParenL
+, Variable "A"
+, Command "union"
+, Variable "B"
+, ParenR
+, Command "union"
+, Variable "C"
+, EndEnv "math"
+, Symbol "."
+, EndEnv "proof"
+] \ No newline at end of file
diff --git a/test/golden/union/verification.golden b/test/golden/union/verification.golden
new file mode 100644
index 0000000..69b9873
--- /dev/null
+++ b/test/golden/union/verification.golden
@@ -0,0 +1 @@
+VerificationSuccess \ No newline at end of file