#
effc431b |
|
01-Oct-2008 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Change export_rewrites back to its old API (without requiring an extra string). When exported, the resulting simpset fragment always picked up the name of the theory to be the base of its name, so there didn't seem much point in giving users a false impression of naming power.
|
#
cfd527d4 |
|
28-Jun-2006 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Add a small theory of possibly infinitely branching trees. Leaf nodes are labelled with 'a, internal nodes with 'b. The branching is modelled as a function from 'c back into ('a,'b,'c)inftree. This is an algebraic type with an initiality theorem, so it gets added to TypeBase. However, bossLib.Induct doesn't work for values of this type (this is a bug I guess), and I don't think primitive recursion will work either because of the way the rhs of the iNd clause has the recursive function in a function composition. The clause is: f (iNd b cf) = nd b cf (f o cf) This setup is sufficiently polymorphic that it could probably be used as the basis for the definition of lots of other types (could get binary trees by taking 'a to be unit, 'b to be 'a, and 'c to be bool). The theory does depend on lists though.
|