src/HOL/ex/Term.thy
changeset 1376 92f83b9d17e1
parent 1151 c820b3cc3df0
child 1476 608483c2122a
equal deleted inserted replaced
1375:d04af07266e8 1376:92f83b9d17e1
    14 types   'a term
    14 types   'a term
    15 
    15 
    16 arities term :: (term)term
    16 arities term :: (term)term
    17 
    17 
    18 consts
    18 consts
    19   term		:: "'a item set => 'a item set"
    19   term		:: 'a item set => 'a item set
    20   Rep_term	:: "'a term => 'a item"
    20   Rep_term	:: 'a term => 'a item
    21   Abs_term	:: "'a item => 'a term"
    21   Abs_term	:: 'a item => 'a term
    22   Rep_Tlist	:: "'a term list => 'a item"
    22   Rep_Tlist	:: 'a term list => 'a item
    23   Abs_Tlist	:: "'a item => 'a term list"
    23   Abs_Tlist	:: 'a item => 'a term list
    24   App		:: "['a, ('a term)list] => 'a term"
    24   App		:: ['a, ('a term)list] => 'a term
    25   Term_rec	:: "['a item, ['a item , 'a item, 'b list]=>'b] => 'b"
    25   Term_rec	:: ['a item, ['a item , 'a item, 'b list]=>'b] => 'b
    26   term_rec	:: "['a term, ['a ,'a term list, 'b list]=>'b] => 'b"
    26   term_rec	:: ['a term, ['a ,'a term list, 'b list]=>'b] => 'b
    27 
    27 
    28 inductive "term(A)"
    28 inductive "term(A)"
    29   intrs
    29   intrs
    30     APP_I "[| M: A;  N : list(term(A)) |] ==> M$N : term(A)"
    30     APP_I "[| M: A;  N : list(term(A)) |] ==> M$N : term(A)"
    31   monos   "[list_mono]"
    31   monos   "[list_mono]"