equal
deleted
inserted
replaced
60 val add_trrules: (string * string) trrule list -> sg -> sg |
60 val add_trrules: (string * string) trrule list -> sg -> sg |
61 val add_trrules_i: ast trrule list -> sg -> sg |
61 val add_trrules_i: ast trrule list -> sg -> sg |
62 val add_name: string -> sg -> sg |
62 val add_name: string -> sg -> sg |
63 val make_draft: sg -> sg |
63 val make_draft: sg -> sg |
64 val merge: sg * sg -> sg |
64 val merge: sg * sg -> sg |
|
65 val nonempty_sort: sg * sort list * sort -> bool |
65 val proto_pure: sg |
66 val proto_pure: sg |
66 val pure: sg |
67 val pure: sg |
67 val cpure: sg |
68 val cpure: sg |
68 val const_of_class: class -> string |
69 val const_of_class: class -> string |
69 val class_of_const: string -> class |
70 val class_of_const: string -> class |
549 |
550 |
550 val cpure = proto_pure |
551 val cpure = proto_pure |
551 |> add_syntax Syntax.pure_applC_syntax |
552 |> add_syntax Syntax.pure_applC_syntax |
552 |> add_name "CPure"; |
553 |> add_name "CPure"; |
553 |
554 |
|
555 (** |
|
556 Emptiness-test for sorts: does there exist a type of sort 'sort' whose |
|
557 vars have sorts contained in 'sorts'? |
|
558 Trivial approximation at the moment. |
|
559 **) |
|
560 fun nonempty_sort(_,sorts,sort) = exists (fn s => sort subset s) sorts; |
|
561 |
554 end; |
562 end; |