src/Pure/Proof/proof_syntax.ML
changeset 42224 578a51fae383
parent 42204 b3277168c1e7
child 42290 b1f544c84040
equal deleted inserted replaced
42223:098c86e53153 42224:578a51fae383
    69        (Syntax.mark_const "Appt", [proofT, aT] ---> proofT, Mixfix ("(1_ \\<cdot>/ _)", [4, 5], 4)),
    69        (Syntax.mark_const "Appt", [proofT, aT] ---> proofT, Mixfix ("(1_ \\<cdot>/ _)", [4, 5], 4)),
    70        (Syntax.mark_const "AppP", [proofT, proofT] ---> proofT, Mixfix ("(1_ \\<bullet>/ _)", [4, 5], 4))]
    70        (Syntax.mark_const "AppP", [proofT, proofT] ---> proofT, Mixfix ("(1_ \\<bullet>/ _)", [4, 5], 4))]
    71   |> Sign.add_modesyntax_i ("latex", false)
    71   |> Sign.add_modesyntax_i ("latex", false)
    72       [("_Lam", [paramsT, proofT] ---> proofT, Mixfix ("(1\\<^bold>\\<lambda>_./ _)", [0, 3], 3))]
    72       [("_Lam", [paramsT, proofT] ---> proofT, Mixfix ("(1\\<^bold>\\<lambda>_./ _)", [0, 3], 3))]
    73   |> Sign.add_trrules (map Syntax.Parse_Print_Rule
    73   |> Sign.add_trrules (map Syntax.Parse_Print_Rule
    74       [(Syntax.mk_appl (Constant "_Lam")
    74       [(Ast.mk_appl (Ast.Constant "_Lam")
    75           [Syntax.mk_appl (Constant "_Lam0") [Variable "l", Variable "m"], Variable "A"],
    75           [Ast.mk_appl (Ast.Constant "_Lam0")
    76         Syntax.mk_appl (Constant "_Lam")
    76             [Ast.Variable "l", Ast.Variable "m"], Ast.Variable "A"],
    77           [Variable "l", Syntax.mk_appl (Constant "_Lam") [Variable "m", Variable "A"]]),
    77         Ast.mk_appl (Ast.Constant "_Lam")
    78        (Syntax.mk_appl (Constant "_Lam")
    78           [Ast.Variable "l",
    79           [Syntax.mk_appl (Constant "_Lam1") [Variable "x", Variable "A"], Variable "B"],
    79             Ast.mk_appl (Ast.Constant "_Lam") [Ast.Variable "m", Ast.Variable "A"]]),
    80         Syntax.mk_appl (Constant (Syntax.mark_const "AbsP")) [Variable "A",
    80        (Ast.mk_appl (Ast.Constant "_Lam")
    81           (Syntax.mk_appl (Constant "_abs") [Variable "x", Variable "B"])]),
    81           [Ast.mk_appl (Ast.Constant "_Lam1")
    82        (Syntax.mk_appl (Constant "_Lam") [Variable "x", Variable "A"],
    82             [Ast.Variable "x", Ast.Variable "A"], Ast.Variable "B"],
    83         Syntax.mk_appl (Constant (Syntax.mark_const "Abst"))
    83         Ast.mk_appl (Ast.Constant (Syntax.mark_const "AbsP")) [Ast.Variable "A",
    84           [(Syntax.mk_appl (Constant "_abs") [Variable "x", Variable "A"])])]);
    84           (Ast.mk_appl (Ast.Constant "_abs") [Ast.Variable "x", Ast.Variable "B"])]),
       
    85        (Ast.mk_appl (Ast.Constant "_Lam") [Ast.Variable "x", Ast.Variable "A"],
       
    86         Ast.mk_appl (Ast.Constant (Syntax.mark_const "Abst"))
       
    87           [(Ast.mk_appl (Ast.Constant "_abs") [Ast.Variable "x", Ast.Variable "A"])])]);
    85 
    88 
    86 
    89 
    87 (**** translation between proof terms and pure terms ****)
    90 (**** translation between proof terms and pure terms ****)
    88 
    91 
    89 fun proof_of_term thy ty =
    92 fun proof_of_term thy ty =