mod BAR is
  including FOO * (class Foo to Bar, attr a to b, msg m to m') .
endm
mod BAR is
  including FOO * (sort Foo to Bar, op Foo : -> [Cid,Foo] to Bar, op a :_ : [
    Quux] -> [Attribute,AttributeSet] to b :_, op m to m') .
endm
mod BAR is
  sorts Attribute AttributeSet Oid Cid Object Msg Portal Configuration Quux Bar
    .
  subsort Attribute < AttributeSet .
  subsort Bar < Cid .
  subsorts Object Msg Portal < Configuration .
  op none : -> AttributeSet [ctor] .
  op _,_ : AttributeSet AttributeSet -> AttributeSet [ctor assoc comm id: none
    prec 41 gather (e E)] .
  op <_:_|_> : Oid Cid AttributeSet -> Object [ctor obj prec 0 gather (& & &)
    special (
    id-hook ObjectConstructorSymbol
    op-hook attributeSetSymbol (_,_ : AttributeSet AttributeSet ~>
    AttributeSet))] .
  op none : -> Configuration [ctor] .
  op __ : Configuration Configuration -> Configuration [ctor assoc comm id:
    none config prec 41 gather (e E)] .
  op <> : -> Portal [ctor portal] .
  op getClass : Object -> Cid .
  op m' : Oid Oid Quux -> Msg [ctor msg] .
  op Bar : -> Bar [ctor] .
  op b :_ : Quux -> Attribute [ctor prec 15 gather (E)] .
  eq getClass(< O:Oid : C:Cid | A:AttributeSet >) = C:Cid .
endm
fmod BOOL
fmod TRUTH-VALUE
fmod BOOL-OPS
fmod TRUTH
fmod EXT-BOOL
fmod INITIAL-EQUALITY-PREDICATE
fmod NAT
fmod INT
fmod RAT
fmod FLOAT
fmod STRING
fmod CONVERSION
fmod RANDOM
fmod BOUND
fmod QID
fth TRIV
fth STRICT-WEAK-ORDER
fth STRICT-TOTAL-ORDER
fth TOTAL-PREORDER
fth TOTAL-ORDER
fth DEFAULT
fmod LIST
fmod WEAKLY-SORTABLE-LIST
fmod SORTABLE-LIST
fmod WEAKLY-SORTABLE-LIST'
fmod SORTABLE-LIST'
fmod SET
fmod LIST-AND-SET
fmod SORTABLE-LIST-AND-SET
fmod SORTABLE-LIST-AND-SET'
fmod LIST*
fmod SET*
fmod MAP
fmod ARRAY
fmod STRING-OPS
fmod NAT-LIST
fmod QID-LIST
fmod QID-SET
fmod META-TERM
fmod META-CONDITION
fmod META-STRATEGY
fmod META-MODULE
fmod META-VIEW
fmod META-LEVEL
fmod LEXICAL
mod COUNTER
mod LOOP-MODE
mod CONFIGURATION
omod FOO
mod BAR
fth X :: TRIV
fmod LIST{[X]}
fth X :: STRICT-WEAK-ORDER
fmod LIST{STRICT-WEAK-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{[X]} * (sort NeList{STRICT-WEAK-ORDER}{X} to
    NeList{X}, sort List{STRICT-WEAK-ORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST{[X]}
fth X :: STRICT-TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-TOTAL-ORDER}{X} to NeList{X}, sort List{STRICT-TOTAL-ORDER}{X} to
    List{X})
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST{[X]}
fth X :: TOTAL-PREORDER
fmod LIST{TOTAL-PREORDER}
fmod LIST{TOTAL-PREORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{X} to NeList{X},
    sort List{TOTAL-PREORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST'{[X]}
fth X :: TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST'{[X]}
fmod SET{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X}, sort NeSet{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to Set{X})
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeSet{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to Set{X})
fmod LIST-AND-SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{
    TOTAL-ORDER}{X} to NeList{X}, sort List{TOTAL-ORDER}{X} to List{X}, sort
    NeSet{TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to Set{X})
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeSet{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeSet{X}, sort Set{TOTAL-PREORDER}{TOTAL-ORDER}{X} to
    Set{X})
fmod LIST*{[X]}
fmod SET*{[X]}
fth Y :: TRIV
fmod MAP{[X], [Y]}
fth Y :: DEFAULT
fmod ARRAY{[X], [Y]}
fmod LIST{Nat}
fmod LIST{Nat} * (sort NeList{Nat} to NeNatList, sort List{Nat} to NatList)
fmod LIST{Qid}
fmod LIST{Qid} * (sort NeList{Qid} to NeQidList, sort List{Qid} to QidList)
fmod SET{Qid}
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet)
fmod QID-SET * (op empty to none, op _,_ to _;_ [prec 43])
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet) * (op
    empty to none, op _,_ to _;_ [prec 43])
mod FOO * (sort Foo to Bar, op Foo : -> [Cid,Foo] to Bar, op a :_ : [Quux] -> [
    Attribute,AttributeSet] to b :_, op m to m')
Advisory: redefining module FOO.
Advisory: redefining module BAR.
mod BAR is
  including FOO * (class Foo to Bar) .
endm
mod BAR is
  including FOO .
endm
mod BAR is
  sort Quux .
endm
fmod BOOL
fmod TRUTH-VALUE
fmod BOOL-OPS
fmod TRUTH
fmod EXT-BOOL
fmod INITIAL-EQUALITY-PREDICATE
fmod NAT
fmod INT
fmod RAT
fmod FLOAT
fmod STRING
fmod CONVERSION
fmod RANDOM
fmod BOUND
fmod QID
fth TRIV
fth STRICT-WEAK-ORDER
fth STRICT-TOTAL-ORDER
fth TOTAL-PREORDER
fth TOTAL-ORDER
fth DEFAULT
fmod LIST
fmod WEAKLY-SORTABLE-LIST
fmod SORTABLE-LIST
fmod WEAKLY-SORTABLE-LIST'
fmod SORTABLE-LIST'
fmod SET
fmod LIST-AND-SET
fmod SORTABLE-LIST-AND-SET
fmod SORTABLE-LIST-AND-SET'
fmod LIST*
fmod SET*
fmod MAP
fmod ARRAY
fmod STRING-OPS
fmod NAT-LIST
fmod QID-LIST
fmod QID-SET
fmod META-TERM
fmod META-CONDITION
fmod META-STRATEGY
fmod META-MODULE
fmod META-VIEW
fmod META-LEVEL
fmod LEXICAL
mod COUNTER
mod LOOP-MODE
mod CONFIGURATION
mod FOO
mod BAR
fth X :: TRIV
fmod LIST{[X]}
fth X :: STRICT-WEAK-ORDER
fmod LIST{STRICT-WEAK-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{[X]} * (sort NeList{STRICT-WEAK-ORDER}{X} to
    NeList{X}, sort List{STRICT-WEAK-ORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST{[X]}
fth X :: STRICT-TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-TOTAL-ORDER}{X} to NeList{X}, sort List{STRICT-TOTAL-ORDER}{X} to
    List{X})
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST{[X]}
fth X :: TOTAL-PREORDER
fmod LIST{TOTAL-PREORDER}
fmod LIST{TOTAL-PREORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{X} to NeList{X},
    sort List{TOTAL-PREORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST'{[X]}
fth X :: TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST'{[X]}
fmod SET{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X}, sort NeSet{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to Set{X})
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeSet{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to Set{X})
fmod LIST-AND-SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{
    TOTAL-ORDER}{X} to NeList{X}, sort List{TOTAL-ORDER}{X} to List{X}, sort
    NeSet{TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to Set{X})
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeSet{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeSet{X}, sort Set{TOTAL-PREORDER}{TOTAL-ORDER}{X} to
    Set{X})
fmod LIST*{[X]}
fmod SET*{[X]}
fth Y :: TRIV
fmod MAP{[X], [Y]}
fth Y :: DEFAULT
fmod ARRAY{[X], [Y]}
fmod LIST{Nat}
fmod LIST{Nat} * (sort NeList{Nat} to NeNatList, sort List{Nat} to NatList)
fmod LIST{Qid}
fmod LIST{Qid} * (sort NeList{Qid} to NeQidList, sort List{Qid} to QidList)
fmod SET{Qid}
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet)
fmod QID-SET * (op empty to none, op _,_ to _;_ [prec 43])
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet) * (op
    empty to none, op _,_ to _;_ [prec 43])
Advisory: redefining module FOO.
Advisory: redefining module BAR.
Warning: <standard input>, line 44 (mod FOO): unable to find a class id sort (
    usually Cid) in FOO.
Advisory: <standard input>, line 49 (mod BAR): missing class constant for
    renamed class Foo.
mod BAR is
  including FOO * (class Foo to Bar) .
endm
mod BAR is
  including FOO * (sort Foo to Bar) .
endm
mod BAR is
  sort Bar .
endm
fmod BOOL
fmod TRUTH-VALUE
fmod BOOL-OPS
fmod TRUTH
fmod EXT-BOOL
fmod INITIAL-EQUALITY-PREDICATE
fmod NAT
fmod INT
fmod RAT
fmod FLOAT
fmod STRING
fmod CONVERSION
fmod RANDOM
fmod BOUND
fmod QID
fth TRIV
fth STRICT-WEAK-ORDER
fth STRICT-TOTAL-ORDER
fth TOTAL-PREORDER
fth TOTAL-ORDER
fth DEFAULT
fmod LIST
fmod WEAKLY-SORTABLE-LIST
fmod SORTABLE-LIST
fmod WEAKLY-SORTABLE-LIST'
fmod SORTABLE-LIST'
fmod SET
fmod LIST-AND-SET
fmod SORTABLE-LIST-AND-SET
fmod SORTABLE-LIST-AND-SET'
fmod LIST*
fmod SET*
fmod MAP
fmod ARRAY
fmod STRING-OPS
fmod NAT-LIST
fmod QID-LIST
fmod QID-SET
fmod META-TERM
fmod META-CONDITION
fmod META-STRATEGY
fmod META-MODULE
fmod META-VIEW
fmod META-LEVEL
fmod LEXICAL
mod COUNTER
mod LOOP-MODE
mod CONFIGURATION
mod FOO
mod BAR
fth X :: TRIV
fmod LIST{[X]}
fth X :: STRICT-WEAK-ORDER
fmod LIST{STRICT-WEAK-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{[X]} * (sort NeList{STRICT-WEAK-ORDER}{X} to
    NeList{X}, sort List{STRICT-WEAK-ORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST{[X]}
fth X :: STRICT-TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-TOTAL-ORDER}{X} to NeList{X}, sort List{STRICT-TOTAL-ORDER}{X} to
    List{X})
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST{[X]}
fth X :: TOTAL-PREORDER
fmod LIST{TOTAL-PREORDER}
fmod LIST{TOTAL-PREORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{X} to NeList{X},
    sort List{TOTAL-PREORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST'{[X]}
fth X :: TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST'{[X]}
fmod SET{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X}, sort NeSet{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to Set{X})
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeSet{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to Set{X})
fmod LIST-AND-SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{
    TOTAL-ORDER}{X} to NeList{X}, sort List{TOTAL-ORDER}{X} to List{X}, sort
    NeSet{TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to Set{X})
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeSet{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeSet{X}, sort Set{TOTAL-PREORDER}{TOTAL-ORDER}{X} to
    Set{X})
fmod LIST*{[X]}
fmod SET*{[X]}
fth Y :: TRIV
fmod MAP{[X], [Y]}
fth Y :: DEFAULT
fmod ARRAY{[X], [Y]}
fmod LIST{Nat}
fmod LIST{Nat} * (sort NeList{Nat} to NeNatList, sort List{Nat} to NatList)
fmod LIST{Qid}
fmod LIST{Qid} * (sort NeList{Qid} to NeQidList, sort List{Qid} to QidList)
fmod SET{Qid}
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet)
fmod QID-SET * (op empty to none, op _,_ to _;_ [prec 43])
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet) * (op
    empty to none, op _,_ to _;_ [prec 43])
mod FOO * (sort Foo to Bar)
Advisory: redefining module FOO.
Advisory: redefining module BAR.
Warning: <standard input>, line 58 (mod FOO): unable to find a class id sort (
    usually Cid) in FOO.
mod BAR is
  including FOO * (class Foo to Bar) .
endm
mod BAR is
  including FOO * (sort Foo to Bar, op Foo : -> [Foo] to Bar) .
endm
mod BAR is
  sort Bar .
  op Bar : -> Bar .
endm
fmod BOOL
fmod TRUTH-VALUE
fmod BOOL-OPS
fmod TRUTH
fmod EXT-BOOL
fmod INITIAL-EQUALITY-PREDICATE
fmod NAT
fmod INT
fmod RAT
fmod FLOAT
fmod STRING
fmod CONVERSION
fmod RANDOM
fmod BOUND
fmod QID
fth TRIV
fth STRICT-WEAK-ORDER
fth STRICT-TOTAL-ORDER
fth TOTAL-PREORDER
fth TOTAL-ORDER
fth DEFAULT
fmod LIST
fmod WEAKLY-SORTABLE-LIST
fmod SORTABLE-LIST
fmod WEAKLY-SORTABLE-LIST'
fmod SORTABLE-LIST'
fmod SET
fmod LIST-AND-SET
fmod SORTABLE-LIST-AND-SET
fmod SORTABLE-LIST-AND-SET'
fmod LIST*
fmod SET*
fmod MAP
fmod ARRAY
fmod STRING-OPS
fmod NAT-LIST
fmod QID-LIST
fmod QID-SET
fmod META-TERM
fmod META-CONDITION
fmod META-STRATEGY
fmod META-MODULE
fmod META-VIEW
fmod META-LEVEL
fmod LEXICAL
mod COUNTER
mod LOOP-MODE
mod CONFIGURATION
mod FOO
mod BAR
fth X :: TRIV
fmod LIST{[X]}
fth X :: STRICT-WEAK-ORDER
fmod LIST{STRICT-WEAK-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{[X]} * (sort NeList{STRICT-WEAK-ORDER}{X} to
    NeList{X}, sort List{STRICT-WEAK-ORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST{[X]}
fth X :: STRICT-TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-TOTAL-ORDER}{X} to NeList{X}, sort List{STRICT-TOTAL-ORDER}{X} to
    List{X})
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST{[X]}
fth X :: TOTAL-PREORDER
fmod LIST{TOTAL-PREORDER}
fmod LIST{TOTAL-PREORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{X} to NeList{X},
    sort List{TOTAL-PREORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST'{[X]}
fth X :: TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST'{[X]}
fmod SET{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X}, sort NeSet{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to Set{X})
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeSet{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to Set{X})
fmod LIST-AND-SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{
    TOTAL-ORDER}{X} to NeList{X}, sort List{TOTAL-ORDER}{X} to List{X}, sort
    NeSet{TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to Set{X})
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeSet{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeSet{X}, sort Set{TOTAL-PREORDER}{TOTAL-ORDER}{X} to
    Set{X})
fmod LIST*{[X]}
fmod SET*{[X]}
fth Y :: TRIV
fmod MAP{[X], [Y]}
fth Y :: DEFAULT
fmod ARRAY{[X], [Y]}
fmod LIST{Nat}
fmod LIST{Nat} * (sort NeList{Nat} to NeNatList, sort List{Nat} to NatList)
fmod LIST{Qid}
fmod LIST{Qid} * (sort NeList{Qid} to NeQidList, sort List{Qid} to QidList)
fmod SET{Qid}
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet)
fmod QID-SET * (op empty to none, op _,_ to _;_ [prec 43])
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet) * (op
    empty to none, op _,_ to _;_ [prec 43])
mod FOO * (sort Foo to Bar, op Foo : -> [Foo] to Bar)
Advisory: redefining module FOO.
Advisory: redefining module BAR.
Advisory: <standard input>, line 78 (mod BAR): class mapping for Foo maps a
    sort that is not a subsort of Cid.
Advisory: <standard input>, line 78 (mod BAR): missing class constant for
    renamed class Foo.
mod BAR is
  including FOO * (class Foo to Bar) .
endm
mod BAR is
  including FOO * (sort Foo to Bar) .
endm
mod BAR is
  sorts Attribute AttributeSet Oid Cid Object Msg Portal Configuration Bar .
  subsort Attribute < AttributeSet .
  subsorts Object Msg Portal < Configuration .
  op none : -> AttributeSet [ctor] .
  op _,_ : AttributeSet AttributeSet -> AttributeSet [ctor assoc comm id: none
    prec 41 gather (e E)] .
  op <_:_|_> : Oid Cid AttributeSet -> Object [ctor obj prec 0 gather (& & &)
    special (
    id-hook ObjectConstructorSymbol
    op-hook attributeSetSymbol (_,_ : AttributeSet AttributeSet ~>
    AttributeSet))] .
  op none : -> Configuration [ctor] .
  op __ : Configuration Configuration -> Configuration [ctor assoc comm id:
    none config prec 41 gather (e E)] .
  op <> : -> Portal [ctor portal] .
  op getClass : Object -> Cid .
  eq getClass(< O:Oid : C:Cid | A:AttributeSet >) = C:Cid .
endm
fmod BOOL
fmod TRUTH-VALUE
fmod BOOL-OPS
fmod TRUTH
fmod EXT-BOOL
fmod INITIAL-EQUALITY-PREDICATE
fmod NAT
fmod INT
fmod RAT
fmod FLOAT
fmod STRING
fmod CONVERSION
fmod RANDOM
fmod BOUND
fmod QID
fth TRIV
fth STRICT-WEAK-ORDER
fth STRICT-TOTAL-ORDER
fth TOTAL-PREORDER
fth TOTAL-ORDER
fth DEFAULT
fmod LIST
fmod WEAKLY-SORTABLE-LIST
fmod SORTABLE-LIST
fmod WEAKLY-SORTABLE-LIST'
fmod SORTABLE-LIST'
fmod SET
fmod LIST-AND-SET
fmod SORTABLE-LIST-AND-SET
fmod SORTABLE-LIST-AND-SET'
fmod LIST*
fmod SET*
fmod MAP
fmod ARRAY
fmod STRING-OPS
fmod NAT-LIST
fmod QID-LIST
fmod QID-SET
fmod META-TERM
fmod META-CONDITION
fmod META-STRATEGY
fmod META-MODULE
fmod META-VIEW
fmod META-LEVEL
fmod LEXICAL
mod COUNTER
mod LOOP-MODE
mod CONFIGURATION
omod FOO
mod BAR
fth X :: TRIV
fmod LIST{[X]}
fth X :: STRICT-WEAK-ORDER
fmod LIST{STRICT-WEAK-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{[X]} * (sort NeList{STRICT-WEAK-ORDER}{X} to
    NeList{X}, sort List{STRICT-WEAK-ORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST{[X]}
fth X :: STRICT-TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-TOTAL-ORDER}{X} to NeList{X}, sort List{STRICT-TOTAL-ORDER}{X} to
    List{X})
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST{[X]}
fth X :: TOTAL-PREORDER
fmod LIST{TOTAL-PREORDER}
fmod LIST{TOTAL-PREORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{X} to NeList{X},
    sort List{TOTAL-PREORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST'{[X]}
fth X :: TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST'{[X]}
fmod SET{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X}, sort NeSet{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to Set{X})
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeSet{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to Set{X})
fmod LIST-AND-SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{
    TOTAL-ORDER}{X} to NeList{X}, sort List{TOTAL-ORDER}{X} to List{X}, sort
    NeSet{TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to Set{X})
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeSet{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeSet{X}, sort Set{TOTAL-PREORDER}{TOTAL-ORDER}{X} to
    Set{X})
fmod LIST*{[X]}
fmod SET*{[X]}
fth Y :: TRIV
fmod MAP{[X], [Y]}
fth Y :: DEFAULT
fmod ARRAY{[X], [Y]}
fmod LIST{Nat}
fmod LIST{Nat} * (sort NeList{Nat} to NeNatList, sort List{Nat} to NatList)
fmod LIST{Qid}
fmod LIST{Qid} * (sort NeList{Qid} to NeQidList, sort List{Qid} to QidList)
fmod SET{Qid}
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet)
fmod QID-SET * (op empty to none, op _,_ to _;_ [prec 43])
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet) * (op
    empty to none, op _,_ to _;_ [prec 43])
mod FOO * (sort Foo to Bar)
Advisory: redefining module FOO.
Advisory: redefining module BAR.
Advisory: <standard input>, line 93 (mod BAR): class mapping for Foo maps a
    sort that is not a subsort of Cid.
mod BAR is
  including FOO * (class Foo to Bar) .
endm
mod BAR is
  including FOO * (sort Foo to Bar, op Foo : -> [Foo] to Bar) .
endm
mod BAR is
  sorts Attribute AttributeSet Oid Cid Object Msg Portal Configuration Bar .
  subsort Attribute < AttributeSet .
  subsorts Object Msg Portal < Configuration .
  op none : -> AttributeSet [ctor] .
  op _,_ : AttributeSet AttributeSet -> AttributeSet [ctor assoc comm id: none
    prec 41 gather (e E)] .
  op <_:_|_> : Oid Cid AttributeSet -> Object [ctor obj prec 0 gather (& & &)
    special (
    id-hook ObjectConstructorSymbol
    op-hook attributeSetSymbol (_,_ : AttributeSet AttributeSet ~>
    AttributeSet))] .
  op none : -> Configuration [ctor] .
  op __ : Configuration Configuration -> Configuration [ctor assoc comm id:
    none config prec 41 gather (e E)] .
  op <> : -> Portal [ctor portal] .
  op getClass : Object -> Cid .
  op Bar : -> Bar .
  eq getClass(< O:Oid : C:Cid | A:AttributeSet >) = C:Cid .
endm
fmod BOOL
fmod TRUTH-VALUE
fmod BOOL-OPS
fmod TRUTH
fmod EXT-BOOL
fmod INITIAL-EQUALITY-PREDICATE
fmod NAT
fmod INT
fmod RAT
fmod FLOAT
fmod STRING
fmod CONVERSION
fmod RANDOM
fmod BOUND
fmod QID
fth TRIV
fth STRICT-WEAK-ORDER
fth STRICT-TOTAL-ORDER
fth TOTAL-PREORDER
fth TOTAL-ORDER
fth DEFAULT
fmod LIST
fmod WEAKLY-SORTABLE-LIST
fmod SORTABLE-LIST
fmod WEAKLY-SORTABLE-LIST'
fmod SORTABLE-LIST'
fmod SET
fmod LIST-AND-SET
fmod SORTABLE-LIST-AND-SET
fmod SORTABLE-LIST-AND-SET'
fmod LIST*
fmod SET*
fmod MAP
fmod ARRAY
fmod STRING-OPS
fmod NAT-LIST
fmod QID-LIST
fmod QID-SET
fmod META-TERM
fmod META-CONDITION
fmod META-STRATEGY
fmod META-MODULE
fmod META-VIEW
fmod META-LEVEL
fmod LEXICAL
mod COUNTER
mod LOOP-MODE
mod CONFIGURATION
omod FOO
mod BAR
fth X :: TRIV
fmod LIST{[X]}
fth X :: STRICT-WEAK-ORDER
fmod LIST{STRICT-WEAK-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{[X]} * (sort NeList{STRICT-WEAK-ORDER}{X} to
    NeList{X}, sort List{STRICT-WEAK-ORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST{[X]}
fth X :: STRICT-TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-TOTAL-ORDER}{X} to NeList{X}, sort List{STRICT-TOTAL-ORDER}{X} to
    List{X})
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST{[X]}
fth X :: TOTAL-PREORDER
fmod LIST{TOTAL-PREORDER}
fmod LIST{TOTAL-PREORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{X} to NeList{X},
    sort List{TOTAL-PREORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST'{[X]}
fth X :: TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST'{[X]}
fmod SET{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X}, sort NeSet{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to Set{X})
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeSet{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to Set{X})
fmod LIST-AND-SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{
    TOTAL-ORDER}{X} to NeList{X}, sort List{TOTAL-ORDER}{X} to List{X}, sort
    NeSet{TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to Set{X})
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeSet{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeSet{X}, sort Set{TOTAL-PREORDER}{TOTAL-ORDER}{X} to
    Set{X})
fmod LIST*{[X]}
fmod SET*{[X]}
fth Y :: TRIV
fmod MAP{[X], [Y]}
fth Y :: DEFAULT
fmod ARRAY{[X], [Y]}
fmod LIST{Nat}
fmod LIST{Nat} * (sort NeList{Nat} to NeNatList, sort List{Nat} to NatList)
fmod LIST{Qid}
fmod LIST{Qid} * (sort NeList{Qid} to NeQidList, sort List{Qid} to QidList)
fmod SET{Qid}
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet)
fmod QID-SET * (op empty to none, op _,_ to _;_ [prec 43])
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet) * (op
    empty to none, op _,_ to _;_ [prec 43])
mod FOO * (sort Foo to Bar, op Foo : -> [Foo] to Bar)
Advisory: redefining module FOO.
Advisory: redefining module BAR.
Warning: <standard input>, line 107 (mod FOO): unable to find an attribute sort
    (usually Attribute) in FOO.
Advisory: <standard input>, line 113 (mod BAR): ignoring attr mappings in
    renaming.
mod BAR is
  including FOO * (attr a to b) .
endm
mod BAR is
  including FOO .
endm
mod BAR is
  sorts Foo Bar .
  op a :_ : Foo -> Bar [prec 15 gather (E)] .
endm
fmod BOOL
fmod TRUTH-VALUE
fmod BOOL-OPS
fmod TRUTH
fmod EXT-BOOL
fmod INITIAL-EQUALITY-PREDICATE
fmod NAT
fmod INT
fmod RAT
fmod FLOAT
fmod STRING
fmod CONVERSION
fmod RANDOM
fmod BOUND
fmod QID
fth TRIV
fth STRICT-WEAK-ORDER
fth STRICT-TOTAL-ORDER
fth TOTAL-PREORDER
fth TOTAL-ORDER
fth DEFAULT
fmod LIST
fmod WEAKLY-SORTABLE-LIST
fmod SORTABLE-LIST
fmod WEAKLY-SORTABLE-LIST'
fmod SORTABLE-LIST'
fmod SET
fmod LIST-AND-SET
fmod SORTABLE-LIST-AND-SET
fmod SORTABLE-LIST-AND-SET'
fmod LIST*
fmod SET*
fmod MAP
fmod ARRAY
fmod STRING-OPS
fmod NAT-LIST
fmod QID-LIST
fmod QID-SET
fmod META-TERM
fmod META-CONDITION
fmod META-STRATEGY
fmod META-MODULE
fmod META-VIEW
fmod META-LEVEL
fmod LEXICAL
mod COUNTER
mod LOOP-MODE
mod CONFIGURATION
mod FOO
mod BAR
fth X :: TRIV
fmod LIST{[X]}
fth X :: STRICT-WEAK-ORDER
fmod LIST{STRICT-WEAK-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{[X]} * (sort NeList{STRICT-WEAK-ORDER}{X} to
    NeList{X}, sort List{STRICT-WEAK-ORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST{[X]}
fth X :: STRICT-TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-TOTAL-ORDER}{X} to NeList{X}, sort List{STRICT-TOTAL-ORDER}{X} to
    List{X})
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST{[X]}
fth X :: TOTAL-PREORDER
fmod LIST{TOTAL-PREORDER}
fmod LIST{TOTAL-PREORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{X} to NeList{X},
    sort List{TOTAL-PREORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST'{[X]}
fth X :: TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST'{[X]}
fmod SET{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X}, sort NeSet{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to Set{X})
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeSet{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to Set{X})
fmod LIST-AND-SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{
    TOTAL-ORDER}{X} to NeList{X}, sort List{TOTAL-ORDER}{X} to List{X}, sort
    NeSet{TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to Set{X})
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeSet{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeSet{X}, sort Set{TOTAL-PREORDER}{TOTAL-ORDER}{X} to
    Set{X})
fmod LIST*{[X]}
fmod SET*{[X]}
fth Y :: TRIV
fmod MAP{[X], [Y]}
fth Y :: DEFAULT
fmod ARRAY{[X], [Y]}
fmod LIST{Nat}
fmod LIST{Nat} * (sort NeList{Nat} to NeNatList, sort List{Nat} to NatList)
fmod LIST{Qid}
fmod LIST{Qid} * (sort NeList{Qid} to NeQidList, sort List{Qid} to QidList)
fmod SET{Qid}
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet)
fmod QID-SET * (op empty to none, op _,_ to _;_ [prec 43])
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet) * (op
    empty to none, op _,_ to _;_ [prec 43])
Advisory: redefining module FOO.
Advisory: redefining module BAR.
omod BAR is
  including FOO * (attr a to b) .
endom
mod BAR is
  including CONFIGURATION .
  including FOO .
endm
mod BAR is
  sorts Attribute AttributeSet Oid Cid Object Msg Portal Configuration Foo Bar
    .
  subsort Attribute < AttributeSet .
  subsorts Object Msg Portal < Configuration .
  op none : -> AttributeSet [ctor] .
  op _,_ : AttributeSet AttributeSet -> AttributeSet [ctor assoc comm id: none
    prec 41 gather (e E)] .
  op <_:_|_> : Oid Cid AttributeSet -> Object [ctor obj prec 0 gather (& & &)
    special (
    id-hook ObjectConstructorSymbol
    op-hook attributeSetSymbol (_,_ : AttributeSet AttributeSet ~>
    AttributeSet))] .
  op none : -> Configuration [ctor] .
  op __ : Configuration Configuration -> Configuration [ctor assoc comm id:
    none config prec 41 gather (e E)] .
  op <> : -> Portal [ctor portal] .
  op getClass : Object -> Cid .
  op a :_ : Foo -> Bar [prec 15 gather (E)] .
  eq getClass(< O:Oid : C:Cid | A:AttributeSet >) = C:Cid .
endm
fmod BOOL
fmod TRUTH-VALUE
fmod BOOL-OPS
fmod TRUTH
fmod EXT-BOOL
fmod INITIAL-EQUALITY-PREDICATE
fmod NAT
fmod INT
fmod RAT
fmod FLOAT
fmod STRING
fmod CONVERSION
fmod RANDOM
fmod BOUND
fmod QID
fth TRIV
fth STRICT-WEAK-ORDER
fth STRICT-TOTAL-ORDER
fth TOTAL-PREORDER
fth TOTAL-ORDER
fth DEFAULT
fmod LIST
fmod WEAKLY-SORTABLE-LIST
fmod SORTABLE-LIST
fmod WEAKLY-SORTABLE-LIST'
fmod SORTABLE-LIST'
fmod SET
fmod LIST-AND-SET
fmod SORTABLE-LIST-AND-SET
fmod SORTABLE-LIST-AND-SET'
fmod LIST*
fmod SET*
fmod MAP
fmod ARRAY
fmod STRING-OPS
fmod NAT-LIST
fmod QID-LIST
fmod QID-SET
fmod META-TERM
fmod META-CONDITION
fmod META-STRATEGY
fmod META-MODULE
fmod META-VIEW
fmod META-LEVEL
fmod LEXICAL
mod COUNTER
mod LOOP-MODE
mod CONFIGURATION
omod FOO
omod BAR
fth X :: TRIV
fmod LIST{[X]}
fth X :: STRICT-WEAK-ORDER
fmod LIST{STRICT-WEAK-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{[X]} * (sort NeList{STRICT-WEAK-ORDER}{X} to
    NeList{X}, sort List{STRICT-WEAK-ORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST{[X]}
fth X :: STRICT-TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-TOTAL-ORDER}{X} to NeList{X}, sort List{STRICT-TOTAL-ORDER}{X} to
    List{X})
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST{[X]}
fth X :: TOTAL-PREORDER
fmod LIST{TOTAL-PREORDER}
fmod LIST{TOTAL-PREORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{X} to NeList{X},
    sort List{TOTAL-PREORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST'{[X]}
fth X :: TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST'{[X]}
fmod SET{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X}, sort NeSet{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to Set{X})
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeSet{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to Set{X})
fmod LIST-AND-SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{
    TOTAL-ORDER}{X} to NeList{X}, sort List{TOTAL-ORDER}{X} to List{X}, sort
    NeSet{TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to Set{X})
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeSet{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeSet{X}, sort Set{TOTAL-PREORDER}{TOTAL-ORDER}{X} to
    Set{X})
fmod LIST*{[X]}
fmod SET*{[X]}
fth Y :: TRIV
fmod MAP{[X], [Y]}
fth Y :: DEFAULT
fmod ARRAY{[X], [Y]}
fmod LIST{Nat}
fmod LIST{Nat} * (sort NeList{Nat} to NeNatList, sort List{Nat} to NatList)
fmod LIST{Qid}
fmod LIST{Qid} * (sort NeList{Qid} to NeQidList, sort List{Qid} to QidList)
fmod SET{Qid}
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet)
fmod QID-SET * (op empty to none, op _,_ to _;_ [prec 43])
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet) * (op
    empty to none, op _,_ to _;_ [prec 43])
Advisory: redefining module FOO.
Advisory: redefining module BAR.
omod BAR is
  including FOO * (attr a to b) .
endom
mod BAR is
  including CONFIGURATION .
  including FOO * (op a :_ : [Foo] -> [Attribute,AttributeSet] to b :_) .
endm
mod BAR is
  sorts Attribute AttributeSet Oid Cid Object Msg Portal Configuration Foo Bar
    .
  subsort Attribute < AttributeSet .
  subsorts Object Msg Portal < Configuration .
  op none : -> AttributeSet [ctor] .
  op _,_ : AttributeSet AttributeSet -> AttributeSet [ctor assoc comm id: none
    prec 41 gather (e E)] .
  op <_:_|_> : Oid Cid AttributeSet -> Object [ctor obj prec 0 gather (& & &)
    special (
    id-hook ObjectConstructorSymbol
    op-hook attributeSetSymbol (_,_ : AttributeSet AttributeSet ~>
    AttributeSet))] .
  op none : -> Configuration [ctor] .
  op __ : Configuration Configuration -> Configuration [ctor assoc comm id:
    none config prec 41 gather (e E)] .
  op <> : -> Portal [ctor portal] .
  op getClass : Object -> Cid .
  op b :_ : Foo -> Attribute [prec 15 gather (E)] .
  eq getClass(< O:Oid : C:Cid | A:AttributeSet >) = C:Cid .
endm
fmod BOOL
fmod TRUTH-VALUE
fmod BOOL-OPS
fmod TRUTH
fmod EXT-BOOL
fmod INITIAL-EQUALITY-PREDICATE
fmod NAT
fmod INT
fmod RAT
fmod FLOAT
fmod STRING
fmod CONVERSION
fmod RANDOM
fmod BOUND
fmod QID
fth TRIV
fth STRICT-WEAK-ORDER
fth STRICT-TOTAL-ORDER
fth TOTAL-PREORDER
fth TOTAL-ORDER
fth DEFAULT
fmod LIST
fmod WEAKLY-SORTABLE-LIST
fmod SORTABLE-LIST
fmod WEAKLY-SORTABLE-LIST'
fmod SORTABLE-LIST'
fmod SET
fmod LIST-AND-SET
fmod SORTABLE-LIST-AND-SET
fmod SORTABLE-LIST-AND-SET'
fmod LIST*
fmod SET*
fmod MAP
fmod ARRAY
fmod STRING-OPS
fmod NAT-LIST
fmod QID-LIST
fmod QID-SET
fmod META-TERM
fmod META-CONDITION
fmod META-STRATEGY
fmod META-MODULE
fmod META-VIEW
fmod META-LEVEL
fmod LEXICAL
mod COUNTER
mod LOOP-MODE
mod CONFIGURATION
omod FOO
omod BAR
fth X :: TRIV
fmod LIST{[X]}
fth X :: STRICT-WEAK-ORDER
fmod LIST{STRICT-WEAK-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{[X]} * (sort NeList{STRICT-WEAK-ORDER}{X} to
    NeList{X}, sort List{STRICT-WEAK-ORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST{[X]}
fth X :: STRICT-TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-TOTAL-ORDER}{X} to NeList{X}, sort List{STRICT-TOTAL-ORDER}{X} to
    List{X})
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST{[X]}
fth X :: TOTAL-PREORDER
fmod LIST{TOTAL-PREORDER}
fmod LIST{TOTAL-PREORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{X} to NeList{X},
    sort List{TOTAL-PREORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST'{[X]}
fth X :: TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST'{[X]}
fmod SET{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X}, sort NeSet{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to Set{X})
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeSet{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to Set{X})
fmod LIST-AND-SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{
    TOTAL-ORDER}{X} to NeList{X}, sort List{TOTAL-ORDER}{X} to List{X}, sort
    NeSet{TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to Set{X})
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeSet{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeSet{X}, sort Set{TOTAL-PREORDER}{TOTAL-ORDER}{X} to
    Set{X})
fmod LIST*{[X]}
fmod SET*{[X]}
fth Y :: TRIV
fmod MAP{[X], [Y]}
fth Y :: DEFAULT
fmod ARRAY{[X], [Y]}
fmod LIST{Nat}
fmod LIST{Nat} * (sort NeList{Nat} to NeNatList, sort List{Nat} to NatList)
fmod LIST{Qid}
fmod LIST{Qid} * (sort NeList{Qid} to NeQidList, sort List{Qid} to QidList)
fmod SET{Qid}
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet)
fmod QID-SET * (op empty to none, op _,_ to _;_ [prec 43])
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet) * (op
    empty to none, op _,_ to _;_ [prec 43])
mod FOO * (op a :_ : [Foo] -> [Attribute,AttributeSet] to b :_)
Advisory: redefining module FOO.
Advisory: redefining module BAR.
Advisory: generic msg mapping renames operator g which does not have the msg
    attribute.
mod BAR is
  including FOO * (msg f to f', msg g to g') .
endm
mod BAR is
  including FOO * (op f to f', op g to g') .
endm
mod BAR is
  sorts Attribute AttributeSet Oid Cid Object Msg Portal Configuration .
  subsort Attribute < AttributeSet .
  subsorts Object Msg Portal < Configuration .
  op none : -> AttributeSet [ctor] .
  op _,_ : AttributeSet AttributeSet -> AttributeSet [ctor assoc comm id: none
    prec 41 gather (e E)] .
  op <_:_|_> : Oid Cid AttributeSet -> Object [ctor obj prec 0 gather (& & &)
    special (
    id-hook ObjectConstructorSymbol
    op-hook attributeSetSymbol (_,_ : AttributeSet AttributeSet ~>
    AttributeSet))] .
  op none : -> Configuration [ctor] .
  op __ : Configuration Configuration -> Configuration [ctor assoc comm id:
    none config prec 41 gather (e E)] .
  op <> : -> Portal [ctor portal] .
  op getClass : Object -> Cid .
  op f' : Oid -> Msg [ctor msg] .
  op g' : Oid -> Msg .
  eq getClass(< O:Oid : C:Cid | A:AttributeSet >) = C:Cid .
endm
fmod BOOL
fmod TRUTH-VALUE
fmod BOOL-OPS
fmod TRUTH
fmod EXT-BOOL
fmod INITIAL-EQUALITY-PREDICATE
fmod NAT
fmod INT
fmod RAT
fmod FLOAT
fmod STRING
fmod CONVERSION
fmod RANDOM
fmod BOUND
fmod QID
fth TRIV
fth STRICT-WEAK-ORDER
fth STRICT-TOTAL-ORDER
fth TOTAL-PREORDER
fth TOTAL-ORDER
fth DEFAULT
fmod LIST
fmod WEAKLY-SORTABLE-LIST
fmod SORTABLE-LIST
fmod WEAKLY-SORTABLE-LIST'
fmod SORTABLE-LIST'
fmod SET
fmod LIST-AND-SET
fmod SORTABLE-LIST-AND-SET
fmod SORTABLE-LIST-AND-SET'
fmod LIST*
fmod SET*
fmod MAP
fmod ARRAY
fmod STRING-OPS
fmod NAT-LIST
fmod QID-LIST
fmod QID-SET
fmod META-TERM
fmod META-CONDITION
fmod META-STRATEGY
fmod META-MODULE
fmod META-VIEW
fmod META-LEVEL
fmod LEXICAL
mod COUNTER
mod LOOP-MODE
mod CONFIGURATION
omod FOO
mod BAR
fth X :: TRIV
fmod LIST{[X]}
fth X :: STRICT-WEAK-ORDER
fmod LIST{STRICT-WEAK-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{[X]} * (sort NeList{STRICT-WEAK-ORDER}{X} to
    NeList{X}, sort List{STRICT-WEAK-ORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST{[X]}
fth X :: STRICT-TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-TOTAL-ORDER}{X} to NeList{X}, sort List{STRICT-TOTAL-ORDER}{X} to
    List{X})
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST{[X]}
fth X :: TOTAL-PREORDER
fmod LIST{TOTAL-PREORDER}
fmod LIST{TOTAL-PREORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{X} to NeList{X},
    sort List{TOTAL-PREORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST'{[X]}
fth X :: TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST'{[X]}
fmod SET{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X}, sort NeSet{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to Set{X})
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeSet{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to Set{X})
fmod LIST-AND-SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{
    TOTAL-ORDER}{X} to NeList{X}, sort List{TOTAL-ORDER}{X} to List{X}, sort
    NeSet{TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to Set{X})
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeSet{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeSet{X}, sort Set{TOTAL-PREORDER}{TOTAL-ORDER}{X} to
    Set{X})
fmod LIST*{[X]}
fmod SET*{[X]}
fth Y :: TRIV
fmod MAP{[X], [Y]}
fth Y :: DEFAULT
fmod ARRAY{[X], [Y]}
fmod LIST{Nat}
fmod LIST{Nat} * (sort NeList{Nat} to NeNatList, sort List{Nat} to NatList)
fmod LIST{Qid}
fmod LIST{Qid} * (sort NeList{Qid} to NeQidList, sort List{Qid} to QidList)
fmod SET{Qid}
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet)
fmod QID-SET * (op empty to none, op _,_ to _;_ [prec 43])
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet) * (op
    empty to none, op _,_ to _;_ [prec 43])
mod FOO * (op f to f', op g to g')
Advisory: specific msg mapping renames operator g which does not have the msg
    attribute.
mod BAZ is
  including FOO * (msg f : [Oid] -> [Msg] to f', msg g : [Oid] -> [Msg] to g')
    .
endm
mod BAZ is
  including FOO * (op f : [Oid] -> [Object,Msg,Portal,Configuration] to f', op
    g : [Oid] -> [Object,Msg,Portal,Configuration] to g') .
endm
mod BAZ is
  sorts Attribute AttributeSet Oid Cid Object Msg Portal Configuration .
  subsort Attribute < AttributeSet .
  subsorts Object Msg Portal < Configuration .
  op none : -> AttributeSet [ctor] .
  op _,_ : AttributeSet AttributeSet -> AttributeSet [ctor assoc comm id: none
    prec 41 gather (e E)] .
  op <_:_|_> : Oid Cid AttributeSet -> Object [ctor obj prec 0 gather (& & &)
    special (
    id-hook ObjectConstructorSymbol
    op-hook attributeSetSymbol (_,_ : AttributeSet AttributeSet ~>
    AttributeSet))] .
  op none : -> Configuration [ctor] .
  op __ : Configuration Configuration -> Configuration [ctor assoc comm id:
    none config prec 41 gather (e E)] .
  op <> : -> Portal [ctor portal] .
  op getClass : Object -> Cid .
  op f' : Oid -> Msg [ctor msg] .
  op g' : Oid -> Msg .
  eq getClass(< O:Oid : C:Cid | A:AttributeSet >) = C:Cid .
endm
fmod BOOL
fmod TRUTH-VALUE
fmod BOOL-OPS
fmod TRUTH
fmod EXT-BOOL
fmod INITIAL-EQUALITY-PREDICATE
fmod NAT
fmod INT
fmod RAT
fmod FLOAT
fmod STRING
fmod CONVERSION
fmod RANDOM
fmod BOUND
fmod QID
fth TRIV
fth STRICT-WEAK-ORDER
fth STRICT-TOTAL-ORDER
fth TOTAL-PREORDER
fth TOTAL-ORDER
fth DEFAULT
fmod LIST
fmod WEAKLY-SORTABLE-LIST
fmod SORTABLE-LIST
fmod WEAKLY-SORTABLE-LIST'
fmod SORTABLE-LIST'
fmod SET
fmod LIST-AND-SET
fmod SORTABLE-LIST-AND-SET
fmod SORTABLE-LIST-AND-SET'
fmod LIST*
fmod SET*
fmod MAP
fmod ARRAY
fmod STRING-OPS
fmod NAT-LIST
fmod QID-LIST
fmod QID-SET
fmod META-TERM
fmod META-CONDITION
fmod META-STRATEGY
fmod META-MODULE
fmod META-VIEW
fmod META-LEVEL
fmod LEXICAL
mod COUNTER
mod LOOP-MODE
mod CONFIGURATION
omod FOO
mod BAR
mod BAZ
fth X :: TRIV
fmod LIST{[X]}
fth X :: STRICT-WEAK-ORDER
fmod LIST{STRICT-WEAK-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{[X]} * (sort NeList{STRICT-WEAK-ORDER}{X} to
    NeList{X}, sort List{STRICT-WEAK-ORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST{[X]}
fth X :: STRICT-TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-TOTAL-ORDER}{X} to NeList{X}, sort List{STRICT-TOTAL-ORDER}{X} to
    List{X})
fmod LIST{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST{[X]}
fth X :: TOTAL-PREORDER
fmod LIST{TOTAL-PREORDER}
fmod LIST{TOTAL-PREORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{X} to NeList{X},
    sort List{TOTAL-PREORDER}{X} to List{X})
fmod WEAKLY-SORTABLE-LIST'{[X]}
fth X :: TOTAL-ORDER
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]}
fmod WEAKLY-SORTABLE-LIST'{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod LIST{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{TOTAL-ORDER}{X} to
    NeList{X}, sort List{TOTAL-ORDER}{X} to List{X})
fmod SORTABLE-LIST'{[X]}
fmod SET{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}
fmod SET{STRICT-WEAK-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X})
fmod LIST-AND-SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeList{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeList{STRICT-TOTAL-ORDER}{X},
    sort List{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to List{
    STRICT-TOTAL-ORDER}{X}) * (sort NeList{STRICT-TOTAL-ORDER}{X} to NeList{X},
    sort List{STRICT-TOTAL-ORDER}{X} to List{X}, sort NeSet{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{STRICT-WEAK-ORDER}{
    STRICT-TOTAL-ORDER}{X} to Set{X})
fmod SET{STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{[X]} * (sort NeSet{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    STRICT-WEAK-ORDER}{STRICT-TOTAL-ORDER}{X} to Set{X})
fmod LIST-AND-SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}
fmod SET{TOTAL-PREORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]}
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X})
fmod LIST-AND-SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeList{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeList{TOTAL-ORDER}{X}, sort List{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to List{TOTAL-ORDER}{X}) * (sort NeList{
    TOTAL-ORDER}{X} to NeList{X}, sort List{TOTAL-ORDER}{X} to List{X}, sort
    NeSet{TOTAL-PREORDER}{TOTAL-ORDER}{X} to NeSet{X}, sort Set{
    TOTAL-PREORDER}{TOTAL-ORDER}{X} to Set{X})
fmod SET{TOTAL-PREORDER}{TOTAL-ORDER}{[X]} * (sort NeSet{TOTAL-PREORDER}{
    TOTAL-ORDER}{X} to NeSet{X}, sort Set{TOTAL-PREORDER}{TOTAL-ORDER}{X} to
    Set{X})
fmod LIST*{[X]}
fmod SET*{[X]}
fth Y :: TRIV
fmod MAP{[X], [Y]}
fth Y :: DEFAULT
fmod ARRAY{[X], [Y]}
fmod LIST{Nat}
fmod LIST{Nat} * (sort NeList{Nat} to NeNatList, sort List{Nat} to NatList)
fmod LIST{Qid}
fmod LIST{Qid} * (sort NeList{Qid} to NeQidList, sort List{Qid} to QidList)
fmod SET{Qid}
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet)
fmod QID-SET * (op empty to none, op _,_ to _;_ [prec 43])
fmod SET{Qid} * (sort NeSet{Qid} to NeQidSet, sort Set{Qid} to QidSet) * (op
    empty to none, op _,_ to _;_ [prec 43])
mod FOO * (op f to f', op g to g')
mod FOO * (op f : [Oid] -> [Object,Msg,Portal,Configuration] to f', op g : [
    Oid] -> [Object,Msg,Portal,Configuration] to g')
Bye.
