src/Pure/morphism.ML
changeset 22235 6eac7f7c3294
parent 21521 095f4963beed
child 22571 3f00e937d1c9
equal deleted inserted replaced
22234:52ba19aaa9c2 22235:6eac7f7c3294
    20   val name: morphism -> string -> string
    20   val name: morphism -> string -> string
    21   val typ: morphism -> typ -> typ
    21   val typ: morphism -> typ -> typ
    22   val term: morphism -> term -> term
    22   val term: morphism -> term -> term
    23   val fact: morphism -> thm list -> thm list
    23   val fact: morphism -> thm list -> thm list
    24   val thm: morphism -> thm -> thm
    24   val thm: morphism -> thm -> thm
       
    25   val cterm: morphism -> cterm -> cterm
    25   val morphism:
    26   val morphism:
    26    {name: string -> string,
    27    {name: string -> string,
    27     var: string * mixfix -> string * mixfix,
    28     var: string * mixfix -> string * mixfix,
    28     typ: typ -> typ,
    29     typ: typ -> typ,
    29     term: term -> term,
    30     term: term -> term,
    52 fun var (Morphism {var, ...}) = var;
    53 fun var (Morphism {var, ...}) = var;
    53 fun typ (Morphism {typ, ...}) = typ;
    54 fun typ (Morphism {typ, ...}) = typ;
    54 fun term (Morphism {term, ...}) = term;
    55 fun term (Morphism {term, ...}) = term;
    55 fun fact (Morphism {fact, ...}) = fact;
    56 fun fact (Morphism {fact, ...}) = fact;
    56 val thm = singleton o fact;
    57 val thm = singleton o fact;
       
    58 val cterm = Drule.cterm_rule o thm;
    57 
    59 
    58 val morphism = Morphism;
    60 val morphism = Morphism;
    59 
    61 
    60 fun name_morphism name = morphism {name = name, var = I, typ = I, term = I, fact = I};
    62 fun name_morphism name = morphism {name = name, var = I, typ = I, term = I, fact = I};
    61 fun var_morphism var = morphism {name = I, var = var, typ = I, term = I, fact = I};
    63 fun var_morphism var = morphism {name = I, var = var, typ = I, term = I, fact = I};