changeset 69593 | 3dda49e08b9d |
parent 66646 | 383d8e388d1b |
child 69597 | ff784d5a5bfb |
69592:a80d8ec6c998 | 69593:3dda49e08b9d |
---|---|
133 |
133 |
134 fun has_lonely_bool_var (@{const Pure.conjunction} $ (@{const Trueprop} $ Free _) $ _) = true |
134 fun has_lonely_bool_var (@{const Pure.conjunction} $ (@{const Trueprop} $ Free _) $ _) = true |
135 | has_lonely_bool_var _ = false; |
135 | has_lonely_bool_var _ = false; |
136 |
136 |
137 val syntactic_sorts = |
137 val syntactic_sorts = |
138 @{sort "{default,zero,one,plus,minus,uminus,times,inverse,abs,sgn,ord,equal}"} @ @{sort numeral}; |
138 \<^sort>\<open>{default,zero,one,plus,minus,uminus,times,inverse,abs,sgn,ord,equal}\<close> @ \<^sort>\<open>numeral\<close>; |
139 |
139 |
140 fun has_tfree_syntactic_sort (TFree (_, S as _ :: _)) = subset (op =) (S, syntactic_sorts) |
140 fun has_tfree_syntactic_sort (TFree (_, S as _ :: _)) = subset (op =) (S, syntactic_sorts) |
141 | has_tfree_syntactic_sort _ = false; |
141 | has_tfree_syntactic_sort _ = false; |
142 |
142 |
143 val has_syntactic_sorts = exists_type (exists_subtype has_tfree_syntactic_sort); |
143 val has_syntactic_sorts = exists_type (exists_subtype has_tfree_syntactic_sort); |