Subst/utlemmas.thy
author lcp
Tue, 06 Sep 1994 10:54:46 +0200
changeset 134 4b7da5a895e7
parent 0 7949f97df77a
permissions -rw-r--r--
HOL/ind_syntax/factors: now returns only factors in the product type that associate to the right. Previously the proof of the induction rule crashed on types such as (bool*bool)*bool.

(*  Title: 	Substitutions/utermlemmas.thy
    Author: 	Martin Coen, Cambridge University Computer Laboratory
    Copyright   1993  University of Cambridge

Additional definitions for uterms that are not part of the basic inductive definition.
*)

UTLemmas = UTerm + Setplus +

consts

  vars_of       ::   "'a uterm=>'a set"
  "<:"          ::   "['a uterm,'a uterm]=>bool"   (infixl 54) 

rules  (*Definitions*)

  vars_of_def   "vars_of(t) == uterm_rec(t,%x.{x},%x.{},%u v q r.q Un r)"
  occs_def      "s <: t == uterm_rec(t,%x.False,%x.False,%u v q r.s=u | s=v | q | r)"

end