src/Pure/Proof/proof_syntax.ML
changeset 11640 be1bc3b88480
parent 11614 3131fa12d425
child 11839 3ef83c265aca
equal deleted inserted replaced
11639:4213422388c4 11640:be1bc3b88480
    57        ("AppP", [proofT, proofT] ---> proofT, Mixfix ("(1_ %%/ _)", [4, 5], 4)),
    57        ("AppP", [proofT, proofT] ---> proofT, Mixfix ("(1_ %%/ _)", [4, 5], 4)),
    58        ("Abst", (aT --> proofT) --> proofT, NoSyn),
    58        ("Abst", (aT --> proofT) --> proofT, NoSyn),
    59        ("AbsP", [propT, proofT --> proofT] ---> proofT, NoSyn)]
    59        ("AbsP", [propT, proofT --> proofT] ---> proofT, NoSyn)]
    60   |> Sign.add_nonterminals ["param", "params"]
    60   |> Sign.add_nonterminals ["param", "params"]
    61   |> Sign.add_syntax_i
    61   |> Sign.add_syntax_i
    62       [("_Lam", [paramsT, proofT] ---> proofT, Mixfix ("(3Lam _./ _)", [0, 3], 3)),
    62       [("_Lam", [paramsT, proofT] ---> proofT, Mixfix ("(1Lam _./ _)", [0, 3], 3)),
    63        ("_Lam0", [paramT, paramsT] ---> paramsT, Mixfix ("_/ _", [1, 0], 0)),
    63        ("_Lam0", [paramT, paramsT] ---> paramsT, Mixfix ("_/ _", [1, 0], 0)),
    64        ("_Lam0", [idtT, paramsT] ---> paramsT, Mixfix ("_/ _", [1, 0], 0)),
    64        ("_Lam0", [idtT, paramsT] ---> paramsT, Mixfix ("_/ _", [1, 0], 0)),
    65        ("_Lam1", [idtT, propT] ---> paramT, Mixfix ("_: _", [0, 0], 0)),
    65        ("_Lam1", [idtT, propT] ---> paramT, Mixfix ("_: _", [0, 0], 0)),
    66        ("", paramT --> paramT, Delimfix "'(_')"),
    66        ("", paramT --> paramT, Delimfix "'(_')"),
    67        ("", idtT --> paramsT, Delimfix "_"),
    67        ("", idtT --> paramsT, Delimfix "_"),
    68        ("", paramT --> paramsT, Delimfix "_")]
    68        ("", paramT --> paramsT, Delimfix "_")]
    69   |> Sign.add_modesyntax_i (("xsymbols", true),
    69   |> Sign.add_modesyntax_i (("xsymbols", true),
    70       [("_Lam", [paramsT, proofT] ---> proofT, Mixfix ("(3\\<Lambda>_./ _)", [0, 3], 3)),
    70       [("_Lam", [paramsT, proofT] ---> proofT, Mixfix ("(1\\<Lambda>_./ _)", [0, 3], 3)),
    71        ("Appt", [proofT, aT] ---> proofT, Mixfix ("(1_ \\<cdot>/ _)", [4, 5], 4)),
    71        ("Appt", [proofT, aT] ---> proofT, Mixfix ("(1_ \\<cdot>/ _)", [4, 5], 4)),
    72        ("AppP", [proofT, proofT] ---> proofT, Mixfix ("(1_ \\<bullet>/ _)", [4, 5], 4))])
    72        ("AppP", [proofT, proofT] ---> proofT, Mixfix ("(1_ \\<bullet>/ _)", [4, 5], 4))])
    73   |> Sign.add_trrules_i (map Syntax.ParsePrintRule
    73   |> Sign.add_trrules_i (map Syntax.ParsePrintRule
    74       [(Syntax.mk_appl (Constant "_Lam")
    74       [(Syntax.mk_appl (Constant "_Lam")
    75           [Syntax.mk_appl (Constant "_Lam0") [Variable "l", Variable "m"], Variable "A"],
    75           [Syntax.mk_appl (Constant "_Lam0") [Variable "l", Variable "m"], Variable "A"],