[ BlockAxiom ( Location { locFile = "test/examples/union.tex" , locLine = 1 , locColumn = 1 } ) ( Just [ Word "extensionality" ] ) ( Marker "ext" ) ( Axiom [ AsmSuppose ( SymbolicQuantified { loc = Location { locFile = "test/examples/union.tex" , locLine = 2 , locColumn = 13 } , quant = Universally , vars = NamedVar "a" :| [] , b = Unbounded , suchThat = Nothing , stmt = StmtConnected { conn = Equivalence , mloc = Nothing , stmt1 = StmtFormula { formula = FormulaChain ( ChainBase ( ExprVar ( NamedVar "a" ) :| [] ) Positive ( Relation ( Location { locFile = "test/examples/union.tex" , locLine = 2 , locColumn = 35 } ) ( RelationSymbol ( Command "in" ) ( ParameterArity 0 ) ( Marker "elem" ) ) [] ) ( ExprVar ( NamedVar "A" ) :| [] ) ) } , stmt2 = StmtFormula { formula = FormulaChain ( ChainBase ( ExprVar ( NamedVar "a" ) :| [] ) Positive ( Relation ( Location { locFile = "test/examples/union.tex" , locLine = 2 , locColumn = 48 } ) ( RelationSymbol ( Command "in" ) ( ParameterArity 0 ) ( Marker "elem" ) ) [] ) ( ExprVar ( NamedVar "B" ) :| [] ) ) } } } ) ] ( StmtFormula { formula = FormulaChain ( ChainBase ( ExprVar ( NamedVar "A" ) :| [] ) Positive ( Relation ( Location { locFile = "test/examples/union.tex" , locLine = 3 , locColumn = 13 } ) ( RelationSymbol ( Symbol "=" ) ( ParameterArity 0 ) ( Marker "eq" ) ) [] ) ( ExprVar ( NamedVar "B" ) :| [] ) ) } ) ) , BlockAxiom ( Location { locFile = "test/examples/union.tex" , locLine = 6 , locColumn = 1 } ) Nothing ( Marker "union_defn" ) ( Axiom [ AsmLetNoun ( NamedVar "A" :| [ NamedVar "B" ] ) NounPhrase ( [] ) ( Noun ( Location { locFile = "test/examples/union.tex" , locLine = 7 , locColumn = 19 } ) ( LexicalItemSgPl ( SgPl { sg = TokenCons ( Word "set" ) End , pl = TokenCons ( Word "sets" ) End } ) ( Marker "set" ) ) [] ) ( Nothing ) ( [] ) ( Nothing ) ] ( StmtConnected { conn = Equivalence , mloc = Nothing , stmt1 = StmtFormula { formula = FormulaChain ( ChainBase ( ExprVar ( NamedVar "a" ) :| [] ) Positive ( Relation ( Location { locFile = "test/examples/union.tex" , locLine = 8 , locColumn = 7 } ) ( RelationSymbol ( Command "in" ) ( ParameterArity 0 ) ( Marker "elem" ) ) [] ) ( ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 8 , locColumn = 11 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprVar ( NamedVar "A" ) , ExprVar ( NamedVar "B" ) ] :| [] ) ) } , stmt2 = StmtConnected { conn = Disjunction , mloc = Nothing , stmt1 = StmtFormula { formula = FormulaChain ( ChainBase ( ExprVar ( NamedVar "a" ) :| [] ) Positive ( Relation ( Location { locFile = "test/examples/union.tex" , locLine = 8 , locColumn = 28 } ) ( RelationSymbol ( Command "in" ) ( ParameterArity 0 ) ( Marker "elem" ) ) [] ) ( ExprVar ( NamedVar "A" ) :| [] ) ) } , stmt2 = StmtFormula { formula = FormulaChain ( ChainBase ( ExprVar ( NamedVar "a" ) :| [] ) Positive ( Relation ( Location { locFile = "test/examples/union.tex" , locLine = 8 , locColumn = 40 } ) ( RelationSymbol ( Command "in" ) ( ParameterArity 0 ) ( Marker "elem" ) ) [] ) ( ExprVar ( NamedVar "B" ) :| [] ) ) } } } ) ) , BlockClaim Proposition ( Location { locFile = "test/examples/union.tex" , locLine = 11 , locColumn = 1 } ) Nothing ( Marker "union_comm" ) ( Claim [] ( StmtFormula { formula = FormulaChain ( ChainBase ( ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 12 , locColumn = 6 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprVar ( NamedVar "A" ) , ExprVar ( NamedVar "B" ) ] :| [] ) Positive ( Relation ( Location { locFile = "test/examples/union.tex" , locLine = 12 , locColumn = 16 } ) ( RelationSymbol ( Symbol "=" ) ( ParameterArity 0 ) ( Marker "eq" ) ) [] ) ( ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 12 , locColumn = 18 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprVar ( NamedVar "B" ) , ExprVar ( NamedVar "A" ) ] :| [] ) ) } ) ) , BlockClaim Proposition ( Location { locFile = "test/examples/union.tex" , locLine = 15 , locColumn = 1 } ) Nothing ( Marker "union_assoc" ) ( Claim [] ( StmtFormula { formula = FormulaChain ( ChainBase ( ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 16 , locColumn = 7 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 16 , locColumn = 7 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprVar ( NamedVar "A" ) , ExprVar ( NamedVar "B" ) ] , ExprVar ( NamedVar "C" ) ] :| [] ) Positive ( Relation ( Location { locFile = "test/examples/union.tex" , locLine = 16 , locColumn = 26 } ) ( RelationSymbol ( Symbol "=" ) ( ParameterArity 0 ) ( Marker "eq" ) ) [] ) ( ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 16 , locColumn = 28 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprVar ( NamedVar "A" ) , ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 16 , locColumn = 37 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprVar ( NamedVar "B" ) , ExprVar ( NamedVar "C" ) ] ] :| [] ) ) } ) ) , BlockProof ( Location { locFile = "test/examples/union.tex" , locLine = 18 , locColumn = 1 } ) ( Have ( Location { locFile = "test/examples/union.tex" , locLine = 19 , locColumn = 5 } ) Nothing ( SymbolicQuantified { loc = Location { locFile = "test/examples/union.tex" , locLine = 19 , locColumn = 5 } , quant = Universally , vars = NamedVar "a" :| [] , b = Unbounded , suchThat = Nothing , stmt = StmtConnected { conn = Implication , mloc = Just ( Location { locFile = "test/examples/union.tex" , locLine = 19 , locColumn = 25 } ) , stmt1 = StmtFormula { formula = FormulaChain ( ChainBase ( ExprVar ( NamedVar "a" ) :| [] ) Positive ( Relation ( Location { locFile = "test/examples/union.tex" , locLine = 19 , locColumn = 30 } ) ( RelationSymbol ( Command "in" ) ( ParameterArity 0 ) ( Marker "elem" ) ) [] ) ( ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 19 , locColumn = 35 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 19 , locColumn = 35 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprVar ( NamedVar "A" ) , ExprVar ( NamedVar "B" ) ] , ExprVar ( NamedVar "C" ) ] :| [] ) ) } , stmt2 = StmtFormula { formula = FormulaChain ( ChainBase ( ExprVar ( NamedVar "a" ) :| [] ) Positive ( Relation ( Location { locFile = "test/examples/union.tex" , locLine = 19 , locColumn = 63 } ) ( RelationSymbol ( Command "in" ) ( ParameterArity 0 ) ( Marker "elem" ) ) [] ) ( ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 19 , locColumn = 67 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprVar ( NamedVar "A" ) , ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 19 , locColumn = 76 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprVar ( NamedVar "B" ) , ExprVar ( NamedVar "C" ) ] ] :| [] ) ) } } } ) JustificationEmpty ( Have ( Location { locFile = "test/examples/union.tex" , locLine = 20 , locColumn = 5 } ) Nothing ( SymbolicQuantified { loc = Location { locFile = "test/examples/union.tex" , locLine = 20 , locColumn = 5 } , quant = Universally , vars = NamedVar "a" :| [] , b = Unbounded , suchThat = Nothing , stmt = StmtConnected { conn = Implication , mloc = Just ( Location { locFile = "test/examples/union.tex" , locLine = 20 , locColumn = 25 } ) , stmt1 = StmtFormula { formula = FormulaChain ( ChainBase ( ExprVar ( NamedVar "a" ) :| [] ) Positive ( Relation ( Location { locFile = "test/examples/union.tex" , locLine = 20 , locColumn = 30 } ) ( RelationSymbol ( Command "in" ) ( ParameterArity 0 ) ( Marker "elem" ) ) [] ) ( ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 20 , locColumn = 34 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprVar ( NamedVar "A" ) , ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 20 , locColumn = 43 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprVar ( NamedVar "B" ) , ExprVar ( NamedVar "C" ) ] ] :| [] ) ) } , stmt2 = StmtFormula { formula = FormulaChain ( ChainBase ( ExprVar ( NamedVar "a" ) :| [] ) Positive ( Relation ( Location { locFile = "test/examples/union.tex" , locLine = 20 , locColumn = 63 } ) ( RelationSymbol ( Command "in" ) ( ParameterArity 0 ) ( Marker "elem" ) ) [] ) ( ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 20 , locColumn = 68 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprOp ( Location { locFile = "test/examples/union.tex" , locLine = 20 , locColumn = 68 } ) ( MixfixItem ( HoleCons ( TokenCons ( Command "union" ) ( HoleCons End ) ) ) ( Marker "union" ) LeftAssoc ) [ ExprVar ( NamedVar "A" ) , ExprVar ( NamedVar "B" ) ] , ExprVar ( NamedVar "C" ) ] :| [] ) ) } } } ) JustificationEmpty ( Qed Nothing JustificationEmpty ) ) ) ( Location { locFile = "test/examples/union.tex" , locLine = 21 , locColumn = 1 } ) ]