Print[":Package Title: goedel.09jan22a 2009 January 22 at 1:00 p.m. "]; (* :Context: Goedel` :Author: Johan G. F. Belinfante :Collaborators: William Drobny, Tiffany D. Goble, Claudia D. Huang, Benjamin Lamothe, Ming Li and Lee Martie :Summary: The GOEDEL program implements Goedel's algorithm for class formation, modified to avoid assuming the axiom of regularity, the axiom of choice and Kuratowski's construction of ordered pairs. :Copyright: 2001 by Johan G. F. Belinfante :Mathematica Versions: 3.0 through 6.0 *) (* :History: Version goedel.09jan21a plus rewrite rules from ASS-RS.NB and ASS-SETP.NB Earlier versions go back to 1996. *) (* :Keywords: class, member *) (* :Sources: Kurt Goedel, 1939 monograph on the consistency of the axiom of choice and of the generalized continuum hypothesis. *) (* :Warnings: count is an unprotected global counter used in the test suites 0 is used to represent the empty set. E is used to represent the membership relation. There are few error messages to prevent misuse of the program. There is no guarantee looping will not occur in applying the rewrite rules. *) (* For debugging sometimes the following may be useful: *) (* $IterationLimit = $RecursionLimit = 20; *) (* :Limitations: The simplification rules are not confluent. It is unlikely that a Knuth Bendix completion of the present rules would terminate. The order in which simplification rules are applied is therefore important, but no mechanism has been included for user control over this order. Mathematica's builtin Tracing commands are the only mechanism for discovering what rules were actually applied. In one of the earlier versions we had built in a mechanism for documenting which rules had been accessed, but this proved to be of limited value. *) (* :Discussion: See Goedel's monograph, pages 10-14. *) (* :Requirements: *) (* :Examples: Sample files are available in various test suites. *) (* set up the package context, including public imports *) BeginPackage["Goedel`"] (* added 2003 June 25 *) Unprotect[E]; Clear[E]; (* usage messages for the exported functions and the context itself *) Goedel::usage = "Goedel.m is a package that implements a modification of Goedel's algorithm for class formation." A::usage = "A[x] is the class obtained by intersecting all the sets that belong to x" Aclosure::usage = "Aclosure[x] is the class of all sets A[y] where y is a nonempty subset of x" ACLOSURE::usage = "ACLOSURE is the function that takes x to image[BIGCAP,P[x]]" ACYCLIC::usage = "ACYCLIC is the class of all relations that contain no cycles" ADJOIN::usage = "ADJOIN[x] is the function that takes y to union[x,y]." allclosed::usage = "allclosed[x] is the class of all sets closed under an infinitary operation x" and::usage = "and[x,y,...] is a flat, orderless function of any number of variables" ANTISYM::usage = "ANTISYM is the class of all antisymmetric relations" ANTISYMMETRIC::usage = "ANTISYMMETRIC[x] is the statement that x is an antisymmetric relation" apply::usage = "apply[x,y] was used by Quaife to apply a function to its argument" APPLY::usage = "APPLY[x,y] is useful for applying a function to its argument" assert::usage = "assert[p] is a statement equivalent to p obtained by applying Goedel's algorithm to class[w,p]. Applying assert repeatedly sometimes simplifies a statement." assoc::usage = "assoc[x] is a wrapper for an associative relation" ASSOC::usage = "ASSOC is the function that reassociates ordered triples" associative::usage = "associative[x] is the statement that x is an associative relation" ASSOCIATIVE::usage = "ASSOCIATIVE is the class of all associative relations" axch::usage = "axch is a flag for a set form of the axiom of choice" AxCh::usage = "AxCh is a flag that can be set equal to True if one is assumes the class form of the axiom of choice. Not protected." AxReg::usage = "AxReg is a flag that can be set equal to True if one assumes the axiom of regularity. Not protected." BIGCAP::usage = "BIGCAP is the function that takes x to A[x]" BIGCUP::usage = "BIGCUP is the function that takes x to U[x]" bij::usage = "bij[x,y] is the class of all bijections with domain x and range y" BIJ::usage = "BIJ is the class of one-to-one correspondences" binclosed::usage = "binclosed[x] is the class of sets y that are closed under a binary operation x" binhom::usage = "binhom[x,y] is the class of homomorphisms from binary operation x to binary operation y" binop::usage = "binop[x] is a wrapper for a binary operation" BINOPS::usage = "BINOPS is the class of binary operations" cantor::usage = "Quaife introduced cantor[x] to prove Cantor's theorem" CAP::usage = "CAP is the function that takes pair[x,y] to intersection[x,y]" CAPclosed::usage = "CAPclosed is the class of sets which are closed under binary intersection" card::usage = "card[x] is the intersection of all ordinals equipollent to x" CARD::usage = "the function CARD takes x to card[x] when both are sets" cart::usage = "cart[x,y] is the cartesian product of x and y. Note that cart is not associative." CART::usage = "CART is the function that takes pair[x,y] to cart[x,y]" cartsq::usage = "cartsq[x] is the cartesian square of x." cat::usage = "cat[x] is a wrapper for a category" category::usage = "category[x] is the statement that x is the composition law for an (abstract arrows-only) category" CATOFUNS::usage = "CATOFUNS is the binary composition for the category of sets (mappings)" CATORELN::usage = "CATORELNS is the binary composition for the category of relations" chains::usage = "chains[x] holds all chains for x" CHAINS::usage = "CHAINS is the function that takes x to chains[x]" CHAR::usage = "CHAR[x] assigns to each subset y of a set x its characteristic function" CHOICE::usage = "the choice function takes each nonempty set x to some member of x. To use it, one needs to assign True to AxCh" choicefunction::usage = "choicefunction[f,x] is the statement that f is a choice function with domain x" CL::usage = "CL is the class of all partial order relations for complete lattices" class::usage = "class[x,p] applies Goedel's algorthm to the class of all sets x satisfying the condition p. The variable x may be an atomic variable, or of the form pair[u,v], where u and v in turn can be pairs, etc. " cliques::usage = "cliques[x] is the class of all w such that cart[w,w] is contained in x" CLIQUES::usage = "CLIQUES is the function that takes x to cliques[x]" clock::usage = "clock[x] is a cyclic unary operation" COARSER::usage = "pair[x,y] belongs to COARSER if x is a subset of y and U[x] = U[y]" cod::usage = "cod[x] is the relation composite[id[ids[x]],inverse[domain[x]]]" commutant::usage = "commutant[x] is the class of all sets which commute with x" COMMUTATIVE::usage = "COMMUTATIVE is the class of commutative relations" commute::usage = "commute[x,y] is true if and only if the composite of x and y is the same as the composite of y and x" COMMUTE::usage = "COMMUTE is the class of pair[x,y] such that x and y commute" COMPACT::usage = "COMPACT is the class of all t such that for every set coarser than t there is a finite set that is even coarser" complement::usage = "complement[x] is the class of all sets that to not belong to x" COMPOSE::usage = "COMPOSE is the function that takes pair[x,y] to composite[x,y]" composite::usage = "composite[x,y,...] is a flat function of any number of variables" cond::usage = "cond is a flag for the thin conditional rules" conduct::usage = "conduct[x,y,z] is an abbreviation for subclass[image[x,y],z]" CONST::usage = "the class of constant functions" core::usage = "core[x,y] is the union of all subsets of y that belong to x" CORE::usage = "CORE[x] is the function that takes u to the union of all subsets of v that belong to x" count::usage = "count is a global variable used in the test suites" COUNTABLE::usage = "COUNTABLE is the class of sets that are finite or denumerable" cross::usage = "cross[x,y] is the cross product of x and y" CROSS::usage = "CROSS is the function that takes pair[x,y] to cross[x,y]" CUP::usage = "CUP is the function that takes pair[x,y] to union[x,y]" CUPclosed::usage = "CUPclosed is the class of sets which are closed under binary union" CURRY::usage = "CURRY converts functions with two arguments to functions with one argument" DEDEKIND::usage = "DEDEKIND is the class of Dedekind-finite sets" DENUMERABLE::usage = "DENUMERABLE is the class of sets whose cardinality is omega" DESCENDING::usage = "DESCENDING is the class subvar[E] of all sets x with the property that for each member v of x, there is a member u of x that belongs to v" Di::usage = "The diversity relation Di is the class of ordered pairs pair[x,y] such that x is not equal to y. " diag::usage = "Quaife uses diag[x] for our complement[fix[x]]" dif::usage = "dif[x,y] is the relative complement of y in x" DIF::usage = "DIF is the function that takes pair[x,y] to intersection[x,complement[y]]" DIFclosed::usage = "DIFclosed is the class of all sets which are closed under set differences" direct::usage = "direct[x,y] is an abbreviation for the direct product of x and y" disjoint::usage = "disjoint[x,y] is the statement that x and y are disjoint, that is, their intersection is empty." DISJOINT::usage = "DISJOINT is the class of all pair[x,y] such that x and y are disjoint" DIV::usage = "DIV is the divisibility relation for natural numbers" dom::usage = "dom[x] is the relation composite[id[ids[x]],domain[x]]" domain::usage = "domain[x] is the domain of x" DORA::usage = "DORA is the function that takes x to pair[domain[x],range[x]" DUP::usage = "DUP is the function that takes x to pair[x,x]" e::usage = "e[x] is the intersection of all neutral elements of x" E::usage = "E is the membership relation" empty::usage = "empty[x] is the statement that x is the empty set" equal::usage = "equal[x,y] is the statement that the classes x and y are equal" equality::usage = "equality is a flag governing equality substitution" EQUIDIFF::usage = "EQUIDIFF is an equivalence relation on cart[omega,omega] used to define the integers" equiv::usage = "equiv[p,q] is the statement that p and q imply each other" EQUIV::usage = "EQUIV is the function lambda[x, eqv[x]]" EQUIVALENCE::usage = "EQUIVALENCE[x] is the statement that x is an equivalence relation" EQV::usage = "EQV is the class of (small) equivalence relations" eqv::usage = "eqv[x] is the symmetric part of trv[x]" eval::usage = "eval[x] is evaluation at x" even::usage = "even is the set of all natural numbers that are divisible by 2" example::usage = "example[n_,string_,comment_] is used in the test suites" exists::usage = "exists[x,y,...,p] is the statement that there exist x,y,... such that p" existsunique::usage = "existsunique[x,p] is the statement that there exists a unique x such that p" expand::usage = "expand is a flag which can be set to turn on some expansive rewrite rules" FACTORIAL::usage = "FACTORIAL is the factorial function for natural numbers" fin::usage = "fin[x] is a wrapper for finite sets" finchar::usage = "finchar[x] is the statement that x is a class of finite character" FINCHAR::usage = "FINCHAR is the class of all sets of finite character" FINITE::usage = "the class of finite sets" first::usage = "first[x] is the first argument of an ordered pair" FIRST::usage = "FIRST is the function which takes pair[x,y] to x" fix::usage = "the fixed point class fix[x] is the class of all y such that pair[y,y] belongs to x" FIX::usage = "FIX is the function that takes x to fix[x]" flags::usage = "flags shows values of all flags" flip::usage = "flip[x] is the class of all pair[pair[u,v],w] such that pair[pair[v,u],w] belongs to x" forall::usage = "forall[x,y,...,p] is the statement that p holds for all sets x,y,..." full::usage = "full[x] is the statement that every member of x is a subset of x" FULL::usage = "FULL is the class of all full sets." FUNCTION::usage = "FUNCTION[x] is the statement that x is a function" functor::usage = "functor[w,x,y] is the statement that w is a functor from x to y" FUND::usage = "FUND is the class of all x such that composite[id[x],E] is well-founded" funpart::usage = "funpart[x] is the functional part of x" FUNPART::usage = "FUNPART is the function that takes x to funpart[x]" FUNS::usage = "FUNS is the class of all functions whose domains are sets" GLB::usage = "member[pair[x,y],GLB[z]] means y is a greatest lower bound for x with respect to the relation z" greatest::usage = "greatest[x,y] is the set of x-greatest elements of y" GREATEST::usage = "member[pair[x,y],GREATEST[z]] means y is a greatest element of x with respect to the relation z" GROUPS::usage = "GROUPS is the class of nonempty associative quasigroup binary operations" H::usage = "H[x] is Jech's hereditarily functor" hartogs::usage = "hartogs[x] id the Hartogs number of a class x" HARTOGS::usage = "HARTOGS is the Hartogs function" HC::usage = "HC in the function that takes x to H[x]" history::usage = "history[x,y] is the history of x with respect to y" HISTORY::usage = "HISTORY[x,y] is a shorthand for an expression equal to history[x,y]" holds::usage = "holds[x,y] is the statement that x holds y" hom::usage = "the ternary relation hom[x] holds pair[pair[u,v],w] if dom[x] holds pair[w,u] and cod[x] holds pair[w,v]" hull::usage = "hull[x,y] is the intersection of all sets belonging to x that contain y" HULL::usage = "HULL[x] is the function that takes y to hull[x,y]" Id::usage = "Id is the identity relation" id::usage = "id[x] is the restriction of the identity relation to x" idem::usage = "idem[x] is a wrapper for an idempotent relation" IDEM::usage = "IDEM is the class of idempotent relations" idempotent::usage = "idempotent[x] is the statement that x = composite[x,x]" IDP::usage = "IDP is a shorthand for IMAGE[DUP]" ids::usage = "ids[x] is the class of neutral (identity) elements for x" image::usage = "image[x,y] is the image of the class y under x" IMAGE::usage = "IMAGE[x] is the function that takes y to image[x,y]. When x is a set, the function IMAGE[x] is a proper class." IMG::usage = "IMG is the function that takes pair[x,y] to image[x,y]" implies::usage = "implies[x,y] is the statement that x implies y" INDUCTIVE::usage = "INDUCTIVE[x] is the statement that x is an inductive class" int::usage = "int[x] is a wrapper for integers" intadd::usage = "intadd[x,y] is the sum of of integers x and y" INTADD::usage = "member[pair[pair[x,y],z],INTADD] holds if x and y are integers and x + y = z" INTDIV::usage = "INTDIV is the integer divisibility relation" intersection::usage = "intersection[x,y,...] is a flat, orderless function of any number of variables" INTLEQ::usage = "member[pair[x,y],INTLEQ] holds if x is an integer less than or equal to an integer y" intmul::usage = "intmul[x,y] is the product of of integers x and y" INTMUL::usage = "INTMUL is the binary function for multiplying integers" into::usage = "into[x] is an abbreviation for flip[rotate[x]]" inttimes::usage = "inttimes[x] is the function which multiplies integers by x" INTTIMES::usage = "INTTIMES is the curried multiplication function for integer arithmetic" inv::usage = "inv[x] is the inverse relation for a partial binary composition x" invar::usage = "invar[x] is the class of all sets which are invariant under x" INVAR::usage = "INVAR is the relation consisting all pair[x,y] such that y is invariant under x" invariant::usage = "invariant[x,y] means y is invariant under x" inverse::usage = "the relation inverse[x] is the inverse of x" INVERSE::usage = "INVERSE is the function that takes x to inverse[x]" INVFUN::usage = "INVFUN[x] is the statement that inverse[x] is a function" INVOL::usage = "INVOL is the class of all involutions" iterate::usage = "iterate[x,y] is the relation whose vertical sections are the generations produced using x starting with the initial generation y" JOIN::usage = "JOIN is the function that concatenates a pair of lists" K::usage = "K is the cover relation defined as the intersection of PS and the complement of composite[PS,PS]" KURA::usage = "KURA is the function that takes pair[x,y] to Kuratowski's construction of an ordered pair" lambda::usage = "lambda[x,f[x]] is the function which takes x to f[x], and lambda[pair[x,y],f[x,y] is the function that takes pair[x,y] to f[x,y], etc." LAMBHULL::usage = "LAMBHULL is the function that takes x to HULL[x]" lb::usage = "lb[x,y] is the class of all lower bounds for y with respect to the relation x" LB::usage = "member[pair[x,y],LB[z]] means y is an lower bound for x with respect to the relation z" ld::usage = "ld[x,y] is the set of linear differences of x and y" least::usage = "least[x,y] is the set of x-least elements of y" LEAST::usage = "member[pair[x,y],LEAST[z]] means y is a least element of x with respect to the relation z" LEFT::usage = "LEFT[x] is the function which takes y to pair[x,y]" LeftPairV::usage = "LeftPairV is the function that takes x to pair[V,x]" list::usage = "list[x] is a wrapper for lists" LISTS::usage = "LISTS is the class of all lists" LUB::usage = "member[pair[x,y],LUB[z]] means y is a least upper bound for x with respect to the relation z" map::usage = "map[x,y] is the class of all functions with domain x and range contained in y" MAP::usage = "MAP is the function which takes pair[x,y] to map[x,y]" MAXIMAL::usage = "member[pair[x,y],MAXIMAL[z]] means y is a maximal element of x with respect to the relation z" maximal::usage = "maximal[x,y] is the class of x-maximal elements of y" member::usage = "member[x,y] is the statement that x belongs to y" MINIMAL::usage = "member[pair[x,y],MINIMAL[z]] means y is a minimal element of x with respect to the relation z" minimal::usage = "minimal[x,y] is the class of x-minimal elements of y" MIXDIV::usage = "MIXDIV is a mixed divisibility relation for natural numbers and integers" MIXMUL::usage = "MIXMUL is a mixed multiplication of integers by natural numbers" MIXTIMES::usage = "MIXTIMES is a one-to-one correspondence between Z and binhom[NATADD,INTADD]" modulo::usage = "modulo[x] is the function that reduces natural numbers modulo x" MONOIDS::usage = "MONOIDS is the class of all monoids" monus::usage = "monus[x,y] is the floored difference of natural numbers nat[natsub[x,y]]" nat::usage = "nat[x] is x when x is a natural number, and 0 otherwise" natadd::usage = "natadd[x,y] is the sum of x and y if they are natural numbers" NATADD::usage = "member[pair[pair[x,y],z],NATADD] holds if x and y are natural numbers and x + y = z" natdiv::usage = "natdiv[x,y] is the quotient when a natural number x is divided by y when x is divisible by y" natexp::usage = "natexp[x,y] is x to the power y when x and y are natural numbers" NATEXP::usage = "NATEXP is the function that takes pair[x,y] to natexp[x,y] when x and y are natural numbers" natmod::usage = "natmod[x,y] is the remainder when the natural number x is divided by the natural number y" NATMOD::usage = "NATMOD is the function for the remainder obtained when one natural number is divided by another" natmul::usage = "natmul[x,y] is the product of x and y if they are natural numbers" NATMUL::usage = "member[pair[pair[x,y],z],NATMUL] holds if x and y are natural numbers and x y = z" natquot::usage = "natquot[x,y] is the floored quotient of x with respect to y" natsub::usage = "natsub[x,y] is the difference of x and y if they are natural numbers and x is not less than y" not::usage = "not[p] represents the negation of p" odd::usage = "odd is the set of all natural numbers that are not divisible by 2" omega::usage = "omega is the set of all natural numbers" OMEGA::usage = "OMEGA is the class of all ordinal numbers" ONEONE::usage = "ONEONE[x] is the statement that x is a one-to-one correspondence" oopart::usage = "oopart[x] is the one-to-one part of x" OOPART::usage = "OOPART = lambda[x,oopart[x]]" or::usage = "or[x,y,...] is a flat, orderless function of any number of variables" ord::usage = "ord[x] is a wrapper for ordinal numbers" ordlist::usage = "ordlist[x] is an iterative listing in increasing order of the first countably many ordinals in x" over::usage = "over[x] is an abbreviation for rotate[flip[x]]" P::usage = "P[x] is the power class of x, that is the class of all subsets of x" pair::argx = "Warning: pair[-,-] must have exactly 2 arguments" pair::usage = "pair[x,y] is the ordered pair of x and y." PAIR::usage = "PAIR[x,y] is the ordered pair of x and y if x and y are sets and otherwise is V" pairset::usage = "pairset[x,y] = set[x,y] is a shorthand for the union of set[x] and set[y] " PAIRSET::usage = "PAIRSET is the function that takes pair[x,y] to union[set[x],set[y]]" PARTIALORDER::usage = "PARTIALORDER[x] is the statement that x is a partial order relation" partrec::usage = "partrec[x,y] is the class of partial solutions of a recursive definition with generator x and relation y" PERMS::usage = "PERMS is the class of all permutations" plus::usage = "plus[x] is the non-negative integer corresponding to the natural number x" PLUS::usage = "PLUS is the function that takes each natural number to the corresponding non-negative integer" po::usage = "po[x] is a wrapper for a generic partial order relation" PO::usage = "PO is the class of all partial order relations" PointClosed::usage = "PointClosed is the class of collections of sets that satisfy the condition that points are closed" POWER::usage = "POWER is the function that takes x to P[x]" power::usage = "power[x] is the relation whose n-th vertical slice is the composite of n copies of x" PRIMES::usage = "the set of primes" PRIMESEQ::usage = "list of all primes in increasing order" PROJ::usage = "PROJ is the class of all projections, that is, idempotent functions" propersubclass::usage = "propersubclass[x,y] is the statement that x is a subclass of y but not equal to y." PS::usage = "the proper subclass relation " PSM::usage = "PSM was used in some old Otter work to define certain functions" Q::usage = "the equinumerosity relation" quasigp::usage = "quasigp[x] is a wrapper for a quasigroup binary operation" QUASIGPS::usage = "QUASIGPS is the class of all quasigroup binary operations" QUASIORDER::usage = "QUASIORDER[x] is the statement that x is reflexive and transitive" range::usage = "range[x] is the range of x" rank::usage = "rank[x] is the rank of x in the Zermelo-von Neumann cumulative hierarchy" RANK::usage = "RANK is the function which assigns rank[x] to x" RC::usage = "RC[x] is the function which takes any set y to its relative complement with respect to x" RCF::usage = "RCF is the function which takes any set x to RC[x]" rec::usage = "rec[x,y] is the union of the class of partial solutions of a recursive definition with generator x and relation y" RECTANGLE::usage = "RECTANGLE[x] is the predicate that x is a cartesian product" REFLEXIVE::usage = "REFLEXIVE[x] is the predicate that x is a reflexive relation" reg::usage = "reg[x] is a wrapper for regular sets" REGULAR::usage = "REGULAR is the class of all regular sets" reify::usage = "reify[x,F[x]] is the relation of all pair[x,y] with y belonging to F[x]" restrict::usage = "restrict[z,x,y] is the intersection of z and cart[x,y]" RESTRICT::usage = "RESTRICT is the restriction relation" RFX::usage = "RFX is the class of all (small) reflexive relations" rfx::uage = "rfx[x] = core[RFX,x] is the reflexive core of x" RIF::usage = "RIF is a rotation-invariant function" RIGHT::usage = "RIGHT[x] is the function which takes y to pair[y,x]" RightPairV::usage = "RightPairV is the function that takes x to pair[x,V]" ROT::usage = "ROT is the function which rotates ordered triples" rotate::usage = "rotate[x] is the class obtained from x by rotating all ordered triples" RS::usage = "RS[x] is the class of all small restrictions of x" RUSSELL::usage = "RUSSELL is the class of all x that do not belong to themselves" S::usage = "S is the subset relation" second::usage = "second[x] is the second argument of an ordered pair" SECOND::usage = "SECOND is the function that maps pair[x,y] to y" SELECT::usage = "SELECT is the class of sets that admit cross-sections" semigp::usage = "semigp[x] is a wrapper for an associative binary operation" SEMIGPS::usage = "SEMIGPS is the class of associative binary operations" set::usage = "set[x,y,z, ... ] is the set whose only members are x, y, z, ... , if these are indeed sets." setpart::usage = "setpart[x] is x when x is a set, and 0 when x is not a set" simplify::usage = "simplify is a flag that can be used to turn off certain rules" singleton::usage = "singleton[x] = set[x] is the set whose only member is x. It is the empty set if x is a proper class" SINGLETON::usage = "SINGLETON is the the function that takes x to set[x]" singlevalued::usage = "singlevalued[x] is one version of the statement that x is singlevalued" SINGVAL::usage = "SINGVAL[x] is another version of the statement that x is singlevalued" SMALLER::usage = "SMALLER is the strict numerical dominance relation" spine::usage = "spine[x,y] holds all elements of y that are x-comparable with all elements of y" subclass::usage = "subclass[x,y] is the statement that x is contained in y" subcommutant::usage = "subcommutant[x] is the class of all y such that subclass[composite[x,y],composite[y,x]]" subcommute::usage = "subcommute[x,y] is an abbreviation for the condition subclass[composite[x,y],composite[y,x]]" SUBCOMMUTE::usage = "SUBCOMMUTE is the class of pair[x,y] such that subcommute[x,y]" subset::usage = "subset[x,y] means x is a subset of y" subtwine::usage = "subtwine[x,y,z] is an abbreviation for subclass[composite[x,y],composite[y,z]]" subvar::usage = "subvar[x] is the class of all sets y which satisfy the condition subclass[y,image[x,y]] " SUBVAR::usage = "SUBVAR is the function which takes x to subvar[x]" subvariant::usage = "subvariant[x,y] means y is subvariant under x" succ::usage = "succ[x] is the union of x and set[x]" SUCC::usage = "SUCC is the function that takes x to succ[x]" SWAP::usage = "SWAP is the function that takes pair[x,y] to pair[y,x]" sym::usage = "sym[x] is an abbreviation for the symmetric core of x" SYM::usage = "SYM is the class of all (small) symmetric relations" SYMDIF::usage = "SYMDIF is the symmetric difference function" symdif::usage = "symdif[x,y] is the symmetric difference of x and y" SYMMETRIC::usage = "SYMMETRIC[x] is the statement that x is a symmetric relation" T1::usage = "T1 holds all collections of sets satisfying the T1 separation condition in topology" T2::usage = "T2 holds all collections of sets satisfying the T2 separation condition in topology" tc::usage = "tc[x] is the transitive closure of x" TC::usage = "TC is the transitive closure operator" thin::usage = "thin[x] is the statement that all vertical cross sections of x are sets" thinpart::usage = "thinpart[x] is the largest thin relation obtainable as a restriction of x" times::usage = "times[x] is the function that multiplies natural numbers by x" TIMES::usage = "TIMES is the function that takes each natural number x to times[x]" to::usage = "to[x] is a wrapper for a total order relation" TO::usage = "TO is the class of all small total order relations" top::usage = "top[x] is a wrapper for a topology" TOPS::usage = "TOPS is the class of all topologies" TOTALORDER::usage = "TOTALORDER[x] is the statement that x is a total ordering" TRANSITIVE::usage = "TRANSITIVE[x] is the statement that x is a transitive relation" transvar::usage = "transvar[x,y] is the class of all sets z for which image[x,z] is contained in image[y,z]" transvariant::usage = "transvariant[x,y,z] is the statement that image[x,z] is contained in image[y,z]" trv::usage = "trv[x] is the least transitive relation which contains composite[Id,x]" TRV::usage = "TRV is the class of (small) transitive relations" twist::usage = "twist[x] is the class obtained from x by replacing all pair[pair[t,u],pair[v,w]] in x by switching u and v " TWIST::usage = "TWIST is a function that converts cart to cross" U::usage = "U[x] is the sum class of x, that is the union of all the sets that belong to the class x" ub::usage = "ub[x,y] is the class of all upper bounds for y with respect to the relation x" UB::usage = "member[pair[x,y],UB[z]] means y is an upper bound for x with respect to the relation z" UBD::usage = "UBD is the function that takes each set x to the set domain[UB[x]]" Uchains::usage = "Uchains[x] is the class of all unions of chains in x" UCHAINS::usage = "UCHAINS is the function that takes x to Uchains[x]" Uclosure::usage = "Uclosure[x] is the class of all sets U[y] where y is a subset of x" UCLOSURE::usage = "UCLOSURE is the function that takes x to Uclosure[x]" udora::usage = "the acronym udora[x] = union[domain[x],range[x]] is often called the field of x" union::usage = "union[x,y,...] is a flat, orderless function of any number of class variables" UNOPS::usage = "UNOPS is the class of unary operations" unsafe::usage = "unsafe is a flag used to turn on rewrite rules that are valid, but considered unsafe in because they yield unsatisfactory results for some test suite examples" V::usage = "the universal class V is the class of all sets" VERTSECT::usage = "VERTSECT[z] is the function that maps x to the vectical section image[z,set[x]]" VS::usage = "VS is the function that takes x to composite[VERTSECT[x],id[domain[x]]]" WELLFOUNDED::usage = "WELLFOUNDED[x] is the statement that x is a (strict) wellfounded relation" WELLORDER::usage = "WELLORDER[x] is the statement that x is a wellordering" WF::usage = "WF is the class of all small strict wellfounded relations" wf::usage = "wf[x] is a generic well-founded relation" WFPART::usage = "WFPART = lambda[x, wf[x]]" WO::usage = "WO is the class of all small wellordering relations" wo::usage = "wo[x] is a wrapper for a wellorder relation" wob::usage = "wob[x] is a wrapper for a set that is equipollent to an ordinal" X::usage = "X[x] is the set of cross-sections of x" XS::usage = "XS is the function lambda[x, X[x]]" Z::usage = "Z is the set of integers" ZN::usage = "ZN = composite[Id,U[subcommutant[inverse[E]]]]" Begin["`Private`"] (* begin the private context (implementation part) *) (* definition of auxiliary functions and local (static) variables *) Month[n_] := Part[{" Jan ", " Feb ", " Mar ", " Apr ", " May ", " Jun ", " Jul ", " Aug ", " Sep ", " Oct ", " Nov ", " Dec "}, n] PrintDate[] := Module[{date=Date[]}, Print["It is now: ", Part[date,1],Month[Part[date,2]],Part[date,3]," at ", Part[date,4],":", Part[date,5]]] PrintDate[] (* replaced 2002 November 23 based on VARLIST.NB *) varlist[x_] := {x} (* replaced 2002 November 23 based on VARLIST.NB *) varlist[pair[x_,y_]] := Union[Flatten[{x,y} /. pair -> List]] (* Is the expression x free of all variables which occur in y? *) allfreeQ[x_,y_] := Apply[And,Map[FreeQ[x,#]&,varlist[y]]] (* added 2004 June 8 to fix a nuisance with two general equality substitution rules *) noblanks[x_] := Equal[{},Position[x,Verbatim[Blank[]]]] (* definition of the exported functions *) count = 0 (* initialize counter *) example[n_,string_,comment_] := Module[{t},count++; Print["In[",n,"]:= ",string]; If[comment!="",Print[comment]]; Print[""]; t = Timing[ToExpression[string]]; Print["Out[",n,"]= ",Part[t,2]]; Print[""]; Print["Execution time = ", Round[Part[t,1]/Second]," Seconds"]; Print["\n"]] (* Goedel's algorithm for class formation. *) (* Rules that must be assigned before attributes are set. *) (* introduced 1996 April 30 in LOAD.M *) and[p_] := p (* added 2000 September 13 *) composite[] := Id composite[x_] := composite[Id,x] intadd[x_] := x intersection[x_] := x (* added 2007 January 5 based on INTMUL-5.NB *) intmul[x_] := x natadd[x_] := x (* added 2002 August 29 based on MUL-ZERO.NB *) natmul[x_] := x or[p_] := p union[x_] := x Attributes[and] = {Flat,Orderless,OneIdentity} Attributes[composite] = {Flat,OneIdentity} Attributes[disjoint] = {Orderless} Attributes[equal] = {Orderless} Attributes[intadd] = {Flat,OneIdentity,Orderless} Attributes[intersection] = {Flat,Orderless,OneIdentity} (* added 2007 January 5 based on INTMUL-5.NB *) Attributes[intmul] := {Flat,OneIdentity,Orderless} (* added 2002 July 28 based on ADD-NAT.NB *) Attributes[natadd] = {Flat,OneIdentity,Orderless} (* added 2002 August 28-19 based on MUL-SWAP.NB and MULASSOC.NB *) Attributes[natmul] = {Flat,OneIdentity,Orderless} Attributes[or] = {Flat,Orderless,OneIdentity} (* introduced 2005 January 10 in SET.NB *) Attributes[set] = {Orderless} Attributes[union] = {Flat,Orderless,OneIdentity} (* flag defaults *) cond = True (* default *) equality = True (* default *) expand = False (* default added 2007 February 17 *) simplify = True (* default *) unsafe = False (* default added 2002 October 24 *) (* logical rules *) not[True] := False (* Truth Table *) not[False] := True not[not[p_]] := p (* Double Negation *) not[or[p_,q_]] := and[not[p],not[q]] (* DeMorgan Laws *) not[and[p_,q_]] := or[not[p],not[q]] and[True,p_] := p (* Truth Table *) and[False,p_] := False and[p_,p_] := p (* Idempotent Law *) and[not[p_],p_] := False (* Excluded Middle *) and[p_,or[q_,r_]] := or[and[p,q],and[p,r]] (* Distributive Law *) or[True,p_] := True (* Truth Table *) or[False,p_] := p or[p_,p_] := p (* Idempotent Law *) or[not[p_],p_] := True (* Dichotomy Law *) or[p_,and[p_,q_]] := p (* Absorptive Law *) (* An empirical set of simplification rules *) or[and[p_,q_],and[not[p_],q_]] := q or[p_,and[not[p_],q_]] := or[p,q] or[not[p_],and[p_,q_]] := or[not[p],q] or[and[p_,q_],and[p_,not[q_],r_]] := or[and[p,q],and[p,r]] or[and[p_,not[q_]],and[p_,q_,r_]] := or[and[p,not[q]],and[p,r]] or[and[not[p_],q_],and[p_,r_],and[q_,r_]] := or[and[not[p],q],and[p,r]] (* Rules modified 1998 September 12 *) or[and[not[p_],r_],and[not[q_],r_],and[p_,q_]] := or[and[p,q],r] or[and[p_,r_],and[not[q_],r_],and[not[p_],q_]] := or[and[not[p],q],r] or[and[p_,r_],and[q_,r_],and[not[p_],not[q_]]] := or[and[not[p],not[q]],r] (* introduced 2004 October 26 in AXCH-AC1.NB *) class[w_,axch] := Module[{x = Unique[],y = Unique[]},class[w,forall[x, implies[not[member[0,x]],exists[y,and[FUNCTION[y],subclass[y,inverse[E]],equal[domain[y],x]]]]]]] (* introduced 2004 October 26 in AXCH.NB *) class[w_,AxCh] := class[w,and[FUNCTION[CHOICE],subclass[CHOICE,inverse[E]], equal[domain[CHOICE],complement[set[0]]]]] (* introduced 2004 December 30 in AXREG.NB *) class[w_,AxReg] := complement[image[V,complement[REGULAR]]] (* introduced 2004 March 20 in EQV-WRAP.NB *) class[z_,EQUIVALENCE[x_]] := Module[{u = Unique[],v = Unique[]},class[z, and[TRANSITIVE[x],forall[u,v,implies[member[pair[u,v],x],member[pair[v,u],x]]]]]] (* basic rules for membership *) (* Special rule used to avoid assuming axiom of regularity Goedel had used the rule member[x,x] = False. *) class[w_,member[x_,x_]] := Module[{y=Unique[]},class[w, exists[y,and[member[x,y],equal[x,y]]]]] (* Theorems A-1,A-2A and A-2B in A1 *) class[w_,member[u_,A[x_]]] := Module[{v=Unique[]},class[w,and[member[u,V], forall[v,implies[member[v,x],member[u,v]]]]]] (* corrected 2001 October 14 *) class[u_,member[v_,Aclosure[x_]]] := Module[{w=Unique[]}, class[u,and[member[v,V],exists[w,and[subclass[w,x], equal[v,A[w]]]]]]] (* added 2003 October 28 based on APPLY.NB; wrapped 2005 August 15 *) class[u_,member[w_,APPLY[x_,y_]]] := class[u,and[member[w,V], not[member[y,image[inverse[x],P[complement[set[w]]]]]]]] (* membership rule for ASSOC revised 2001 November 15 *) class[x_,member[y_,ASSOC]] := Module[{u=Unique[],v=Unique[],w=Unique[]},class[x,exists[u,v,w, equal[pair[pair[pair[u,v],w],pair[u,pair[v,w]]],y]]]] (* added 2007 November 16 *) class[w_,member[t_,assoc[x_]]] := class[w,and[member[t,x],subclass[x,cart[cart[V,V],V]], equal[composite[x,cross[x,Id]],composite[x,cross[Id,x],ASSOC]]]] (* added 2003 July 1 based on ASSOC.NB *) class[w_,associative[x_]] := class[w,and[subclass[x,cart[cart[V,V],V]], equal[composite[x,cross[x,Id]],composite[x,cross[Id,x],ASSOC]]]] (* added 2008 September 29 *) class[z_,member[w_,bij[x_,y_]]] := ReleaseHold[class[z,and[member[w,HoldPattern[BIJ]], equal[domain[w],x],equal[range[w],y]]]] (* introduced 2006 July 14 *) class[w_,member[z_,binhom[x_,y_]]] := class[w,and[member[z,map[fix[domain[x]],fix[domain[y]]]], equal[composite[z,x],composite[y,cross[z,z]]]]] (* modified 2006 September 14 *) class[w_,member[t_,BINOPS]] := Module[{u = Unique[],v = Unique[]}, class[w,exists[u,v,and[equal[u,cart[v,v]],member[t,map[u,v]]]]]] (* added 2001 December 1 *) class[u_,member[v_,card[x_]]] := Module[{w=Unique[]},class[u,and[member[v,V], forall[w,implies[and[member[w,OMEGA],member[pair[x,w],Q]],member[v,w]]]]]] (* definition of cat[x] added 2008 December 30 *) class[t_,member[w_,cat[x_]]] := class[t,and[member[w,x],category[x]]] class[w_,member[z_,COARSER]] := Module[{x = Unique[],y = Unique[]}, class[w,exists[x,y,and[equal[z,pair[x,y]],subclass[x,y], equal[U[x],U[y]]]]]] class[w_,member[t_,COMPACT]] := Module[{x = Unique[],y = Unique[]}, class[w,and[member[t,V],forall[x,implies[and[subclass[x,t],subclass[U[t],U[x]]], exists[y,and[member[y,FINITE],subclass[y,x],subclass[U[x],U[y]]]]]]]]] class[w_,member[z_,composite[x_,y_]]] := Module[{u = Unique[],v = Unique[]},class[w,exists[u,v, and[equal[z,pair[u,v]],member[pair[u,v],composite[x,y]]]]]] (* Theorem CO-DF2 in CO2 and Theorems CO-COM-V,CO-1A' and CO-1B' in CO4 *) class[z_,member[pair[u_,w_],composite[x_,y_]]] := Module[{v = Unique[]},class[z, exists[v,and[member[u,V],member[w,V],member[pair[u,v],y],member[pair[v,w],x]]]]] (* introduced 2006 June 6 *) class[w_,member[x_,CONST]] := Module[{u = Unique[],v = Unique[]},class[w,exists[u,v,member[x,map[u,set[v]]]]]] (* added 2004 April 17 *) class[u_,member[v_,core[x_,y_]]] := Module[{w = Unique[]}, class[u,exists[w,and[member[w,x],member[v,w],subclass[w,y]]]]] (* Theorems X-OP-1,X-OP-2 and X-OP-3 in X2 *) class[z_,member[w_,cross[x_,y_]]] := Module[{u1 = Unique[],u2 = Unique[],v1 = Unique[],v2 = Unique[]}, class[z,exists[u1,u2,v1,v2,and[ equal[pair[pair[u1,u2],pair[v1,v2]],w], member[pair[u1,v1],x],member[pair[u2,v2],y]]]]] (* introduced 2006 November 6 *) class[t_,member[z_,CURRY]] := ReleaseHold[Module[{w = Unique[],x = Unique[],y = Unique[]}, class[t,exists[w,x,y,and[equal[z,pair[x,y]],equal[w,image[HoldPattern[ASSOC],x]], member[pair[w,y],HoldPattern[VS]],subclass[x,cart[cart[V,V],V]]]]]]] (* introduced 2005 January 27 *) class[w_,member[x_,DEDEKIND]] := Module[{y = Unique[]},class[w,and[member[x,V], forall[y,implies[and[subclass[y,x],member[pair[x,y],Q]],equal[x,y]]]]]] class[w_,member[x_,DIV]] := Module[{y = Unique[]},class[w,and[member[first[x],V],exists[y, and[member[y,omega],equal[second[x],natmul[first[x],y]]]]]]] (* Theorems DO-1A',DO-1B and DO-1C in DO1. Goedel's definition 1.5 modified 9/15/96 *) class[w_,member[u_,domain[x_]]] := Module[{v = Unique[]},class[w,exists[v, and[member[u,V],member[pair[u,v],x]]]]] (* added 2001 December 18 *) class[z_,member[w_,DORA]] := Module[{u = Unique[]},class[z,exists[u, equal[pair[u,pair[domain[u],range[u]]],w]]]] (* Theorems DUP-1 and DUP-2 in DUP *) class[z_,member[w_,DUP]] := Module[{u = Unique[]},class[z,exists[u, equal[pair[u,pair[u,u]],w]]]] (* introduced 2008 December 26 *) class[t_,member[x_,e[y_]]] := Module[{w = Unique[]},class[t, forall[w,implies[member[w,ids[y]],member[x,w]]]]] (* introduced 2004 May 12 *) class[w_,member[x_,eqv[y_]]]:= class[w,and[member[x,trv[y]],member[x,inverse[trv[y]]]]] (* introduced 2006 October 24 *) class[s_,member[t_,eval[x_]]] := Module[{u = Unique[],v = Unique[]},class[s,exists[u,v, and[equal[t,pair[u,v]],equal[image[u,set[x]],set[v]]]]]] (* introduced 2006 August 13 *) class[t_,member[x_,even]] := Module[{y = Unique[]},ReleaseHold[ class[t,exists[y,and[member[y,omega],member[pair[pair[y,y],x],HoldPattern[NATADD]]]]]]] (* introduced 2005 November 4 in FIN-FUNP.NB *) class[w_,member[x_,fin[y_]]] := class[w,and[member[x,y],member[y,FINITE]]] (* introduced 2007 January 2 *) class[w_,member[x_,FINCHAR]] := Module[{y = Unique[]},class[w,and[member[x,V], forall[y,equiv[member[y,x],subclass[intersection[FINITE,P[y]],x]]]]]] (* introduced 2000 April 1 based on Otter work *) class[w_,member[x_,FINITE]] := Module[{y = Unique[]},class[w,and[member[x,V], not[exists[y,and[member[x,y],subclass[y,image[PS,y]]]]]]]] (* added 2001 November 13 *) class[w_,member[x_,first[y_]]] := Module[{u = Unique[],v = Unique[]}, class[w,and[member[x,V],forall[u,v,implies[equal[y,pair[u,v]],member[x,u]]]]]] (* modified 2003 June 17 *) class[w_,member[x_,fix[y_]]] := class[w,and[member[x,V],member[pair[x,x],y]]] class[x_,member[y_,funpart[z_]]] := Module[{u = Unique[],v = Unique[]},class[x,exists[u,v, and[equal[pair[u,v],y],equal[image[z,set[u]],set[v]]]]]] (* introduced 2005 September 18 *) class[w_,member[x_,GLB[y_]]] := Module[{u = Unique[],v = Unique[]}, class[w,exists[u,v,and[equal[x,pair[u,v]],member[u,V],member[v,domain[y]], subclass[u,image[y,set[v]]],subclass[intersection[domain[y],lb[y,u]],image[inverse[y],set[v]]]]]]] class[x_,member[y_,GREATEST[z_]]] := Module[{u = Unique[],v = Unique[]},class[x,exists[u,v, and[equal[y,pair[u,v]],member[v,u],subclass[cart[u,set[v]],z]]]]] (* introduced 2008 October 18 *) class[x_,member[y_,GROUPS]] := class[x,and[member[y,QUASIGPS],member[y,SEMIGPS],not[equal[0,y]]]] (* introduced 2008 January 18 *) class[t_,member[x_,HARTOGS]] := Module[{u = Unique[],v = Unique[]},class[t,exists[u,v, and[equal[x,pair[u,v]],equal[v,intersection[OMEGA,image[Q,P[u]]]]]]]] (* added 2004 September 5 based on HISTORY.NB *) class[u_,member[v_,history[x_,y_]]] := class[u,and[ equal[composite[x,id[image[y,set[first[second[v]]]]]],second[second[v]]], equal[first[v],first[second[v]]],member[first[v],V], member[image[y,set[first[second[v]]]],V]]] (* definition of hom[x] introduced 2009 January 14 *) class[t_,member[w_,hom[x_]]] := ReleaseHold[class[t,and[member[first[first[w]],HoldPattern[ids[x]]], member[pair[second[w],first[first[w]]],domain[x]], member[pair[second[first[w]],second[w]],domain[x]],member[second[first[w]],HoldPattern[ids[x]]]]]] (* corrected 2006 March 12 *) class[u_,member[v_,hull[x_,y_]]] := Module[{w = Unique[]}, class[u,and[member[v,V],forall[w,implies[and[member[w,x],subclass[y,w]],member[v,w]]]]]] (* wrapped rule introduced 2007 June 5 *) class[w_,member[x_,idem[y_]]] := class[w,and[member[x,y],equal[composite[y,y],y]]] (* definition of ids[x] proposed 2008 December 12 *) class[w_,member[t_,ids[x_]]] := class[w,and[member[t,fix[domain[x]]], subclass[composite[x,RIGHT[t]],Id],subclass[composite[x,LEFT[t]],Id]]] (* revised 2001 November 15 *) class[u_,member[w_,IMAGE[z_]]] := Module[{x = Unique[],y = Unique[]},class[u,exists[x,y, and[equal[pair[x,y],w],equal[image[z,x],y]]]]] class[w_,member[v_,image[z_,x_]]] := Module[{u = Unique[]},class[w,exists[u, and[member[v,V],member[u,x],member[pair[u,v],z]]]]] (* added 2003 August 9 *) class[u_,member[v_,intadd[x_,y_]]] := Module[{w=Unique[]},class[u,and[member[v,V], forall[w,implies[member[pair[pair[x,y],w],INTADD],member[v,w]]]]]] (* membership rule for INTADD added 2003 July 25 *) class[x_,member[y_,INTADD]] := Module[{u = Unique[],v = Unique[],w = Unique[]}, class[x,exists[u,v,w,and[equal[y,pair[pair[u,v],w]], member[u,Z],member[v,Z],member[w,Z],subclass[composite[u,v],w]]]]] (* membership rule for INTDIV introduced 2006 October 21 *) class[x_,member[y_,INTDIV]] := ReleaseHold[Module[{z = Unique[]},class[x, exists[z,and[member[z,HoldPattern[binhom[INTADD,INTADD]]],member[y,z]]]]]] (* membership rule for INTLEQ added 2006 August 29 *) class[x_,member[y_,INTLEQ]] := Module[{u = Unique[],v = Unique[],w = Unique[]}, ReleaseHold[class[x,exists[u,v,w,and[equal[y,pair[u,v]], member[w,HoldPattern[range[PLUS]]],member[pair[pair[u,w],v],HoldPattern[INTADD]]]]]]] (* added 2007 January 5 *) class[u_,member[v_,intmul[x_,y_]]] := Module[{w=Unique[]},class[u,and[member[v,V], forall[w,implies[member[pair[pair[x,y],w],INTMUL],member[v,w]]]]]] (* introduced 2006 December 16 *) class[u_,member[v_,INTMUL]] := ReleaseHold[Module[{w=Unique[],x=Unique[],y=Unique[],z=Unique[]}, class[u,exists[w,x,y,z,and[member[w,HoldPattern[binhom[INTADD,INTADD]]], equal[v,pair[pair[x,y],z]],equal[set[x],image[w,set[composite[id[omega],SUCC]]]], equal[set[z],image[w,set[y]]]]]]]] (* introduced 2006 December 16 *) class[t_,member[w_,INTTIMES]] := ReleaseHold[Module[{u = Unique[],v = Unique[]}, class[t,exists[u,v,and[equal[w,pair[u,v]],equal[image[v,set[composite[id[omega],SUCC]]],set[u]], member[v,HoldPattern[binhom[INTADD,INTADD]]]]]]]] (* introduced 2009 January 20 *) class[t_,member[w_,inv[x_]]] := class[t,and[member[w,image[inverse[x],ids[x]]], member[w,inverse[image[inverse[x],ids[x]]]]]] (* restored 29 June 2003 from GOEDEL52.L72 *) class[x_,member[w_,inverse[z_]]] := Module[{u = Unique[],v = Unique[]},class[x, exists[u,v,and[equal[pair[u,v],w],member[pair[v,u],z]]]]] (* definition of iterate added 2002 April 15 *) class[w_,member[x_,iterate[y_,z_]]] := Module[{p = Unique[]},class[w,exists[p,and[member[x,p], subclass[p,union[cart[set[0],z], composite[y,p,inverse[SUCC],id[omega]]]]]]]] (* added 2000 May 24 based on VS-K.NB; wraper 2005 January 7 *) class[w_,member[x_,K]] := class[w,and[member[x,PS],not[member[x,composite[PS,PS]]]]] class[x_,member[y_,LB[z_]]] := Module[{u = Unique[],v = Unique[]},class[x,exists[u,v, and[equal[y,pair[u,v]],subclass[cart[set[v],u],z]]]]] (* added 2007 March 1; corrected 2007 April 4 *) class[t_,member[w_,ld[x_,y_]]] := ReleaseHold[Module[{u = Unique[],v = Unique[]},class[t,exists[u,v, and[member[PAIR[PAIR[w,v],u],HoldPattern[NATADD]],member[PAIR[x,u],HoldPattern[DIV]], member[PAIR[y,v],HoldPattern[DIV]]]]]]] class[x_,member[y_,LEAST[z_]]] := Module[{u = Unique[],v = Unique[]},class[x,exists[u,v, and[equal[y,pair[u,v]],member[v,u],subclass[cart[set[v],u],z]]]]] (* revised 2001 November 15 *) class[x_,member[y_,LEFT[z_]]] := Module[{u = Unique[],v = Unique[]},class[x, exists[u,v,and[equal[pair[u,pair[v,u]],y],equal[v,z]]]]] (* rules added 98/01/22 *) class[x_,member[w_,LeftPairV]] := Module[{u = Unique[],v = Unique[]},class[x, exists[u,v,and[equal[pair[u,v],w],equal[v,pair[V,u]]]]]] (* introduced 2005 September 18 *) class[w_,member[x_,LUB[y_]]] := Module[{u = Unique[],v = Unique[]}, class[w,exists[u,v,and[equal[x,pair[u,v]],member[u,V],member[v,range[y]], subclass[u,image[inverse[y],set[v]]],subclass[intersection[range[y],ub[y,u]],image[y,set[v]]]]]]] (* added 2001 April 25; HoldPattern added 2006 September 14 *) class[z_,member[w_,map[x_,y_]]] := ReleaseHold[class[z,and[member[w,HoldPattern[FUNS]], equal[domain[w],x],subclass[w,cart[V,y]]]]] class[x_,member[y_,MAXIMAL[z_]]] := Module[{u = Unique[],v = Unique[],w=Unique[]},class[x,exists[u,v, and[equal[y,pair[u,v]],member[v,u],forall[w,implies[ and[member[w,u],member[pair[v,w],z]],equal[v,w]]]]]]] class[x_,member[y_,MINIMAL[z_]]] := Module[{u = Unique[],v = Unique[],w=Unique[]},class[x,exists[u,v, and[equal[y,pair[u,v]],member[v,u],forall[w,implies[ and[member[w,u],member[pair[w,v],z]],equal[v,w]]]]]]] (* membership rule for MIXDIV introduced 2006 November 24 *) class[x_,member[y_,MIXDIV]] := ReleaseHold[Module[{z = Unique[]},class[x, exists[z,and[member[z,HoldPattern[binhom[NATADD,INTADD]]],member[y,z]]]]]] (* introduced 2006 December 3 *) class[u_,member[v_,MIXMUL]] := ReleaseHold[Module[{w=Unique[],x=Unique[],y=Unique[],z=Unique[]}, class[u,exists[w,x,y,z,and[member[w,HoldPattern[binhom[NATADD,INTADD]]], equal[v,pair[pair[x,y],z]],equal[set[x],image[w,set[set[0]]]], equal[set[z],image[w,set[y]]]]]]]] (* introduced 2006 November 24 *) class[t_,member[w_,MIXTIMES]] := ReleaseHold[Module[{u = Unique[],v = Unique[]}, class[t,exists[u,v,and[equal[w,pair[u,v]],equal[image[v,set[set[0]]],set[u]], member[v,HoldPattern[binhom[NATADD,INTADD]]]]]]]] (* wrapped rule introduced 2005 February 12 *) class[w_,member[x_,nat[y_]]] := class[w,and[member[x,y],member[y,omega]]] (* added 2002 July 27 *) class[u_,member[v_,natadd[x_,y_]]] := Module[{w=Unique[]},class[u,and[member[v,V], forall[w,implies[member[pair[pair[x,y],w],NATADD],member[v,w]]]]]] (* added 2007 February 3 *) class[u_,member[v_,natdiv[x_,y_]]] := Module[{w=Unique[]},class[u,and[member[v,V], forall[w,implies[member[pair[pair[y,w],x],NATMUL],member[v,w]]]]]] (* added 2006 June 21 *) class[u_,member[v_,natexp[x_,y_]]] := Module[{w=Unique[]},class[u,and[member[v,V], forall[w,implies[member[pair[pair[x,y],w],NATEXP],member[v,w]]]]]] (* added 2005 May 6 *) class[u_,member[v_,natmod[x_,y_]]] := Module[{w=Unique[]},class[u,and[member[v,V],forall[w, implies[member[w,image[image[inverse[NATADD],set[x]],image[DIV,set[y]]]],member[v,w]]]]]] (* added 2002 July 27 *) class[u_,member[v_,natmul[x_,y_]]] := Module[{w=Unique[]},class[u,and[member[v,V], forall[w,implies[member[pair[pair[x,y],w],NATMUL],member[v,w]]]]]] (* added 2002 July 27 *) class[u_,member[v_,natsub[x_,y_]]] := Module[{w=Unique[]},class[u,and[member[v,V], forall[w,implies[member[pair[pair[y,w],x],NATADD],member[v,w]]]]]] (* introduced 2006 August 13 *) class[t_,member[x_,odd]] := Module[{y = Unique[]}, class[t,exists[y,and[member[y,even],equal[x,succ[y]]]]]] class[z_,member[x_,omega]] := Module[{w = Unique[]}, class[z,forall[w,implies[and[member[0,w],subclass[image[SUCC,w],w]],member[x,w]]]]] class[w_,member[x_,OMEGA]] := class[w,and[member[x,V],subclass[intersection[P[x],FULL],succ[x]]]] (* added 2004 May 6 *) class[x_,member[y_,oopart[z_]]] := Module[{u = Unique[],v = Unique[]}, class[x,exists[u,v,and[equal[pair[u,v],y], equal[image[z,set[u]],set[v]], equal[image[inverse[z],set[v]],set[u]]]]]] (* wrapped rule introduced 2005 December 9 based on ORD-REG.NB *) class[w_,member[x_,ord[y_]]] := class[w,and[member[x,y],member[y,OMEGA]]] (* definition of ordlist added 2006 Match 6 *) class[w_,member[x_,ordlist[y_]]] := Module[{p = Unique[]},class[w,exists[p,and[member[x,p], subclass[p,union[cart[set[0],set[A[intersection[OMEGA,y]]]], composite[HULL[intersection[OMEGA,y]],SUCC,p,inverse[SUCC],id[omega]]]]]]]] class[u_,member[v_,pair[x_,y_]]] := Module[{z=Unique[]},class[u,exists[z, and[equal[pair[x,y],z],member[v,z]]]]] (* added 2004 July 29 *) class[u_,member[v_,partrec[x_,y_]]] := Module[{w = Unique[]},class[u, and[invariant[y,domain[v]],exists[w,and[equal[w,composite[id[v],inverse[FIRST]]], subclass[v,composite[x,id[composite[IMAGE[w],VERTSECT[y]]],inverse[FIRST]]]]]]]] (* introduced 2008 September 28 *) class[w_,member[x_,PERMS]] := class[w,and[equal[domain[x],range[x]],FUNCTION[x], FUNCTION[inverse[x]],member[x,V]]] (* wrapper 2005 December 19 *) class[w_,member[x_,po[y_]]] := class[w,and[member[x,y],member[first[x],V],PARTIALORDER[composite[Id,y]]]] (* definition of PointClosed added 2003 July 3 based on PTCLOSED.NB *) class[w_,member[t_,PointClosed]] := class[w,and[member[t,V],subclass[image[SINGLETON,U[t]],image[RC[U[t]],t]]]] (* definition of power added 2002 May 20 *) class[w_,member[x_,power[y_]]] := Module[{p = Unique[]},class[w,exists[p,and[member[x,p], subclass[p,union[cart[set[0],Id], composite[cross[Id,y],p,inverse[SUCC],id[omega]]]]]]]] (* revised 2002 January 8 *) class[w_,member[x_,Q]] := Module[{u = Unique[],v = Unique[],z = Unique[]}, class[w,exists[u,v,z,and[ONEONE[z],equal[pair[u,v],x], equal[u,domain[z]],equal[v,range[z]]]]]] class[w_,member[v_,range[z_]]] := Module[{u = Unique[]},class[w,exists[u, and[member[v,V],member[pair[u,v],z]]]]] (* membership rule for rank *) class[w_,member[y_,rank[x_]]] := Module[{z=Unique[]}, class[w,and[member[y,V],forall[z, implies[and[member[x,V],member[pair[z,x],ZN],member[z,OMEGA]], member[y,z]]]]]] (* relative complementation function revised 2001 November 15 *) class[z_,member[w_,RC[x_]]] := Module[{u = Unique[],v = Unique[]}, class[z,exists[u,v,and[equal[pair[u,v],w],disjoint[u,v], equal[union[u,v],x]]]]] (* added 2004 July 29 *) class[u_,member[v_,rec[x_,y_]]] := Module[{w = Unique[]},class[u, exists[w,and[member[v,w],member[w,partrec[x,y]]]]]] (* wrapped rule introduced 2005 December 9 based on ORD-REG.NB *) class[w_,member[x_,reg[y_]]] := class[w,and[member[x,y],member[y,REGULAR]]] class[w_,member[x_,REGULAR]] := Module[{y = Unique[]},class[w, and[member[x,V],forall[y, implies[subclass[y,image[E,y]],not[member[x,y]]]]]]] (* wrapped 2005 December 19 *) class[w_,member[x_,rfx[y_]]] := class[w,and[member[x,y],member[first[x],fix[y]],member[second[x],fix[y]]]] (* revised 2001 November 15 *) class[x_,member[y_,RIF]] := Module[{u=Unique[],v=Unique[],w=Unique[]}, class[x,exists[u,v,w, equal[pair[pair[pair[u,w],pair[v,u]],pair[w,v]],y]]]] (* revised 2001 November 15 *) class[x_,member[y_,RIGHT[z_]]] := Module[{u = Unique[],v = Unique[]},class[x, exists[u,v,and[equal[pair[u,pair[u,v]],y],equal[v,z]]]]] (* rules added 98/01/22 *) class[x_,member[w_,RightPairV]] := Module[{u = Unique[],v = Unique[]},class[x, exists[u,v,and[equal[pair[u,v],w],equal[v,pair[u,V]]]]]] (* membership rule for ROT revised 2001 November 15 *) class[x_,member[y_,ROT]] := Module[{u = Unique[],v = Unique[],w = Unique[]}, class[x,exists[u,v,w,equal[pair[pair[pair[u,v],w], pair[pair[w,u],v]],y]]]] class[x_,member[y_,rotate[z_]]] := Module[{u = Unique[],v = Unique[],w = Unique[]},class[x, exists[u,v,w,and[member[pair[pair[u,w],v],z], equal[pair[pair[v,u],w],y]]]]] (* modified 2003 June 17 *) class[w_,member[x_,RUSSELL]] := class[w,and[member[x,V],not[member[x,x]]]] (* added 2001 November 13 *) class[w_,member[x_,second[y_]]] := Module[{u = Unique[],v = Unique[]},class[w,and[member[x,V], forall[u,v,implies[equal[y,pair[u,v]],member[x,v]]]]]] (* wrapped rule introduced 2004 May 16 *) class[w_,member[x_,setpart[y_]]] := class[w,and[member[x,y],member[y,V]]] (* added 2002 April 6 *) class[w_,member[x_,SMALLER]] := Module[{u = Unique[],v = Unique[],y=Unique[],z = Unique[]}, class[w,exists[u,v,and[equal[pair[u,v],x], exists[y,and[ONEONE[y],equal[u,domain[y]],subclass[range[y],v]]], not[exists[z,and[ONEONE[z],equal[v,domain[z]],subclass[range[z],u]]]]]]]] class[w_,member[z_,SWAP]] := Module[{u = Unique[],v = Unique[]},class[w, exists[u,v,equal[pair[pair[u,v],pair[v,u]],z]]]] (* added 2003 June 23 based on T1.NB *) class[w_,member[t_,T1]] := class[w,and[member[t,V], subclass[composite[Di,id[U[t]]],composite[complement[inverse[E]],id[t],E]]]] (* added 2003 June 23 based on T2.NB *) class[w_,member[t_,T2]] := class[w,and[member[t,V], subclass[composite[id[U[t]],Di,id[U[t]]],composite[inverse[E],id[t],DISJOINT,id[t],E]]]] (* added 2005 February 4 *) class[w_,member[y_,tc[x_]]] := Module[{u = Unique[],v = Unique[]}, class[w,exists[u,and[subclass[u,x],forall[v,implies[and[full[v],subclass[u,v]],member[y,v]]]]]]] (* added 2004 May 13 *) class[w_,member[x_,thinpart[y_]]] := class[w,and[member[x,y],member[first[x],V],member[image[y,set[first[x]]],V]]] (* wrapper 2005 December 19 *) class[w_,member[x_,to[y_]]] := class[w,and[member[x,y],member[first[x],V],TOTALORDER[composite[Id,y]]]] (* revised 2003 May 23 based on DEF-CLOS.NB *) class[w_,member[x_,TOPS]] := class[w,and[equal[x,Uclosure[x]],member[x,V], subclass[image[CAP,cart[x,x]],x]]] (* revised 2004 March 29 based on HULL.NB *) class[u_,member[x_,trv[y_]]] := Module[{z = Unique[]}, class[u,exists[z,and[member[x,hull[TRV,z]],subclass[z,y],subclass[z,cart[V,V]]]]]] (* added 1999 October 10 based on TWIST.1 *) class[w_,member[z_,TWIST]] := Module[{u=Unique[],v=Unique[],x=Unique[],y=Unique[]}, class[w,exists[u,v,x,y,equal[ pair[pair[pair[u,v],pair[x,y]],pair[pair[u,x],pair[v,y]]],z]]]] class[t_,member[u_,twist[v_]]] := Module[{w = Unique[],x = Unique[],y = Unique[],z = Unique[]}, class[t,exists[w,x,y,z,and[equal[pair[pair[w,x],pair[y,z]],u], member[pair[pair[w,y],pair[x,z]],v]]]]] class[w_,member[x_,U[z_]]] := Module[{y = Unique[]},class[w,exists[y, and[member[x,y],member[y,z]]]]] class[x_,member[y_,UB[z_]]] := Module[{u = Unique[],v = Unique[]},class[x,exists[u,v, and[equal[y,pair[u,v]],subclass[cart[u,set[v]],z]]]]] (* introduced *) class[u_,member[v_,Uchains[x_]]] := Module[{w=Unique[]},class[u,and[member[v,V], exists[w,and[subclass[w,x],subclass[cart[w,w],union[S,inverse[S]]],equal[v,U[w]]]]]]] (* introduced 2006 June 6 *) class[w_,member[u_,UNOPS]] := Module[{v = Unique[]},class[w,exists[v,member[u,map[v,v]]]]] (* revised 2001 November 15 *) class[x_,member[y_,VERTSECT[z_]]] := Module[{u = Unique[],v = Unique[]}, class[x,exists[u,v,and[equal[y,pair[u,v]], equal[image[z,set[u]],v]]]]] (* introduced 2004 September 18 in WF-WRAP.NB *) class[w_,member[x_,wf[y_]]] := class[w,and[member[x,y],member[first[x],V],not[member[second[x],U[subvar[y]]]]]] (* wrapped 2005 December 19 *) class[w_,member[x_,wo[y_]]] := class[w,and[member[x,y],member[first[x],V],WELLORDER[composite[Id,y]]]] (* wrapped rule introduced 2007 May 2 *) class[w_,member[x_,wob[y_]]] := class[w,and[member[x,y],member[y,image[Q,OMEGA]]]] (* added 2002 November 11 *) class[w_,member[x_,Z]] := Module[{y = Unique[]}, class[w,member[x,image[VERTSECT[y],cart[omega,omega]]]]/.y->EQUIDIFF] (* added 2001 July 5 *) class[x_,member[y_,ZN]] := Module[{u = Unique[],v= Unique[],w = Unique[]}, class[x,exists[w,and[member[y,composite[Id,w]], subclass[composite[inverse[E],w],composite[inverse[E],IMAGE[w]]]]]]] (* class-wrapped predicate definitions *) (* definition of category[x] introduced 2008 December 30 in CAT-DEFN.NB *) class[t_,category[x_]] := class[t,and[associative[x],FUNCTION[x], subclass[composite[x,inverse[FIRST],domain[x]],domain[x]], subclass[domain[x],cart[range[x],range[x]]], subclass[range[x],domain[cod[x]]],subclass[range[x],domain[dom[x]]]]] (* introduced 2004 March 21 in PO-WRAP.NB *) class[w_,PARTIALORDER[x_]] := class[w,and[equal[domain[x],fix[x]],equal[fix[x],range[x]], subclass[intersection[x,inverse[x]],Id],TRANSITIVE[x]]] (* introduced 2004 March 18 in RFX-WRAP.NB *) class[w_,REFLEXIVE[x_]] := Module[{z = Unique[]},class[w,forall[z, implies[member[z,x],and[member[first[z],fix[x]],member[second[z],fix[x]]]]]]] (* Definition DF-SU-1,DF-SU-2 and DF-SU-3 in AX-A *) class[w_,subclass[x_,y_]] := Module[{u = Unique[]},class[w, forall[u,implies[member[u,x],member[u,y]]]]] (* introduced 2004 September 5 in WF-REC-4.NB *) class[w_,subvariant[x_,y_]] := Module[{z = Unique[]},class[w,forall[z, implies[member[z,y],member[z,image[x,y]]]]]] (* derived 2005 November 5 *) class[u_,member[v_,top[y_]]] := Module[{w = Unique[]},class[u,forall[w, implies[and[member[w,TOPS],subclass[setpart[y],w]],member[v,w]]]]] (* revised 2004 February 10 *) class[w_,TOTALORDER[x_]] := class[w,and[ANTISYMMETRIC[x],TRANSITIVE[x], equal[union[x,inverse[x]],cart[fix[x],fix[x]]]]] (* introduced 2004 March 20 in EQV-WRAP.NB *) class[z_,TRANSITIVE[x_]] := Module[{u = Unique[],v = Unique[],w = Unique[]}, class[z,and[subclass[x,cart[V,V]],forall[u,v,w, implies[and[member[pair[u,v],x],member[pair[v,w],x]],member[pair[u,w],x]]]]]] (* added 2003 September 27 *) class[w_,WELLFOUNDED[x_]] := Module[{y=Unique[]},class[w,and[subclass[x,cart[V,V]], forall[y,implies[subvariant[x,y],equal[0,y]]]]]] (* wrapped 2004 January 24 *) class[w_,WELLORDER[x_]] := class[w,and[REFLEXIVE[x], subclass[P[fix[x]],union[set[0],domain[funpart[LEAST[x]]]]]]] class[x_,False] := 0 class[x_,True] := V /; AtomQ[x] class[pair[u_,v_],True] := cart[class[u,True],class[v,True]] class[z_,member[z_,x_]] := x /; And[FreeQ[x,z],AtomQ[z]] (* axiom B.1 membership relation *) class[pair[u_,v_],member[u_,v_]] := E /; And[AtomQ[u],AtomQ[v]] (* axiom B.2 intersection *) (* added 1996 February 15 *) class[x_,and[p_,q_]] := intersection[class[x,p],class[x,q]] (* added 1996 February 15 *) class[x_,or[p_,q_]] := union[class[x,p],class[x,q]] (* axiom B.3 complement *) (* modified 1996 March 6 in BOOLEAN.M *) class[x_,not[p_]] := intersection[complement[class[x,p]],class[x,True]] (* axiom B.4 domain and Goedel's equation 2.8 on page 9 *) class[x_,exists[y_,p_]] := domain[class[pair[x,y],p]] (* introduced 2006 February 23 in EXISTS-1.NB *) class[x_,existsunique[y_,p_]] := domain[funpart[class[pair[x,y],p]]] (* axiom B.5 cartesian product an interpretation of Goedel's equations 2.41 and 2.7 on page 9 *) class[pair[u_,v_],p_] := cart[class[u,p],class[v,True]] /; allfreeQ[p,v] class[pair[u_,v_],p_] := cart[class[u,True],class[v,p]] /; allfreeQ[p,u] (* axiom B.6 inverse *) class[pair[u_,v_],member[v_,u_]] := inverse[E] /; And[AtomQ[u],AtomQ[v]] (* The following rules replace Goedel's rotation rules on page 9: *) (* revised 2000 January 13 *) class[pair[pair[u_,v_],w_],p_] := composite[class[pair[v,w],p],SECOND, id[cart[class[u,True],V]]] /; allfreeQ[p,u] (* revised 2000 January 13 *) class[pair[pair[u_,v_],w_],p_] := composite[class[pair[u,w],p],FIRST, id[cart[V,class[v,True]]]] /; allfreeQ[p,v] (* revised 2000 January 13 *) class[pair[w_,pair[u_,v_]],p_] := composite[id[cart[class[u,True],V]], inverse[SECOND],class[pair[w,v],p]] /; allfreeQ[p,u] (* revised 2000 January 13 *) class[pair[w_,pair[u_,v_]],p_] := composite[id[cart[V,class[v,True]]], inverse[FIRST],class[pair[w,u],p]] /; allfreeQ[p,v] (* special page 10 maneuver revised 9/15/96 *) class[u_,member[x_,y_]] := Module[{v = Unique[]}, class[u,exists[v,and[equal[x,v],member[v,y]]]]] /; FreeQ[varlist[u],x] (* new rules for equality *) class[pair[u_,v_],equal[u_,v_]] := Id /; And[AtomQ[u],AtomQ[v]] class[pair[u_,v_],equal[v_,u_]] := Id /; And[AtomQ[u],AtomQ[v]] class[x_,equal[x_,y_]] := intersection[set[y],class[x,True]] /; allfreeQ[y,x] class[x_,equal[y_,x_]] := intersection[set[y],class[x,True]] /; allfreeQ[y,x] (* AX-EQ in AX-A. Goedel's Axiom A.3 of Coextension. Revised 1996 August 23 *) class[w_,equal[x_,y_]] := intersection[class[w,subclass[x,y]], class[w,subclass[y,x]]] /; And[Or[Not[MemberQ[varlist[w],x]], Not[MemberQ[varlist[w],y]]], Not[SameQ[Head[x],pair]], Not[SameQ[Head[y],pair]]] (* corrections added 9/17/96 at 9:20 p.m. *) class[w_,equal[set[u_],set[v_]]] := class[w,equal[u,v]] /; MemberQ[varlist[w],u] || MemberQ[varlist[w],v] || member[u,V] || member[v,V] (* rules for pairs *) BadPair := Module[{},Print[pair::argx]; Abort[]] pair[] := BadPair pair[x_] := BadPair pair[x_,y_,z__] := BadPair (* rules that apply when x or y is known not to be a set *) pair[x_,y_] := pair[V,y] /; Not[V === x] && not[member[x,V]] pair[x_,y_] := pair[x,V] /; Not[V === y] && not[member[y,V]] (* rule that applies when z does not occur in varlist[u] or when z does occur in x or y. *) class[u_,equal[pair[x_,y_],z_]] := Module[{v=Unique[]}, class[u,exists[v,and[equal[pair[x,y],v],equal[v,z]]]]] /; Not[MemberQ[varlist[u],z]] || Not[FreeQ[{x,y},z]] (* First rule that applies when z does occur in varlist[w] and z does not occur in either x or y. This rule only applies in the special case when it is known somehow that x and y are sets. *) class[w_,equal[pair[x_,y_],z_]] := Module[{u=Unique[],v=Unique[]}, class[(w/.z->pair[u,v]),and[equal[x,u],equal[y,v]]]] /; And[MemberQ[varlist[w],z],FreeQ[{x,y},z], Or[member[x,V],MemberQ[varlist[w],x]], Or[member[y,V],MemberQ[varlist[w],y]]] (* next two rules were modified 1998 March 12 *) (* rule that applies when one does not know whether or not x is a set *) class[u_,equal[pair[x_,y_],z_]] := Module[{v=Unique[]}, class[u,or[and[not[member[x,V]],equal[pair[V,y],z]], exists[v,and[equal[x,v],equal[pair[v,y],z]]]]]] /; Not[MemberQ[varlist[u],x]] && UnsameQ[V,x] && Not[member[x,V] === True] (* rule that applies when one does not know whether or not y is a set *) class[u_,equal[pair[x_,y_],z_]] := Module[{v=Unique[]}, class[u,or[and[not[member[y,V]],equal[pair[x,V],z]], exists[v,and[equal[y,v],equal[pair[x,v],z]]]]]] /; Not[MemberQ[varlist[u],y]] && UnsameQ[V,y] && Not[member[y,V] === True] (* added 9/15/96 *) class[pair[u_,v_],equal[pair[V,u_],v_]] := LeftPairV class[pair[u_,v_],equal[pair[u_,V],v_]] := RightPairV (* added 1/18/98 *) class[pair[u_,v_],equal[pair[V,v_],u_]] := inverse[LeftPairV] class[pair[u_,v_],equal[pair[v_,V],u_]] := inverse[RightPairV] (* added 9/17/96 *) image[inverse[RightPairV],x_] := 0 /; composite[Id,x] == x image[inverse[LeftPairV],x_] := 0 /; composite[Id,x] == x (* rules added 1998 October 11 *) class[w_,equal[pair[V,y_],z_]] := Module[{v = Unique[]}, class[w,or[and[not[member[y,V]],equal[pair[V,V],z]], and[member[y,V],exists[v,and[equal[pair[V,v],z],equal[v,y]]]]]]] /; Not[allfreeQ[y,w]] class[w_,equal[pair[x_,V],z_]] := Module[{v = Unique[]}, class[w,or[and[not[member[x,V]],equal[pair[V,V],z]], and[member[x,V],exists[v,and[equal[pair[v,V],z],equal[v,x]]]]]]] /; Not[allfreeQ[x,w]] class[w_,equal[pair[V,V],w_]] := set[pair[V,V]] class[w_,equal[pair[V,V],x_]] := Module[{v = Unique[]}, class[w,exists[v,and[equal[pair[V,V],v],equal[v,x]]]]] /; Not[MemberQ[x,varlist[w]]] (* definition of functor[w,x,y] introduced 2009 January 14 *) class[t_,functor[w_,x_,y_]] := class[t,and[FUNCTION[w],equal[domain[w],range[x]], equal[composite[w,x],composite[y,cross[w,w]]],subclass[image[w,ids[x]],ids[y]]]] (* unconventional definition for FUNCTION revised 2001 November 24 *) class[w_,FUNCTION[x_]] := Module[{z = Unique[]}, class[w,and[subclass[x,cart[V,V]],forall[z,or[ not[member[z,x]],not[member[z,composite[Di,x]]]]]]]] Print["Loading Simplification Rules"]; (* Theorem A-0 in A1 *) A[x_] := 0 /; member[0,x] (* introduced 1996 April 30 in LOAD.M derived using Otter as Theorem A-3 in A1 *) A[0] := V (* Theorem ACL-A in ACL1 proved 2001 September 29 *) A[Aclosure[x_]] := A[x] (* derived 2008 August 14 in ALL-IND.NB *) A[allclosed[id[ord[x_]]]] := ord[x] (* derived 2008 December 23 in IDS-FUNS.NB *) A[cart[intersection[x_,set[y_]],z_]] := union[A[cart[set[y],z]],complement[image[V,intersection[x,set[y]]]]] (* derived 2008 December 23 in IDS-FUNS.NB *) A[cart[x_,intersection[y_,set[z_]]]] := union[A[cart[x,set[z]]],complement[image[V,intersection[y,set[z]]]]] (* derived 2005 December 23 in PAIR.NB *) A[cart[cart[set[w_],set[x_]],cart[set[y_],set[z_]]]] := PAIR[PAIR[w,x],PAIR[y,z]] (* temporary rule added 2002 January 1 based on PAIR-MEM.NB *) A[cart[cart[set[x_],set[y_]],set[z_]]] := PAIR[PAIR[x,y],z] (* derived 2004 December 10 in AP-IMG.NB *) A[cart[x_,intersection[z_,image[V,y_]]]] := union[A[cart[x,z]],complement[image[V,y]]] (* derived 2005 December 23 in PAIR.NB *) A[cart[set[x_],cart[set[y_],set[z_]]]] := PAIR[x,PAIR[y,z]] (* temporary rule added 2002 January 1 based on PAIR-MEM.NB *) A[cart[set[x_],set[y_]]] := PAIR[x,y] (* Theorem SP-A-C in SP3 *) A[complement[x_]] := 0 /; member[x,V] (* Theorem SP-A-C-A in SP3 *) A[complement[A[x_]]] := complement[image[V,x]] (* derived 2008 September 23 in A-C-IMS.NB *) A[complement[image[S,x_]]] := image[V,intersection[x,set[0]]] (* Theorem A-C-IM-V in A1 added 1998 April 19 *) A[complement[image[V,x_]]] := image[V,x] (* Theorem SR-A-C in SR1 proved 1998 October 18 *) A[complement[image[S,set[x_]]]] := complement[image[V,x]] (* Theorem DI-A-PC in DI added 1998 July 2 *) A[complement[P[x_]]] := complement[image[Di,complement[x]]] (* Theorem REG-C-A in REG2 proved 1999 March 18 *) A[complement[REGULAR]] := complement[image[V,complement[REGULAR]]] (* Corollary SP-A-C1 in SP3 proved 1998 December 8 *) A[complement[set[x_]]] := 0 (* derived 2005 December 23 in PAIR.NB *) A[cross[set[x_],set[y_]]] := PAIR[PAIR[first[x],first[y]],PAIR[second[x],second[y]]] (* Theorem DESC-A in REG1 proved 1999 March 18 *) A[DESCENDING] := 0 (* Theorem FIN-A in FINITE proved 2000 March 18 *) A[FINITE] := 0 (* derived 2006 January 14 in OM-LFP.NB *) A[fix[composite[ADJOIN[set[0]],IMAGE[SUCC]]]] := omega (* derived 2008 March 13 in LEAST.NB *) A[fix[composite[E,BIGCAP]]] := 0 (* added 2003 February 22 based on FIX-HULL.NB *) A[fix[HULL[x_]]] := A[x] (* derived 2007 July 25 in FIX-UCH.NB *) A[fix[UCHAINS]] := set[0] (* added 2002 July 27 based on A-FP-UCL.NB *) A[fix[UCLOSURE]] := set[0] (* Theorem FUL-A-0 in FUL3 added 1998 February 7 *) A[FULL] := 0 (* derived 2007 May 31 in A-ORBIT.NB *) A[hull[invar[SUCC],set[ord[x_]]]] := ord[x] (* derived 2008 December 28 in E.NB *) A[ids[x_]] := e[x] (* added 2001 March 28 based on ADJOIN.NB *) A[image[ADJOIN[x_],y_]] := union[x,A[y],complement[image[V,set[x]]]] (* Theorem BA-A-SC in BIGCAP/BA1 proved 1998 December 9 *) A[image[BIGCAP,x_]] := A[U[x]] (* added 1999 October 5 based on CAP-CUP.1 *) A[image[CAP,x_]] := intersection[A[domain[x]],A[range[x]]] (* added 1999 October 5 based on CART.1 *) A[image[CART,x_]] := union[cart[A[domain[x]],A[range[x]]],complement[image[V,domain[x]]]] (* added 2003 October 28 based on APPLY.NB *) A[image[x_,cart[set[y_],set[z_]]]] := APPLY[x,PAIR[y,z]] (* added 2001 April 30 based on CLIQUES2.NB *) A[image[CLIQUES,x_]] := cliques[A[x]] (* derived 2007 December 28 in COARSER.NB *) A[image[COARSER,x_]] := A[x] (* added 1999 October 5 based on CAP-CUP.2 *) A[image[CUP,x_]] := complement[fix[composite[complement[inverse[E]],x,complement[E]]]] (* added 1999 October 5 based on CUP-SR.1 *) A[image[CUP,cart[x_,y_]]] := union[A[x],A[y]] (* Theorem SP-A-DI in SP3 proved 1998 October 8 *) A[image[Di,x_]] := complement[image[V,x]] (* added 2000 January 5 based on A-IM-DIF.NB *) A[image[DIF,x_]] := intersection[A[domain[x]],complement[U[range[x]]]] (* Theorem DJT-A-IM in DJT proved 1998 October 18 *) A[image[DISJOINT,x_]] := complement[image[V,x]] (* derived 2005 May 5 in S-DIV.NB *) A[image[DIV,x_]] := complement[image[V,intersection[omega,x]]] (* added 2001 April 10 based on HC-BA.NB *) A[image[HC,x_]] := H[A[x]] (* added 2001 December 03 based on HULL.NB *) A[image[HULL[x_],y_]] := A[intersection[x,image[S,y]]] (* added 2001 February 27 based on STUDY.NB *) A[image[IMAGE[id[x_]],y_]] := union[complement[image[V,y]],intersection[x,A[y]]] (* added 1999 October 7 based on FP-A.LOG *) A[image[IMAGE[inverse[DUP]],x_]] := fix[A[x]] (* derived 2005 May 17 based on NATMOD.NB *) A[image[image[inverse[NATADD],set[x_]],image[DIV,set[y_]]]] := natmod[x,y] (* added 2001 May 3 based on BA-IMG.NB *) A[image[IMAGE[inverse[POWER]],x_]] := image[inverse[POWER],A[x]] (* added 2002 February 17 based on IMG-IMG.NB *) A[image[IMAGE[SWAP],x_]] := union[complement[image[V,x]],inverse[A[x]]] (* added 2002 April 10 based on INVAR.NB *) A[image[INVAR,x_]] := complement[image[V,x]] (* added 1999 October 29 based on 1999 October 28 FIX-IDP.LOG *) A[image[inverse[IMAGE[DUP]],x_]] := fix[A[intersection[x,P[Id]]]] (* derived 2005 November 6 in IMG-THIN.NB *) A[image[inverse[IMAGE[thinpart[x_]]],y_]] := A[image[inverse[IMAGE[x]],y]] (* Theorem SR-IN-A in SR3 proved 1998 October 18 *) A[image[inverse[S],x_]] := complement[image[V,x]] (* added 1999 October 30 based on IMAGEINT.2 *) A[image[PAIRSET,x_]] := complement[fix[composite[Di,x,Di]]] (* Theorem POW-A in POW3 proved 1998 November 12 *) A[image[POWER,x_]] := P[A[x]] (* added 2000 May 9 based on Q-C-E.NB *) A[image[Q,x_]] := complement[image[V,x]] (* derived 2004 April 17 in REPLACE.NB *) A[image[RC[x_],y_]] := union[complement[image[V,intersection[y,P[x]]]], complement[image[V,set[x]]],intersection[x,complement[core[y,x]]]] (* Theorem SR-IM-A in SR3 proved 1998 August 15 *) A[image[S,x_]] := A[x] (* Theorem AP-SG-A in AP2 proved 1998 September 8 *) A[image[SINGLETON,x_]] := complement[image[Di,x]] (* added 2003 October 28 based on APPLY.NB *) A[image[x_,set[y_]]] := APPLY[x,y] (* added 2000 January 7 based on TC-CO.TXT *) A[image[TC,x_]] := A[intersection[FULL,image[S,x]]] (* Theorem A-IM-V in A1 *) A[image[V,x_]] := complement[image[V,x]] (* derived 2004 February 19 in REPLACE2.NB *) A[image[VERTSECT[x_],y_]] := ub[x,intersection[y,domain[VERTSECT[x]]]] (* added 2001 July 15 based on ZN-AGAIN.NB *) A[image[ZN,x_]] := complement[image[V,x]] (* added 2002 May 31 based on ALEPH-0.NB *) A[intersection[complement[omega],fix[CARD]]] := omega (* Theorem A-U-IMV in A1 proved 1998 December 10 *) A[intersection[x_,complement[image[V,y_]]]] := union[A[x],image[V,y]] (* derived 2006 March 29 in HULL-SET.NB *) A[intersection[x_,complement[P[complement[set[y_]]]]]] := union[complement[image[V,set[y]]],hull[x,set[y]]] (* derived 2004 April 25 in ADJOIN.NB *) A[intersection[image[S,x_],image[S,y_]]] := union[A[x],A[y]] (* derived 2004 March 29 based on HULL.NB *) A[intersection[x_,image[S,set[y_]]]] := hull[x,y] (* Theorem A-I-IMV in A1 proved 1998 December 10 *) A[intersection[x_,image[V,y_]]] := union[A[x],complement[image[V,y]]] (* derived 2005 February 19 in ITR-OM-E.NB *) A[intersection[omega,complement[x_]]] := x /; member[x,omega] (* derived 2006 February 21 in A-SUC-ON.NB *) A[intersection[OMEGA,complement[fix[BIGCUP]]]] := set[0] (* derived 2005 February 19 in ITR-OM-E.NB *) A[intersection[omega,complement[nat[x_]]]] := nat[x] (* added 2002 May 31 based on DICHOT.NB *) A[intersection[OMEGA,complement[omega]]] := omega (* derived 2005 November 25 in ORD-ON.NB *) A[intersection[OMEGA,complement[ord[x_]]]] := ord[x] (* added 2003 January 20 based on ONSUC7OT.NB *) (* singleton of 0 is the least ordinal that holds 0 *) A[intersection[OMEGA,complement[set[0]]]] := set[0] (* added 2003 January 20 based on ON-SUC-7.NB *) (* omega is the least limit ordinal *) A[intersection[OMEGA,complement[set[0]],fix[BIGCUP]]] := omega (* derived 2008 April 19 in SUCC-ORD.NB *) A[intersection[OMEGA,complement[succ[ord[x_]]]]] := succ[ord[x]] (* added 2001 July 12 based on RANK-1.NB *) A[intersection[OMEGA,image[inverse[ZN],set[x_]]]] := rank[x] (* added 2001 December 1 based on CARD-X.NB *) A[intersection[OMEGA,image[Q,set[x_]]]] := card[x] (* derived 2008 May 9 in PRIMESEQ.NB *) A[intersection[PRIMES,complement[image[PRIMESEQ,nat[x_]]]]] := APPLY[PRIMESEQ,nat[x]] (* added 1999 August 13 based on session A-I-SS.LOG *) A[intersection[x_,set[y_]]] := union[y,complement[image[V,intersection[x,set[y]]]]] (* Theorem IVR-0-A in INVAR *) A[invar[x_]] := 0 (* derived 2007 August 6 in OL-NAT.NB *) A[nat[x_]] := complement[image[V,nat[x]]] (* derived 2006 August 16 in OL-SU-OM.NB *) A[odd] := set[0] (* Theorem OM-A in OM1 added 1998 February 7 *) A[omega] := 0 (* Theorem ON-A-DEM in ON5 added 1998 February 7 *) A[OMEGA] := 0 (* derived 2006 March 14 in ORDRULES.NB *) A[ord[x_]] := complement[image[V,ord[x]]] (* Theorem PC-A in PC1 *) A[P[x_]] := 0 (* derived 2005 February 22 in PRIMES.NB *) A[PRIMES] := succ[set[0]] (* added 1999 November 6 based on CO-2.LOG *) A[range[CART]] := 0 (* derived 2006 December 13 in FACT.NB *) A[range[CLIQUES]] := set[0] (* derived 2006 December 13 in FACT.NB *) A[range[FACTORIAL]] := set[0] (* derived 2007 May 18 in OL-A-RA.NB *) A[range[ordlist[x_]]] := A[intersection[OMEGA,x]] (* Theorem POW-RA-1 in POW5 *) A[range[POWER]] := set[0] (* Theorem SG-RA-A in SG2 proved 1998 February 3 *) A[range[SINGLETON]] := 0 (* added 2002 April 8 based on UCL-ACL.NB *) A[range[SUBVAR]] := set[0] (* derived 2006 February 19 in RA-SUCC.NB *) A[range[SUCC]] := 0 (* derived 2007 July 25 in FIX-UCH.NB *) A[range[UCHAINS]] := set[0] (* Theorem REG-A in REG2 *) A[REGULAR] := 0 (* derived 2005 December 23 in PAIR.NB *) A[rotate[set[x_]]] := PAIR[PAIR[second[x],first[first[x]]],second[first[x]]] (* Theorem RUS-A in RUS2 *) A[RUSSELL] := 0 (* Theorem A-SS in A1 proved 1998 July 13 *) A[set[x_]] := union[x,complement[image[V,set[x]]]] (* derived 2005 January 18 in SET-A-U.NB *) A[set[x_,y___]] := intersection[x,A[set[y]]] /; member[x,V] (* derived 2004 August 29 in A-SS-AP.NB *) A[set[APPLY[x_,y_]]] := APPLY[x,y] (* derived 2004 August 1 in COMMON2.NB *) A[succ[set[x_]]] := intersection[x,set[x]] (* added 2001 December 9 based on EQUAL-V.NB *) A[TOPS] := set[0] (* introduced 1996 April 30 in LOAD.M derived using Otter as Theorem A-7 in A1 *) A[union[x_,y_]] := intersection[A[x],A[y]] (* introduced 1996 April 30 in LOAD.M derived using Otter as Theorem A-4 in A1 *) A[V] := 0 (* added 2003 February 25 based on Z.NB *) A[Z] := 0 (* derived 2008 September 19 in UCL.NB *) Aclosure[x_] := x /; equal[image[inverse[S],x],x] (* Corollary of Theorem ON-BA4 in ON5 proved 2000 June 3 *) Aclosure[x_] := x /; member[x,OMEGA] (* derived 2008 September 19 in HULL.NB *) Aclosure[x_] := x /; subclass[x,OMEGA] (* Theorem ACL-0 in ACL1 proved 2001 September 29 *) Aclosure[0] := 0 (* derived 2007 June 29 in ACL-FXHL.NB *) Aclosure[Aclosure[x_]] := Aclosure[x] /; member[x,V] (* added 2003 October 15 based on ACYCLIC.NB *) Aclosure[ACYCLIC] := ACYCLIC (* derived 2007 June 23 in ALLCLOSED.NB *) Aclosure[allclosed[x_]] := allclosed[x] (* added 2002 January 17 based on ANTISYM3.NB *) Aclosure[ANTISYM] := ANTISYM (* added 2001 October 15 based on ACL-IMS.NB *) Aclosure[BIJ] := BIJ (* added 2003 May 21 based on BINCLOSE.NB *) Aclosure[binclosed[x_]] := binclosed[x] (* added 2002 May 11 based on PAIR.NB *) Aclosure[cart[set[x_],set[y_]]] := cart[set[x],set[y]] (* derived 2007 May 6 in CHN-ACL.NB *) Aclosure[chains[x_]] := chains[x] (* added 2001 October 15 based on ACL-IMS.NB *) Aclosure[cliques[x_]] := cliques[x] (* derived 2006 September 19 in COMMTIVE.NB *) Aclosure[COMMUTATIVE] := COMMUTATIVE (* added 2003 February 23 based on ACL-CIMS.NB *) Aclosure[complement[image[S,x_]]] := complement[image[S,x]] (* added 2002 January 9 based on ACLOSURE.NB *) Aclosure[complement[P[complement[set[x_]]]]] := complement[P[complement[set[x]]]] (* derived 2007 June 9 in CONST.NB *) Aclosure[CONST] := CONST (* derived 2007 June 9 in DEDEKIND.NB *) Aclosure[DEDEKIND] := DEDEKIND (* added 2002 May 2 based on ACLOSED.NB *) Aclosure[EQV] := EQV (* derived 2008 January 2 in FINCHR-1.NB *) Aclosure[FINCHAR] := FINCHAR (* added 2001 October 15 based on ACL-IMS.NB *) Aclosure[FINITE] := FINITE (* added 2002 January 31 based on FIX-ACL.NB *) Aclosure[fix[ACLOSURE]] := fix[ACLOSURE] (* added 2002 January 18 based on CLIQUES.NB *) Aclosure[fix[composite[DISJOINT,IMAGE[x_]]]] := fix[composite[DISJOINT,IMAGE[x]]] (* added 2002 January 17 based on CLIQSWAP.NB *) Aclosure[fix[composite[DISJOINT,INVERSE]]] := fix[composite[DISJOINT,INVERSE]] (* derived 2007 October 12 in DJ-IM-IM.NB *) Aclosure[fix[composite[inverse[IMAGE[x_]],DISJOINT,IMAGE[y_]]]] := fix[composite[inverse[IMAGE[x]],DISJOINT,IMAGE[y]]] (* derived 2007 October 18 in BINCL.NB *) Aclosure[fix[composite[S,CART,DORA]]] := fix[composite[S,CART,DORA]] (* added 2003 September 5 based on FIXHULL.NB *) Aclosure[fix[HULL[x_]]] := fix[HULL[x]] (* added 2001 October 14 based on ACL-4.NB *) Aclosure[fix[IMAGE[inverse[S]]]] := fix[IMAGE[inverse[S]]] (* derived 2007 June 25 in UCH-HULL.NB *) Aclosure[fix[UCHAINS]] := fix[UCHAINS] (* added 2001 January 31 based on FIX-UCL.NB *) Aclosure[fix[UCLOSURE]] := fix[UCLOSURE] (* Corollary of Theorem IVR-FUL5 in INVAR proved 1999 December 29 *) Aclosure[FULL] := FULL (* derived 2007 December 19 in ACL-FUND.NB *) Aclosure[FUND] := FUND (* added 2001 October 15 based on ACL-IMS.NB *) Aclosure[FUNS] := FUNS (* added 2001 October 15 based on ACL-IMS.NB *) Aclosure[H[FINITE]] := H[FINITE] (* derived 2008 July 15 in H-RUS.NB *) Aclosure[H[RUSSELL]] := H[RUSSELL] (* added 2003 May 18 based on ACL-SQ.NB *) Aclosure[image[CART,Id]] := image[CART,Id] (* added 2003 May 18 based on ACL-SQ.NB *) Aclosure[image[CART,id[x_]]] := image[CART,id[Aclosure[x]]] (* derived 2006 September 27 in ACL-IMG.NB *) Aclosure[image[IMAGE[DUP],x_]] := image[IMAGE[DUP],Aclosure[x]] (* derived 2006 September 27 in ACL-IMG.NB *) Aclosure[image[IMAGE[POWER],x_]] := image[IMAGE[POWER],Aclosure[x]] (* derived 2006 September 27 in ACL-IMG.NB *) Aclosure[image[IMAGE[RCF],x_]] := image[IMAGE[RCF],Aclosure[x]] (* derived 2006 September 27 in ACL-IMG.NB *) Aclosure[image[IMAGE[SINGLETON],x_]] := image[IMAGE[SINGLETON],Aclosure[x]] (* derived 2008 August 23 in IMBCFUNS.NB *) Aclosure[image[inverse[BIGCUP],FUNS]] := image[inverse[BIGCUP],FUNS] (* derived 2007 October 18 in BINCL.NB *) Aclosure[image[inverse[CLIQUES],range[POWER]]] := image[inverse[CLIQUES],range[POWER]] (* derived 2007 October 18 in BINCL.NB *) Aclosure[image[inverse[IMAGE[id[cart[V,V]]]],TRV]] := image[inverse[IMAGE[id[cart[V,V]]]],TRV] (* derived 2008 November 6 in EQV-ON-X.NB *) Aclosure[image[inverse[IMAGE[inverse[DUP]]],set[x_]]] := image[inverse[IMAGE[inverse[DUP]]],set[x]] (* restored 2001 October 14 based on IMS.NB *) Aclosure[image[inverse[S],x_]] := image[inverse[S],x] (* derived 2007 June 14 in IMPOWACL.NB *) Aclosure[image[POWER,setpart[x_]]] := image[POWER,Aclosure[setpart[x]]] (* added 2003 June 22 based on HULL-RC.NB *) Aclosure[image[RC[x_],y_]] := image[RC[x],intersection[image[S,y],Uclosure[y]]] (* restored 2001 October 14 based on ACL-3.NB *) Aclosure[image[S,set[x_]]] := image[S,set[x]] (* added 2003 February 23 based on ACL-CIMS.NB *) Aclosure[image[V,x_]] := image[V,x] (* derived 2005 September 17 in ACL-DIV.NB *) Aclosure[image[VERTSECT[DIV],omega]] := image[VERTSECT[DIV],omega] (* added 2002 October 8 based on ACL-IND.NB *) Aclosure[intersection[x_,y_]] := intersection[x,y] /; Aclosure[x]==x && Aclosure[y]==y (* added 2002 May 6 based on HULL-ACL.NB *) Aclosure[intersection[x_,image[S,set[y_]]]] := intersection[Aclosure[x],image[S,set[y]]] (* derived 2005 July 24 in ACL-P-OM.NB *) Aclosure[intersection[omega,x_]] := intersection[omega,x] (* derived 2005 July 24 in ACL-P-OM.NB *) Aclosure[intersection[OMEGA,x_]] := intersection[OMEGA,x] (* derived 2007 August 4 in ACL-I-ON.NB *) Aclosure[intersection[x_,ord[y_]]] := intersection[x,ord[y]] (* added 2001 October 28 based on IVR-RFX.NB *) Aclosure[intersection[RFX,SYM]] := intersection[RFX,SYM] (* Corollary of Theorem IVR-BA in INVAR proved 1999 January 9 *) Aclosure[invar[x_]] := invar[x] (* derived 2006 February 4 in INVOL.NB *) Aclosure[INVOL] := INVOL (* Corollary of Theorem ON-BA1 in ON5 proved 1999 December 30 *) Aclosure[OMEGA] := OMEGA (* Theorem ACL-PC1 in ACL1 proved 2001 September 29 *) Aclosure[P[x_]] := P[x] (* added 2002 March 9 based on PO-ACL.NB *) Aclosure[PO] := PO (* derived 2005 July 24 in ACL-P-OM.NB *) Aclosure[PRIMES] := PRIMES (* derived 2007 October 18 in BINCL.NB *) Aclosure[range[CART]] := range[CART] (* derived 2006 October 14 in HULLCLIQ.NB *) Aclosure[range[CLIQUES]] := range[CLIQUES] (* restored 2001 October 14 based on RA-POW.NB *) Aclosure[range[POWER]] := range[POWER] (* derived 2006 September 26 in ACL-RASG.NB *) Aclosure[range[SINGLETON]] := union[range[SINGLETON],set[0]] (* derived 2005 September 8 in RAVS-DIV.NB *) Aclosure[range[VERTSECT[DIV]]] := range[VERTSECT[DIV]] (* Theorem ACL-REG in ACL1 proved 2001 September 29 *) Aclosure[REGULAR] := REGULAR (* added 2001 October 28 based on IVR-RFX.NB *) Aclosure[RFX] := RFX (* derived 2004 August 7 in RS-1.NB *) Aclosure[RS[x_]] := RS[x] (* added 2001 October 15 based on ACL-UCL.NB *) Aclosure[set[x_]] := set[x] (* derived 2004 April 27 in UCL-SS.NB *) Aclosure[set[0,x_]] := set[0,x] (* derived 2007 June 27 in TOPS.NB *) Aclosure[set[0,set[set[0]],succ[set[0]]]] := set[0,set[set[0]],succ[set[0]]] (* added 2001 October 14 based on RA-POW.NB *) Aclosure[SYM] := SYM (* added 2003 May 21 based on BINCLOSE.NB *) Aclosure[TOPS] := TOPS (* added 2002 January 30 based on ACL-TRV.NB *) Aclosure[TRV] := TRV (* added 2002 January 9 based on ACLOSURE.NB *) Aclosure[union[x_,complement[image[V,y_]]]] := union[Aclosure[x],complement[image[V,y]]] (* added 2002 January 9 based on ACLOSURE.NB *) Aclosure[union[x_,image[V,y_]]] := union[Aclosure[x],image[V,y]] (* added 2002 November 20 based on UCL-U.NB *) Aclosure[union[x_,set[0]]] := union[Aclosure[x],set[0]] (* Theorem ACL-V-1 in ACL1 proved 2001 September 29 *) Aclosure[V] := V (* added 2003 September 29 based on WF.NB *) Aclosure[WF] := WF (* added 2003 February 26 based on ACL-Z.NB *) Aclosure[Z] := union[Z,set[0]] (* Theorem ADJ-RP in ADJ proved 1999 March 11 *) ADJOIN[x_] := 0 /; not[member[x,V]] (* Theorem ADJ-0 in ADJ proved 1999 March 11 *) ADJOIN[0] := Id (* added 2003 February 20 based on ADJOIN-V.NB *) ADJOIN[complement[image[V,x_]]] := id[image[V,x]] (* added 2003 February 20 based on ADJOIN-V.NB *) ADJOIN[image[V,x_]] := id[complement[image[V,x]]] (* derived 2004 April 25 in ADJOIN.NB *) ADJOIN[union[x_,complement[image[V,y_]]]] := composite[id[image[V,y]],ADJOIN[x]] ADJOIN[V] := 0 (* derived 2007 June 23 in ALLCLOSED.NB *) allclosed[0] := V (* derived 2007 June 23 in ALLCLOSED.NB *) allclosed[BIGCAP] := fix[ACLOSURE] (* derived 2007 June 23 in ALLCLOSED.NB *) allclosed[BIGCUP] := fix[UCLOSURE] (* derived 2007 June 23 in ALLCLOSED.NB *) allclosed[cart[x_,y_]] := union[complement[image[S,x]],image[S,set[y]]] (* derived 2007 June 25 in UCH-HULL.NB *) allclosed[composite[BIGCUP,id[chains[S]]]] := fix[UCHAINS] (* derived 2008 January 10 in FIN-U-CL.NB *) allclosed[composite[BIGCUP,id[FINITE]]] := intersection[binclosed[CUP],complement[P[complement[set[0]]]]] (* derived 2008 January 6 in ALLCL-BC.NB *) allclosed[composite[BIGCUP,id[intersection[FINITE,chains[S]]]]] := complement[P[complement[set[0]]]] (* derived 2007 June 23 in ALLCLOSED.NB *) allclosed[composite[Id,x_]] := allclosed[x] (* derived 2007 July 8 in FP-Q-K.NB *) allclosed[composite[id[x_],inverse[SINGLETON]]] := V (* derived 2008 August 13 in BCL-PRS.NB *) allclosed[composite[x_,id[range[PAIRSET]]]] := binclosed[composite[x,PAIRSET]] (* derived 2007 June 23 in ALLCLOSED.NB *) allclosed[composite[x_,inverse[E]]] := invar[x] (* derived 2007 June 23 in ALLCLOSED.NB *) allclosed[composite[inverse[E],x_]] := image[inverse[POWER],invar[x]] (* derived 2007 June 23 in ALLCLOSED.NB *) allclosed[composite[x_,inverse[PAIRSET]]] := binclosed[x] (* derived 2007 June 23 in ALLCLOSED.NB *) allclosed[composite[x_,inverse[S]]] := allclosed[x] (* derived 2007 August 5 in ALLCLOSE.NB *) allclosed[E] := 0 (* derived 2007 August 5 in ALLCLOSE.NB *) allclosed[Id] := 0 (* derived 2008 August 13 in ALL-UB.NB *) allclosed[id[OMEGA]] := 0 (* derived 2008 August 13 in BCL-PRS.NB *) allclosed[id[range[PAIRSET]]] := binclosed[PAIRSET] (* derived 2008 August 13 in ALL-UB.NB *) allclosed[id[REGULAR]] := 0 (* derived 2007 June 23 in ALLCLOSED.NB *) allclosed[inverse[E]] := V (* derived 2007 July 8 in IMS-ENS.NB *) allclosed[inverse[POWER]] := V (* derived 2007 August 5 in ALLCLOSE.NB *) allclosed[inverse[S]] := 0 (* derived 2007 August 5 in ALLCLOSE.NB *) allclosed[S] := 0 (* derived 2007 July 8 in FP-Q-K.NB *) allclosed[union[x_,y_]] := intersection[allclosed[x],allclosed[y]] (* derived 2007 June 23 in ALLCLOSED.NB *) allclosed[V] := 0 (* derived 2008 November 12 in ASSOCTIV.NB *) and[associative[x_],equal[0,x_]] := equal[0,x] (* derived 2006 July 8 in SEMIGPS.NB *) and[associative[x_],member[x_,BINOPS]] := member[x,SEMIGPS] (* derived 2008 December 5 in GROUPS.NB *) and[associative[x_],member[x_,QUASIGPS]] := or[equal[0,x],member[x,GROUPS]] (* derived 2008 November 21 in ASSOCFUN.NB *) and[associative[x_],subclass[x_,cart[V,V]]] := associative[x] (* derived 2007 November 25 in MAX-CLIQ.NB *) and[axch,equal[x_,Uchains[x_]],member[x_,y_],subclass[x_,image[inverse[PS],x_]]] := False (* derived 2007 November 25 in MAX-CLIQ.NB *) and[axch,member[x_,y_],subclass[cliques[x_],image[inverse[PS],cliques[x_]]]] := False (* derived 2007 November 25 in MAX-CLIQ.NB *) and[axch,member[x_,y_],subclass[chains[x_],image[inverse[PS],chains[x_]]]] := False (* derived 2008 July 27 in REGRESS.NB *) and[AxReg,equal[omega,domain[x_]],FUNCTION[x_], subclass[composite[x_,SUCC],composite[inverse[E],x_]]] := False (* modified 2004 June 8 based on NOBLANKS.NB removed 2004 September 3 and[equal[x_,y_],p_] := False /; (equality && noblanks[{x,y,p}] && (not[p] /. x -> y)) *) (* derived 2006 November 9 in SIMPLIFY.NB *) and[equal[0,domain[domain[w_]]],subclass[w_,cart[cart[x_,y_],z_]]] := equal[0,w] (* derived 2006 November 20 in FU-0.NB *) and[equal[0,domain[x_]],FUNCTION[x_]] := equal[0,x] (* derived 2006 January 6 in FU-X.NB *) and[equal[0,domain[x_]],FUNCTION[composite[Id,x_]]] := equal[0,domain[x]] (* derived 2006 November 20 in FU-0.NB *) and[equal[0,domain[w_]],member[w_,map[x_,y_]]] := and[equal[0,w],equal[0,x]] (* derived 2006 November 9 in SIMPLIFY.NB *) and[equal[0,domain[x_]],subclass[x_,cart[y_,z_]]] := equal[0,x] (* added 2001 November 15 based on EQ-0.NB *) and[equal[0,x_],equal[y_,x_]] := and[equal[0,x],equal[0,y]] (* added 2001 November 15 based on EQ-0.NB *) and[equal[0,x_],equal[x_,y_]] := and[equal[0,x],equal[0,y]] (* added 2002 September 10 based on IMV-RULE.NB *) and[equal[0,x_],equal[0,intersection[x_,y_]]] := equal[0,x] (* added 2002 September 8 based on REPLACE.NB *) and[equal[0,x_],equal[y_,union[x_,z_]]] := and[equal[0,x],equal[y,z]] (* added 2002 December 23 based on REPLACE.NB *) and[equal[0,fix[composite[y_,inverse[x_],Di]]],subclass[x_,y_], subclass[x_,cart[V,V]]] := subclass[x,funpart[y]] (* derived 2004 April 4 in IRR-TRV.NB *) and[equal[0,fix[composite[x_,x_]]],TRANSITIVE[x_]] := and[equal[0,fix[x]],TRANSITIVE[x]] (* derived 2004 December 30 in AXREG.NB *) and[equal[0,fix[E]],member[x_,x_]] := False (* derived 2007 June 7 in PO-IRR.NB *) and[equal[0,fix[x_]],REFLEXIVE[x_]] := equal[0,x] (* derived 2006 November 20 in FU-0.NB *) and[equal[0,x_],FUNCTION[x_]] := equal[0,x] (* derived 2008 November 2 in EQ-DJ.NB *) and[equal[0,intersection[x_,y_]],equal[x_,y_]] := and[equal[0,x],equal[0,y]] (* added 2002 September 7 based on REPLACE.NB *) and[equal[0,intersection[x_,y_]],equal[V,union[x_,y_]]] := equal[y,complement[x]] (* derived 2004 April 4 in IRR-TRV.NB *) and[equal[0,intersection[x_,inverse[x_]]],TRANSITIVE[x_]] := and[equal[0,fix[x]],TRANSITIVE[x]] (* derived 2005 February 6 in DESCEND.NB *) and[equal[0,intersection[x_,P[complement[x_]]]],member[x_,y_]] := and[member[x,DESCENDING],member[x,y]] (* derived 2008 March 20 in RFX-IM.NB *) and[equal[0,intersection[y_,P[x_]]],member[x_,y_]] := False (* added 2002 December 23 based on REPLACE.NB *) and[equal[0,intersection[x_,y_]],subclass[x_,z_], subclass[z_,union[x_,y_]]] := equal[x,intersection[z,complement[y]]] (* added 2002 September 8 based on REPLACE.NB *) and[equal[0,intersection[x_,y_]],subclass[x_,union[y_,z_]]] := and[equal[0,intersection[x,y]],subclass[x,z]] (* added 1998 October 3 *) and[equal[0,x_],member[y_,x_]] := False (* derived 2007 September 6 in A-SETHD.NB *) and[equal[0,x_],member[A[x_],y_]] := False (* derived 2008 November 3 in 0-FIN.NB *) and[equal[0,x_],member[x_,FINITE]] := equal[0,x] (* derived 2006 November 20 in FU-0.NB *) and[equal[0,w_],member[w_,map[x_,y_]]] := and[equal[0,w],equal[0,x]] (* derived 2005 June 29 in OO-TIMES.NB *) and[equal[0,x_],member[x_,omega]] := equal[0,x] (* derived 2007 February 1 in N-OVER-D.NB *) and[equal[0,x_],member[pair[x_,y_],DIV]] := and[equal[0,x],equal[0,y]] (* derived 2007 April 3 in DIV-DV.NB *) and[equal[0,y_],member[pair[x_,y_],DIV]] := and[equal[0,y],member[x,omega]] (* derived 2007 April 3 in DIV-DV.NB *) and[equal[0,x_],member[pair[natmul[x_,y_],z_],DIV]] := and[equal[0,x],equal[0,z],member[y,omega]] (* added 2001 October 20 based in CART-SQ.NB *) and[equal[0,x_],member[x_,V]] := equal[0,x] (* derived 2008 October 31 in PERMS.NB *) and[equal[0,nat[x_]],member[x_,omega]] := equal[0,x] (* derived 2008 September 17 in MEMB-2.NB *) and[equal[0,x_],not[equal[x_,set[0]]]] := equal[0,x] (* derived 2006 September 4 in PLUS-CO.NB *) and[equal[0,y_],not[member[x_,y_]]] := equal[0,y] (* derived 2005 January 21 in SS-0.NB *) and[equal[0,x_],not[member[x_,range[SINGLETON]]]] := equal[0,x] (* added 2001 November 15 *) and[equal[0,x_],not[member[x_,V]]] := False (* derived 2008 September 17 in MEMB-2.NB *) and[equal[0,x_],not[subclass[x_,y_]]] := False (* added 2001 November 17 based on UNWRAP.NB *) and[equal[0,second[x_]],not[member[first[x_],V]]] := False (* added 2001 November 15 based on EQ-0.NB *) and[equal[0,x_],subclass[x_,y_]] := equal[0,x] (* added 2001 November 15 based on EQ-0.NB *) and[equal[0,x_],subclass[y_,x_]] := and[equal[0,x],equal[0,y]] (* derived 2007 April 30 in Q-ORD.NB *) and[equal[card[y_],card[ord[x_]]],member[y_,V]] := equal[card[y],card[ord[x]]] (* derived 2007 May 1 in CARTRCH.NB *) and[equal[x_,card[y_]],member[x_,card[y_]]] := False (* derived 2007 May 1 in CARTRCH.NB *) and[equal[x_,card[y_]],member[card[y_],x_]] := False (* derived 2007 May 1 in CARTRCH.NB *) and[equal[x_,card[y_]],not[member[card[y_],x_]]] := equal[x,card[y]] (* derived 2004 June 20 in X1604-56.NB *) and[equal[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]],PARTIALORDER[x_]] := TOTALORDER[x] (* derived 2004 June 26 in TOTALORD.NB removed 2004 June 27 because it causes looping and[equal[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]], subclass[intersection[x_,inverse[x_]],Id],TRANSITIVE[x_]] := TOTALORDER[x] *) (* derived 2008 February 5 in TOT-RELN.NB *) and[equal[cart[union[domain[x_],range[x_]],union[domain[x_],range[x_]]],union[x_,inverse[x_]]], subclass[intersection[x_,inverse[x_]],Id],TRANSITIVE[x_]] := TOTALORDER[x] (* derived 2006 December 25 in INTMUL-2.NB *) and[equal[composite[v_,cross[w_,w_]],composite[w_,u_]], member[w_,map[fix[domain[u_]],fix[domain[v_]]]]] := member[w,binhom[u,v]] (* derived 2008 December 30 in CAT-DEFN.NB *) and[equal[composite[x_,cross[x_,Id]],composite[x_,cross[Id,x_],ASSOC]],FUNCTION[x_], subclass[x_,cart[cart[range[x_],range[x_]],intersection[domain[cod[x_]],domain[dom[x_]]]]], subclass[composite[x_,inverse[FIRST],domain[x_]],domain[x_]]] := category[x] (* derived 2006 September 13 in CATORELN.NB *) and[equal[composite[x_,y_],first[z_]],member[first[z_],V]] := equal[composite[x,y],first[z]] (* derived 2006 September 13 in CATORELN.NB *) and[equal[composite[x_,y_],first[z_]],member[z_,V]] := equal[composite[x,y],first[z]] (* derived 2004 March 20 in EQV-WRAP.NB *) and[equal[composite[Id,x_],inverse[x_]],TRANSITIVE[composite[Id,x_]]] := EQUIVALENCE[composite[Id,x]] (* derived 2004 October 28 in X.NB *) and[equal[domain[y_],domain[funpart[x_]]],subclass[y_,funpart[x_]]] := equal[y,funpart[x]] (* derived 2008 October 31 in MAP.NB *) and[equal[y_,domain[x_]],FUNCTION[x_],member[x_,V]] := member[x,map[y,V]] (* derived 2008 August 22 in CANCEL.NB *) and[equal[domain[funpart[x_]],domain[funpart[y_]]], subclass[composite[funpart[x_],inverse[funpart[y_]]],Id], subclass[composite[funpart[y_],inverse[funpart[x_]]],Id]] := equal[funpart[x],funpart[y]] (* derived 2008 August 22 in CANCEL.NB *) and[equal[domain[funpart[x_]],domain[funpart[y_]]], subclass[composite[funpart[x_],inverse[funpart[y_]]],S], subclass[composite[funpart[y_],inverse[funpart[x_]]],S]] := equal[funpart[x],funpart[y]] (* derived 2006 September 17 in CATR-IDS.NB *) and[equal[y_,domain[x_]],subclass[x_,id[y_]]] := equal[x,id[y]] (* derived 2007 November 13 in AC-IN-K.NB *) and[equal[domain[x_],Uchains[domain[x_]]],member[x_,UNOPS],subclass[x_,K]] := False (* derived 2006 September 17 in IDS-INCL.NB *) and[equal[first[x_],id[y_]],member[first[x_],V]] := equal[first[x],id[y]] (* derived 2008 November 28 in EQ-ID.NB *) and[equal[y_,fix[x_]],subclass[x_,id[y_]]] := equal[x,id[y]] (* derived 2008 November 28 in EQ-ID.NB *) and[equal[x_,id[y_]],equal[y_,fix[x_]]] := equal[x,id[y]] (* derived 2008 November 28 in EQ-ID.NB *) and[equal[Id,x_],equal[V,fix[x_]]] := equal[Id,x] (* derived 2007 January 9 in ZEROPROD.NB *) and[equal[x_,id[omega]],member[x_,V]] := equal[x,id[omega]] (* derived 2006 July 29 in Z-ADD-EQ.NB *) and[equal[x_,id[omega]],member[x_,Z]] := equal[x,id[omega]] (* derived 2005 November 17 in RUSSELL.NB *) and[equal[x_,image[inverse[S],x_]],member[x_,x_]] := False (* derived 2008 August 19 in RS-S-CL.NB *) and[equal[x_,image[inverse[S],x_]],member[U[x_],x_]] := and[equal[x,P[U[x]]],member[x,V]] (* derived 2007 September 3 in IMS-P-U.NB *) and[equal[image[inverse[S],x_],P[U[x_]]],member[x_,y_]] := and[member[x,y],member[U[x],x]] (* added 2001 December 16 based on COMMUTE.NB *) and[equal[x_,image[S,x_]],equal[x_,image[inverse[S],x_]]] := or[equal[0,x],equal[V,x]] (* derived 2005 December 19 in FUNPART.NB *) and[equal[image[x_,set[u_]],set[v_]],member[u_,V],member[v_,V]] := member[pair[u,v],funpart[x]] (* derived 2007 January 23 in ADDRULES.NB *) and[equal[w_,intadd[x_,y_]],member[w_,V]] := and[equal[w,intadd[x,y]],member[x,Z],member[y,Z]] (* derived 2007 January 23 in ADDRULES.NB *) and[equal[w_,intadd[x_,y_]],member[w_,Z]] := and[equal[w,intadd[x,y]],member[x,Z],member[y,Z]] (* derived 2004 January 15 in RC-OP.NB *) and[equal[x_,intersection[y_,complement[z_]]], equal[z_,intersection[y_,complement[x_]]]] := and[equal[0,intersection[x,z]],equal[y,union[x,z]]] (* derived 2008 March 20 in IVR-SBV.NB *) and[equal[x_,intersection[omega,y_]],member[x_,V]] := equal[x,intersection[omega,y]] (* added 2001 December 19 based on INV-IM.NB *) and[equal[x_,intersection[y_,z_]],subclass[y_,z_]] := and[equal[x,y],subclass[x,z]] (* derived 2004 March 20 in EQV-WRAP.NB *) and[equal[x_,inverse[x_]],TRANSITIVE[x_]] := EQUIVALENCE[x] (* derived 2004 March 20 in EQV-WRAP.NB *) and[equal[x_,inverse[x_]],TRANSITIVE[composite[Id,x_]]] := EQUIVALENCE[x] (* added 2001 November 15 based on UNWRAP-1.NB *) and[equal[x_,y_],member[x_,z_],member[y_,V]] := and[equal[x,y],member[x,z]] (* derived 2003 January 3 in OO-SUC-OM.NB *) and[equal[x_,y_],member[x_,omega],member[x_,y_]] := False (* derived 2005 April 26 in TRICHOT.NB *) and[equal[x_,nat[y_]],member[x_,nat[y_]]] := False (* derived 2005 April 28 in NATORDER.NB *) and[equal[x_,nat[y_]],member[nat[y_],x_]] := False (* derived 2005 April 26 in TRICHOT.NB *) and[equal[x_,nat[y_]],not[member[x_,nat[y_]]]] := equal[x,nat[y]] (* derived 2005 July 4 in SUCC-NAT.NB *) and[equal[nat[x_],succ[y_]],member[y_,nat[x_]]] := equal[nat[x],succ[y]] (* derived 2005 May 17 based on NATMOD.NB *) and[equal[z_,natmod[x_,y_]],member[z_,V]] := and[equal[z,natmod[x,y]],member[x,omega],member[y,omega]] (* added 2003 May 24 based on DIFCLOS.NB *) and[equal[x_,y_],not[subclass[x_,y_]]] := False (* derived 2006 August 16 in HER-CTBL.NB *) and[equal[omega,card[x_]],member[x_,V]] := equal[omega,card[x]] (* derived 2005 December 2 in ORD-CORE.NB *) and[equal[OMEGA,x_],member[x_,y_]] := False (* derived 2005 February 10 in X3557.NB *) and[equal[omega,x_],member[x_,V]] := equal[omega,x] (* derived 2007 April 29 in ORD-CARD.NB *) and[equal[x_,ord[y_]],member[x_,ord[y_]]] := False (* derived 2007 May 1 in ORDTRICH.NB *) and[equal[x_,ord[y_]],not[member[x_,ord[y_]]]] := equal[x,ord[y]] (* derived 2004 July 18 in WO-PO.NB *) and[equal[P[fix[x_]],union[domain[LEAST[x_]],set[0]]],PARTIALORDER[x_]] := WELLORDER[x] (* derived 2004 July 18 in WO-PO.NB *) and[equal[P[fix[x_]],union[domain[LEAST[x_]],set[0]]],TOTALORDER[x_]] := WELLORDER[x] (* derived 2008 October 31 in BIJ.NB *) and[equal[z_,range[x_]],FUNCTION[inverse[x_]],member[x_,map[y_,V]]] := member[x,bij[y,z]] (* derived 2006 September 8 in TIMES.NB *) and[equal[x_,set[0]],member[x_,omega]] := equal[x,set[0]] (* derived 2008 September 17 in MEMB-2.NB *) and[equal[x_,set[0]],not[equal[0,x_]]] := equal[x,set[0]] (* added 2001 November 15 *) and[equal[set[x_],y_],member[y_,V]] := equal[set[x],y] (* derived 2005 October 25 in TOP-WRAP.NB *) and[equal[x_,set[y_]],not[member[x_,V]]] := False (* added 2002 January 1 based on PAIR.NB *) and[equal[set[x_],set[y_]],member[x_,V]] := and[equal[x,y],member[x,V]] (* added 2000 October 4 based on NONEMPTY.LOG *) and[equal[x_,y_],subclass[x_,y_]] := equal[x,y] (* added 2001 November 16 based on INVERSE.NB *) and[equal[x_,y_],subclass[y_,x_]] := equal[x,y] (* added 2002 September 10 based on IMV-RULE.NB *) and[equal[x_,y_],subclass[x_,union[y_,z_]]] := equal[x,y] (* derived 2003 January 3 in OO-SUC-OM.NB *) and[equal[succ[x_],succ[y_]],member[x_,omega]] := and[equal[x,y],member[x,omega]] (* derived 2005 November 27 in FPBCPCOM.NB *) and[equal[x_,U[x_]],subclass[x_,omega]] := or[equal[0,x],equal[omega,x]] (* derived 2006 May 28 in FUNPART.NB *) and[equal[V,domain[x_]],FUNCTION[composite[Id,x_]]] := equal[V,domain[funpart[x]]] (* derived 204 August 22 in PARTREC.NB *) and[equal[V,domain[x_]],member[x_,V]] := False (* added 2001 November 22 based on THIN.NB *) and[equal[V,domain[VERTSECT[x_]]],FUNCTION[x_]] := FUNCTION[x] (* added 2001 November 27 based on IN-SS.NB *) and[equal[V,domain[VERTSECT[x_]]],FUNCTION[composite[Id,x_]]] := FUNCTION[composite[Id,x]] (* added 2001 November 15 based on EQ-V.NB *) and[equal[V,x_],equal[x_,y_]] := and[equal[V,x],equal[V,y]] (* added 2001 November 15 based on EQ-V.NB *) and[equal[V,x_],equal[y_,x_]] := and[equal[V,x],equal[V,y]] (* added 2002 September 10 based on IMV-RULE.NB *) and[equal[V,x_],equal[V,union[x_,y_]]] := equal[V,x] (* derived 2006 May 9 *) and[equal[V,fix[x_]],subclass[x_,Id]] := equal[Id,x] (* derived 2006 May 9 *) and[equal[V,fix[x_]],subclass[composite[Id,x_],Id]] := equal[Id,composite[Id,x]] (* added 2001 November 15 based on EQ-V.NB *) and[equal[V,x_],member[x_,y_]] := False (* derived 2007 March 11 in SIMPLIFY.NB *) and[equal[V,x_],member[pair[x_,y_],DIV]] := False (* derived 2005 October 25 in TOP-WRAP.NB *) and[equal[V,x_],not[member[x_,y_]]] := equal[V,x] (* derived 2007 March 11 in SIMPLIFY.NB *) and[equal[V,x_],not[member[pair[x_,y_],DIV]]] := equal[V,x] (* added 2001 November 15 based on EQ-V.NB *) and[equal[V,x_],subclass[x_,y_]] := and[equal[V,x],equal[V,y]] (* added 2001 November 15 based on EQ-V.NB *) and[equal[V,x_],subclass[y_,x_]] := equal[V,x] (* added 2002 September 7 based on REPLACE.NB *) and[equal[V,union[x_,y_]],member[x_,V],member[y_,V]] := False (* derived 2004 October 26 in AXCH.NB *) and[equal[V,union[x_,set[y_]]],not[member[y_,x_]]] := equal[x,complement[set[y]]] (* derived 2007 November 23 in C-RA-SG.NB *) and[equal[V,union[x_,y_]],subclass[x_,y_]] := equal[V,y] (* derived 2004 April 1 in EQV-EQ.NB *) and[EQUIVALENCE[x_],FUNCTION[x_]] := subclass[x,Id] (* derived 2006 June 18 in PO-EQV.NB *) and[EQUIVALENCE[x_],REFLEXIVE[x_]] := EQUIVALENCE[x] (* derived 2006 August 27 in FU-1-2.NB *) and[FUNCTION[composite[FIRST,x_]],FUNCTION[composite[SECOND,x_]]] := FUNCTION[composite[id[cart[V,V]],x]] (* derived 2004 December 5 in MAP-CO.NB *) and[FUNCTION[composite[Id,z_]],subclass[z_,cart[x_,y_]]] := and[FUNCTION[z],subclass[z,cart[x,y]]] (* derived 2005 November 29 in TOTAL-FU.NB *) and[FUNCTION[x_],FUNCTION[composite[Id,x_]]] := FUNCTION[x] (* derived 2006 June 11 in FU-FIN.NB *) and[FUNCTION[x_],member[domain[x_],FINITE]] := and[FUNCTION[x],member[x,FINITE]] (* derived 2006 June 11 in FU-FIN.NB *) and[FUNCTION[x_],member[domain[x_],V]] := and[FUNCTION[x],member[x,V]] (* derived 2004 November 12 in SETPFUNP.NB *) and[FUNCTION[x_],member[funpart[x_],y_]] := and[FUNCTION[x],member[x,y]] (* derived 2008 October 31 in MAP.NB *) and[FUNCTION[w_],member[w_,map[x_,y_]]] := member[w,map[x,y]] (* derived 2008 August 18 in CANTOR.NB *) and[FUNCTION[x_],member[x_,y_],subclass[P[domain[x_]],range[x_]]] := False (* derived 2008 December 23 in IDS-FUNS.NB *) and[FUNCTION[x_],member[x_,V],subclass[range[x_],u_]] := member[x,map[domain[x],u]] (* derived 2007 October 4 in UNOPS.NB *) and[FUNCTION[x_],member[x_,UNOPS]] := member[x,UNOPS] (* derived 2004 March 18 in RFX-WRAP.NB *) and[FUNCTION[x_],REFLEXIVE[x_]] := subclass[x,Id] (* derived 2004 November 12 in SETPFUNP.NB *) and[FUNCTION[setpart[x_]],member[x_,y_]] := and[FUNCTION[x],member[x,y]] (* derived 2006 December 9 in MISC.NB *) and[FUNCTION[x_],subclass[x_,cart[V,y_]]] := and[FUNCTION[x],subclass[range[x],y]] (* derived 2008 August 19 in WF-DESC.NB *) and[FUNCTION[x_],subclass[composite[inverse[SUCC],id[omega]], composite[inverse[x_],y_,x_]],WELLFOUNDED[y_]] := False (* derived 2005 February 6 in DESCEND.NB *) and[member[0,x_],member[x_,DESCENDING]] := False (* derived 2007 September 6 in A-SETHD.NB *) and[member[A[intersection[x_,complement[y_]]],z_],subclass[x_,y_]] := False (* derived 2007 May 1 in CARTRCH.NB *) and[member[x_,card[y_]],member[card[y_],x_]] := False (* derived 2007 May 1 in CARTRCH.NB *) and[member[x_,card[y_]],not[equal[x_,card[y_]]]] := member[x,card[y]] (* derived 2007 May 1 in CARTRCH.NB *) and[member[card[x_],y_],not[equal[y_,card[x_]]]] := member[card[x],y] (* derived 2007 May 1 in CARTRCH.NB *) and[member[x_,card[y_]],not[member[card[y_],x_]]] := member[x,card[y]] (* derived 2007 May 1 in CARTRCH.NB *) and[member[card[x_],y_],not[member[y_,card[x_]]]] := member[card[x],y] (* derived 2007 September 6 in A-SETHD.NB *) and[member[card[x_],y_],not[member[x_,image[Q,OMEGA]]]] := False (* derived 2007 April 26 in CL-GLBSU.NB *) and[member[x_,CL],PARTIALORDER[x_]] := member[x,CL] (* derived 2004 June 19 in X14--.NB *) and[member[complement[x_],V],member[intersection[x_,y_],V]] := and[member[y,V],member[complement[x],V]] (* derived 2005 January 27 in DK-SU.NB *) and[member[x_,DEDEKIND],member[pair[x_,omega],Q]] := False (* derived 2007 December 20 in FUND-X.NB *) and[member[x_,DESCENDING],WELLFOUNDED[composite[id[x_],E]]] := equal[0,x] (* derived 2006 October 24 in EVAL.NB *) and[member[x_,domain[funpart[y_]]],member[image[y_,set[x_]],V]] := member[x,domain[funpart[y]]] (* derived 2007 October 27 in TOPPLE.NB *) and[member[u_,domain[x_]],member[APPLY[x_,u_],v_]] := member[APPLY[x,u],v] (* derived 2008 October 31 in BIJ.NB *) and[member[domain[x_],V],member[inverse[x_],y_]] := member[inverse[x],y] (* derived 2006 August 15 in EVEN-ODD.NB *) and[member[x_,even],member[x_,odd]] := False (* derived 2005 January 27 in FINITE.NB *) and[member[x_,FINITE],member[pair[x_,omega],Q]] := False (* derived 2007 September 6 in A-SETHD.NB *) and[member[x_,FINITE],not[member[x_,image[Q,OMEGA]]]] := False (* derived 2008 January 16 in UCHN-FIN.NB *) and[member[x_,FINITE],subclass[x_,image[inverse[PS],x_]]] := equal[0,x] (* derived 2006 March 21 in FINITE.NB *) and[member[x_,FINITE],subclass[P[x_],FINITE]] := member[x,FINITE] (* derived 2004 October 30 in MEMB-CO.NB *) and[member[first[w_],y_],member[pair[first[w_],second[w_]],x_]] := and[member[w,x],member[first[w],y]] (* revised 2003 June 2 based on SETHOOD.NB *) and[member[first[x_],y_],not[member[x_,V]]] := False (* added 2002 November 3 based on FLIP.NB *) and[member[first[x_],V],member[first[second[x_]],y_]] := member[first[second[x]],y] (* added 2001 November 16 based on INVERSE.NB *) and[member[first[x_],V],member[second[x_],y_]] := member[second[x],y] (* derived 2006 September 13 in CATORELN.NB *) and[member[first[x_],V],subclass[first[x_],cart[u_,v_]]] := subclass[first[x],cart[u,v]] (* derived 2006 September 17 in IDS-INCL.NB *) and[member[first[x_],V],subclass[first[x_],id[y_]]] := subclass[first[x],id[y]] (* derived 2007 April 23 in PO-SIMPL.NB *) and[member[x_,fix[y_]],member[pair[x_,x_],y_]] := member[x,fix[y]] (* derived 2007 December 28 in MEMB-PO.NB *) and[member[x_,fix[po[z_]]],member[pair[x_,y_],po[z_]]] := member[pair[x,y],po[z]] (* derived 2007 December 28 in MEMB-PO.NB *) and[member[y_,fix[po[z_]]],member[pair[x_,y_],po[z_]]] := member[pair[x,y],po[z]] (* derived 2008 March 13 in TO-RULES.NB *) and[member[x_,fix[to[z_]]],member[pair[x_,y_],to[z_]]] := member[pair[x,y],to[z]] (* derived 2008 March 13 in TO-RULES.NB *) and[member[y_,fix[to[z_]]],member[pair[x_,y_],to[z_]]] := member[pair[x,y],to[z]] (* derived 2008 March 13 in WO-RULES.NB *) and[member[x_,fix[wo[z_]]],member[pair[x_,y_],wo[z_]]] := member[pair[x,y],wo[z]] (* derived 2008 March 13 in WO-RULES.NB *) and[member[y_,fix[wo[z_]]],member[pair[x_,y_],wo[z_]]] := member[pair[x,y],wo[z]] (* derived 2008 December 5 in GROUPS.NB *) and[member[x_,GROUPS],not[equal[0,x_]]] := member[x,GROUPS] (* derived 2006 March 12 in HULL.NB *) and[member[y_,image[inverse[S],x_]],member[hull[x_,y_],z_]] := member[hull[x,y],z] (* derived 2007 April 29 in DO-CARD.NB *) and[member[x_,image[Q,OMEGA]],member[card[x_],y_]] := member[card[x],y] (* derived 2008 April 17 in EQ-CARD.NB *) and[member[x_,image[Q,OMEGA]],member[pair[card[x_],y_],Q]] := member[pair[card[x],y],Q] (* derived 2008 April 17 in EQ-CARD.NB *) and[member[y_,image[Q,OMEGA]],member[pair[x_,card[y_]],Q]] := member[pair[x,card[y]],Q] (* derived 2008 January 27 in Q-S.NB *) and[member[x_,image[Q,P[y_]]],member[y_,image[Q,P[x_]]]] := member[pair[x,y],Q] (* derived 2007 January 9 in DISTRIB.NB *) and[member[inverse[x_],Z],subclass[x_,cart[V,V]]] := member[x,Z] (* derived 2007 April 17 in LD9-19.NB *) and[member[w_,ld[x_,y_]],member[x_,omega]] := member[w,ld[x,y]] (* derived 2007 April 5 in LD-3.NB *) and[member[w_,ld[x_,y_]],member[y_,omega]] := member[w,ld[x,y]] (* derived 2008 October 1 in BIJ-MAP.NB *) and[member[w_,map[x_,y_]],member[inverse[w_],map[y_,x_]]] := member[w,bij[x,y]] (* derived 2008 December 23 in IDS-FUNS.NB *) and[member[x_,map[y_,z_]],member[y_,V]] := member[x,map[y,z]] (* derived 2008 October 31 in MAP.NB *) and[member[w_,map[x_,y_]],subclass[w_,cart[x_,z_]]] := member[w,map[x,intersection[y,z]]] (* derived 2008 October 31 in MAP.NB *) and[member[w_,map[x_,y_]],subclass[w_,cart[V,z_]]] := member[w,map[x,intersection[y,z]]] (* derived 2008 October 31 in MAP.NB *) and[member[w_,map[x_,y_]],subclass[range[w_],z_]] := member[w,map[x,intersection[y,z]]] (* derived 2005 February 20 in CARD-TWO.NB *) and[member[x_,y_],member[x_,z_]] := member[x,y] /; subclass[y,z] (* derived 2004 August 18 in X3080.NB *) and[member[x_,y_],member[domain[x_],V]] := member[x,y] (* derived 2004 August 18 in X3080.NB *) and[member[x_,y_],member[fix[x_],V]] := member[x,y] (* added 2002 October 8 based on INVAR-I.NB *) and[member[x_,y_],member[intersection[x_,z_],V]] := member[x,y] (* derived 2005 April 28 in NATORDER.NB *) and[member[x_,y_],member[y_,nat[z_]],not[member[x_,nat[z_]]]] := False (* derived 2007 April 17 in LT-MONUS.NB *) and[member[x_,y_],member[natsub[x_,y_],z_]] := False (* derived 2007 April 5 in LD-3.NB *) and[member[x_,y_],member[y_,omega],not[subclass[x_,y_]]] := False (* derived 2006 April 11 in RUS-OM.NB *) and[member[x_,y_],member[y_,omega],subclass[y_,x_]] := False (* derived 2005 May 26 in DIV-I.NB *) and[member[y_,x_],member[pair[x_,y_],DIV]] := and[equal[0,y],member[x,omega],not[equal[0,x]]] (* derived 2007 August 21 in K-U.NB *) and[member[x_,y_],member[pair[U[y_],x_],K]] := False (* derived 2004 August 18 in X3080.NB *) and[member[x_,y_],member[range[x_],V]] := member[x,y] (* derived 2006 March 7 in REGULAR.NB *) and[member[x_,y_],member[y_,REGULAR],subclass[y_,x_]] := False (* derived 2004 August 18 in X3080.NB *) and[member[x_,y_],member[rotate[x_],V]] := member[x,y] (* derived 2008 February 27 in REG-ACY.NB *) and[member[x_,y_],member[y_,x_],subclass[x_,REGULAR]] := False and[member[x_,y_],member[x_,V]] := member[x,y] (* derived 2005 February 13 in NAT.NB *) and[member[y_,nat[x_]],member[nat[x_],y_]] := False (* derived 2005 July 4 in SUCC-NAT.NB *) and[member[x_,nat[y_]],member[succ[x_],nat[y_]]] := member[succ[x],nat[y]] (* derived 2005 April 26 in TRICHOT.NB *) and[member[x_,nat[y_]],not[equal[x_,nat[y_]]]] := member[x,nat[y]] (* derived 2005 July 4 in SUCC-NAT.NB *) and[member[x_,nat[y_]],not[equal[nat[y_],succ[x_]]]] := member[succ[x],nat[y]] (* derived 2005 April 26 in TRICHOT.NB *) and[member[x_,nat[y_]],not[member[nat[y_],x_]]] := member[x,nat[y]] (* derived 2005 July 4 in SUCC-NAT.NB *) and[member[x_,nat[y_]],not[member[succ[x_],nat[y_]]]] := equal[nat[y],succ[x]] (* derived 2005 April 28 in NATORDER.NB *) and[member[x_,nat[y_]],not[subclass[x_,nat[y_]]]] := False (* derived 2005 June 27 in NAT-SUCC.NB *) and[member[x_,nat[y_]],subclass[x_,nat[y_]]] := member[x,nat[y]] (* derived 2005 April 28 in NATORDER.NB *) and[member[x_,nat[y_]],subclass[nat[y_],x_]] := False (* derived 2005 April 28 in NATORDER.NB *) and[member[nat[x_],y_],subclass[y_,nat[x_]]] := False (* derived 2007 March 18 in MOD-DIV.NB *) and[member[z_,natmod[x_,y_]],member[pair[y_,natsub[x_,z_]],DIV]] := False (* derived 2007 April 5 in LD-3.NB *) and[member[natmul[v_,y_],natmul[u_,x_]],not[subclass[natmul[v_,y_],natmul[u_,x_]]]] := False (* derived 2007 April 11 in MONUSMEM.NB *) and[member[natsub[x_,y_],z_],not[member[x_,y_]]] := member[natsub[x,y],z] (* derived 2007 April 11 in MONUSMEM.NB *) and[member[natsub[x_,y_],z_],subclass[y_,x_]] := member[natsub[x,y],z] (* added 2001 November 15 based on UNWRAP-1.NB *) and[member[x_,y_],not[member[x_,V]]] := False (* derived 2007 April 5 in EVEN-ODD.NB *) and[member[x_,odd],member[y_,odd],member[natmul[x_,y_],even]] := False (* derived 2007 May 18 in OL-SS.NB *) and[member[x_,OMEGA],member[x_,x_]] := False (* derived 2005 May 17 in DIVRULES.NB *) and[member[x_,omega],member[y_,image[inverse[DIV],succ[x_]]]] := and[member[x,omega],member[y,omega]] (* derived 2005 June 7 in O7COR1.NB *) and[member[x_,omega],member[x_,y_],member[y_,omega]] := and[member[x,y],member[y,omega]] (* derived 2007 May 19 in OLDO-ORD.NB *) and[member[x_,OMEGA],member[x_,y_],member[y_,OMEGA]] := and[member[x,y],member[y,OMEGA]] (* derived 2005 April 26 in DICHOT.NB *) and[member[x_,omega],member[nat[y_],x_],not[subclass[nat[y_],x_]]] := False (* derived 2007 April 11 in MONUSMEM.NB *) and[member[x_,omega],member[natsub[x_,y_],z_]] := member[natsub[x,y],z] (* derived 2007 April 17 in LT-MONUS.NB *) and[member[x_,omega],member[natadd[x_,y_],z_]] := member[natadd[x,y],z] (* derived 2007 April 17 in LT-MONUS.NB *) and[member[x_,omega],member[natmul[x_,y_],z_]] := member[natmul[x,y],z] (* derived 2007 April 11 in MONUSMEM.NB *) and[member[y_,omega],member[natsub[x_,y_],z_]] := member[natsub[x,y],z] (* derived 2005 March 29 in DIV-SUB.NB *) and[member[x_,omega],member[pair[x_,y_],DIV]] := member[pair[x,y],DIV] (* derived 2005 March 29 in DIV-SUB.NB *) and[member[y_,omega],member[pair[x_,y_],DIV]] := member[pair[x,y],DIV] (* derived 2007 January 14 in ADD-INEQ.NB removed 2007 January 23 due to looping problem and[member[z_,omega],member[pair[x_,z_],iterate[SUCC,set[y_]]]] := and[equal[z,natadd[x,y]],member[z,omega]] *) (* derived 2007 April 3 in DIV-MUL.NB *) and[member[x_,omega],member[pair[natmul[x_,y_],z_],DIV]] := member[pair[natmul[x,y],z],DIV] (* derived 2007 April 3 in DIV-MUL.NB *) and[member[x_,omega],member[pair[w_,natmul[x_,y_]],DIV]] := member[pair[w,natmul[x,y]],DIV] (* derived 2005 May 25 in MOD-A.NB *) and[member[y_,omega],member[pair[x_,natsub[y_,z_]],DIV]] := member[pair[x,natsub[y,z]],DIV] (* derived 2005 May 25 in MOD-A.NB *) and[member[z_,omega],member[pair[x_,natsub[y_,z_]],DIV]] := member[pair[x,natsub[y,z]],DIV] (* derived 2005 February 16 in X3730-38.NB *) and[member[x_,OMEGA],member[U[x_],OMEGA]] := member[x,OMEGA] (* derived 2005 February 19 in ITR-OM-E.NB *) and[member[x_,omega],not[equal[0,intersection[omega,x_]]]] := and[member[x,omega],not[equal[0,x]]] (* derived 2006 January 23 in NAT-FP-E.NB *) and[member[x_,omega],member[x_,x_]] := False (* derived 2005 January 3 in ZERO.NB *) and[member[x_,omega],not[member[0,x_]]] := equal[0,x] (* derived 2006 August 15 in EVEN-ODD.NB *) and[member[x_,omega],not[member[x_,even]]] := member[x,odd] (* derived 2006 August 15 in EVEN-ODD.NB *) and[member[x_,omega],not[member[x_,odd]]] := member[x,even] (* derived 2008 September 18 in REPLACE.NB *) and[member[x_,omega],not[subclass[x_,set[0]]]] := and[member[x,omega],member[set[0],x]] (* derived 2005 February 17 in X3741-49.NB *) and[member[x_,OMEGA],subclass[x_,omega]] := or[equal[omega,x],member[x,omega]] (* derived 2005 February 16 in X3730-38.NB *) and[member[x_,OMEGA],subclass[U[x_],x_]] := member[x,OMEGA] (* derived 2008 August 6 in WF-PC-ON.NB *) and[member[x_,OMEGA],WELLFOUNDED[composite[id[P[x_]],PS]]] := member[x,omega] (* derived 2007 May 1 in ORDTRICH.NB *) and[member[x_,ord[y_]],member[ord[y_],x_]] := False (* derived 2007 May 1 in ORDTRICH.NB *) and[member[x_,ord[y_]],not[equal[x_,ord[y_]]]] := member[x,ord[y]] (* derived 2007 May 1 in ORDTRICH.NB *) and[member[x_,ord[y_]],not[member[ord[y_],x_]]] := member[x,ord[y]] (* derived 2007 May 1 in ORDTRICH.NB *) and[member[ord[x_],y_],not[member[y_,ord[x_]]]] := member[ord[x],y] (* derived 2006 May 21 in RK-UCL.NB *) and[member[ord[x_],ord[y_]],not[member[succ[ord[x_]],ord[y_]]]] := equal[ord[y],succ[ord[x]]] (* derived 2005 January 29 in DIV.NB *) and[member[pair[x_,y_],DIV],member[pair[y_,x_],DIV]] := and[equal[x,y],member[x,omega]] (* derived 2007 April 3 in DIV-MUL.NB *) and[member[pair[x_,y_],DIV],member[pair[natmul[x_,z_],y_],DIV]] := member[pair[natmul[x,z],y],DIV] (* derived 2007 March 11 in SIMPLIFY.NB *) and[member[pair[x_,y_],DIV],not[equal[0,x_]],not[equal[0,y_]]] := and[member[pair[x,y],DIV],not[equal[0,y]]] (* derived 2007 March 11 in SIMPLIFY.NB *) and[member[pair[x_,y_],DIV],not[member[x_,omega]]] := False (* derived 2005 May 26 in DIV-I.NB *) and[member[pair[x_,y_],DIV],not[subclass[x_,y_]]] := and[equal[0,y],member[x,omega],not[equal[0,x]]] (* derived 2007 September 23 in AND-K-SU.NB *) and[member[pair[u_,x_],K],member[pair[v_,y_],K], not[equal[u_,v_]],not[subclass[y_,x_]],subclass[u_,y_],subclass[v_,u_]] := False (* derived 2007 September 23 in AND-K-SU.NB *) and[member[pair[x_,y_],K],not[subclass[z_,y_]],subclass[z_,x_]] := False (* derived 2007 August 21 in K-U.NB *) and[member[pair[x_,y_],K],subclass[y_,x_]] := False (* derived 2007 September 23 in AND-K-SU.NB *) and[member[pair[x_,y_],K],subclass[y_,z_],subclass[z_,x_]] := False (* derived 2007 September 23 in AND-K-SU.NB *) and[member[pair[x_,y_],K],subclass[x_,z_],subclass[y_,z_]] := and[member[pair[x,y],K],subclass[y,z]] (* derived 2005 May 25 in MOD-A.NB *) and[member[pair[x_,natsub[y_,z_]],DIV],subclass[z_,y_]] := member[pair[x,natsub[y,z]],DIV] (* derived 2007 April 23 in PO-SIMPL.NB *) and[member[pair[x_,y_],po[z_]],member[pair[y_,x_],po[z_]]] := and[equal[x,y],member[x,fix[po[z]]]] (* derived 2007 April 26 in CL-GLBSU.NB *) and[member[po[x_],V],subclass[P[fix[po[x_]]],domain[GLB[po[x_]]]]] := member[po[x],CL] (* derived 2007 February 10 in COMPOS-2.NB *) and[member[x_,PRIMES],member[x_,image[NATMUL,cart[x_,x_]]]] := False (* derived 2007 February 10 in COMPOS-2.NB *) and[member[x_,PRIMES],member[x_,image[NATMUL, cart[complement[succ[set[0]]],complement[succ[set[0]]]]]]] := False (* derived 2008 December 5 in GROUPS.NB *) and[member[x_,QUASIGPS],member[x_,SEMIGPS]] := or[equal[0,x],member[x,GROUPS]] (* derived 2009 January 9 in CAT-DO.NB *) and[member[u_,range[cat[x_]]],member[pair[u_,v_],domain[cat[x_]]]] := member[pair[u,v],domain[cat[x]]] (* derived 2009 January 9 in CAT-DO.NB *) and[member[v_,range[cat[x_]]],member[pair[u_,v_],domain[cat[x_]]]] := member[pair[u,v],domain[cat[x]]] (* derived 2005 January 21 in SS-A.NB *) and[member[x_,range[SINGLETON]],not[equal[0,x_]]] := member[x,range[SINGLETON]] (* derived 2008 October 31 in BIJ.NB *) and[member[range[x_],V],member[inverse[x_],y_]] := member[inverse[x],y] (* derived 2007 September 6 in A-SETHD.NB *) and[member[rank[x_],y_],not[member[x_,REGULAR]]] := False (* derived 2006 March 30 in REG-SU.NB *) and[member[reg[x_],y_],subclass[y_,reg[x_]]] := False (* derived 2008 February 27 in REG-ACY.NB *) and[member[x_,REGULAR],member[x_,x_]] := False (* derived 2008 February 27 in REG-ACY.NB *) and[member[x_,REGULAR],member[x_,y_],member[y_,x_]] := False (* derived 2007 December 17 in DESC-REG.NB *) and[member[x_,REGULAR],member[x_,y_],member[y_,DESCENDING]] := False (* derived 2008 February 27 in REG-ACY.NB *) and[member[x_,REGULAR],member[x_,y_],member[y_,z_],member[z_,x_]] := False (* derived 2007 June 30 in RANK-FIN.NB *) and[member[x_,REGULAR],member[rank[x_],y_]] := member[rank[x],y] (* derived 2006 March 7 in REGULAR.NB *) and[member[x_,REGULAR],member[x_,y_],subclass[y_,x_]] := False (* derived 2007 November 29 in FP-TRV-E.NB *) and[member[x_,REGULAR],member[x_,tc[x_]]] := False (* derived 2006 March 14 in ZN-ON.NB *) and[member[x_,REGULAR],subclass[rank[x_],ord[y_]]] := subclass[rank[x],ord[y]] (* added 2003 June 2 based on SETHOOD.NB *) and[member[second[x_],y_],not[member[x_,V]]] := False (* derived 2004 May 4 in ALLCLOSED.NB *) and[member[y_,z_],subclass[y_,domain[VERTSECT[x_]]]] := and[member[y,z],member[image[x,y],V]] (* derived 2005 January 15 in HILBERT.NB *) and[member[x_,y_],subclass[P[x_],x_]] := False (* derived 2004 May 4 in ALLCLOSED.NB *) and[member[y_,z_],subclass[P[y_],domain[VERTSECT[x_]]]] := and[member[y,z],member[image[x,P[y]],V]] (* derived 2008 February 27 in REG-ACY.NB *) and[member[x_,x_],subclass[x_,REGULAR]] := False (* added 2001 November 15 *) and[member[x_,y_],subclass[y_,set[x_]]] := and[equal[set[x],y],member[x,V]] (* derived 2008 February 27 in REG-ACY.NB *) and[member[x_,tc[x_]],subclass[x_,REGULAR]] := False (* derived 2007 October 4 in UNOPS.NB *) and[member[x_,UNOPS],not[FUNCTION[x_]]] := False (* derived 2007 October 4 in UNOPS.NB *) and[member[x_,UNOPS],not[subclass[range[x_],domain[x_]]]] := False (* derived 2007 October 4 in UNOPS.NB *) and[member[x_,UNOPS],subclass[range[x_],domain[x_]]] := member[x,UNOPS] (* added 2001 June 28 based on SETHOOD.NB *) and[member[x_,V],member[complement[x_],V]] := False (* added 2001 June 28 based on SETHOOD.NB *) and[member[x_,V],member[domain[x_],V]] := member[x,V] (* added 2002 November 3 based on FIRST.NB *) and[member[x_,V],member[first[x_],y_]] := member[first[x],y] (* added 2002 June 22 based on X-RO-ASS.NB *) and[member[x_,V],member[first[first[x_]],V]] := member[first[first[x]],V] (* derived 2004 March 29 based on HULL.NB *) and[member[y_,V],member[hull[x_,y_],z_]] := member[hull[x,y],z] (* derived 2004 August 1 in THINNESS.NB *) and[member[y_,V],member[image[trv[x_],y_],V]] := member[iterate[x,y],V] (* derived 2004 June 19 in X14--.NB *) and[member[x_,V],member[intersection[y_,complement[x_]],V]] := and[member[x,V],member[y,V]] (* derived 2004 April 18 in REPLACE.NB *) and[member[x_,V],member[intersection[y_,P[x_]],V]] := member[x,V] (* added 2003 January 25 based on INVAR.NB *) and[member[x_,V],member[invar[x_],V]] := False (* derived 2007 April 17 in LD9-19.NB *) and[member[x_,V],member[natmul[x_,y_],z_]] := member[natmul[x,y],z] (* derived 2008 January 27 in Q-S.NB *) and[member[x_,V],member[P[x_],y_]] := member[P[x],y] (* added 2002 October 15 based on MEMBER.NB *) and[member[u_,V],member[pair[u_,v_],composite[x_,y_]]] := member[pair[u,v],composite[x,y]] (* added 2002 October 15 based on MEMBER.NB *) and[member[v_,V],member[pair[u_,v_],composite[x_,y_]]] := member[pair[u,v],composite[x,y]] (* derived 2005 January 27 in DIV.NB *) and[member[x_,V],member[pair[x_,y_],DIV]] := member[pair[x,y],DIV] (* derived 2005 January 27 in DIV.NB *) and[member[y_,V],member[pair[x_,y_],DIV]] := member[pair[x,y],DIV] (* derived 2008 November 21 in AND-ASS.NB *) and[member[x_,V],member[pair[x_,y_],domain[assoc[z_]]]] := member[pair[x,y],domain[assoc[z]]] (* derived 2008 November 21 in AND-ASS.NB *) and[member[y_,V],member[pair[x_,y_],domain[assoc[z_]]]] := member[pair[x,y],domain[assoc[z]]] (* derived 2008 December 31 in CAT-AP.NB *) and[member[x_,V],member[pair[x_,y_],domain[cat[z_]]]] := member[pair[x,y],domain[cat[z]]] (* derived 2008 December 31 in CAT-AP.NB *) and[member[y_,V],member[pair[x_,y_],domain[cat[z_]]]] := member[pair[x,y],domain[cat[z]]] (* derived 2008 January 29 in IM-TRV.NB *) and[member[x_,V],member[pair[x_,y_],eqv[z_]]] := member[pair[x,y],eqv[z]] (* derived 2008 January 29 in IM-TRV.NB *) and[member[y_,V],member[pair[x_,y_],eqv[z_]]] := member[pair[x,y],eqv[z]] (* derived 2007 January 11 in ZLEQ.NB *) and[member[x_,V],member[pair[x_,y_],INTLEQ]] := member[pair[x,y],INTLEQ] (* derived 2007 January 11 in ZLEQ.NB *) and[member[y_,V],member[pair[x_,y_],INTLEQ]] := member[pair[x,y],INTLEQ] (* derived 2005 January 7 in CARD-K.NB *) and[member[x_,V],member[pair[x_,y_],K]] := member[pair[x,y],K] (* derived 2005 January 7 in CARD-K.NB *) and[member[y_,V],member[pair[x_,y_],K]] := member[pair[x,y],K] (* derived 2008 November 21 in AND-ASS.NB *) and[member[u_,V],member[pair[pair[u_,v_],w_],assoc[x_]]] := member[pair[pair[u,v],w],assoc[x]] (* derived 2008 November 21 in AND-ASS.NB *) and[member[v_,V],member[pair[pair[u_,v_],w_],assoc[x_]]] := member[pair[pair[u,v],w],assoc[x]] (* derived 2008 November 21 in AND-ASS.NB *) and[member[w_,V],member[pair[pair[u_,v_],w_],assoc[x_]]] := member[pair[pair[u,v],w],assoc[x]] (* derived 2008 December 31 in CAT-AP.NB *) and[member[u_,V],member[pair[pair[u_,v_],w_],cat[x_]]] := member[pair[pair[u,v],w],cat[x]] (* derived 2008 December 31 in CAT-AP.NB *) and[member[v_,V],member[pair[pair[u_,v_],w_],cat[x_]]] := member[pair[pair[u,v],w],cat[x]] (* derived 2008 December 31 in CAT-AP.NB *) and[member[w_,V],member[pair[pair[u_,v_],w_],cat[x_]]] := member[pair[pair[u,v],w],cat[x]] (* derived 2005 December 31 in PO-MEMB.NB *) and[member[x_,V],member[pair[x_,y_],po[z_]]] := member[pair[x,y],po[z]] (* derived 2005 December 31 in PO-MEMB.NB *) and[member[y_,V],member[pair[x_,y_],po[z_]]] := member[pair[x,y],po[z]] (* derived 2005 January 27 in Q.NB *) and[member[x_,V],member[pair[x_,y_],Q]] := member[pair[x,y],Q] (* derived 2005 January 27 in Q.NB *) and[member[y_,V],member[pair[x_,y_],Q]] := member[pair[x,y],Q] (* derived 2007 May 3 in SMALLWOB.NB *) and[member[x_,V],member[pair[x_,y_],SMALLER]] := member[pair[x,y],SMALLER] (* derived 2005 December 31 in THINPART.NB *) and[member[x_,V],member[pair[x_,y_],thinpart[z_]]] := member[pair[x,y],thinpart[z]] (* derived 2005 December 31 in THINPART.NB *) and[member[y_,V],member[pair[x_,y_],thinpart[z_]]] := member[pair[x,y],thinpart[z]] (* derived 2008 March 13 in TO-RULES.NB *) and[member[x_,V],member[pair[x_,y_],to[z_]]] := member[pair[x,y],to[z]] (* derived 2008 March 13 in TO-RULES.NB *) and[member[y_,V],member[pair[x_,y_],to[z_]]] := member[pair[x,y],to[z]] (* derived 2008 January 29 in IM-TRV.NB *) and[member[x_,V],member[pair[x_,y_],trv[z_]]] := member[pair[x,y],trv[z]] (* derived 2008 January 29 in IM-TRV.NB *) and[member[y_,V],member[pair[x_,y_],trv[z_]]] := member[pair[x,y],trv[z]] (* derived 2008 March 13 in WO-RULES.NB *) and[member[x_,V],member[pair[x_,y_],wo[z_]]] := member[pair[x,y],wo[z]] (* derived 2008 March 13 in WO-RULES.NB *) and[member[y_,V],member[pair[x_,y_],wo[z_]]] := member[pair[x,y],wo[z]] (* derived 2005 January 27 in ZN.NB *) and[member[x_,V],member[pair[x_,y_],ZN]] := member[pair[x,y],ZN] (* derived 2005 January 27 in ZN.NB *) and[member[y_,V],member[pair[x_,y_],ZN]] := member[pair[x,y],ZN] (* added 2001 June 28 based on SETHOOD.NB *) and[member[x_,V],member[range[x_],V]] := member[x,V] (* derived 2007 June 30 in RANK-FIN.NB *) and[member[x_,V],member[rank[x_],y_]] := member[rank[x],y] (* added 2002 November 3 based on FIRST.NB *) and[member[x_,V],member[second[x_],y_]] := member[second[x],y] (* derived 2006 June 20 in MAP-RASG.NB *) and[member[x_,V],member[y_,z_],subclass[x_,y_]] := and[member[y,z],subclass[x,y]] (* derived 2006 May 29 in OL-DO.NB *) and[member[x_,V],member[succ[x_],y_]] := member[succ[x],y] (* added 2003 June 29 based on POWER.NB *) and[member[x_,V],member[U[x_],y_]] := member[U[x],y] (* added 2001 December 6 based on MEMBER.NB *) and[member[x_,V],member[y_,V],subclass[x_,y_]] := and[member[y,V],subclass[x,y]] (* derived 2004 July 22 in REPLACE.NB *) and[member[x_,V],not[equal[0,y_]],not[member[x_,A[y_]]]] := and[member[x,V],not[member[x,A[y]]]] (* added 2001 November 14 based on DI.NB *) and[member[x_,V],not[equal[V,x_]]] := member[x,V] (* derived 2005 October 6 in CL.NB *) and[member[x_,V],PARTIALORDER[x_],subclass[P[fix[x_]],domain[GLB[x_]]]] := member[x,CL] (* derived 2006 January 14 in CL-LUB.NB *) and[member[x_,V],PARTIALORDER[x_],subclass[P[fix[x_]],domain[LUB[x_]]]] := member[x,CL] (* derived 2006 September 2 in HULL-Z.NB *) and[member[x_,V],subclass[cart[x_,x_],EQUIDIFF]] := subclass[cart[x,x],EQUIDIFF] (* derived 2006 September 13 in CATORELN.NB *) and[member[x_,V],subclass[first[x_],cart[u_,v_]]] := subclass[first[x],cart[u,v]] (* derived 2004 September 23 in WF-LEX.NB *) and[member[x_,V],subclass[x_,image[wf[y_],x_]]] := equal[0,x] (* added 2002 May 14 based on IND-C.NB *) and[member[x_,V],subclass[x_,omega]] := subclass[x,omega] (* derived 2004 July 25 in CANTOR.NB *) and[member[x_,V],subclass[P[domain[funpart[x_]]],range[funpart[x_]]]] := False (* derived 2008 August 7 in TARSKI.NB *) and[member[x_,V],subclass[P[x_],FINITE]] := member[x,FINITE] (* derived 2006 March 14 in ZN-ON.NB *) and[member[x_,V],subclass[rank[x_],ord[y_]]] := subclass[rank[x],ord[y]] (* added 2003 June 5 based on REG.NB *) and[member[x_,V],subclass[x_,REGULAR]] := member[x,REGULAR] (* added 2001 November 15 *) and[member[x_,V],subclass[x_,set[y_]]] := subclass[x,set[y]] (* derived 2007 January 20 in SU-Z.NB *) and[member[x_,V],subclass[x_,Z]] := subclass[x,Z] (* derived 2008 November 28 in INTMUL.NB *) and[member[x_,Z],member[pair[pair[x_,y_],z_],INTMUL]] := member[pair[pair[x,y],z],INTMUL] (* derived 2008 November 28 in INTMUL.NB *) and[member[y_,Z],member[pair[pair[x_,y_],z_],INTMUL]] := member[pair[pair[x,y],z],INTMUL] (* derived 2008 November 28 in INTMUL.NB *) and[member[z_,Z],member[pair[pair[x_,y_],z_],INTMUL]] := member[pair[pair[x,y],z],INTMUL] (* derived 2008 November 18 in INTEGER.NB *) and[member[x_,Z],subclass[x_,cart[V,V]]] := member[x,Z] (* derived 2006 January 6 in FU-X.NB *) and[not[equal[0,domain[x_]]],not[FUNCTION[composite[Id,x_]]]] := not[FUNCTION[composite[Id,x]]] (* derived 2005 June 28 in O-MUL.NB *) and[not[equal[0,nat[x_]]],not[member[set[0],nat[x_]]]] := equal[nat[x],set[0]] (* derived 2008 September 17 in MEMB-2.NB *) and[not[equal[0,x_]],not[equal[x_,set[0]]]] := not[subclass[x,set[0]]] (* derived 2004 July 22 in REPLACE.NB *) and[not[equal[0,y_]],not[subclass[x_,A[y_]]]] := not[subclass[x,A[y]]] (* derived 2008 September 17 in MEMB-2.NB *) and[not[equal[0,x_]],not[subclass[x_,set[0]]]] := not[subclass[x,set[0]]] (* derived 2008 July 4 in CHN-COND.NB *) and[not[equal[0,x_]],subclass[intersection[chains[S],P[x_]], union[image[inverse[BIGCUP],image[inverse[S],x_]],set[0]]]] := subclass[Uchains[x],image[inverse[S],x]] (* derived 2008 September 17 in MEMB-2.NB *) and[not[equal[0,x_]],subclass[x_,set[0]]] := equal[x,set[0]] (* derived 2007 May 1 in CARTRCH.NB *) and[not[equal[card[x_],card[y_]]],not[member[card[x_],card[y_]]]] := member[card[y],card[x]] (* derived 2005 April 26 in TRICHOT.NB *) and[not[equal[nat[x_],nat[y_]]],not[member[nat[x_],nat[y_]]]] := member[nat[y],nat[x]] (* derived 2007 September 12 in OR-EQ-SU.NB *) and[not[equal[x_,y_]],not[subclass[x_,y_]]] := not[subclass[x,y]] (* derived 2005 December 7 in SUCC-ORD.NB *) and[not[equal[ord[x_],ord[y_]]],not[member[ord[x_],ord[y_]]]] := member[ord[y],ord[x]] (* derived 2008 September 17 in MEMB-2.NB *) and[not[equal[x_,set[0]]],subclass[x_,set[0]]] := equal[0,x] (* derived 2007 September 6 in ON-WO.NB *) and[not[member[A[x_],omega]],subclass[x_,omega]] := equal[0,x] (* derived 2007 September 6 in ON-WO.NB *) and[not[member[A[x_],OMEGA]],subclass[x_,OMEGA]] := equal[0,x] (* derived 2007 September 6 in ON-WO.NB *) and[not[member[A[x_],x_]],subclass[x_,omega]] := equal[0,x] (* derived 2007 September 6 in ON-WO.NB *) and[not[member[A[x_],x_]],subclass[x_,OMEGA]] := equal[0,x] (* derived 2005 November 4 in CARD-SU.NB *) and[not[member[card[x_],card[y_]]],not[member[card[y_],card[x_]]]] := equal[card[x],card[y]] (* derived 2005 February 13 in NAT.NB *) and[not[member[nat[x_],nat[y_]]],not[member[nat[y_],nat[x_]]]] := equal[nat[x],nat[y]] (* derived 2007 December 5 in FULL.NB *) and[not[member[x_,y_]],not[member[x_,U[tc[y_]]]]] := not[member[x,tc[y]]] (* derived 2005 December 6 in ORDINAL.NB *) and[not[member[ord[x_],ord[y_]]],not[member[ord[y_],ord[x_]]]] := equal[ord[x],ord[y]] (* derived 2008 February 9 in ASYM.NB *) and[not[member[pair[V,V],x_]],subclass[x_,cart[V,V]]] := subclass[x,cart[V,V]] (* derived 2006 May 21 in RK-EQ.NB *) and[not[member[rank[x_],rank[y_]]],not[member[rank[y_],rank[x_]]]] := equal[rank[x],rank[y]] (* derived 2004 July 25 in CANTOR.NB *) and[not[member[x_,V]],not[member[x_,y_]]] := not[member[x,V]] (* added 2003 October 7 based on WF-IND.NB *) and[not[member[x_,V]],not[member[first[x_],V]]] := not[member[x,V]] (* derived 2005 October 8 in TO-WRAP.NB *) and[PARTIALORDER[composite[Id,x_]],subclass[cart[fix[x_],fix[x_]], union[x_,inverse[x_]]]] := TOTALORDER[composite[Id,x]] (* derived 2007 December 29 in PO-RULES.NB *) and[PARTIALORDER[x_],REFLEXIVE[x_]] := PARTIALORDER[x] (* derived 2005 April 7 in WF-TO.NB *) and[PARTIALORDER[x_],subclass[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]]] := TOTALORDER[x] (* derived 2007 December 29 in PO-RULES.NB *) and[PARTIALORDER[x_],subclass[x_,cart[V,V]]] := PARTIALORDER[x] (* derived 2007 December 29 in PO-RULES.NB *) and[PARTIALORDER[x_],subclass[intersection[x_,inverse[x_]],Id]] := PARTIALORDER[x] (* derived 2008 March 2 in WO-LEAST.NB *) and[PARTIALORDER[x_],subclass[P[fix[x_]],union[domain[LEAST[x_]],set[0]]]] := WELLORDER[x] (* derived 2007 December 29 in PO-RULES.NB *) and[PARTIALORDER[x_],TRANSITIVE[x_]] := PARTIALORDER[x] (* derived 2004 March 18 in RFX-WRAP.NB *) and[REFLEXIVE[composite[Id,x_]],subclass[x_,cart[V,V]]] := REFLEXIVE[x] (* derived 2005 October 1 in PO-RS.NB *) and[REFLEXIVE[composite[Id,x_]],subclass[intersection[x_,inverse[x_]],Id], TRANSITIVE[composite[Id,x_]]] := PARTIALORDER[composite[Id,x]] (* derived 2004 March 18 in RFX-TRV.NB *) and[REFLEXIVE[composite[Id,x_]],TRANSITIVE[x_]] := and[REFLEXIVE[x],TRANSITIVE[x]] (* derived 2006 April 29 in TO-WO.NB *) and[REFLEXIVE[x_],REFLEXIVE[composite[Id,x_]]] := REFLEXIVE[x] (* derived 2006 September 14 in BO-NORM.NB *) and[REFLEXIVE[x_],subclass[cart[fix[x_],fix[x_]],x_]] := equal[x,cart[fix[x],fix[x]]] (* derived 2006 April 29 in TO-WO.NB *) and[REFLEXIVE[x_],subclass[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]]] := equal[cart[fix[x],fix[x]],union[x,inverse[x]]] (* derived 2004 March 18 in RFX-TRV.NB *) and[REFLEXIVE[x_],subclass[x_,cart[V,V]]] := REFLEXIVE[x] (* derived 2004 March 21 in PO-WRAP.NB *) and[REFLEXIVE[x_],subclass[intersection[x_,inverse[x_]],Id],TRANSITIVE[x_]] := PARTIALORDER[x] (* derived 2004 March 18 in RFX-TRV.NB *) and[REFLEXIVE[x_],TRANSITIVE[composite[Id,x_]]] := and[REFLEXIVE[x],TRANSITIVE[x]] (* derived 2008 February 5 in TOT-RELN.NB *) and[subclass[cart[x_,z_],w_],subclass[cart[y_,z_],w_]] := subclass[cart[union[x,y],z],w] (* derived 2008 February 5 in TOT-RELN.NB *) and[subclass[cart[w_,x_],z_],subclass[cart[w_,y_],z_]] := subclass[cart[w,union[x,y]],z] (* derived 2006 September 16 in REPLACE.NB *) and[subclass[x_,cart[u_,v_]],subclass[composite[Id,x_],y_]] := and[subclass[x,y],subclass[x,cart[u,v]]] (* derived 2007 February 17 in RELNS.NB *) and[subclass[w_,cart[x_,y_]],subclass[domain[w_],z_]] := subclass[w,cart[intersection[x,z],y]] (* derived 2006 September 13 in CATORELN.NB *) and[subclass[w_,cart[x_,y_]],subclass[range[w_],z_]] := subclass[w,cart[x,intersection[y,z]]] (* derived 2008 February 3 in TOTALORD.NB *) and[subclass[cart[union[domain[x_],range[x_]],union[domain[x_],range[x_]]],union[x_,inverse[x_]]], subclass[intersection[x_,inverse[x_]],Id],TRANSITIVE[x_]] := TOTALORDER[x] (* added 2001 November 17 based on EQ.NB *) and[subclass[x_,cart[V,z_]],subclass[x_,cart[y_,V]]] := subclass[x,cart[y,z]] (* added 2003 September 21 based on RFX-CORE.NB *) and[subclass[x_,cart[V,V]],subclass[x_,cart[y_,z_]]] := subclass[x,cart[y,z]] (* derived 2008 February 5 in TOT-RELN.NB *) and[subclass[x_,cart[V,V]],subclass[cart[union[domain[x_],range[x_]],union[domain[x_],range[x_]]], union[x_,inverse[x_]]]] := equal[cart[union[domain[x],range[x]],union[domain[x],range[x]]],union[x,inverse[x]]] (* added 2001 March 4 based on SU-IN.NB *) and[subclass[x_,cart[V,V]],subclass[inverse[x_],y_]] := subclass[x,inverse[y]] (* derived 2005 October 8 in TO-WRAP.NB *) and[subclass[x_,cart[V,V]],TOTALORDER[x_]] := TOTALORDER[x] (* derived 2004 March 18 in RFX-TRV.NB *) and[subclass[x_,cart[V,V]],TRANSITIVE[composite[Id,x_]]] := TRANSITIVE[x] (* derived 2004 March 18 in RFX-TRV.NB *) and[subclass[x_,cart[V,V]],TRANSITIVE[x_]] := TRANSITIVE[x] (* added 2003 October 7 based on WF-IND.NB *) and[subclass[x_,cart[V,V]],WELLFOUNDED[composite[Id,x_]]] := WELLFOUNDED[x] (* added 2003 July 6 based on ASSOCDEF.NB *) and[subclass[composite[u_,cross[v_,Id],inverse[ASSOC]],composite[x_,cross[y_,z_]]], subclass[image[inverse[v_],domain[domain[u_]]],cart[V,V]]] := subclass[composite[u,cross[v,Id]],composite[x,cross[y,z],ASSOC]] (* derived 2007 October 19 in RECT-CUT.NB *) and[subclass[composite[id[range[y_]],x_,id[domain[y_]]],y_], subclass[y_,cart[V,V]],subclass[y_,x_]] := equal[composite[id[range[y]],x,id[domain[y]]],y] (* added 2001 December 20 based on SUBST-2.NB *) and[subclass[composite[Id,x_],y_],subclass[composite[Id,y_],x_]] := equal[composite[Id,x],composite[Id,y]] (* added 2002 October 25 based on ROTATE.NB *) and[subclass[composite[x_,id[w_]],y_],subclass[composite[y_,id[w_]],x_]] := equal[composite[x,id[w]],composite[y,id[w]]] (* derived 2008 August 20 in FU-EQ.NB *) and[subclass[x_,composite[S,funpart[y_]]],subclass[x_,composite[inverse[S],funpart[y_]]]] := subclass[x,funpart[y]] (* derived 2006 January 28 in PROJ.NB *) and[subclass[x_,composite[x_,x_]],TRANSITIVE[composite[Id,x_]]] := equal[x,composite[x,x]] (* derived 2004 March 18 in RFX-WRAP.NB *) and[subclass[domain[x_],fix[x_]],subclass[range[x_],fix[x_]]] := REFLEXIVE[composite[Id,x]] (* derived 2007 May 9 in CHN-PO.NB *) and[subclass[y_,fix[po[x_]]],TOTALORDER[composite[id[y_],po[x_],id[y_]]]] := subclass[cart[y,y],union[inverse[po[x]],po[x]]] (* derived 2007 May 9 in CHN-PO.NB *) and[subclass[y_,fix[x_]],subclass[cart[y_,y_],union[x_,inverse[x_]]]] := subclass[cart[y,y],union[x,inverse[x]]] (* derived 2008 January 6 in SUBVAR.NB *) and[subclass[x_,fix[y_]],subclass[U[subvar[y_]],x_]] := equal[P[x],subvar[y]] (* derived 2008 March 20 in INIT-WO.NB *) and[subclass[x_,fix[wo[w_]]],subclass[image[wo[w_],x_],x_]] := equal[x,image[wo[w],x]] (* added 2001 April 27 based on MAP2.NB *) and[subclass[z_,FUNS],subclass[image[IMAGE[FIRST],z_],set[x_]]] := subclass[z,map[x,V]] (* derived 2006 September 16 in REPLACE.NB *) and[subclass[x_,id[domain[y_]]],subclass[y_,Id]] := and[subclass[x,y],subclass[y,Id]] (* derived 2006 September 16 in REPLACE.NB *) and[subclass[x_,id[fix[y_]]],subclass[y_,Id]] := and[subclass[x,y],subclass[y,Id]] (* derived 2006 September 16 in REPLACE.NB *) and[subclass[x_,id[range[y_]]],subclass[y_,Id]] := and[subclass[x,y],subclass[y,Id]] (* derived 2006 September 16 in SU-ID.NB *) and[subclass[x_,Id],subclass[x_,y_]] := subclass[x,id[fix[y]]] (* derived 2006 September 16 in SU-ID.NB *) and[subclass[x_,Id],subclass[domain[x_],y_]] := subclass[x,id[y]] (* derived 2006 September 16 in SU-ID.NB *) and[subclass[x_,id[y_]],subclass[domain[x_],z_]] := subclass[x,id[intersection[y,z]]] (* derived 2006 September 16 in SU-ID.NB *) and[subclass[x_,Id],subclass[fix[x_],y_]] := subclass[x,id[y]] (* derived 2008 November 28 in EQ-ID.NB *) and[subclass[x_,id[y_]],subclass[y_,fix[x_]]] := equal[x,id[y]] (* derived 2006 September 16 in SU-ID.NB *) and[subclass[x_,id[y_]],subclass[fix[x_],z_]] := subclass[x,id[intersection[y,z]]] (* derived 2006 September 16 in SU-ID.NB *) and[subclass[x_,Id],subclass[range[x_],y_]] := subclass[x,id[y]] (* derived 2006 September 16 in SU-ID.NB *) and[subclass[x_,id[y_]],subclass[range[x_],z_]] := subclass[x,id[intersection[y,z]]] (* derived 2006 September 16 in SU-ID.NB *) and[subclass[x_,y_],subclass[x_,id[z_]]] := subclass[x,id[intersection[z,fix[y]]]] (* added 2001 April 27 based on MAP2.NB *) and[subclass[image[IMAGE[id[cart[V,V]]],z_],FUNS], subclass[U[z_],cart[V,V]]] := subclass[z,FUNS] (* derived 2007 November 15 in ZORN-LEM.NB *) and[subclass[x_,image[inverse[PS],x_]],subclass[Uchains[x_],image[inverse[S],x_]]] := subclass[Uchains[x],image[inverse[PS],x]] (* added 2003 November 2 based on CHARHULL.NB *) and[subclass[x_,image[inverse[S],y_]],subclass[y_,image[inverse[S],x_]]] := equal[image[inverse[S],x],image[inverse[S],y]] (* derived 2008 February 12 in REFLEXIV.NB *) and[subclass[intersection[y_,image[x_,y_]],fix[x_]], subclass[intersection[y_,image[inverse[x],y_]],fix[x_]]] := REFLEXIVE[composite[id[y],x,id[y]]] (* added 2002 January 3 based on COMPOSE.NB *) and[subclass[intersection[x_,z_],y_],subclass[intersection[y_,z_],x_]] := equal[intersection[x,z],intersection[y,z]] (* derived 2004 March 20 in EQV-WRAP.NB *) and[subclass[inverse[x_],x_],TRANSITIVE[x_]] := EQUIVALENCE[x] (* derived 2004 March 20 in EQV-WRAP.NB *) and[subclass[x_,inverse[x_]],TRANSITIVE[x_]] := EQUIVALENCE[x] (* derived 2004 March 20 in EQV-WRAP.NB *) and[subclass[x_,inverse[x_]],TRANSITIVE[composite[Id,x_]]] := EQUIVALENCE[x] (* derived 2004 December 27 in TRV-RS.NB *) and[subclass[inverse[x_],x_],TRANSITIVE[composite[Id,x_]]] := EQUIVALENCE[composite[Id,x]] (* added 2001 April 27 based on MAP2.NB *) and[subclass[z_,map[x_,V]],subclass[U[z_],cart[V,y_]]] := subclass[z,map[x,y]] (* derived 2005 February 10 in X3557.NB *) and[subclass[x_,omega],subclass[image[BIGCUP,x_],x_]] := or[equal[omega,x],member[x,omega]] (* derived 2007 April 20 in GCD-UP.NB *) and[subclass[x_,omega],subclass[x_,image[DIV,y_]]] := subclass[x,image[DIV,y]] (* derived 2005 February 10 in X3557.NB *) and[subclass[x_,omega],subclass[image[inverse[SUCC],x_],x_]] := or[equal[omega,x],member[x,omega]] (* derived 2005 February 10 in X3557.NB *) and[subclass[x_,omega],subclass[image[inverse[SUCC],intersection[omega,x_]],x_]] := or[equal[omega,x],member[x,omega]] (* derived 2005 October 22 in TRANSFIN.NB *) and[subclass[x_,OMEGA],subclass[x_,image[PS,x_]]] := equal[0,x] (* derived 2005 November 27 in FPBCPCOM.NB *) and[subclass[x_,omega],subclass[U[x_],x_]] := or[equal[omega,x],member[x,omega]] (* derived 2005 November 27 in ON-ORD-8.NB *) and[subclass[x_,OMEGA],subclass[U[x_],x_]] := or[equal[OMEGA,x],member[x,OMEGA]] (* derived 2008 March 2 in WO-LEAST.NB *) and[subclass[P[fix[x_]],union[domain[LEAST[x_]],set[0]]],TOTALORDER[x_]] := WELLORDER[x] (* added 2001 November 17 based on EQ.NB *) and[subclass[P[x_],y_],subclass[U[y_],x_]] := equal[P[x],y] and[subclass[x_,y_],subclass[y_,x_]] := equal[x,y] (* derived 2007 May 4 in CHAIN.NB *) and[subclass[x_,y_],subclass[cart[intersection[x_,y_],intersection[x_,y_]],z_]] := and[subclass[x,y],subclass[cart[x,x],z]] (* derived 2004 August 7 in RS-1.NB *) and[subclass[x_,y_],subclass[x_,cart[V,V]],subclass[composite[y_,id[domain[x_]]],x_]] := equal[x,composite[y,id[domain[x]]]] (* derived 2004 December 25 in SELCO-LT.NB *) and[subclass[x_,y_],subclass[composite[Id,x_],y_]] := subclass[x,y] (* added 2001 December 19 based on INV-IM.NB *) and[subclass[x_,y_],subclass[intersection[x_,y_],z_]] := and[subclass[x,y],subclass[x,z]] (* derived 2004 July 23 in X23--.NB *) and[subclass[x_,y_],subclass[intersection[x_,z_],y_]] := subclass[x,y] (* derived 2008 March 20 in IVR-SBV.NB *) and[subclass[x_,y_],subclass[intersection[y_,image[S,x_]],x_]] := equal[x,intersection[y,image[S,x]]] (* added 2002 October 3 based on MONOSUB2.NB *) and[subclass[x_,y_],subclass[x_,z_],subclass[y_,z_]] := and[subclass[x,y],subclass[y,z]] (* added 2001 November 16 *) and[subclass[z_,x_],subclass[z_,y_], subclass[intersection[x_,y_],z_]] := equal[intersection[x,y],z] (* added 2001 November 17 based on EQ.NB *) and[subclass[x_,z_],subclass[y_,z_],subclass[z_,union[x_,y_]]] := equal[union[x,y],z] (* derived 2005 January 5 in TC-HC.NB *) and[subclass[x_,y_],subclass[U[x_],H[y_]]] := subclass[x,H[y]] (* derived 2007 December 5 in FULL.NB *) and[subclass[x_,y_],subclass[U[tc[x_]],y_]] := subclass[tc[x],y] (* derived 2007 October 9 in SU-U-I.NB *) and[subclass[w_,x_],subclass[w_,union[x_,y_]]] := subclass[w,x] (* derived 2008 November 28 in EQ-ID.NB *) and[subclass[V,fix[x_]],subclass[x_,Id]] := equal[Id,x] (* derived 2005 October 12 in WF-RS.NB *) and[TOTALORDER[composite[Id,x_]],WELLFOUNDED[intersection[Di,x_]]] := WELLORDER[composite[Id,x]] (* derived 2005 April 7 in WF-TO.NB *) and[TOTALORDER[x_],WELLFOUNDED[intersection[Di,x_]]] := WELLORDER[x] (* derived 2007 August 9 in UCH-TRV.NB *) and[TRANSITIVE[x_],TRANSITIVE[composite[Id,x_]]] := TRANSITIVE[x] (* added 2002 January 17 based on ANTISYM1.NB *) ANTISYMMETRIC[x_] := and[subclass[x,cart[V,V]],subclass[intersection[x,inverse[x]],Id]] (* Definition DF-AP in AP1.DEM *) apply[x_,y_] := U[image[x,set[y]]] (* derived 2006 November 9 in SIMPLIFY.NB *) APPLY[x_,y_] := V /; not[member[y,V]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[0,x_] := V (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[ACLOSURE,x_] := union[Aclosure[x],complement[image[V,set[x]]]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[ADJOIN[x_],y_] := union[x,y,complement[image[V,set[x]]],complement[image[V,set[y]]]] (* derived 2008 December 3 in CURRY-BO.NB *) APPLY[APPLY[CURRY,binop[x_]],y_] := union[complement[image[V,intersection[fix[domain[binop[x]]],set[y]]]], composite[binop[x],LEFT[y]]] (* derived 2005 December 24 in AP-ASSOC.NB *) APPLY[ASSOC,x_] := PAIR[first[first[x]],PAIR[second[first[x]],second[x]]] (* derived 2008 November 22 in ASS-PAIR.NB *) APPLY[assoc[funpart[w_]],PAIR[x_,APPLY[assoc[funpart[w_]],PAIR[y_,z_]]]] := APPLY[assoc[funpart[w]],PAIR[APPLY[assoc[funpart[w]],PAIR[x,y]],z]] (* derived 2008 November 22 in ASS-PAIR.NB *) APPLY[assoc[x_],pair[y_,z_]] := APPLY[assoc[x],PAIR[y,z]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[BIGCAP,x_] := union[A[x],complement[image[V,set[x]]]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[BIGCUP,x_] := union[complement[image[V,set[x]]],U[x]] (* derived 2008 November 26 in AP-BINOP.NB *) APPLY[binop[x_],pair[y_,z_]] := APPLY[binop[x],PAIR[y,z]] (* derived 2005 December 24 in APCAPCUP.NB *) APPLY[CAP,x_] := intersection[first[x],second[x]] (* derived 2008 January 18 in AP-CARD.NB *) APPLY[CARD,x_] := card[x] (* derived 2005 December 25 in AP-CART.NB *) APPLY[CART,x_] := union[cart[first[x],second[x]],complement[image[V,set[first[x]]]]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[cart[x_,y_],z_] := union[A[y],complement[image[V,intersection[x,set[z]]]]] (* derived 2008 December 31 in CAT-AP.NB *) APPLY[cat[x_],pair[y_,z_]] := APPLY[cat[x],PAIR[y,z]] (* derived 2008 December 31 in CAT-AP.NB *) APPLY[cat[w_],PAIR[x_,APPLY[cat[w_],PAIR[y_,z_]]]] := APPLY[cat[w],PAIR[APPLY[cat[w],PAIR[x,y]],z]] (* derived 2009 January 6 in CAT-UNIT.NB *) APPLY[cat[x_],PAIR[APPLY[cod[cat[x_]],u_],u_]] := union[u,complement[image[V,intersection[range[cat[x]],set[u]]]]] (* derived 2009 January 6 in CAT-UNIT.NB *) APPLY[cat[x_],PAIR[u_,APPLY[dom[cat[x_]],u_]]] := union[u,complement[image[V,intersection[range[cat[x]],set[u]]]]] (* derived 2008 December 23 in IDS-FUNS.NB *) APPLY[CATOFUNS,PAIR[x_,y_]] := union[complement[image[V,intersection[FUNS,set[first[y]]]]], complement[image[V,intersection[map[second[y],second[x]],set[first[x]]]]], image[V,intersection[complement[second[y]],range[first[y]]]], PAIR[composite[first[x],first[y]],second[x]]] (* derived 2008 December 23 in IDS-FUNS.NB *) APPLY[CATOFUNS,PAIR[PAIR[x_,u_],PAIR[y_,v_]]] := union[complement[image[V,intersection[FUNS,set[y]]]], complement[image[V,intersection[map[v,u],set[x]]]], image[V,intersection[complement[v],range[y]]],PAIR[composite[x,y],u]] (* derived 2007 May 7 in APCHAINS.NB *) APPLY[CHAINS,x_] := union[chains[x],complement[image[V,set[x]]]] (* derived 2006 August 22 in CHAR.NB *) APPLY[CHAR[x_],y_] := union[cart[y,set[set[0]]],cart[intersection[x,complement[y]],set[0]], complement[image[V,set[x]]],complement[image[V,set[y]]],image[V,intersection[y,complement[x]]]] (* derived 2005 December 23 in AP-TOFU.NB *) APPLY[CLIQUES,x_] := union[cliques[x],complement[image[V,set[x]]]] (* derived 2009 January 9 in COD-CAT.NB *) APPLY[cod[cat[x_]],APPLY[cat[x_],PAIR[u_,v_]]] := union[APPLY[cod[cat[x]],u], complement[image[V,intersection[image[domain[cat[x]],set[u]],set[v]]]]] (* derived 2009 January 7 in AP-COD.NB *) APPLY[cod[cat[x_]],APPLY[cod[cat[x_]],y_]] := APPLY[cod[cat[x]],y] (* derived 2009 January 7 in AP-COD.NB *) APPLY[cod[cat[x_]],APPLY[dom[cat[x_]],y_]] := APPLY[dom[cat[x]],y] (* derived 2005 August 16 in AP-E-S.NB *) APPLY[complement[E],x_] := complement[image[V,set[x]]] (* derived 2006 December 9 in MISC.NB *) APPLY[complement[image[V,x_]],y_] := union[complement[image[V,set[y]]],image[V,x]] (* derived 2005 August 16 in AP-E-S.NB *) APPLY[complement[inverse[E]],x_] := complement[image[V,set[x]]] (* derived 2005 August 16 in AP-E-S.NB *) APPLY[complement[inverse[S]],x_] := complement[image[V,set[x]]] (* derived 2005 August 16 in AP-E-S.NB *) APPLY[complement[S],x_] := union[complement[image[V,x]],complement[image[V,set[x]]]] (* derived 2005 December 25 in APCPSCRS.NB *) APPLY[COMPOSE,x_] := union[complement[image[V,set[first[x]]]],composite[first[x],second[x]]] (* added 2003 October 28 based on APPLY.NB *) APPLY[composite[x_,y_],z_] := A[image[x,image[y,set[z]]]] (* derived 2004 April 17 in REPLACE.NB *) APPLY[CORE[x_],y_] := union[complement[image[V,set[y]]],core[x,y]] (* derived 2005 December 25 in APCPSCRS.NB *) APPLY[CROSS,x_] := union[complement[image[V,set[first[x]]]],cross[first[x],second[x]]] (* derived 2005 December 24 in AP-X.NB *) APPLY[cross[x_,y_],z_] := PAIR[APPLY[x,first[z]],APPLY[y,second[z]]] /; and[FUNCTION[x],FUNCTION[y]] (* derived 2005 December 24 in AP-X.NB *) APPLY[cross[funpart[x_],funpart[y_]],z_] := PAIR[APPLY[funpart[x],first[z]],APPLY[funpart[y],second[z]]] (* derived 2005 December 24 in APCAPCUP.NB *) APPLY[CUP,x_] := union[first[x],second[x]] (* derived 2006 November 9 in DOAP-CUR.NB *) APPLY[CURRY,0] := 0 (* derived 2006 December 21 in INTMUL-1.NB *) APPLY[CURRY,INTMUL] := INTTIMES (* derived 2006 December 6 in MIXMUL-1.NB *) APPLY[CURRY,MIXMUL] := MIXTIMES (* derived 2006 November 5 in CURRY.NB *) APPLY[CURRY,NATADD] := PLUS (* derived 2006 November 5 in CURRY.NB *) APPLY[CURRY,NATMUL] := TIMES (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[Di,x_] := complement[image[V,set[x]]] (* derived 2005 December 24 in APCAPCUP.NB *) APPLY[DIF,x_] := union[complement[image[V,set[first[x]]]],intersection[complement[second[x]],first[x]]] (* derived 2009 January 9 in COD-CAT.NB *) APPLY[dom[cat[x_]],APPLY[cat[x_],PAIR[u_,v_]]] := union[APPLY[dom[cat[x]],v], complement[image[V,intersection[image[domain[cat[x]],set[u]],set[v]]]]] (* derived 2009 January 7 in AP-COD.NB *) APPLY[dom[cat[x_]],APPLY[cod[cat[x_]],y_]] := APPLY[cod[cat[x]],y] (* derived 2009 January 7 in AP-COD.NB *) APPLY[dom[cat[x_]],APPLY[dom[cat[x_]],y_]] := APPLY[dom[cat[x]],y] (* derived 2004 December 10 in AP-IMG.NB *) APPLY[DORA,x_] := union[complement[image[V,set[x]]],PAIR[domain[x],range[x]]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[DUP,x_] := PAIR[x,x] (* derived 2005 August 16 in AP-E-S.NB *) APPLY[E,x_] := union[complement[image[V,set[x]]],set[x]] (* derived 2004 May 12 in EQUIV.NB *) APPLY[EQUIV,x_] := union[complement[image[V,set[x]]],eqv[x]] (* derived 2006 October 24 in EVAL.NB *) APPLY[eval[x_],y_] := union[APPLY[funpart[y],x],complement[image[V,set[y]]]] (* derived 2005 August 7 in FACT-AP.NB *) APPLY[FACTORIAL,0] := set[0] (* derived 2005 August 7 in FACT-AP.NB *) APPLY[FACTORIAL,set[0]] := set[0] (* derived 2005 August 7 in FACT-AP.NB *) APPLY[FACTORIAL,succ[set[0]]] := succ[set[0]] (* derived 2005 December 24 in AP-12-SW.NB *) APPLY[FIRST,x_] := first[x] (* derived 2008 December 5 in AP-FIX.NB *) APPLY[fix[composite[inverse[FIRST],quasigp[x_]]],y_] := APPLY[rotate[quasigp[x]],PAIR[y,y]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[FUNPART,x_] := union[complement[image[V,set[x]]],funpart[x]] (* derived 2007 February 15 in GCD-1.NB *) APPLY[GLB[DIV],0] := 0 (* derived 2007 March 6 in EVENODD.NB *) APPLY[GLB[DIV],even] := succ[set[0]] (* derived 2007 February 20 in GCD-MULT.NB *) APPLY[GLB[DIV],image[DIV,set[x_]]] := nat[x] (* derived 2007 March 6 in EVENODD.NB *) APPLY[GLB[DIV],odd] := set[0] (* derived 2007 February 15 in GCD-1.NB *) APPLY[GLB[DIV],omega] := set[0] (* derived 2007 April 24 in GCD-ADJ0.NB *) APPLY[GLB[DIV],set[0,x__]] := APPLY[GLB[DIV],set[x]] (* derived 2007 April 20 in GCD-UP.NB *) APPLY[GLB[DIV],set[nat[x_]]] := nat[x] (* derived 2007 April 24 in GCD-ADJ0.NB *) APPLY[GLB[DIV],succ[set[0]]] := set[0] (* derived 2007 April 24 in GCD-ADJ0.NB *) APPLY[GLB[DIV],union[x_,set[0]]] := APPLY[GLB[DIV],x] (* derived 2007 April 22 in LEAST-0.NB *) APPLY[GREATEST[x_],0] := V (* derived 2007 April 23 in DIVLEAST.NB *) APPLY[GREATEST[DIV],omega] := 0 (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[HC,x_] := union[complement[image[V,set[x]]],H[x]] (* derived 2008 May 8 in AP-HIST.NB *) APPLY[history[x_,thinpart[y_]],z_] := PAIR[z,composite[x,id[image[thinpart[y],set[z]]]]] (* revised 2004 March 29 based on HULL.NB *) APPLY[HULL[x_],y_] := hull[x,y] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[Id,x_] := union[x,complement[image[V,set[x]]]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[id[x_],y_] := union[y,complement[image[V,intersection[x,set[y]]]]] (* derived 2004 December 10 in AP-IMG.NB *) APPLY[IMAGE[x_],y_] := union[complement[image[V,set[y]]],complement[image[V,set[image[x,y]]]],image[x,y]] (* 2008 November 27 in AP-RO.NB *) APPLY[image[x_,set[y_]],z_] := APPLY[rotate[inverse[x]],PAIR[y,z]] (* derived 2006 December 9 in MISC.NB *) APPLY[image[V,x_],y_] := union[complement[image[V,x]],complement[image[V,set[y]]]] (* derived 2005 December 25 in AP-IMG.NB *) APPLY[IMG,x_] := union[complement[image[V,set[first[x]]]],image[first[x],second[x]]] (* derived 2005 December 24 in AP-INT.NB *) APPLY[INTADD,x_] := intadd[first[x],second[x]] (* derived 2005 December 24 *) APPLY[intersection[x_,image[V,y_]],z_] := union[APPLY[x,z],complement[image[V,y]]] (* derived 2008 September 8 in AP-PAIR.NB *) APPLY[INTMUL,x_] := intmul[first[x],second[x]] (* derived 2007 January 5 based on INTMUL-5.NB *) APPLY[INTMUL,PAIR[x_,y_]] := intmul[x,y] (* derived 2008 September 15 in INTTIMES.NB *) APPLY[INTTIMES,x_] := union[complement[image[V,intersection[Z,set[x]]]],inttimes[x]] (* derived 2008 September 15 in INTTIMES.NB *) APPLY[inttimes[x_],y_] := intmul[x,y] (* derived 2008 November 18 in INVERSE.NB *) APPLY[INVERSE,x_] := union[complement[image[V,set[x]]], image[V,intersection[x,complement[cart[V,V]]]],inverse[x]] (* derived 2005 December 24 in AP-ASSOC.NB *) APPLY[inverse[ASSOC],x_] := PAIR[PAIR[first[x],first[second[x]]],second[second[x]]] (* derived 2006 August 15 in CLOCK-AP.NB *) APPLY[inverse[clock[succ[nat[x_]]]],0] := nat[x] (* derived 2006 November 9 in DOAP-CUR.NB *) APPLY[inverse[CURRY],0] := 0 (* derived 2006 November 5 in CURRY.NB *) APPLY[inverse[CURRY],APPLY[CURRY,x_]] := union[x,complement[image[V,set[x]]], image[V,intersection[x,complement[cart[cart[V,V],V]]]]] (* derived 2006 December 21 in INTMUL-1.NB *) APPLY[inverse[CURRY],INTTIMES] := INTMUL (* derived 2006 December 6 in MIXMUL-1.NB *) APPLY[inverse[CURRY],MIXTIMES] := MIXMUL (* derived 2006 November 5 in CURRY.NB *) APPLY[inverse[CURRY],PLUS] := NATADD (* derived 2006 November 5 in CURRY.NB *) APPLY[inverse[CURRY],TIMES] := NATMUL (* added 2004 July 14 based on X2530-41.NB *) APPLY[inverse[DUP],x_] := union[first[x], image[V,intersection[complement[first[x]],second[x]]], image[V,intersection[complement[second[x]],first[x]]]] (* derived 2005 August 16 in AP-E-S.NB *) APPLY[inverse[E],x_] := union[A[x],complement[image[V,set[x]]]] (* derived 2008 December 5 in AP-FIX.NB *) APPLY[inverse[fix[composite[inverse[SECOND],quasigp[x_]]]],y_] := APPLY[rotate[composite[quasigp[x],SWAP]],PAIR[y,y]] (* derived 2006 May 28 in OOPART.NB *) APPLY[inverse[oopart[x_]],APPLY[oopart[x_],y_]] := union[y,complement[image[V,intersection[domain[oopart[x]],set[y]]]]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[inverse[plus[x_]],y_] := natsub[y,x] (* derived 2005 December 24 in AP-ASSOC.NB *) APPLY[inverse[ROT],x_] := PAIR[PAIR[second[first[x]],second[x]],first[first[x]]] (* derived 2005 August 16 in AP-E-S.NB *) APPLY[inverse[S],x_] := complement[image[V,set[x]]] (* derived 2004 July 17 in AP-IN-SG.NB *) APPLY[inverse[SINGLETON],x_] := union[A[x],complement[image[V,intersection[range[SINGLETON],set[x]]]]] (* derived 2007 February 4 in NATDIV-1.NB *) APPLY[inverse[times[x_]],y_] := natdiv[y,x] (* derived 2006 April 13 in DBL-IND2.NB *) APPLY[iterate[funpart[x_],set[setpart[y_]]],0] := setpart[y] (* derived 2008 October 21 in JOIN.NB *) APPLY[JOIN,PAIR[0,0]] := 0 (* derived 2008 October 21 in JOIN.NB *) APPLY[JOIN,PAIR[0,list[x_]]] := list[x] (* derived 2008 October 21 in JOIN.NB *) APPLY[JOIN,PAIR[list[x_],0]] := list[x] (* derived 2008 October 21 in JOIN.NB *) APPLY[JOIN,PAIR[list[x_],APPLY[JOIN,PAIR[list[y_],list[z_]]]]] := APPLY[JOIN,PAIR[APPLY[JOIN,PAIR[list[x],list[y]]],list[z]]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[LAMBHULL,x_] := union[complement[image[V,set[x]]],HULL[x]] (* derived 2007 April 22 in LEAST-0.NB *) APPLY[LEAST[x_],0] := V (* derived 2007 April 23 in DIVLEAST.NB *) APPLY[LEAST[DIV],omega] := set[0] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[LEFT[x_],y_] := PAIR[x,y] (* derived 2007 February 15 in GCD-1.NB *) APPLY[LUB[DIV],0] := set[0] (* derived 2007 March 6 in LCM.NB *) APPLY[LUB[DIV],even] := 0 (* derived 2007 February 20 in GCD-MULT.NB *) APPLY[LUB[DIV],image[inverse[DIV],set[x_]]] := union[intersection[complement[image[V,intersection[omega,set[x]]]],set[0]],nat[x]] (* derived 2007 March 6 in LCM.NB *) APPLY[LUB[DIV],nat[x_]] := intersection[complement[image[V,nat[x]]],set[0]] (* derived 2007 March 6 in LCM.NB *) APPLY[LUB[DIV],odd] := 0 (* derived 2007 February 15 in GCD-1.NB *) APPLY[LUB[DIV],omega] := 0 (* derived 2007 March 6 in LCM.NB *) APPLY[LUB[DIV],PRIMES] := 0 (* derived 205 December 25 in AP-MAP.NB *) APPLY[MAP,x_] := union[complement[image[V,set[first[x]]]],map[first[x],second[x]]] (* derived 2008 September 8 in AP-PAIR.NB *) APPLY[MIXMUL,x_] := intmul[first[x],plus[second[x]]] (* derived 2007 January 9 in MIXMUL.NB *) APPLY[MIXMUL,PAIR[x_,y_]] := intmul[x,plus[y]] (* derived 2006 December 9 in AP-MIX.NB *) APPLY[MIXTIMES,x_] := union[complement[image[V,intersection[Z,set[x]]]],composite[MIXMUL,LEFT[x]]] (* derived 2005 July 18 in MODULO.NB *) APPLY[modulo[x_],y_] := natmod[y,x] (* derived 2005 December 24 in AP-NAT.NB *) APPLY[NATADD,x_] := natadd[first[x],second[x]] (* derived 2008 September 8 in AP-PAIR.NB *) APPLY[NATEXP,x_] := natexp[first[x],second[x]] (* derived 2006 June 27 in NATEXP-1.NB *) APPLY[NATEXP,pair[x_,y_]] := natexp[x,y] (* derived 2006 June 27 in NATEXP-1.NB *) APPLY[NATEXP,PAIR[x_,y_]] := natexp[x,y] (* derived 2005 December 24 in AP-NAT.NB *) APPLY[NATMOD,x_] := natmod[first[x],second[x]] (* derived 2005 December 24 in AP-NAT.NB *) APPLY[NATMUL,x_] := natmul[first[x],second[x]] (* derived 2005 December 23 in AP-TOFU.NB *) APPLY[OOPART,x_] := union[complement[image[V,set[x]]],oopart[x]] (* derived 2006 May 28 in OOPART.NB *) APPLY[oopart[x_],APPLY[inverse[oopart[x_]],y_]] := union[y,complement[image[V,intersection[range[oopart[x]],set[y]]]]] (* derived 2006 May 29 in OL-AP.NB *) APPLY[ordlist[x_],0] := A[intersection[OMEGA,x]] (* derived 2007 May 19 in OLDO-ORD.NB *) APPLY[ordlist[x_],domain[ordlist[x_]]] := V (* derived 2005 December 25 in AP-PRST.NB *) APPLY[PAIRSET,x_] := union[complement[image[V,set[first[x]]]],set[first[x],second[x]]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[PLUS,x_] := union[complement[image[V,intersection[omega,set[x]]]],plus[x]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[plus[x_],y_] := natadd[x,y] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[POWER,x_] := union[complement[image[V,set[x]]],P[x]] (* derived 2008 April 18 in PRIMESEQ.NB *) APPLY[PRIMESEQ,x_] := V /; not[member[x,omega]] (* derived 2005 August 17 in PRIMESEQ.NB *) APPLY[PRIMESEQ,0] := succ[set[0]] (* derived 2005 August 17 in PRIMESEQ.NB *) APPLY[PRIMESEQ,set[0]] := succ[succ[set[0]]] (* derived 2005 August 17 in PRIMESEQ.NB *) APPLY[PRIMESEQ,succ[set[0]]] := succ[succ[succ[succ[set[0]]]]] (* derived 2008 November 26 in AP-QUAGP.NB *) APPLY[quasigp[x_],pair[y_,z_]] := APPLY[quasigp[x],PAIR[y,z]] (* 2008 November 27 in AP-RO.NB *) APPLY[quasigp[x_],PAIR[APPLY[rotate[composite[quasigp[x_],SWAP]],PAIR[z_,y_]],y_]] := union[z,complement[image[V,intersection[range[quasigp[x]],set[y]]]], complement[image[V,intersection[range[quasigp[x]],set[z]]]]] (* 2008 November 27 in AP-RO.NB *) APPLY[quasigp[x_],PAIR[y_,APPLY[rotate[quasigp[x_]],PAIR[z_,y_]]]] := union[z,complement[image[V,intersection[range[quasigp[x]],set[y]]]], complement[image[V,intersection[range[quasigp[x]],set[z]]]]] (* derived 2008 January 18 in AP-RANK.NB *) APPLY[RANK,x_] := rank[x] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[RC[x_],y_] := union[complement[image[V,set[x]]], image[V,intersection[y,complement[x]]],intersection[x,complement[y]]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[RCF,x_] := union[complement[image[V,set[x]]],RC[x]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[RIGHT[x_],y_] := PAIR[y,x] (* derived 2005 December 24 in AP-ASSOC.NB *) APPLY[ROT,x_] := PAIR[PAIR[second[x],first[first[x]]],second[first[x]]] (* derived 2005 December 24 removed 2008 November 27 APPLY[rotate[x_],y_] := APPLY[image[inverse[x],set[first[y]]],second[y]] *) (* 2008 November 27 in AP-RO.NB *) APPLY[rotate[composite[quasigp[x_],SWAP]],PAIR[APPLY[quasigp[x_],PAIR[z_,y_]],y_]] := union[z,complement[image[V,intersection[range[quasigp[x]],set[y]]]], complement[image[V,intersection[range[quasigp[x]],set[z]]]]] (* 2008 November 27 in AP-RO.NB *) APPLY[rotate[composite[quasigp[x_],SWAP]],PAIR[y_,APPLY[rotate[quasigp[x_]],PAIR[y_,z_]]]] := union[z,complement[image[V,intersection[range[quasigp[x]],set[y]]]], complement[image[V,intersection[range[quasigp[x]],set[z]]]]] (* 2008 November 27 in AP-RO.NB *) APPLY[rotate[NATADD],PAIR[x_,y_]] := natsub[x,y] (* 2008 November 27 in AP-RO.NB *) APPLY[rotate[quasigp[x_]],PAIR[APPLY[quasigp[x_],PAIR[y_,z_]],y_]] := union[z,complement[image[V,intersection[range[quasigp[x]],set[y]]]], complement[image[V,intersection[range[quasigp[x]],set[z]]]]] (* 2008 November 27 in AP-RO.NB *) APPLY[rotate[quasigp[x_]],PAIR[y_,APPLY[rotate[composite[quasigp[x_],SWAP]],PAIR[y_,z_]]]] := union[z,complement[image[V,intersection[range[quasigp[x]],set[y]]]], complement[image[V,intersection[range[quasigp[x]],set[z]]]]] (* added 2003 October 28 based on APPLY.NB *) APPLY[S,x_] := union[x,complement[image[V,set[x]]]] (* derived 2005 December 24 in AP-12-SW.NB *) APPLY[SECOND,x_] := second[x] (* derived 2008 November 26 in AP-SEMGP.NB *) APPLY[semigp[x_],pair[y_,z_]] := APPLY[semigp[x],PAIR[y,z]] (* derived 2008 November 26 in AP-SEMGP.NB *) APPLY[semigp[x_],PAIR[u_,APPLY[semigp[x_],PAIR[v_,w_]]]] := APPLY[semigp[x],PAIR[APPLY[semigp[x],PAIR[u,v]],w]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[SINGLETON,x_] := union[complement[image[V,set[x]]],set[x]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[SUBVAR,x_] := union[complement[image[V,set[x]]],subvar[x]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[SUCC,x_] := union[complement[image[V,set[x]]],succ[x]] (* derived 2005 December 24 in AP-12-SW.NB *) APPLY[SWAP,x_] := PAIR[second[x],first[x]] (* derived 2005 December 25 in APSYMDIF.NB *) APPLY[SYMDIF,x_] := union[complement[image[V,set[first[x]]]], intersection[complement[first[x]],second[x]],intersection[complement[second[x]],first[x]]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[TC,x_] := union[complement[image[V,set[x]]],tc[x]] (* derived 2006 September 23 in TIMES.NB *) APPLY[TIMES,x_] := union[complement[image[V,intersection[omega,set[x]]]],times[x]] (* derived 2005 July 17 in TIMES.NB *) APPLY[times[x_],y_] := natmul[x,y] (* derived 2005 December 24 in AP-ASSOC.NB *) APPLY[TWIST,x_] := PAIR[PAIR[first[first[x]],first[second[x]]],PAIR[second[first[x]],second[second[x]]]] (* derived 2008 July 5 in UBD-DEFN.NB *) APPLY[UBD,x_] := union[complement[image[V,set[x]]],domain[UB[x]]] (* derived 2007 June 25 in UCH-HULL.NB *) APPLY[UCHAINS,x_] := union[complement[image[V,set[x]]],Uchains[x]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[UCLOSURE,x_] := union[complement[image[V,set[x]]],Uclosure[x]] (* added 2003 October 28 based on APPLY.NB *) APPLY[union[x_,y_],z_] := intersection[APPLY[x,z],APPLY[y,z]] (* derived 2005 December 24 *) APPLY[x_,union[y_,complement[image[V,z_]]]] := union[APPLY[x,y],complement[image[V,z]]] (* derived 2006 November 14 in AP-U-IMV.NB *) APPLY[x_,union[y_,image[V,z_]]] := union[APPLY[x,y],image[V,z]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[V,x_] := complement[image[V,set[x]]] (* derived 2005 January 25 *) APPLY[VERTSECT[x_],y_] := union[complement[image[V,set[y]]],complement[image[V,set[image[x,set[y]]]]],image[x,set[y]]] (* added 2003 November 13 based on APPLY-SP.NB *) APPLY[VS,x_] := union[complement[image[V,set[x]]],composite[VERTSECT[x],id[domain[x]]]] (* derived 2004 September 25 in LAMB-WF.NB *) APPLY[WFPART,x_] := union[complement[image[V,set[x]]],wf[x]] (* derived 2004 November 16 in XS.NB *) APPLY[XS,x_] := union[complement[image[V,set[x]]],X[x]] (* assertions *) assert[p_] := Module[{w = Unique[]},equal[V,class[w,p]]] (* derived 2008 November 17 in ASS-WRAP.NB *) assoc[x_] := x /; associative[x] (* derived 2008 December 15 in ASSOC.NB *) assoc[intersection[x_,complement[image[V,y_]]]] := intersection[assoc[x],complement[image[V,y]]] (* derived 2008 December 15 in ASSOC.NB *) assoc[intersection[x_,image[V,y_]]] := intersection[assoc[x],image[V,y]] (* derived 2006 January 3 in ASSOC.NB *) associative[x_] := False /; not[subclass[domain[x],cart[V,V]]] (* added 2003 July 1 based on ASSOC.NB *) associative[0] := True (* derived 2006 January 3 in ASSOC.NB *) associative[ASSOC] := False (* derived 2008 November 17 in ASS-WRAP.NB *) associative[assoc[x_]] := True (* added 2003 July 1 based on ASSOC.NB *) associative[CAP] := True (* derived 2006 January 3 in ASSOC.NB *) associative[CART] := False (* added 2003 July 1 based on ASSOC.NB *) associative[cart[cart[x_,x_],y_]] := True (* derived 2008 December 30 in CAT-WRAP.NB *) associative[cat[x_]] := True (* derived 2005 July 30 in CATORELN.NB *) associative[CATOFUNS] := True (* derived 2005 July 30 in CATORELN.NB *) associative[CATORELN] := True (* added 2003 July 1 based on ASSOC.NB *) associative[COMPOSE] := True (* derived 2006 July 8 in SEMIGPS.NB *) associative[composite[CAP,id[cart[P[x_],P[x_]]]]] := True (* added 2003 July 20 based on DIRECT12.NB *) associative[composite[CART,cross[IMAGE[FIRST],IMAGE[SECOND]]]] := True (* derived 2004 December 3 in TRVASSOC.NB *) associative[composite[COMPOSE,cross[IMAGE[id[trv[x_]]],IMAGE[id[trv[x_]]]]]] := True (* derived 2006 July 13 in SGP-CPS.NB *) associative[composite[COMPOSE,id[cart[BIJ,BIJ]]]] := True (* derived 2006 July 13 in SGP-CPS.NB *) associative[composite[COMPOSE,id[cart[FUNS,FUNS]]]] := True (* derived 2006 July 13 in SGP-CPS.NB *) associative[composite[COMPOSE,id[cart[map[x_,x_],map[x_,x_]]]]] := True (* derived 2008 October 24 in ASS-CPS.NB *) associative[composite[COMPOSE,id[cart[P[cart[x_,y_]],P[cart[x_,y_]]]]]] := True (* derived 2008 October 28 in BCL-CPS.NB *) associative[composite[COMPOSE,id[cart[P[trv[x_]],P[trv[x_]]]]]] := True (* derived 2004 December 2 in PRECISE.NB *) associative[composite[COMPOSE,id[composite[inverse[IMAGE[SECOND]],IMAGE[FIRST]]]]] := True (* derived 2008 November 17 in ASS-WRAP.NB *) associative[composite[cross[assoc[x_],assoc[y_]],TWIST]] := True (* derived 2009 January 11 in CAT-SPEC.NB *) associative[composite[cross[cat[x_],cat[y_]],TWIST]] := True (* derived 2005 July 30 in CATORELN.NB *) associative[composite[cross[COMPOSE,FIRST],TWIST]] := True (* added 2003 August 9 based on ASS-ADDZ.NB *) associative[composite[cross[NATADD,NATADD],TWIST]] := True (* derived 2004 December 7 in ASV-DIV.NB *) associative[composite[FIRST,id[x_]]] := and[subclass[composite[x,inverse[x]],x],TRANSITIVE[composite[Id,x]]] (* added 2003 July 1 based on IN-DUP.NB *) associative[composite[id[x_],inverse[DUP]]] := True (* derived 2008 October 22 in WORDS.NB *) associative[composite[id[P[cart[omega,x_]]],JOIN]] := True (* derived 2006 July 8 in SEMIGPS.NB *) associative[composite[id[P[x_]],CUP]] := True (* derived 2008 November 21 in ASSOCFUN.NB *) associative[composite[IMAGE[assoc[thinpart[x_]]],CART]] := True (* derived 2006 August 23 in CHARBOOL.NB *) associative[composite[IMAGE[cross[inverse[DUP],CAP]],CROSS]] := True (* derived 2006 August 23 in CHARBOOL.NB *) associative[composite[IMAGE[cross[inverse[DUP],CUP]],CROSS]] := True (* derived 2006 August 6 in PTWISE.NB *) associative[composite[IMAGE[cross[inverse[DUP],INTADD]],CROSS]] := True (* derived 2006 August 6 in PTWISE.NB *) associative[composite[IMAGE[cross[inverse[DUP],NATADD]],CROSS]] := True (* derived 2005 July 22 in MOD-ASS.NB *) associative[composite[modulo[x_],NATADD]] := True (* derived 2005 July 22 in MOD-ASS.NB *) associative[composite[modulo[x_],NATADD,id[cart[x_,x_]]]] := True (* derived 2005 July 22 in MOD-ASS.NB *) associative[composite[modulo[x_],NATMUL]] := True (* derived 2005 July 22 in MOD-ASS.NB *) associative[composite[modulo[x_],NATMUL,id[cart[x_,x_]]]] := True (* added 2003 July 7 based on PRGPOID.NB *) associative[composite[RIF,cross[SWAP,SWAP]]] := True (* derived 2004 December 7 in ASV-DIV.NB *) associative[composite[SECOND,id[x_]]] := and[subclass[composite[inverse[x],x],x],TRANSITIVE[composite[Id,x]]] (* added 2003 July 1 based on ASS-TRV.NB *) associative[composite[x_,SWAP]] := associative[composite[x,id[cart[V,V]]]] (* added 2003 July 13 based on ASS-1X2.NB *) associative[composite[SWAP,cross[x_,y_]]] := associative[cross[y,x]] (* added 2003 July 7 based on PRGPOID.NB *) associative[composite[SWAP,RIF]] := True (* derived 2004 December 3 in TRVASSOC.NB *) associative[composite[SWAP,RIF,id[cart[trv[x_],trv[x_]]]]] := True (* derived 2006 August 29 in SYMDIF.NB *) associative[composite[SYMDIF,id[cart[P[x_],P[x_]]]]] := True (* derived 2006 January 3 in ASSOC.NB *) associative[CROSS] := False (* added 2003 July 13 based on ASS-1X2.NB *) associative[cross[FIRST,SECOND]] := True (* added 2003 July 13 based on ASS-1X2.NB *) associative[cross[SECOND,FIRST]] := False (* added 2003 July 1 based on ASSOC.NB *) associative[CUP] := True (* derived 2006 January 3 in ASSOC.NB *) associative[DIF] := False (* derived 2006 January 3 in ASSOC.NB *) associative[EQUIDIFF] := True (* added 2003 July 1 based on ASSOC.NB *) associative[FIRST] := True (* added 2003 July 1 based on ASSOC.NB *) associative[Id] := False (* derived 2006 January 3 in ASSOC.NB *) associative[IMG] := False (* added 2003 August 9 based on ASS-ADDZ.NB *) associative[INTADD] := True (* derived 2008 December 15 in ASSOC.NB *) associative[intersection[x_,complement[image[V,y_]]]] := or[associative[x],not[equal[0,y]]] (* derived 2008 December 15 in ASSOC.NB *) associative[intersection[x_,image[V,y_]]] := or[associative[x],equal[0,y]] (* derived 2006 December 29 in INTMUL-3.NB *) associative[INTMUL] := True (* added 2003 July 1 based on IN-DUP.NB *) associative[inverse[DUP]] := True (* derived 2008 October 22 in JOIN-ASS.NB *) associative[JOIN] := True (* derived 2006 January 3 in ASSOC.NB *) associative[KURA] := False (* derived 2006 January 3 in ASSOC.NB *) associative[MAP] := False (* added 2003 July 1 based on ASSOC.NB *) associative[NATADD] := True (* derived 2006 January 3 in ASSOC.NB *) associative[NATMOD] := False (* added 2003 July 1 based on ASSOC.NB *) associative[NATMUL] := True (* derived 2006 January 3 in ASSOC.NB *) associative[PAIRSET] := False (* added 2003 July 7 based on PRGPOID.NB *) associative[RIF] := False (* derived 2006 January 3 in ASSOC.NB *) associative[ROT] := False (* added 2003 July 1 based on ASSOC.NB *) associative[SECOND] := True (* derived 2008 October 19 in SEMIGP.NB *) associative[semigp[x_]] := True (* derived 2009 January 22 in ASS-SETP.NB *) associative[setpart[assoc[x_]]] := True (* derived 2006 January 3 in ASSOC.NB *) associative[SWAP] := False (* added 2003 July 1 based on ASSOC.NB *) associative[SYMDIF] := True (* derived 2006 January 3 in ASSOC.NB *) associative[TWIST] := False (* derived 2008 December 20 in PSEUDOCAT.NB *) associative[union[inverse[LEFT[0]],inverse[RIGHT[0]]]] := True (* added 2003 July 1 based on ASSOC.NB *) associative[V] := False (* derived 2004 October 26 in AXCH-AC1.NB *) axch := True /; AxCh (* added 2003 May 23 based on BINCLOSE.NB *) binclosed[0] := V (* added 2003 May 23 based on BINCLOSE.NB *) binclosed[cart[x_,y_]] := union[cliques[complement[x]],image[S,set[y]]] (* derived 2008 August 13 in BINCLOSE.NB *) binclosed[composite[x_,FIRST]] := invar[x] (* added 2003 May 23 based on BINCLOSE.NB *) binclosed[composite[Id,x_]] := binclosed[x] (* added 2003 May 23 based on BINCLOSE.NB *) binclosed[composite[x_,id[cart[V,V]]]] := binclosed[x] (* added 2003 May 21 based on BINCLOSE.NB *) binclosed[composite[x_,inverse[DUP]]] := invar[x] (* added 2003 May 23 based on BCL-TRV.NB *) binclosed[composite[x_,inverse[IMAGE[DUP]],E]] := invar[composite[x,E]] (* derived 2007 October 18 in BINCL.NB *) binclosed[composite[RIF,cross[SWAP,SWAP]]] := image[inverse[IMAGE[id[cart[V,V]]]],TRV] (* derived 2008 August 13 in BINCLOSE.NB *) binclosed[composite[x_,SECOND]] := invar[x] (* derived 2006 January 23 in BINCFLIP.NB *) binclosed[composite[x_,SWAP]] := binclosed[x] (* added 2003 May 23 based on BINCLOSE.NB *) binclosed[composite[SWAP,RIF]] := image[inverse[IMAGE[id[cart[V,V]]]],TRV] (* derived 2007 October 18 in BINCL.NB *) binclosed[cross[FIRST,SECOND]] := fix[composite[S,CART,DORA]] (* derived 2007 October 18 in BINCL.NB *) binclosed[cross[inverse[DUP],inverse[DUP]]] := image[inverse[CLIQUES],range[POWER]] (* added 2003 May 23 based on BINCLOSE.NB *) binclosed[FIRST] := V (* added 2003 May 23 based on BINCLOSE.NB *) binclosed[inverse[DUP]] := V (* derived 2004 May 2 in REGULAR.NB *) binclosed[REGULAR] := P[complement[REGULAR]] (* added 2003 May 23 based on BINCLOSE.NB *) binclosed[SECOND] := V (* added 2003 May 23 based on BINCLOSE.NB *) binclosed[union[x_,y_]] := intersection[binclosed[x],binclosed[y]] (* added 2003 May 23 based on BINCLOSE.NB *) binclosed[V] := set[0] (* derived 2006 July 23 in BINHOM-4.NB *) binhom[0,x_] := set[0] (* derived 2006 July 23 in BINHOM-4.NB *) binhom[x_,0] := intersection[complement[image[V,fix[domain[x]]]],set[0]] (* derived 2008 October 7 in BNP-WRAP.NB *) binop[x_] := x /; member[x,BINOPS] (* Definition DF-CA in DF-FP-5 *) cantor[z_] := intersection[complement[fix[composite[inverse[E],z]]], domain[z]] (* revised 2003 May23 based on DEF-CLOS.NB *) CAPclosed := binclosed[CAP] (* added 2001 December 1 based on CARD-X.NB *) card[x_] := V /; not[member[x,V]] (* added 2001 December 1 based on CARD-X.NB *) card[0] := 0 (* derived 2006 December 21 in CARDENDZ.NB *) card[binhom[INTADD,INTADD]] := omega (* derived 2006 December 5 in MIXTIMES.NB *) card[binhom[NATADD,INTADD]] := omega (* derived 2006 October 26 in CARDARTH.NB *) card[binhom[NATADD,NATADD]] := omega (* added 2001 December 10 based on CARD-ALL.NB *) card[card[x_]] := card[x] (* derived 2006 October 26 in CARDARTH.NB *) card[cart[cart[omega,omega],cart[omega,omega]]] := omega (* derived 2006 July 6 in CARDCART.NB *) card[cart[fin[x_],fin[y_]]] := natmul[card[fin[x]],card[fin[y]]] (* derived 2005 July 22 in CARD-MUL.NB *) card[cart[nat[x_],nat[y_]]] := natmul[nat[x],nat[y]] (* derived 2006 August 27 in CARDOMSQ.NB *) card[cart[omega,omega]] := omega (* derived 2006 July 6 in CARDCART.NB *) card[cart[set[x_],y_]] := intersection[card[y],image[V,set[x]]] (* derived 2005 July 22 in CARD-MUL.NB *) card[cart[x_,set[y_]]] := intersection[card[x],image[V,set[y]]] (* derived 2006 August 29 in CARTCTBL.NB *) card[cart[Z,Z]] := omega (* derived 2007 January 10 in CARDRAVS.NB *) card[composite[VERTSECT[DIV],id[omega]]] := omega (* derived 2006 October 26 in CARDARTH.NB *) card[DIV] := omega (* derived 2004 January 10 in CARD-FUN.NB *) card[domain[funpart[x_]]] := card[funpart[x]] (* derived 2006 March 15 in CARD-OO.NB *) card[domain[oopart[x_]]] := card[oopart[x]] (* derived 2006 March 17 in OL-CARD.NB *) card[domain[ordlist[x_]]] := domain[ordlist[x]] (* derived 2006 October 26 in CARDARTH.NB *) card[EQUIDIFF] := omega (* derived 2006 August 16 in OL-SU-OM.NB *) card[even] := omega (* derived 2006 August 16 in OL-SU-OM.NB *) card[FACTORIAL] := omega (* derived 2004 January 10 in CARD-FUN.NB *) card[id[x_]] := card[x] (* derived 2006 July 6 in CARDPLUS.NB *) card[image[INVERSE,x_]] := card[intersection[x,P[cart[V,V]]]] (* derived 2006 August 24 in NAT-SQR.NB *) card[image[NATMUL,Id]] := omega (* derived 2006 July 6 in CARDIMSG.NB *) card[image[POWER,x_]] := card[x] (* derived 2006 July 6 in CARDIMSG.NB *) card[image[SINGLETON,x_]] := card[x] (* derived 2007 January 10 in CARDRAVS.NB *) card[image[VERTSECT[DIV],omega]] := omega (* derived 2006 August 29 in CARTCTBL.NB *) card[INTADD] := omega (* derived 2006 October 26 in CARDARTH.NB *) card[INTDIV] := omega (* derived 2006 October 26 in CARDARTH.NB *) card[INTLEQ] := omega (* derived 2004 January 10 in CARD-FUN.NB *) card[intersection[x_,image[V,y_]]] := intersection[card[x],image[V,y]] (* derived 2006 August 17 in CTBL-FIN.NB *) card[intersection[omega,complement[nat[x_]]]] := omega (* derived 2006 March 12 in REPLACE.NB *) card[intersection[omega,complement[set[0]]]] := omega (* derived 2006 July 6 in CARDCART.NB *) card[inverse[x_]] := card[composite[Id,x]] (* derived 2006 August 19 in CARD-MAP.NB *) card[map[x_,y_]] := natexp[card[y],card[x]] /; and[member[x,FINITE],member[y,FINITE]] (* derived 2006 August 19 in CARD-MAP.NB *) card[map[fin[x_],fin[y_]]] := natexp[card[fin[y]],card[fin[x]]] (* derived 2006 August 19 in CARD-MAP.NB *) card[map[nat[x_],nat[y_]]] := natexp[nat[y],nat[x]] (* derived 2005 April 27 in CARDRANK.NB *) card[nat[x_]] := nat[x] (* derived 2006 August 29 in CARTCTBL.NB *) card[NATADD] := omega (* derived 2005 July 16 in DBLCOUNT.NB *) card[natadd[x_,y_]] := natadd[x,y] (* derived 2006 August 29 in CARTCTBL.NB *) card[NATEXP] := omega (* derived 2006 August 29 in CARTCTBL.NB *) card[NATMOD] := omega (* derived 2005 August 6 in CARD-NAT.NB *) card[natmod[x_,y_]] := natmod[x,y] (* derived 2006 August 29 in CARTCTBL.NB *) card[NATMUL] := omega (* derived 2005 August 6 in CARD-NAT.NB *) card[natmul[x_,y_]] := natmul[x,y] (* derived 2005 August 6 in CARD-NAT.NB *) card[natsub[x_,y_]] := natsub[x,y] (* derived 2006 August 16 in OL-SU-OM.NB *) card[odd] := omega (* added 2002 May 29 based on ALEPH0.NB *) card[omega] := omega (* derived 2006 March 17 in OL-CARD.NB *) card[ordlist[x_]] := domain[ordlist[x]] (* derived 2006 July 2 in NATEXP-2.NB *) card[P[fin[x_]]] := natexp[succ[set[0]],card[fin[x]]] (* derived 2006 July 2 in NATEXP-2.NB *) card[P[nat[x_]]] := natexp[succ[set[0]],nat[x]] (* derived 2005 January 11 in SET-SUCC.NB *) card[P[succ[set[0]]]] := succ[succ[succ[set[0]]]] (* derived 2006 July 6 in CARDPLUS.NB *) card[PLUS] := omega (* derived 2004 January 10 in CARD-FUN.NB *) card[plus[x_]] := intersection[omega,image[V,intersection[omega,set[x]]]] (* derived 2005 August 17 in PRIMESEQ.NB *) card[PRIMES] := omega (* derived 2006 August 16 in OL-SU-OM.NB *) card[PRIMESEQ] := omega (* derived 2006 March 15 in CARD-OO.NB *) card[range[oopart[x_]]] := card[oopart[x]] (* derived 2006 March 17 in OL-CARD.NB *) card[range[ordlist[x_]]] := domain[ordlist[x]] (* derived 2006 July 6 in CARDPLUS.NB *) card[range[PLUS]] := omega (* derived 2007 January 10 in CARDRAVS.NB *) card[range[VERTSECT[DIV]]] := omega (* derived 2004 January 10 in CARD-FUN.NB *) card[RC[x_]] := intersection[card[P[x]],image[V,set[x]]] (* derived 2005 January 7 in CARD-ONE.NB *) card[set[x_]] := intersection[image[V,set[x]],set[0]] (* derived 2005 January 7 in CARD-UP.NB *) card[set[x_,y_]] := succ[set[0]] /; and[member[x,V],member[y,V],not[equal[x,y]]] (* derived 2005 December 9 in FIN-CARD.NB *) card[set[x_,y__]] := natsub[succ[card[set[y]]],card[intersection[set[x],set[y]]]] /; member[x,V] (* added 2001 December 1 based on CARD-X.NB *) card[set[0]] := set[0] (* derived 2005 January 7 in CARD-K.NB *) card[succ[x_]] := succ[card[x]] /; and[member[x,FINITE],member[x,REGULAR]] (* derived 2005 January 7 in CARD-OM.NB *) card[succ[omega]] := omega (* derived 2006 October 26 in CARDARTH.NB *) card[TIMES] := omega (* derived 2006 July 6 in CARDPLUS.NB *) card[times[x_]] := intersection[omega,image[V,intersection[omega,set[x]]]] (* derived 2005 December 9 in FIN-CARD.NB *) card[union[x_,y_]] := natsub[natadd[card[x],card[y]],card[intersection[x,y]]] /; and[member[x,FINITE],member[y,FINITE]] (* added 2001 December 2 based on CARD-FUN.NB *) card[union[x_,complement[image[V,set[y_]]]]] := union[card[x],complement[image[V,set[y]]]] (* derived 2005 January 8 in CARD-ADJ.NB *) card[union[x_,set[y_]]] := succ[card[x]] /; and[member[x,FINITE],member[y,V],not[member[y,x]]] (* derived 2006 August 17 in CTBL-U.NB *) card[Z] := omega (* introduced 1996 March 7 in CART.M based on Theorem CP-3A in CP1 *) cart[x_,0] := 0 (* introduced 1996 March 7 in CART.M based on Theorem CP-3B in CP1 *) cart[0,x_] := 0 (* Theorem IMV-CP01 in IM2 proved 1998 July 21 *) cart[complement[image[V,x_]],y_] := cart[V,intersection[complement[image[V,x]],y]] (* Theorem IMV-CP02 in IM2 proved 1998 July 21 *) cart[domain[x_],image[V,x_]] := cart[domain[x],V] (* derived 2008 October 7 in BNP-WRAP.NB *) cart[fix[domain[binop[x_]]],fix[domain[binop[x_]]]] := domain[binop[x]] (* derived 2008 October 19 in SEMIGP.NB *) cart[fix[domain[semigp[x_]]],fix[domain[semigp[x_]]]] := domain[semigp[x]] (* Theorem IM-V-CP in IM2 proved 1998 February 5 *) cart[x_,image[V,x_]] := cart[x,V] (* Theorem IMV-CP03 in IM2 proved 1998 July 22 *) cart[image[z_,x_],image[V,x_]] := cart[image[z,x],V] (* Theorem IMV-CP04 in IM2 proved 1998 July 22 *) cart[image[z_,x_],intersection[y_,image[V,x_]]] := cart[image[z,x],y] (* Theorem IMV-CP05 in IM2 proved 1998 July 22 *) cart[image[V,x_],y_] := cart[V,intersection[image[V,x],y]] (* added 2001 November 22 based on CP-I-IMV.NB *) cart[intersection[x_,complement[image[V,y_]]],z_] := cart[x,intersection[z,complement[image[V,y]]]] (* Theorem IMV-CP06 in IM2 proved 1998 July 22 *) cart[x_,intersection[y_,image[V,x_]]] := cart[x,y] (* Theorem IMV-CP07 in IM2 proved 1998 July 22 *) cart[intersection[x_,image[V,y_]],z_] := cart[x,intersection[image[V,y],z]] (* derived 2006 July 11 in SGP-MOD.NB *) cart[intersection[omega,x_],nat[x_]] := cart[nat[x],nat[x]] (* added 2002 October 22 based on CO-ID.NB *) cart[inverse[x_],intersection[y_,image[V,domain[x_]]]] := cart[inverse[x],y] (* Theorem IMV-CP08 in IM2 proved 1998 July 22 *) cart[range[x_],image[V,x_]] := cart[range[x],V] (* derived 2008 October 9 in QUASIGP.NB *) cart[range[quasigp[x_]],range[quasigp[x_]]] := domain[quasigp[x]] (* dangerous rule found 2002 January 1 in PAIR-MEM.NB replaced with temporary rules for A[...] cart[set[x_],set[y_]] := set[PAIR[x,y]] *) (* added 2001 November 29 based on CO-SS.NB *) cart[union[x_,intersection[y_,complement[image[V,z_]]]],w_] := union[cart[x,w],cart[y,intersection[w,complement[image[V,z]]]]] (* added 2001 November 29 based on CO-SS.NB *) cart[union[x_,intersection[y_,image[V,z_]]],w_] := union[cart[x,w],cart[y,intersection[w,image[V,z]]]] (* introduced 2006 May 8 in CHAIN.NB *) cartsq[x_] := cart[x,x] (* derived 2008 December 30 in CAT-WRAP.NB *) cat[x_] := x /; category[x] (* derived 2008 December 30 in CAT-DEFN.NB *) category[0] := True (* derived 2008 December 31 in BIG-CATS.NB *) category[CAP] := False (* derived 2009 January 11 in CAT-SPEC.NB *) category[cart[cart[x_,x_],x_]] := or[equal[0,x],member[x,range[SINGLETON]]] (* derived 2008 December 30 in CAT-WRAP.NB *) category[cat[x_]] := True (* derived 2008 December 31 in BIG-CATS.NB *) category[CATOFUNS] := True (* derived 2008 December 31 in BIG-CATS.NB *) category[CATORELN] := True (* derived 2008 December 31 in BIG-CATS.NB *) category[COMPOSE] := False (* derived 2008 December 30 in CAT-WRAP.NB *) category[composite[cat[x_],SWAP]] := True (* derived 2009 January 11 in CAT-SPEC.NB *) category[composite[cross[cat[x_],cat[y_]],TWIST]] := True (* derived 2009 January 11 in CAT-SPEC.NB *) category[composite[id[x_],inverse[DUP]]] := True (* derived 2008 December 31 in BIG-CATS.NB *) category[composite[SWAP,RIF]] := True (* derived 2009 January 11 in CAT-SPEC.NB *) category[composite[SWAP,RIF,id[cart[composite[id[x_],S,id[x_]],composite[id[x_],S,id[x_]]]]]] := True (* derived 2009 January 11 in CAT-SPEC.NB *) category[composite[SWAP,RIF,id[cart[eqv[x_],eqv[x_]]]]] := True (* derived 2009 January 11 in CAT-SPEC.NB *) category[composite[SWAP,RIF,id[cart[po[x_],po[x_]]]]] := True (* derived 2009 January 11 in CAT-SPEC.NB *) category[composite[SWAP,RIF,id[cart[trv[rfx[x_]],trv[rfx[x_]]]]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) category[CUP] := True (* derived 2008 December 31 in BIG-CATS.NB *) category[FIRST] := False (* derived 2008 December 31 in CAT-MON.NB *) category[INTADD] := True (* derived 2008 December 31 in CAT-MON.NB *) category[INTMUL] := True (* derived 2008 December 31 in BIG-CATS.NB *) category[inverse[DUP]] := True (* derived 2008 December 31 in BIG-CATS.NB *) category[JOIN] := True (* derived 2008 December 31 in CAT-MON.NB *) category[NATADD] := True (* derived 2008 December 31 in CAT-MON.NB *) category[NATMUL] := True (* derived 2008 December 31 in BIG-CATS.NB *) category[SECOND] := False (* derived 2008 December 31 in BIG-CATS.NB *) category[SYMDIF] := True (* derived 2008 December 30 in CAT-DEFN.NB *) category[union[inverse[LEFT[0]],inverse[RIGHT[0]]]] := False (* derived 2007 May 6 in CHN-SP.NB *) chains[0] := set[0] (* derived 2007 May 6 in CHNBASIC.NB *) chains[cart[x_,y_]] := P[intersection[x,y]] (* derived 2007 May 6 in CHNBASIC.NB *) chains[complement[cart[x_,y_]]] := P[union[complement[x],complement[y]]] (* derived 2008 July 13 in CHN-C-E.NB *) chains[complement[E]] := V /; AxReg (* derived 2007 May 6 in CHNBASIC.NB *) chains[complement[inverse[x_]]] := chains[complement[x]] (* derived 2007 May 6 in CHN-SP.NB *) chains[complement[S]] := set[0] (* derived 2007 May 6 in CHNBASIC.NB *) chains[composite[Id,x_]] := chains[x] (* derived 2007 May 6 in CHNBASIC.NB *) chains[composite[id[y_],x_,id[y_]]] := intersection[chains[x],P[y]] (* derived 2007 May 6 in CHNBASIC.NB *) chains[composite[inverse[funpart[x_]],y_,funpart[x_]]] := intersection[image[inverse[IMAGE[funpart[x]]],chains[y]],P[domain[funpart[x]]]] (* derived 2007 May 8 in POWER.TXT *) chains[composite[inverse[POWER],x_,POWER]] := image[inverse[IMAGE[POWER]],chains[x]] (* derived 2008 February 26 in WF-TRICH.NB *) chains[composite[inverse[SUCC],E]] := chains[composite[inverse[E],SUCC]] (* derived 2007 May 6 in CHN-SP.NB *) chains[Di] := set[0] (* derived 2007 May 6 in CHN-SP.NB *) chains[DISJOINT] := succ[set[0]] (* derived 2007 May 6 in CHN-SP.NB *) chains[Id] := union[range[SINGLETON],set[0]] (* derived 2007 May 6 in CHNBASIC.NB *) chains[id[x_]] := union[image[SINGLETON,x],set[0]] (* derived 2007 May 6 in CHNBASIC.NB *) chains[intersection[Di,x_]] := set[0] (* derived 2007 May 6 in CHNBASIC.NB *) chains[intersection[x_,inverse[x_]]] := cliques[x] (* derived 2007 May 6 in CHN-SP.NB *) chains[INTLEQ] := P[Z] (* derived 2007 May 6 in CHNBASIC.NB *) chains[inverse[x_]] := chains[x] (* derived 2007 May 6 in CHN-SP.NB *) chains[Q] := cliques[Q] (* derived 2007 May 6 in CHN-SP.NB *) chains[REGULAR] := REGULAR (* derived 2008 September 23 in CHN-RFX.NB *) chains[rfx[x_]] := chains[x] (* derived 2007 May 6 in CHN-SP.NB *) chains[Q] := cliques[Q] (* derived 2007 May 6 in CHN-TO.NB *) chains[to[x_]] := P[fix[to[x]]] (* derived 2007 May 6 in CHN-FU.NB *) chains[union[x_,complement[image[V,y_]]]] := union[chains[x],complement[image[V,y]]] (* derived 2008 February 17 in CHN-U-ID.NB *) chains[union[x_,composite[Id,y_]]] := chains[union[x,y]] (* derived 2007 May 6 in CHN-SP.NB *) chains[V] := V (* derived 2008 March 9 in CHAIN-WO.NB *) chains[wo[x_]] := P[fix[wo[x]]] (* introduced 2004 October 26 in AXCH.NB *) choicefunction[x_,y_] := and[FUNCTION[x],subclass[x,inverse[E]],equal[domain[x],y]] (* added 2000 December 9 based on CLIQUES.NB *) cliques[0] := set[0] (* added 2000 December 9 based on CLIQUES.NB *) cliques[cart[x_,y_]] := P[intersection[x,y]] (* added 2002 January 18 based on THINRULE.NB *) cliques[complement[x_]] := fix[composite[DISJOINT,IMAGE[x]]] /; cond && thin[x] (* derived 2007 November 7 in CLQ-C.NB *) cliques[complement[x_]] := fix[composite[DISJOINT,IMAGE[inverse[x]]]] /; thin[inverse[x]] (* added 2000 December 9 based on MORECLIQ.NB *) cliques[complement[cart[x_,y_]]] := union[P[complement[x]],P[complement[y]]] (* corrected 2002 June 4 *) cliques[complement[composite[inverse[x_],x_]]] := P[complement[domain[x]]] (* added 2000 December 14 based on CLIQUES.NB *) cliques[complement[composite[x_,inverse[x_]]]] := P[complement[range[x]]] (* derived 2008 March 28 in MONOCLIQ.NB *) cliques[complement[composite[inverse[thinpart[x_]],y_,thinpart[x_]]]] := image[inverse[IMAGE[thinpart[x]]],cliques[complement[y]]] (* derived 2004 January 13 in RA-RCF.NB *) cliques[complement[cross[x_,complement[inverse[y_]]]]] := cliques[complement[cross[inverse[x],complement[y]]]] (* added 2000 December 9 based on REPLACE.NB *) cliques[complement[cross[Di,Id]]] := image[inverse[IMAGE[SWAP]],FUNS] (* added 2000 December 9 based on CLIQUES.NB *) cliques[complement[cross[Id,Di]]] := image[inverse[IMAGE[id[cart[V,V]]]],FUNS] (* added 2000 December 17 based on Q.NB *) cliques[complement[E]] := fix[composite[DISJOINT,BIGCUP]] (* added 2000 December 17 based on Q.NB *) cliques[complement[inverse[x_]]] := cliques[complement[x]] (* added 2000 December 17 based on Q.NB *) cliques[complement[Q]] := set[0] (* derived 2004 May 2 in REGULAR.NB *) cliques[complement[REGULAR]] := P[complement[REGULAR]] (* added 2000 December 17 based on Q.NB *) cliques[complement[S]] := set[0] (* added 2002 January 18 based on FUNPART.NB *) cliques[composite[Di,f_]] := intersection[fix[composite[DISJOINT,IMAGE[f]]],P[domain[f]]] /; FUNCTION[f] (* added 2000 December 9 based on CLIQUES.NB *) cliques[composite[Id,x_]] := cliques[x] (* added 2000 December 9 based on CLIQUES.NB *) cliques[composite[id[x_],y_]] := intersection[cliques[y],P[x]] (* added 2000 December 9 based on CLIQUES.NB *) cliques[composite[x_,id[y_]]] := intersection[cliques[x],P[y]] (* derived 2006 October 17 in CLIQ-XFM.NB *) cliques[composite[inverse[funpart[x_]],y_,funpart[x_]]] := intersection[image[inverse[IMAGE[funpart[x]]],cliques[y]],P[domain[funpart[x]]]] (* derived 2005 November 9 in POWCHAIN.NB *) cliques[composite[inverse[POWER],x_,POWER]] := image[inverse[IMAGE[POWER]],cliques[x]] (* added 2001 December 31 based on DORA-DJ.NB *) cliques[composite[inverse[SECOND],Di,FIRST]] := intersection[image[inverse[DORA],DISJOINT],P[cart[V,V]]] (* derived 2007 May 11 in CONSTCLQ.NB *) cliques[composite[inverse[SECOND],SECOND]] := CONST (* derived 2006 January 8 in CLIQ-X.NB *) cliques[cross[x_,y_]] := intersection[image[inverse[IMAGE[FIRST]],cliques[x]], image[inverse[IMAGE[SECOND]],cliques[y]],P[cart[V,V]]] (* added 2000 December 9 based on CLIQUES.NB *) cliques[Di] := set[0] (* revised 2002 April 18 based on REPLACE.NB *) cliques[DISJOINT] := succ[set[0]] (* derived 2007 May 6 in CHN-SP.NB *) cliques[E] := union[fix[composite[inverse[S],BIGCAP]],set[0]] (* derived 2006 May 11 in IVR-FUNP.NB *) cliques[funpart[x_]] := union[image[SINGLETON,fix[funpart[x]]],set[0]] (* added 2000 December 9 based on CLIQUES.NB *) cliques[Id] := union[range[SINGLETON],set[0]] (* added 2000 December 9 based on CLIQUES.NB *) cliques[id[x_]] := union[image[SINGLETON,x],set[0]] (* added 2003 October 8 based on FS-CUP.NB *) cliques[image[inverse[CUP],FUNS]] := image[inverse[BIGCUP],FUNS] (* added 2000 December 9 based on CLIQUES.NB *) cliques[intersection[x_,y_]] := intersection[cliques[x],cliques[y]] (* derived 2007 May 6 in CHN-SP.NB *) cliques[INVERSE] := union[image[SINGLETON,SYM],set[0]] (* added 2000 December 9 based on CLIQUES.NB *) cliques[inverse[x_]] := cliques[x] (* derived 2007 May 11 in VS-LEAST.NB *) cliques[po[x_]] := union[image[SINGLETON,fix[po[x]]],set[0]] (* added 2000 December 9 based on CLIQUES.NB *) cliques[PS] := set[0] (* derived 2004 May 2 in REGULAR.NB *) cliques[REGULAR] := REGULAR (* derived 2006 October 10 in CLIQ-RFX.NB *) cliques[rfx[x_]] := cliques[x] (* added 2000 December 14 based on CLIQUES.NB *) cliques[S] := union[range[SINGLETON],set[0]] (* derived 2007 May 6 in CHN-SP.NB *) cliques[SWAP] := union[image[SINGLETON,Id],set[0]] (* derived 2006 October 9 in REIFCLIQ.NB *) cliques[union[cart[x_,x_],cart[y_,y_]]] := union[P[x],P[y]] (* added 2002 January 17 based on ANTISYM3.NB *) cliques[union[cart[Id,V],composite[Di,SWAP,id[Di]]]] := ANTISYM (* added 2002 January 18 based on THINRULE.NB *) cliques[union[x_,complement[cart[y_,y_]]]] := image[inverse[IMAGE[id[y]]],cliques[x]] (* derived 2008 January 26 in CHAINS-C.NB *) cliques[union[complement[x_],complement[inverse[x_]]]] := chains[complement[x]] (* derived 2006 January 5 in TRUEPAIR.NB *) cliques[union[x_,complement[image[V,y_]]]] := union[cliques[x],complement[image[V,y]]] (* derived 2008 February 17 in CHN-U-ID.NB *) cliques[union[x_,composite[Id,y_]]] := cliques[union[x,y]] (* derived 2007 August 3 in TRICHOT.NB *) cliques[union[composite[inverse[E],SUCC],composite[inverse[SUCC],E]]] := chains[composite[inverse[E],SUCC]] (* derived 2008 Jaanuary 17 in CLQ-U-ID.NB *) cliques[union[Di,x_]] := P[fix[x]] (* derived 2007 August 3 in TRICHOT.NB *) cliques[union[E,composite[inverse[E],SUCC]]] := chains[composite[inverse[E],SUCC]] (* added 2002 April 23 based on TRICHOT.NB *) cliques[union[E,inverse[S]]] := cliques[union[S,inverse[E]]] (* derived 2008 January 26 in CHAINS-C.NB *) cliques[union[Id,complement[x_],complement[inverse[x_]]]] := chains[union[Id,complement[x]]] (* derived 2007 June 9 in VS-LT-GT.NB *) cliques[union[Id,complement[inverse[x_]]]] := cliques[union[Id,complement[x]]] (* derived 2007 November 7 in CLQ-C.NB *) cliques[union[Id,complement[S]]] := fix[composite[DISJOINT,IMAGE[inverse[PS]]]] (* derived 2007 June 9 in VS-LT-GT.NB *) cliques[union[Id,composite[Id,x_]]] := cliques[union[Id,x]] (* derived 2008 Jaanuary 17 in CLQ-U-ID.NB *) cliques[union[Id,x_,inverse[x_]]] := chains[union[Id,x]] (* derived 2007 May 5 in REPLACE.NB *) cliques[union[x_,inverse[x_]]] := chains[x] (* derived 2008 February 17 in CHN-U-ID.NB *) cliques[union[x_,y_,inverse[x_],inverse[y_]]] := chains[union[x,y]] (* added 2000 December 9 based on CLIQUES.NB *) cliques[V] := V (* derived 2006 August 15 in CLOCK-AP.NB *) clock[0] := 0 (* derived 2006 August 15 in CLOCK-AP.NB *) clock[set[0]] := cart[set[0],set[0]] (* derived 2006 August 15 in CLOCK-AP.NB *) clock[succ[set[0]]] := union[cart[set[0],set[set[0]]],cart[set[set[0]],set[0]]] (* derived 2008 December 26 in EXAMPLES.NB *) cod[0] := 0 (* derived 2008 December 26 in EXAMPLES.NB *) cod[binop[x_]] := cart[fix[domain[binop[x]]],ids[binop[x]]] (* derived 2008 December 26 in EXAMPLES.NB *) cod[CAP] := 0 (* derived 2008 December 26 in EXAMPLES.NB *) cod[CATOFUNS] := composite[id[inverse[IMAGE[DUP]]],inverse[SECOND],SECOND, id[composite[S,IMAGE[SECOND],id[FUNS]]]] (* derived 2008 December 26 in EXAMPLES.NB *) cod[CATORELN] := composite[id[inverse[IMAGE[DUP]]],inverse[SECOND],SECOND, id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]]] (* derived 2008 December 26 in EXAMPLES.NB *) cod[COMPOSE] := 0 (* derived 2008 December 26 in EXAMPLES.NB *) cod[composite[cross[x_,y_],TWIST]] := cross[cod[x],cod[y]] (* derived 2008 December 25 in COD-DOM.NB *) cod[composite[x_,id[cart[V,V]]]] := cod[x] (* derived 2009 January 11 in CAT-SPEC.NB *) cod[composite[id[x_],inverse[DUP]]] := id[x] (* derived 2008 December 25 in COD-DOM.NB *) cod[composite[x_,SWAP]] := dom[x] (* derived 2008 December 26 in EXAMPLES.NB *) cod[composite[SWAP,RIF]] := composite[DUP,SECOND] (* derived 2009 January 11 in CAT-SPEC.NB *) cod[composite[SWAP,RIF,id[cart[x_,x_]]]] := composite[DUP,SECOND,id[composite[id[fix[x]],x]]] (* derived 2008 December 26 in EXAMPLES.NB *) cod[CUP] := cart[V,set[0]] (* derived 2008 December 26 in EXAMPLES.NB *) cod[FIRST] := 0 (* derived 2008 December 26 in EXAMPLES.NB *) cod[INTADD] := cart[Z,set[id[omega]]] (* derived 2008 December 30 in CAT-WRAP.NB *) cod[intersection[x_,complement[image[V,t_]]]] := intersection[cod[x],complement[image[V,t]]] (* derived 2008 December 26 in EXAMPLES.NB *) cod[INTMUL] := cart[Z,set[composite[id[omega],SUCC]]] (* derived 2008 December 26 in EXAMPLES.NB *) cod[inverse[DUP]] := Id (* derived 2008 December 26 in EXAMPLES.NB *) cod[JOIN] := cart[LISTS,set[0]] (* derived 2008 December 26 in EXAMPLES.NB *) cod[NATADD] := cart[omega,set[0]] (* derived 2008 December 26 in EXAMPLES.NB *) cod[NATMUL] := cart[omega,set[set[0]]] (* derived 2008 December 26 in EXAMPLES.NB *) cod[SECOND] := 0 (* derived 2008 December 26 in EXAMPLES.NB *) cod[SYMDIF] := cart[V,set[0]] (* derived 2008 December 26 in EXAMPLES.NB *) cod[union[inverse[LEFT[0]],inverse[RIGHT[0]]]] := cart[V,set[0]] (* derived 2004 December 21 in COMUTANT.NB *) commutant[0] := V (* derived 2004 December 21 in COMUTANT.NB *) commutant[composite[Id,x_]] := commutant[x] (* derived 2004 December 21 in COMUTANT.NB *) commutant[E] := P[complement[cart[V,V]]] (* derived 2004 December 21 in COMUTANT.NB *) commutant[Id] := V (* derived 2004 December 21 in COMUTANT.NB *) commutant[id[x_]] := P[intersection[complement[cart[x,complement[x]]],complement[cart[complement[x],x]]]] (* derived 2004 December 21 in COMUTANT.NB *) commutant[inverse[x_]] := image[inverse[IMAGE[SWAP]],commutant[x]] (* derived 2004 December 21 in COMUTANT.NB *) commutant[S] := P[complement[cart[V,V]]] (* derived 2004 December 21 in COMUTANT.NB *) commutant[V] := P[complement[cart[V,V]]] (* added 2001 May 18 *) commute[x_,y_] := equal[composite[x,y],composite[y,x]] (* introduced 1996 March 7 in COMPLEME.NB based on Theorem C-2A in C1 *) complement[0] := V (* from ADJ-C.LOG *) complement[ADJOIN[x_]] := union[complement[cart[V,image[V,set[x]]]], composite[Di,ADJOIN[x]]] (* Theorem BA-DI2 in BIGCAP/BA1 proved 1998 December 11 *) complement[BIGCAP] := union[complement[cart[complement[set[0]],V]], composite[Di,BIGCAP]] (* Theorem BC-C in BIGCUP/BC proved 1998 December 12 *) complement[BIGCUP] := union[complement[cart[V,V]],composite[Di,BIGCUP]] (* Theorem C-1 in C1 *) complement[complement[x_]] := x (* Theorem AP-SV-C1 in AP2 proved 1998 September 7 *) complement[composite[x_,f_]] := union[composite[complement[x],f], complement[cart[domain[f],V]]] /; FUNCTION[f] complement[composite[g_,x_]] := union[composite[g,complement[x]], complement[cart[V,range[g]]]] /; INVFUN[g] (* derived 2004 April 22 in PSM-VS.NB *) complement[composite[complement[E],x_]] := union[complement[cart[V,V]],composite[S,VERTSECT[x]]] (* added 2002 October 22 based on C-CO-X.NB *) complement[composite[cross[w_,composite[id[x_],y_]],z_]] := union[complement[cart[V,cart[V,x]]],complement[composite[cross[w,y],z]]] (* added 2002 October 22 based on C-CO-X.NB *) complement[composite[cross[composite[id[w_],x_],y_],z_]] := union[complement[cart[V,cart[w,V]]],complement[composite[cross[x,y],z]]] (* added 2002 October 22 based on C-CO-X.NB *) complement[composite[w_,cross[x_,composite[y_,id[z_]]]]] := union[complement[cart[cart[V,z],V]],complement[composite[w,cross[x,y]]]] (* added 2002 October 22 based on C-CO-X.NB *) complement[composite[w_,cross[composite[x_,id[y_]],z_]]] := union[complement[cart[cart[y,V],V]],complement[composite[w,cross[x,z]]]] (* added 2000 November 26 based on GLB-LUB.NB complement[composite[x_,inverse[E]]] := union[complement[cart[V,V]],UB[complement[x]]] *) (* added 2000 November 14 based on MAX.NB *) complement[composite[complement[x_],inverse[E]]] := union[complement[cart[V,V]],UB[x]] (* Theorem DJT-DEF in DJT proved 1998 July 27 *) complement[composite[E,inverse[E]]] := union[complement[cart[V,V]],DISJOINT] (* removed 2000 November 7 complement[cross[x_,y_]] := union[complement[cart[cart[V,V],cart[V,V]]], composite[inverse[FIRST],complement[x],FIRST], composite[inverse[SECOND],complement[y],SECOND]] *) (* added 2002 October 22 based on C-CO-X.NB *) complement[cross[composite[id[w_],x_],y_]] := union[complement[cart[V,cart[w,V]]],complement[cross[x,y]]] (* added 2002 October 22 based on C-CO-X.NB *) complement[cross[w_,composite[id[x_],y_]]] := union[complement[cart[V,cart[V,x]]],complement[cross[w,y]]] (* added 2002 October 22 based on C-CO-X.NB *) complement[cross[x_,composite[y_,id[z_]]]] := union[complement[cart[cart[V,z],V]],complement[cross[x,y]]] (* added 2002 October 22 based on C-CO-X.NB *) complement[cross[composite[x_,id[y_]],z_]] := union[complement[cart[cart[y,V],V]],complement[cross[x,z]]] (* Theorem DI-C-ID in DI added 1998 July 2 *) complement[Di] := union[Id,complement[cart[V,V]]] (* Theorem DJT-C2 in DJT *) complement[DISJOINT] := union[composite[E,inverse[E]],complement[cart[V,V]]] (* added 1998 July 2 *) complement[DUP] := union[complement[cart[V,Id]],composite[DUP,Di]] (* added 1998 July 2 *) complement[FIRST] := union[complement[cart[cart[V,V],V]],composite[Di,FIRST]] (* added 1998 February 7 *) complement[fix[E]] := RUSSELL (* added 1998 July 2 *) complement[id[x_]] := union[complement[cart[x,x]],composite[id[x],Di,id[x]]] (* Theorem DI-ID-C in DI added 1998 July 2 *) complement[Id] := union[Di,complement[cart[V,V]]] (* added 1998 July 2; revised 1999 July 14; removed 2000 November 7 complement[IMAGE[z_]] := union[ complement[cart[P[domain[VERTSECT[z]]],range[IMAGE[z]]]], composite[id[range[IMAGE[z]]],Di,IMAGE[z]]] *) (* Theorem C-4B in C1 *) complement[intersection[x_,y_]] := union[complement[x],complement[y]] (* added 1998 August 11 *) complement[inverse[BIGCAP]] := union[complement[cart[V,complement[set[0]]]],composite[inverse[BIGCAP],Di]] (* added 1998 July 2 *) complement[inverse[BIGCUP]] := union[complement[cart[V,V]],composite[inverse[BIGCUP],Di]] (* added 1998 July 2 *) complement[inverse[DUP]] := union[complement[cart[Id,V]],composite[Di,inverse[DUP]]] (* added 1998 July 2 *) complement[inverse[FIRST]] := union[complement[cart[V,cart[V,V]]],composite[inverse[FIRST],Di]] (* added 2000 November 23 based on VS-3.NB *) complement[inverse[LB[x_]]] := union[complement[cart[V,V]],composite[E,complement[x]]] (* added 1998 August 11 *) complement[inverse[POWER]] := union[complement[cart[V,V]],composite[inverse[POWER],Di]] (* added 2002 May 25 based on ON-SUC-1.NB *) complement[inverse[PS]] := union[Id,complement[inverse[S]]] (* added 1998 July 2 *) complement[inverse[SECOND]] := union[complement[cart[V,cart[V,V]]],composite[inverse[SECOND],Di]] (* added 1998 July 3 *) complement[inverse[SINGLETON]] := union[complement[cart[V,V]],composite[inverse[SINGLETON],Di]] (* revised 2002 November 26 based on C-SUCC.NB *) complement[inverse[SUCC]] := union[complement[cart[range[SUCC],V]],composite[inverse[SUCC],Di]] (* derived 2005 October 22 in TO-C.NB *) complement[inverse[to[x_]]] := union[complement[cart[fix[to[x]],fix[to[x]]]],intersection[Di,to[x]]] (* added 2000 November 7 based on UB-1.NB *) complement[inverse[UB[x_]]] := union[complement[cart[V,V]],composite[E,complement[inverse[x]]]] (* derived 2005 October 22 in WO-C.NB *) complement[inverse[wo[x_]]] := union[complement[cart[fix[wo[x]],fix[wo[x]]]],intersection[Di,wo[x]]] (* added 2000 November 7 based on LB-2.NB *) complement[LB[x_]] := union[complement[cart[V,V]],composite[complement[inverse[x]],inverse[E]]] (* added 1998 August 11 *) complement[POWER] := union[complement[cart[V,V]],composite[Di,POWER]] (* Theorem PS-C1 in PS1 proved 1998 November 28 *) complement[PS] := union[Id,complement[S]] (* Theorem RUS-C in RUS/1 *) complement[RUSSELL] := fix[E] (* added 1998 July 2 *) complement[SECOND] := union[complement[cart[cart[V,V],V]],composite[Di,SECOND]] (* Theorem AP-DI-SG proved 1998 December 16 *) complement[SINGLETON] := union[complement[cart[V,V]],composite[Di,SINGLETON]] (* revised 2002 November 26 based on C-SUCC.NB *) complement[SUCC] := union[complement[cart[V,range[SUCC]]],composite[Di,SUCC]] (* added 1998 July 2; removed 2002 November 26 based on SWAP-DI.NB complement[SWAP] := union[complement[cart[cart[V,V],cart[V,V]]],composite[id[cart[V,V]],Di,SWAP]] *) (* derived 2005 October 22 in TO-C.NB *) complement[to[x_]] := union[complement[cart[fix[to[x]],fix[to[x]]]],intersection[Di,inverse[to[x]]]] (* added 2000 November 7 based on UB-1.NB *) complement[UB[x_]] := union[complement[cart[V,V]],composite[complement[x],inverse[E]]] (* derived 2005 October 22 in WO-C.NB *) complement[wo[x_]] := union[complement[cart[fix[wo[x]],fix[wo[x]]]],intersection[Di,inverse[wo[x]]]] (* Theorem C-4A in C1 *) complement[union[x_,y_]] := intersection[complement[x],complement[y]] (* introduced 1996 March 7 in COMPLEME.M based on Theorem C-2B in C1 *) complement[V] := 0 (* Theorem CO-0A in CO1 *) composite[0,x_] := 0 (* Theorem CO-0B in CO1 *) composite[x_,0] := 0 (* added 2001 May 10 based on ACLOSURE.NB *) composite[ACLOSURE,ACLOSURE] := ACLOSURE (* added 2002 November 20 based on UCL-U.NB *) composite[ACLOSURE,ADJOIN[set[0]]] := composite[ADJOIN[set[0]],ACLOSURE] (* derived 2007 May 6 in CHN-FU.NB *) composite[ACLOSURE,CHAINS] := CHAINS (* added 2001 October 15 based on ACL-IMS.NB *) composite[ACLOSURE,CLIQUES] := CLIQUES (* derived 2005 February 17 in NAT-ACL.NB *) composite[ACLOSURE,id[omega]] := id[omega] (* derived 2005 February 17 in NAT-ACL.NB *) composite[ACLOSURE,id[OMEGA]] := id[OMEGA] (* added 2003 May 19 based on CAPCLOSE.NB *) composite[ACLOSURE,IMAGE[CAP],CART,DUP] := ACLOSURE (* added 2003 May 18 based on ACL-SQ.NB *) composite[ACLOSURE,IMAGE[CART],IMAGE[DUP]] := composite[IMAGE[CART],IMAGE[DUP],ACLOSURE] (* derived 2007 August 4 in ACL-I-ON.NB *) composite[ACLOSURE,IMAGE[id[omega]]] := IMAGE[id[omega]] (* derived 2007 August 4 in ACL-I-ON.NB *) composite[ACLOSURE,IMAGE[id[OMEGA]]] := IMAGE[id[OMEGA]] (* derived 2007 August 4 in ACL-I-ON.NB *) composite[ACLOSURE,IMAGE[id[ord[x_]]]] := IMAGE[id[ord[x]]] (* added 2001 October 2 based on IMS.NB *) composite[ACLOSURE,IMAGE[inverse[S]]] := IMAGE[inverse[S]] (* added 2003 May 19 based on ACL-IPOW.NB *) composite[ACLOSURE,IMAGE[POWER]] := composite[IMAGE[POWER],ACLOSURE] (* added 2001 May 10 based on ACLOSURE.NB *) composite[ACLOSURE,POWER] := POWER (* added 2002 April 8 based on UCL-ACL.NB *) composite[ACLOSURE,SINGLETON] := SINGLETON (* derived 2008 July 10 in UBD-CO.NB *) composite[ACLOSURE,UBD] := UBD (* derived 2004 August 10 in RS-3.NB *) composite[ACLOSURE,VERTSECT[RESTRICT]] := VERTSECT[RESTRICT] (* added 1999 November 3 based on CURRY.NB *) composite[ADJOIN[x_],ADJOIN[y_]] := ADJOIN[union[x,y]] (* added 2002 August 18 based on DISTRIB.NB *) composite[ADJOIN[x_],CAP] := composite[CAP,cross[ADJOIN[x],ADJOIN[x]]] (* added 2000 September 22 based on LEFT.NB *) composite[ADJOIN[complement[image[V,set[x_]]]],LEFT[x_]] := LEFT[x] (* added 2000 September 22 based on LEFT.NB *) composite[ADJOIN[complement[image[V,set[x_]]]],RIGHT[x_]] := RIGHT[x] (* added 2001 May 2 based on ADJOIN.NB *) composite[ADJOIN[x_],complement[inverse[S]]] := composite[id[image[S,set[x]]],complement[inverse[S]]] (* added 1999 November 21 based on 1999/NOV/20/CUT-ADJ.NB *) composite[ADJOIN[x_],id[image[S,set[x_]]]] := id[image[S,set[x]]] (* added 2003 September 11 based on ID-IMV.NB *) composite[ADJOIN[x_],y___,id[image[V,set[x_]]]] := composite[ADJOIN[x],y] (* added 2002 May 24 based on ADJOIN.NB *) composite[ADJOIN[x_],IMAGE[id[complement[x_]]]] := ADJOIN[x] (* Theorem ADJ-CO3 in ADJ proved 1999 November 23 *) composite[ADJOIN[x_],S] := composite[id[image[S,set[x]]],S] (* derived 2007 July 3 in ADJ-SS-0.NB *) composite[ADJOIN[set[0]],CHAINS] := CHAINS (* derived 2007 July 3 in ADJ-SS-0.NB *) composite[ADJOIN[set[0]],CLIQUES] := CLIQUES (* derived 2006 December 13 in FACT.NB *) composite[ADJOIN[set[0]],FACTORIAL] := FACTORIAL (* added 2002 May 24 based on ADJOIN.NB *) composite[ADJOIN[set[0]],id[omega],SUCC] := composite[id[omega],SUCC] (* derived 2008 July 10 in UBD-VS.NB *) composite[ADJOIN[set[0]],IMAGE[inverse[S]],IMAGE[SECOND],VS] := composite[UBD,IMAGE[SWAP]] (* added 2002 May 24 based on ADJOIN.NB *) composite[ADJOIN[set[0]],IMAGE[SUCC],id[omega]] := composite[id[omega],SUCC] (* added 2001 May 20 based on IDEA.NB *) composite[ADJOIN[set[0]],POWER] := POWER (* added 2002 October 24 based on SUBVAR.NB *) composite[ADJOIN[set[0]],SUBVAR] := SUBVAR (* derived 2008 July 10 in UBD-VS.NB *) composite[ADJOIN[set[0]],UBD] := UBD (* derived 2007 July 3 in ADJ-SS-0.NB *) composite[ADJOIN[set[0]],UCHAINS] := UCHAINS (* derived 2007 July 3 in ADJ-SS-0.NB *) composite[ADJOIN[set[0]],UCLOSURE] := UCLOSURE (* derived 2008 November 17 in ASS-WRAP.NB *) composite[assoc[x_],cross[assoc[x_],Id],inverse[ASSOC]] := composite[assoc[x],cross[Id,assoc[x]]] (* derived 2005 November 9 in RESTRICT.NB *) composite[ASSOC,cross[composite[id[cart[x_,y_]],inverse[FIRST]],Id]] := cross[id[x],composite[id[cart[y,V]],inverse[SECOND]]] (* derived 2005 November 9 in RESTRICT.NB *) composite[ASSOC,cross[composite[id[cart[x_,y_]],inverse[SECOND]],Id]] := composite[id[cart[x,cart[y,V]]],inverse[SECOND]] (* added 2003 May 30 based on RESTRICT.NB *) composite[ASSOC,cross[cross[x_,y_],z_]] := composite[cross[x,cross[y,z]],ASSOC] (* derived 2008 October 9 in X-DUP-ID.NB *) composite[ASSOC,cross[DUP,Id]] := composite[id[inverse[FIRST]],inverse[SECOND]] (* derived 2008 November 17 in ASS-WRAP.NB *) composite[assoc[x_],cross[Id,assoc[x_]],ASSOC] := composite[assoc[x],cross[assoc[x],Id]] (* derived 2008 November 21 in ASSOC-X.NB *) composite[ASSOC,cross[inverse[FIRST],x_]] := cross[Id,composite[inverse[SECOND],x]] (* derived 2008 November 21 in ASSOC-X.NB *) composite[ASSOC,cross[inverse[SECOND],x_]] := composite[inverse[SECOND],cross[Id,x]] (* added 2002 June 16 based on LEFT-ROT.NB *) composite[ASSOC,cross[RIGHT[x_],Id]] := cross[Id,LEFT[x]] (* added 2002 October 22 based on CO-ID.NB *) composite[ASSOC,id[cart[cart[V,V],V]]] := ASSOC (* derived 2004 March 23 in TRV-K.NB *) composite[ASSOC,id[cart[x_,y_]],inverse[FIRST]] := composite[cross[Id,composite[id[cart[V,y]],inverse[FIRST]]],id[x]] (* added 1999 October 17 based on ASSOC.2 *) composite[ASSOC,id[cart[V,V]]] := ASSOC (* derived 2008 November 17 in ASS-WRAP.NB *) composite[assoc[x_],id[cart[V,V]]] := assoc[x] (* added 1999 November 6 based on CO-4.LOG *) composite[ASSOC,inverse[FIRST]] := cross[Id,inverse[FIRST]] (* added 1999 October 31 based on ASSOC.1 *) composite[ASSOC,inverse[ROT]] := composite[SWAP,ROT] (* added 1999 November 6 based on CO-4.LOG *) composite[ASSOC,inverse[SECOND]] := composite[inverse[SECOND],inverse[SECOND]] (* added 2002 June 16 based on LEFT-ROT.NB *) composite[ASSOC,LEFT[x_]] := composite[LEFT[first[x]],LEFT[second[x]]] (* added 1999 November 3 based on ASS-DIF.TXT *) composite[ASSOC,RIGHT[x_]] := cross[Id,RIGHT[x]] (* modified 1999 December 15 based on PERMUTE.NB *) composite[ASSOC,ROT] := composite[SWAP,id[cart[cart[V,V],V]]] (* added 2001 May 10 based on UCLOS-2.NB *) composite[BIGCAP,ACLOSURE] := BIGCAP (* derived 2007 May 6 in CHN-FU.NB *) composite[BIGCAP,CHAINS] := cart[V,set[0]] (* added 2001 May 8 based on BC-BA.NB *) composite[BIGCAP,CLIQUES] := cart[V,set[0]] (* Corollary BA-5C in BIGCAP/BA1 proved 1998 December 15 *) composite[BIGCAP,complement[inverse[S]]] := composite[inverse[S],complement[inverse[E]]] (* added 1999 December 16 based on BIGCAP.NB *) composite[BIGCAP,CUP] := union[composite[BIGCAP,inverse[LEFT[0]]], composite[BIGCAP,inverse[RIGHT[0]]], composite[CAP,cross[BIGCAP,BIGCAP]]] (* Theorem BA-E3 in BIGCAP/BA1 proved 1998 October 1 *) composite[BIGCAP,E] := inverse[S] (* derived 2005 November 19 in TOP.NB *) composite[BIGCAP,HULL[TOPS]] := cart[V,set[0]] (* added 2002 October 22 based on CO-ID.NB *) composite[BIGCAP,id[complement[set[0]]]] := BIGCAP (* derived 2004 December 15 in LB-UB-RS.NB *) composite[BIGCAP,id[intersection[x_,complement[set[0]]]]] := composite[BIGCAP,id[x]] (* derived 2005 January 27 in BA-OM.NB *) composite[BIGCAP,id[omega]] := cart[intersection[omega,complement[set[0]]],set[0]] (* derived 2005 January 27 in BA-ON.NB *) composite[BIGCAP,id[OMEGA]] := cart[intersection[OMEGA,complement[set[0]]],set[0]] (* corrected 1998 August 9 *) composite[BIGCAP,id[range[POWER]]] := cart[range[POWER],set[0]] (* added 1998 July 31 *) composite[BIGCAP,id[range[SINGLETON]]] := inverse[SINGLETON] (* added 2001 May 2 based on ADJOIN.NB *) composite[BIGCAP,IMAGE[ADJOIN[x_]]] := composite[ADJOIN[x],BIGCAP] (* added 1999 September 24 based on BIGCAP.LOG *) composite[BIGCAP,IMAGE[BIGCAP]] := composite[BIGCAP,BIGCUP] (* revised 2001 December 24 based on REPLACE.NB *) composite[BIGCAP,IMAGE[CAP]] := composite[CAP,cross[BIGCAP,BIGCAP],DORA] (* revised 2001 December 24 based on REPLACE.NB *) composite[BIGCAP,IMAGE[CART]] := composite[CART,cross[BIGCAP,BIGCAP],DORA] (* added 2001 April 30 based on CLIQUES2.NB *) composite[BIGCAP,IMAGE[CLIQUES]] := composite[CLIQUES,BIGCAP] (* derived 2008 August 11 in BIGCAP.NB *) composite[BIGCAP,IMAGE[COARSER]] := BIGCAP (* derived 2007 August 4 in BA-CUP.NB *) composite[BIGCAP,IMAGE[CUP],CART] := composite[CUP,cross[BIGCAP,BIGCAP]] (* revised 2001 December 24 based on BC-BA.NB *) composite[BIGCAP,IMAGE[DIF]] := composite[DIF,cross[BIGCAP,BIGCUP],DORA] (* added 2001 April 10 based on HC-BA.NB *) composite[BIGCAP,IMAGE[HC]] := composite[HC,BIGCAP] (* derived 2004 May 7 in IIOO-ACL.NB *) composite[BIGCAP,IMAGE[IMAGE[h_]]] := composite[IMAGE[h],BIGCAP] /; ONEONE[h] (* added 2001 March 9 based on IMG-CUT.NB *) composite[BIGCAP,IMAGE[IMAGE[id[x_]]]] := composite[IMAGE[id[x]],BIGCAP] (* added 2001 May 3 based on BA-IMG.NB *) composite[BIGCAP,IMAGE[IMAGE[inverse[DUP]]]] := composite[IMAGE[inverse[DUP]],BIGCAP] (* added 2001 May 3 based on BA-IMG.NB *) composite[BIGCAP,IMAGE[IMAGE[inverse[POWER]]]] := composite[IMAGE[inverse[POWER]],BIGCAP] (* added 2002 February 17 based on IMG-IMG.NB *) composite[BIGCAP,IMAGE[IMAGE[SWAP]]] := composite[IMAGE[SWAP],BIGCAP] (* added 2001 May 3 based on BA-IMG.NB *) composite[BIGCAP,IMAGE[inverse[IMAGE[DUP]]]] := composite[IMAGE[inverse[DUP]],BIGCAP,IMAGE[id[P[Id]]]] (* added 2000 January 18 based on BIGCAP.NB *) composite[BIGCAP,IMAGE[inverse[S]]] := cart[complement[set[0]],set[0]] (* added 1999 September 23 based on BIGCAP.LOG *) composite[BIGCAP,IMAGE[POWER]] := composite[POWER,BIGCAP] (* derived 2006 October 24 in EVAL.NB *) composite[BIGCAP,IMAGE[SECOND],IMAGE[id[cart[set[x_],V]]],FUNPART] := eval[x] (* added 2000 January 18 based on BIGCAP.NB *) composite[BIGCAP,IMAGE[SINGLETON]] := union[id[range[SINGLETON]],cart[intersection[complement[range[SINGLETON]],complement[set[0]]],set[0]]] (* derived 2006 February 21 in A-IM-SUC.NB *) composite[BIGCAP,IMAGE[SUCC],id[P[OMEGA]]] := composite[SUCC,BIGCAP,id[P[OMEGA]]] (* derived 2004 May 14 in REPLACE.NB *) composite[BIGCAP,IMAGE[VERTSECT[x_]]] := composite[VERTSECT[UB[x]],IMAGE[id[domain[VERTSECT[x]]]]] (* added 2003 May 12 based on APPLY.NB *) composite[BIGCAP,IMG,cross[FUNPART,SINGLETON]] := composite[inverse[SINGLETON],IMG,cross[Id,SINGLETON]] (* added 2003 June 6 based on ACL-UCL.NB *) composite[BIGCAP,inverse[ACLOSURE],E] := inverse[S] (* added 2000 December 20 based on BA-BC.NB *) composite[BIGCAP,inverse[BIGCUP]] := inverse[S] (* added 2002 April 10 based on INVAR.NB *) composite[BIGCAP,inverse[LB[INVAR]]] := INVAR (* added 2001 May 10 based on UCLOS-1.NB *) composite[BIGCAP,inverse[S]] := composite[inverse[E],ACLOSURE] (* added 2002 January 11 based on KURA.NB *) composite[BIGCAP,KURA] := composite[SINGLETON,FIRST] (* added 1999 October 6 based on CAP.1 *) composite[BIGCAP,PAIRSET] := CAP (* corrected 1998 August 9 *) composite[BIGCAP,POWER] := cart[V,set[0]] (* added 1998 July 31 *) composite[BIGCAP,SINGLETON] := Id (* added 1998 July 30 *) composite[BIGCAP,S] := union[cart[set[0],V],composite[inverse[S],BIGCAP]] (* added 2001 May 8 based on BC-BA.NB *) composite[BIGCAP,SUBVAR] := cart[V,set[0]] (* derived 2008 July 10 in UBD-CO.NB *) composite[BIGCAP,UBD] := cart[V,set[0]] (* derived 2007 June 25 in UCH-HULL.NB *) composite[BIGCAP,UCHAINS] := cart[V,set[0]] (* added 2001 May 10 based on UCLOS-1.NB *) composite[BIGCAP,UCLOSURE] := cart[V,set[0]] (* added 2001 June 28 based on HULL.NB *) composite[BIGCAP,VERTSECT[composite[id[x_],S]]] := HULL[x] /; member[x,V] (* added 2002 January 29 based on FUNPART.NB *) composite[BIGCAP,VERTSECT[x_],id[domain[funpart[x_]]]] := funpart[x] (* added 2001 September 9 based on ACLOSURE.NB *) composite[BIGCUP,ACLOSURE] := BIGCUP (* added 2002 November 19 based on ADJOIN.NB *) composite[BIGCUP,ADJOIN[x_]] := composite[ADJOIN[U[x]],BIGCUP] (* added 2002 January 22 based on UCLUCL.NB *) composite[BIGCUP,BIGCUP,IMAGE[id[P[x_]]],VERTSECT[inverse[BIGCUP]]] := union[cart[union[complement[Uclosure[x]],set[0]],set[0]],id[Uclosure[x]]] (* derived 2007 May 6 in CHN-REIF.NB *) composite[BIGCUP,CHAINS] := IMAGE[inverse[DUP]] (* added 2001 May 8 based on BC-BA.NB *) composite[BIGCUP,CLIQUES] := IMAGE[inverse[DUP]] (* added 2003 July 4 based on COARSER.NB *) composite[BIGCUP,COARSER] := BIGCUP (* Theorem POW-C-BC in POW3 proved 1998 December 15 *) composite[BIGCUP,complement[inverse[S]]] := composite[inverse[POWER],complement[inverse[S]]] (* added 1999 October 9 based on CUP-LOG.1 *) composite[BIGCUP,CUP] := composite[CUP,cross[BIGCUP,BIGCUP]] (* Theorem BC-CO-E2 in BIGCUP/BC proved 1998 February 5 *) composite[BIGCUP,E] := S (* derived 2007 June 23 in UCHAINS.NB *) composite[BIGCUP,id[chains[S]],ADJOIN[set[0]]] := composite[BIGCUP,id[chains[S]]] (* derived 2007 June 25 in UCH-HULL.NB *) composite[BIGCUP,id[chains[S]],inverse[S]] := composite[inverse[E],UCHAINS] (* derived 2007 September 28 in UCH-RS.NB *) composite[BIGCUP,id[chains[S]],SINGLETON] := Id (* derived 2005 February 16 in BC-OM.NB *) composite[BIGCUP,id[intersection[omega,complement[set[0]]]]] := composite[inverse[SUCC],id[omega]] (* added 2002 May 25 based on SUCC-ID.NB *) composite[BIGCUP,id[omega],SUCC] := id[omega] (* added 2002 May 25 based on SUCC-ID.NB *) composite[BIGCUP,id[OMEGA],SUCC] := id[OMEGA] composite[BIGCUP,id[P[range[SINGLETON]]]] := inverse[IMAGE[SINGLETON]] (* Theorem POW-BC10 in BC5 proved 1999 January 27 *) composite[BIGCUP,id[range[POWER]]] := inverse[POWER] (* Theorem BC-SG-5 in BIGCUP/BC proved 1998 November 20 *) composite[BIGCUP,id[range[SINGLETON]]] := inverse[SINGLETON] (* added 2001 May 11 based on ACLOS-IM.NB *) composite[BIGCUP,IMAGE[ACLOSURE]] := composite[IMAGE[BIGCAP],IMAGE[inverse[S]]] (* Corollary IMG-BC-6 in IMG4 proved 1998 November 19 *) composite[BIGCUP,IMAGE[BIGCUP]] := composite[BIGCUP,BIGCUP] (* added 2001 March 9 based on BC-IMG.TXT *) composite[BIGCUP,IMAGE[CAP],CART] := composite[CAP,cross[BIGCUP,BIGCUP]] (* added 2001 March 9 based on BC-IMG.TXT *) composite[BIGCUP,IMAGE[CART],CART] := composite[CART,cross[BIGCUP,BIGCUP]] (* derived 2004 October 4 in REPLACE.NB *) composite[BIGCUP,IMAGE[CART],IMAGE[DUP],CLIQUES] := CORE[intersection[RFX,SYM]] (* derived 2008 November 4 in EQV.NB *) composite[BIGCUP,IMAGE[CART],IMAGE[DUP],IMAGE[SECOND],VS,EQUIV] := EQUIV (* derived 2008 November 4 in EQV.NB *) composite[BIGCUP,IMAGE[CART],IMAGE[DUP],IMAGE[SECOND],VS,id[EQV]] := id[EQV] (* added 2001 May 4 based on CLIQUES.NB *) composite[BIGCUP,IMAGE[CLIQUES],POWER] := CLIQUES (* added 2001 March 9 based on IM-CPS.NB *) composite[BIGCUP,IMAGE[COMPOSE],CART] := composite[COMPOSE,cross[BIGCUP,BIGCUP]] (* added 2003 February 20 based on BC-IMG.NB *) composite[BIGCUP,IMAGE[CORE[x_]],POWER] := CORE[x] (* added 2001 March 9 based on BC-IMG.TXT *) composite[BIGCUP,IMAGE[CROSS],CART] := composite[CROSS,cross[BIGCUP,BIGCUP]] (* revised 2001 December 24 based on BC-BA.NB *) composite[BIGCUP,IMAGE[CUP]] := composite[CUP,cross[BIGCUP,BIGCUP],DORA] (* added 2001 March 8 based on IMAGEDIF.NB *) composite[BIGCUP,IMAGE[DIF],CART,cross[Id,SINGLETON]] := composite[DIF,cross[BIGCUP,Id]] (* added 2001 March 8 based on IMIMG.NB *) composite[BIGCUP,IMAGE[DIF],CART,cross[SINGLETON,Id]] := union[cart[cart[V,set[0]],set[0]],composite[DIF,cross[Id,BIGCAP]]] (* derived 2008 October 29 in PARTN.NB *) composite[BIGCUP,image[DORA,image[VS,x_]]] := image[DORA,x] (* added 2001 April 1 based on HF-CONT.NB *) composite[BIGCUP,IMAGE[HC],POWER] := HC (* derived 2004 October 7 in BC-IM-PC.NB *) composite[BIGCUP,IMAGE[HULL[intersection[T2,TOPS]]],POWER] := HULL[intersection[T2,TOPS]] (* added 2002 February 16 based on IMG-HULL.NB *) composite[BIGCUP,IMAGE[HULL[t_]],POWER,id[image[inverse[S],t_]]] := HULL[t] (* derived 2004 October 7 in BC-IM-PC.NB *) composite[BIGCUP,IMAGE[HULL[TOPS]],POWER] := HULL[TOPS] (* added 2002 February 16 based on HULL-TRV.NB *) composite[BIGCUP,IMAGE[HULL[TRV]],POWER] := composite[HULL[TRV],IMAGE[id[cart[V,V]]]] (* added 2002 November 19 based on CORE.NB *) composite[BIGCUP,IMAGE[id[complement[set[0]]]]] := BIGCUP (* added 2003 February 20 based on BC-IMG.NB *) composite[BIGCUP,IMAGE[id[x_]],IMAGE[inverse[S]]] := composite[BIGCUP,IMAGE[CORE[x]]] (* added 2001 May 2 based on COREHULL.NB *) composite[BIGCUP,IMAGE[id[x_]],POWER] := CORE[x] (* from IMG-SG.LOG 1999 April 16 *) composite[BIGCUP,IMAGE[id[range[SINGLETON]]]] := IMAGE[inverse[SINGLETON]] (* Theorem IMG-BC-5 in IMG4 proved 1998 November 19 replaced 1999 September 24 with a new unconditional rule composite[BIGCUP,IMAGE[IMAGE[x_]]] := composite[IMAGE[x],BIGCUP] /; cond && thin[x] *) (* added 1999 September 24 based on SESSION1.LOG *) composite[BIGCUP,IMAGE[IMAGE[x_]]] := composite[IMAGE[x],BIGCUP,IMAGE[id[P[domain[VERTSECT[x]]]]]] (* added 2001 March 9 based on BC-IMG.TXT *) composite[BIGCUP,IMAGE[IMG],CART] := composite[IMG,cross[BIGCUP,BIGCUP]] (* added 2001 March 9 based on BC-IMG.TXT *) composite[BIGCUP,IMAGE[inverse[BIGCUP]]] := IMAGE[inverse[S]] (* Theorem HER-CO2 in HER *) composite[BIGCUP,IMAGE[inverse[S]]] := BIGCUP (* derived 2007 June 30 in MAP.NB *) composite[BIGCUP,IMAGE[MAP],CART,cross[SINGLETON,POWER]] := MAP (* revised 2001 December 24 based on BC-BA.NB *) composite[BIGCUP,IMAGE[PAIRSET]] := composite[CUP,DORA] (* Theorem HER-CO3 in HER added 1998 August 4 *) composite[BIGCUP,IMAGE[POWER]] := IMAGE[inverse[S]] (* added 2003 June 11 based on VS.NB *) composite[BIGCUP,IMAGE[SECOND],VS] := IMAGE[SECOND] (* Theorem IMG-BC-4 in IMG4 proved 1998 November 19 *) composite[BIGCUP,IMAGE[SINGLETON]] := Id (* derived 2004 January 22 in U-SBV-PC.NB *) composite[BIGCUP,IMAGE[SUBVAR],POWER] := SUBVAR (* added 2002 April 27 based on FULSUC-D.NB *) composite[BIGCUP,IMAGE[SUCC]] := composite[BIGCUP,SUCC] (* added 2001 May 8 based on BC-BA.NB *) composite[BIGCUP,IMAGE[SYMDIF]] := composite[CUP,intersection[ composite[inverse[FIRST],BIGCUP,IMAGE[DIF]], composite[inverse[SECOND],BIGCUP,IMAGE[DIF],IMAGE[SWAP]]]] (* added 2000 October 26 based on TC-6.NB *) composite[BIGCUP,IMAGE[TC]] := composite[BIGCUP,TC] (* derived 2008 July 10 in UBD-VS.NB *) composite[BIGCUP,IMAGE[UBD],POWER] := UBD (* added 2001 May 11 based on UCLOS-IM.NB *) composite[BIGCUP,IMAGE[UCLOSURE]] := composite[IMAGE[BIGCUP],IMAGE[inverse[S]]] (* derived 2004 May 14 in REPLACE.NB *) composite[BIGCUP,IMAGE[VERTSECT[x_]]] := IMAGE[thinpart[x]] (* derived 2004 August 14 in ZN-RULES.NB *) composite[BIGCUP,IMAGE[ZN]] := composite[IMAGE[ZN],BIGCUP] (* derived 2008 July 29 in FUNAPPLY.NB *) composite[BIGCUP,IMG,cross[Id,SINGLETON],id[composite[inverse[E],IMAGE[FIRST],FUNPART]]] := composite[inverse[SINGLETON],IMG,cross[Id,SINGLETON]] (* added 2000 December 20 based on BA-BC.NB *) composite[BIGCUP,inverse[BIGCAP]] := S (* derived 2003 December 31 in COARSER.NB *) composite[BIGCUP,inverse[COARSER]] := BIGCUP (* added 2003 February 6 based on OM-SC-2B.NB *) composite[BIGCUP,inverse[IMAGE[inverse[SUCC]]],E] := composite[S,SUCC] (* derived 2004 December 21 in COMUTANT.NB *) composite[BIGCUP,inverse[LB[COMMUTE]]] := COMMUTE (* added 2002 April 10 based on INVAR.NB *) composite[BIGCUP,inverse[LB[INVAR]]] := INVAR (* derived 2004 December 21 in SBCOMMUT.NB *) composite[BIGCUP,inverse[LB[SUBCOMMUTE]]] := SUBCOMMUTE (* added 2001 May 10 based on UCLOS-1.NB *) composite[BIGCUP,inverse[S]] := composite[inverse[E],UCLOSURE] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[BIGCUP,inverse[UB[SUBCOMMUTE]]] := inverse[SUBCOMMUTE] (* added 2003 June 6 based on ACL-UCL.NB *) composite[BIGCUP,inverse[UCLOSURE],E] := S (* added 2002 January 11 based on KURA.NB *) composite[BIGCUP,KURA] := PAIRSET (* derived 2004 December 22 in UCL-COMT.NB *) composite[BIGCUP,LB[LB[COMMUTE]]] := LB[COMMUTE] (* derived 2004 December 23 in UCLSBCMT.NB *) composite[BIGCUP,LB[LB[SUBCOMMUTE]]] := UB[SUBCOMMUTE] (* derived 2004 December 24 in LB-SBCMT.NB *) composite[BIGCUP,LB[UB[SUBCOMMUTE]]] := LB[SUBCOMMUTE] (* added 2001 April 27 based on MAP3.NB *) composite[BIGCUP,MAP] := CART (* added 1999 October 6 based on CUP.1 *) composite[BIGCUP,PAIRSET] := CUP (* Theorem POW-BC4 in POW4 *) composite[BIGCUP,POWER] := Id (* derived 2007 May 22 in SU-OM.NB *) composite[BIGCUP,RC[omega],id[omega]] := cart[omega,set[omega]] (* follows from Theorems BC-SR-3 and BC-UB-2 in BIGCUP/BC *) composite[BIGCUP,S] := composite[inverse[POWER],S] (* Theorem BC-SG-4 in BIGCUP/BC *) composite[BIGCUP,SINGLETON] := Id (* added 2002 April 21 based on ON.NB *) composite[BIGCUP,SUCC,id[FULL]] := id[FULL] (* derived 2005 December 3 in SUCC.NB *) composite[BIGCUP,SUCC,SINGLETON] := SUCC (* added 2001 April 1 based on HF-CONT.NB *) composite[BIGCUP,TC,POWER] := TC (* added 2003 January 25 based on TC-ZN.NB *) composite[BIGCUP,TC,SINGLETON] := TC (* derived 2008 July 10 in UBD-CO.NB *) composite[BIGCUP,UBD] := IMAGE[FIRST] (* derived 2007 June 25 in UCH-HULL.NB *) composite[BIGCUP,UCHAINS] := BIGCUP (* added 2001 May 10 based on UCLOS-1.NB *) composite[BIGCUP,UCLOSURE] := BIGCUP (* derived 2004 December 24 in UCL-LBUB.NB *) composite[BIGCUP,VERTSECT[COARSER]] := composite[POWER,BIGCUP] (* derived 2008 November 7 in VS-U.NB *) composite[BIGCUP,VERTSECT[composite[IMG,id[cart[x_,y_]],inverse[SECOND]]]] := union[cart[complement[y],set[0]],composite[IMAGE[U[x]],id[y]]] (* added 2002 January 20 based on UU.NB *) composite[BIGCUP,VERTSECT[inverse[BIGCUP]]] := POWER (* added 2003 May 31 based on RS-CO.NB *) composite[BIGCUP,VERTSECT[RESTRICT]] := IMAGE[id[cart[V,V]]] (* added 2001 July 17 based on ZN-IMG4.NB *) composite[BIGCUP,VERTSECT[ZN]] := IMAGE[ZN] (* derived 2008 October 7 in BNP-WRAP.NB *) composite[binop[x_],id[cart[V,V]]] := binop[x] (* derived 2008 December 3 in CURRY-BO.NB *) composite[binop[x_],LEFT[y_],id[fix[domain[binop[x_]]]]] := composite[binop[x],LEFT[y]] (* derived 2008 December 3 in CURRY-BO.NB *) composite[binop[x_],RIGHT[y_],id[fix[domain[binop[x_]]]]] := composite[binop[x],RIGHT[y]] (* added 2000 September 20 based on CAP-CUP.LOG *) composite[CAP,cross[CAP,Id],inverse[ASSOC]] := composite[CAP,cross[Id,CAP]] (* added 2000 September 20 based on CAP-CUP.LOG *) composite[CAP,cross[CAP,Id],inverse[ROT]] := composite[CAP,cross[CAP,Id]] (* added 2000 September 20 based on CAP-CUP.LOG *) composite[CAP,cross[CAP,Id],ROT] := composite[CAP,cross[CAP,Id]] (* added 2001 October 9 based on TRV-1.NB *) composite[CAP,cross[CART,CART],TWIST] := composite[CART,cross[CAP,CAP]] (* added 1999 December 24 based on COMPOSE.NB *) composite[CAP,cross[CART,Id]] := composite[COMPOSE,cross[COMPOSE,Id], cross[cross[IMAGE[DUP],Id],IMAGE[DUP]],inverse[ROT]] (* derived 2008 July 15 in CAP-CPS.NB *) composite[CAP,cross[COMPOSE,COMPOSE],TWIST,cross[Id,composite[DUP,FUNPART]]] := composite[COMPOSE,cross[CAP,FUNPART]] (* added 1999 December 21 based on CROSS.NB *) composite[CAP,cross[CROSS,CROSS]] := composite[CROSS,cross[CAP,CAP],TWIST] (* derived 2003 December 26 in DISTRIB.NB *) composite[CAP,cross[CUP,CUP],TWIST,cross[DUP,Id]] := composite[CUP,cross[Id,CAP]] (* derived 2003 December 26 in DISTRIB.NB *) composite[CAP,cross[CUP,CUP],TWIST,cross[Id,DUP]] := composite[CUP,cross[CAP,Id]] (* added 1999 November 16 based on DISJOINT.NB *) composite[CAP,cross[DISJOINT,DISJOINT]] := composite[DISJOINT,CUP] (* added 1999 November 3 based on CURRY.NB *) composite[CAP,cross[Id,CAP],ASSOC] := composite[CAP,cross[CAP,Id]] (* derived 2008 February 16 in CAP.NB *) composite[CAP,cross[Id,inverse[S]]] := composite[inverse[S],CAP] (* derived 2008 July 15 in CAP-IMG.NB *) composite[CAP,cross[IMG,IMG],TWIST,cross[composite[DUP,INVERSE,FUNPART],Id]] := composite[IMG,cross[composite[INVERSE,FUNPART],CAP]] (* derived 2008 February 16 in CAP.NB *) composite[CAP,cross[inverse[S],Id]] := composite[inverse[S],CAP] (* added 1999 November 16 based on CAP-CUP.NB *) composite[CAP,cross[inverse[S],inverse[S]]] := composite[inverse[S],CAP] (* added 1999 October 5 based on ASSOC.1 *) composite[CAP,cross[SINGLETON,SINGLETON]] := union[cart[Di,set[0]],composite[SINGLETON,inverse[DUP]]] (* Added 1999 August 14 on basis of CAP-CART.LOG session *) composite[CAP,DUP] := Id (* derived 2004 May 11 in CAP-CORE.NB *) composite[CAP,id[ACLOSURE]] := composite[FIRST,id[ACLOSURE]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CAP,id[ADJOIN[x_]]] := composite[FIRST,id[ADJOIN[x]]] (* derived 2008 February 16 in CAP.NB *) composite[CAP,id[cart[x_,cliques[y_]]],inverse[FIRST]] := composite[id[cliques[y]],inverse[S],id[x]] (* derived 2008 January 5 in CAP-FIN.NB *) composite[CAP,id[cart[x_,FINITE]],inverse[FIRST]] := composite[id[FINITE],inverse[S],id[x]] (* derived 2008 February 16 in CAP.NB *) composite[CAP,id[cart[x_,image[inverse[S],y_]]],inverse[FIRST]] := composite[id[image[inverse[S],y]],inverse[S],id[x]] (* derived 2008 February 16 in CAP.NB *) composite[CAP,id[cart[x_,P[y_]]],inverse[FIRST]] := composite[inverse[S],IMAGE[id[y]],id[x]] (* derived 2007 October 21 in SYM-RSX.NB *) composite[CAP,id[cart[P[x_],y_]],inverse[FIRST], intersection[composite[S,IMAGE[id[x_]]],inverse[S]]] := composite[CAP,id[cart[V,y]],inverse[FIRST],IMAGE[id[x]]] (* added 1999 December 19 based on CAP.NB *) composite[CAP,id[cart[set[x_],y_]]] := composite[IMAGE[id[x]], id[intersection[y,image[V,set[x]]]],inverse[LEFT[x]]] (* based on 1999/DEC/16/CAP.NB *) composite[CAP,id[cart[x_,set[y_]]]] := composite[IMAGE[id[y]], id[intersection[x,image[V,set[y]]]],inverse[RIGHT[y]]] (* derived 2007 October 21 in SYM-RSX.NB *) composite[CAP,id[cart[V,image[CART,Id]]],inverse[FIRST],IMAGE[id[cart[V,V]]]] := composite[CAP,id[cart[V,image[CART,Id]]],inverse[FIRST]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CAP,id[cart[x_,V]],inverse[FIRST]] := composite[inverse[S],id[x]] (* derived 2007 October 18 in ERASE.NB *) composite[CAP,id[cart[V,z_]],inverse[FIRST],CAP,id[cart[x_,y_]],inverse[FIRST]] := composite[CAP,id[cart[x,image[CAP,cart[y,z]]]],inverse[FIRST]] (* derived 2008 February 16 in CAP.NB *) composite[CAP,id[cart[V,x_]],inverse[FIRST],inverse[S]] := composite[id[image[inverse[S],x]],inverse[S]] (* added 2002 October 22 based on CO-ID.NB *) composite[CAP,id[cart[V,V]]] := CAP (* added 1999 November 3 based on CURRY.NB *) composite[CAP,id[complement[cart[V,V]]]] := 0 (* added 2003 September 21 based on RFX-CORE.NB *) composite[CAP,id[composite[CART,DUP,IMAGE[inverse[DUP]]]],inverse[FIRST]] := CORE[RFX] (* added 2001 March 31 based on HF.NB *) composite[CAP,id[composite[POWER,HC]],inverse[FIRST]] := HC (* derived 2004 May 11 in CAP-CORE.NB *) composite[CAP,id[CORE[x_]]] := composite[SECOND,id[CORE[x]]] (* added 1999 October 30 based on IM-S-DJ.NB *) composite[CAP,id[DISJOINT]] := cart[DISJOINT,set[0]] (* added 2001 November 27 based on FUNPART1.NB *) composite[CAP,id[FUNPART]] := composite[SECOND,id[FUNPART]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CAP,id[HC]] := composite[SECOND,id[HC]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CAP,id[HULL[x_]]] := composite[FIRST,id[HULL[x]]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,id[Id]] := inverse[DUP] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CAP,id[IMAGE[id[x_]]]] := composite[SECOND,id[IMAGE[id[x]]]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CAP,id[IMAGE[inverse[S]]]] := composite[FIRST,id[IMAGE[inverse[S]]]] (* added 2001 October 30 based on SYM-CORE.NB *) composite[CAP,id[IMAGE[SWAP]],inverse[FIRST]] := CORE[SYM] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CAP,id[inverse[CORE[x_]]]] := composite[FIRST,id[inverse[CORE[x]]]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CAP,id[inverse[HC]]] := composite[FIRST,id[inverse[HC]]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CAP,id[inverse[IMAGE[id[x_]]]]] := composite[FIRST,id[inverse[IMAGE[id[x]]]]] (* added 2003 November 6 based on HULL-EQV.NB *) composite[CAP,id[INVERSE],inverse[FIRST]] := composite[CORE[SYM],id[P[cart[V,V]]]] (* added 1999 December 6 based on RESTRICT.NB *) composite[CAP,id[inverse[S]]] := composite[SECOND,id[inverse[S]]] (* added 2001 March 1 based on CAP-2ND.NB *) composite[CAP,id[x_],inverse[SECOND]] := composite[CAP,id[inverse[x]],inverse[FIRST]] (* derived 2007 September 23 in CAP-ID-K.NB *) composite[CAP,id[K]] := composite[FIRST,id[K]] (* derived 2004 May 9 in OOPART.NB *) composite[CAP,id[OOPART]] := composite[SECOND,id[OOPART]] (* added 1999 November 17 based on NEWRULES.1 *) composite[CAP,id[S]] := composite[FIRST,id[S]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CAP,id[TC]] := composite[FIRST,id[TC]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CAP,id[UCLOSURE]] := composite[FIRST,id[UCLOSURE]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],CUP]]] := CAP (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],DIF]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],FIRST]]] := CAP (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],SECOND]]] := CAP (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],SYMDIF]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],CUP],composite[inverse[SECOND],CAP]]] := CAP (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],CUP],composite[inverse[SECOND],DIF]]] := DIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],CUP],composite[inverse[SECOND],FIRST]]] := FIRST (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],CUP],composite[inverse[SECOND],SECOND]]] := SECOND (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],CUP],composite[inverse[SECOND],SYMDIF]]] := SYMDIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],CAP]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],DIF],composite[inverse[SECOND],CUP]]] := DIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],DIF,SWAP]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],FIRST]]] := DIF (* added 1999 December 9 based on BUILDCAP.NB *) composite[CAP,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],inverse[DUP]]]] := cart[Id,set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],SECOND]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],SYMDIF]]] := DIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],DIF,SWAP], composite[inverse[SECOND],DIF]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],CAP]]] := CAP (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],CUP]]] := FIRST (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],DIF]]] := DIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],SYMDIF]]] := DIF (* derived 2006 October 29 in OOPART.NB *) composite[CAP,intersection[composite[inverse[FIRST],FUNPART], composite[inverse[SECOND],INVERSE,FUNPART,IMAGE[SWAP]]]] := OOPART (* derived 2006 October 31 in REPLACE.NB *) composite[CAP,intersection[composite[inverse[FIRST],FUNPART,IMAGE[SWAP]], composite[inverse[SECOND],INVERSE,FUNPART]]] := composite[INVERSE,OOPART] (* added 2002 May 5 based on HULL.NB *) composite[CAP,intersection[composite[inverse[FIRST],HULL[x_]], composite[inverse[SECOND],HULL[y_]]]] := composite[HULL[union[x,y]], id[intersection[image[inverse[S],x],image[inverse[S],y]]]] (* added 2001 March 1 based on CO-INE.NB *) composite[CAP,intersection[composite[inverse[FIRST],IMAGE[id[x_]]], composite[inverse[SECOND],IMAGE[id[y_]]]]] := IMAGE[id[intersection[x,y]]] (* derived 2006 October 31 in REPLACE.NB *) composite[CAP,intersection[composite[inverse[FIRST],IMAGE[SWAP]], composite[inverse[SECOND],FUNPART,INVERSE]]] := composite[FUNPART,INVERSE] (* derived 2006 October 31 in REPLACE.NB *) composite[CAP,intersection[composite[inverse[FIRST],IMAGE[SWAP]], composite[inverse[SECOND],INVERSE,FUNPART]]] := composite[INVERSE,FUNPART] (* added 1999 December 9 based on BUILDCAP.NB *) composite[CAP,intersection[composite[inverse[FIRST],inverse[DUP]], composite[inverse[SECOND],DIF]]] := cart[Id,set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],SECOND], composite[inverse[SECOND],CAP]]] := CAP (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],SECOND], composite[inverse[SECOND],CUP]]] := SECOND (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],SECOND], composite[inverse[SECOND],DIF]]] := cart[cart[V,V],set[0]] (* added 1999 December 9 based on BUILDCAP.NB *) composite[CAP,intersection[composite[inverse[FIRST],SECOND], composite[inverse[SECOND],SYMDIF]]] := composite[DIF,SWAP] (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],SYMDIF], composite[inverse[SECOND],CAP]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],SYMDIF], composite[inverse[SECOND],CUP]]] := SYMDIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],SYMDIF], composite[inverse[SECOND],DIF]]] := DIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[CAP,intersection[composite[inverse[FIRST],SYMDIF], composite[inverse[SECOND],FIRST]]] := DIF (* derived 2006 October 31 in REPLACE.NB *) composite[CAP,intersection[composite[inverse[SECOND],FUNPART], composite[inverse[FIRST],INVERSE,FUNPART,IMAGE[SWAP]]]] := OOPART (* Inverse of Theorem CAPCUP-2 added 2000 July 24 *) composite[CAP,inverse[CUP]] := inverse[S] (* Theorem CAP1ST-2 in CAP proved 1999 August 14 *) composite[CAP,inverse[FIRST]] := inverse[S] (* added 2001 November 11 based on PAIRSET.NB *) composite[CAP,inverse[PAIRSET]] := composite[BIGCAP,id[range[PAIRSET]]] (* Theorem CAP2ND-2 in CAP proved 1999 August 14 *) composite[CAP,inverse[SECOND]] := inverse[S] (* added 1999 September 23 based on CAP-LOG.4 *) composite[CAP,LEFT[x_]] := composite[IMAGE[id[x]],id[image[V,set[x]]]] (* added 1999 September 23 based on CAP-LOG.3 *) composite[CAP,RIGHT[x_]] := composite[IMAGE[id[x]],id[image[V,set[x]]]] (* Theorem CAP-SW in CAP proved 1999 September 23 *) composite[CAP,SWAP] := CAP (* added 2001 December 10 based on CARD-ALL.NB *) composite[CARD,CARD] := CARD (* derived 2006 July 6 in CARDCART.NB *) composite[CARD,CART,cross[Id,SINGLETON]] := composite[CARD,FIRST] (* derived 2006 July 6 in CARDCART.NB *) composite[CARD,CART,cross[SINGLETON,Id]] := composite[CARD,SECOND] (* derived 2005 July 22 in CARD-MUL.NB *) composite[CARD,CART,id[cart[FINITE,FINITE]]] := composite[NATMUL,cross[CARD,CARD]] (* derived 2005 July 22 in CARD-MUL.NB *) composite[CARD,CART,id[cart[omega,omega]]] := NATMUL (* derived 2006 July 6 in CARDCART.NB *) composite[CARD,CART,SWAP] := composite[CARD,CART] (* added 2003 December 9 based on ITER-K.NB *) composite[CARD,id[FINITE]] := composite[id[omega],CARD] (* added 2002 October 22 based on CO-ID.NB *) composite[CARD,id[image[Q,OMEGA]]] := CARD (* added 2002 May 28 based on CARD-OM.NB *) composite[CARD,id[omega]] := id[omega] (* derived 2004 January 10 in CARD-FUN.NB *) composite[CARD,IMAGE[DUP]] := CARD (* derived 2004 January 10 in CARD-FUN.NB *) composite[CARD,IMAGE[FIRST],FUNPART] := composite[CARD,FUNPART] (* derived 2004 January 10 in CARD-FUN.NB *) composite[CARD,IMAGE[FIRST],id[FUNS]] := composite[CARD,id[FUNS]] (* derived 2006 March 15 in CARD-OO.NB *) composite[CARD,IMAGE[FIRST],OOPART] := composite[CARD,OOPART] (* derived 2006 July 6 in CARDIMSG.NB *) composite[CARD,IMAGE[POWER]] := CARD (* derived 2006 March 15 in CARD-OO.NB *) composite[CARD,IMAGE[SECOND],OOPART] := composite[CARD,OOPART] (* derived 2006 July 6 in CARDIMSG.NB *) composite[CARD,IMAGE[SINGLETON]] := CARD (* derived 2006 July 6 in CARDCART.NB *) composite[CARD,IMAGE[SWAP]] := composite[CARD,IMAGE[id[cart[V,V]]]] (* derived 2006 August 17 in CTBL-U.NB *) composite[CARD,INVERSE] := composite[CARD,id[P[cart[V,V]]]] (* derived 2005 August 6 in CARD-NAT.NB *) composite[CARD,inverse[plus[x_]]] := inverse[plus[x]] (* derived 2005 November 4 in CARD-SU.NB *) composite[CARD,inverse[S],id[FINITE]] := composite[id[omega],inverse[S],id[omega],CARD] (* derived 2005 November 4 in CARD-SU.NB *) composite[CARD,inverse[S],id[omega]] := composite[id[omega],inverse[S],id[omega]] (* derived 2005 November 4 in CARD-SU.NB *) composite[CARD,inverse[S],inverse[CARD],id[omega]] := composite[id[omega],inverse[S],id[omega]] (* derived 2004 January 10 in CARD-FUN.NB *) composite[CARD,LAMBHULL] := composite[CARD,IMAGE[inverse[S]]] (* derived 2006 August 19 in CARD-MAP.NB *) composite[CARD,MAP,id[cart[omega,omega]]] := composite[NATEXP,SWAP] (* derived 2005 August 6 in CARD-NAT.NB *) composite[CARD,modulo[x_]] := modulo[x] (* derived 2005 August 6 in CARD-NAT.NB *) composite[CARD,NATADD] := NATADD (* derived 2005 August 6 in CARD-NAT.NB *) composite[CARD,NATMOD] := NATMOD (* derived 2005 August 6 in CARD-NAT.NB *) composite[CARD,NATMUL] := NATMUL (* derived 2004 January 10 in CARD-FUN.NB *) composite[CARD,PLUS] := cart[omega,set[omega]] (* derived 2005 August 6 in CARD-NAT.NB *) composite[CARD,plus[x_]] := plus[x] (* derived 2006 July 2 in NATEXP-2.NB *) composite[CARD,POWER,id[FINITE]] := composite[NATEXP,LEFT[succ[set[0]]],CARD] (* derived 2006 July 2 in NATEXP-2.NB *) composite[CARD,POWER,id[omega]] := composite[NATEXP,LEFT[succ[set[0]]]] (* added 2001 December 14 based on CARD-Q.NB *) composite[CARD,Q] := CARD (* derived 2004 January 10 in CARD-FUN.NB *) composite[CARD,RCF] := composite[CARD,POWER] (* derived 2005 August 6 in CARD-NAT.NB *) composite[CARD,rotate[NATADD]] := rotate[NATADD] (* derived 2005 January 7 in CARD-ONE.NB *) composite[CARD,SINGLETON] := cart[V,set[set[0]]] (* derived 2005 August 6 in CARD-NAT.NB *) composite[CARD,times[x_]] := times[x] (* derived 2004 January 10 in CARD-FUN.NB *) composite[CARD,VS] := composite[CARD,IMAGE[FIRST]] (* Theorem CO-IM1 in CO3 *) composite[x_,cart[y_,z_]] := cart[y,image[x,z]] (* Theorem CO-IM1' in CO3 *) composite[cart[x_,y_],z_] := cart[image[inverse[z],x],y] (* added 1999 October 5 based on SGIMCPSS.LOG *) composite[CART,cross[SINGLETON,SINGLETON]] := composite[SINGLETON,id[cart[V,V]]] (* derived 2008 October 7 in BNP-WRAP.NB *) composite[CART,DUP,IMAGE[inverse[DUP]],IMAGE[FIRST],id[BINOPS]] := composite[IMAGE[FIRST],id[BINOPS]] (* derived 2007 September 3 in CHN-SQR.NB *) composite[CART,DUP,S] := composite[id[image[CART,Id]],S,CART,DUP] (* added 2000 January 3 based on CART-DUP.NB *) composite[CART,DUP,SINGLETON] := composite[SINGLETON,DUP] (* added 1999 November 6 based on CART-OO.NB *) composite[CART,id[cart[complement[set[0]],complement[set[0]]]]] := composite[id[complement[set[0]]],CART] (* added 2002 October 22 based on CO-ID.NB *) composite[CART,id[cart[V,V]]] := CART (* added 1999 November 9 based on CART-CUR.NB *) composite[CART,LEFT[x_]] := composite[IMAGE[composite[id[cart[x,V]],inverse[SECOND]]],id[image[V,set[x]]]] (* added 1999 November 9 based on CART-CUR.NB *) composite[CART,RIGHT[x_]] := composite[IMAGE[composite[id[cart[V,x]],inverse[FIRST]]],id[image[V,set[x]]]] (* derived 2008 December 30 in CAT-WRAP.NB *) composite[cat[x_],cross[Id,cat[x_]],ASSOC] := composite[cat[x],cross[cat[x],Id]] (* derived 2008 December 30 in CAT-WRAP.NB *) composite[cat[x_],cross[cat[x_],Id],inverse[ASSOC]] := composite[cat[x],cross[Id,cat[x]]] (* derived 2009 January 11 in CAT-SPEC.NB *) composite[cat[x_],id[cart[ids[cat[x_]],ids[cat[x_]]]]] := composite[id[ids[cat[x]]],inverse[DUP]] (* derived 2009 January 13 in CAT-IDS.NB *) composite[cat[x_],id[cart[ids[cat[x_]],V]]] := composite[SECOND,id[inverse[cod[cat[x]]]]] (* derived 2009 January 11 in CAT-SPEC.NB *) composite[cat[x_],id[cart[range[cat[x_]],range[cat[x_]]]]] := cat[x] (* derived 2009 January 13 in CAT-IDS.NB *) composite[cat[x_],id[cart[V,ids[cat[x_]]]]] := composite[FIRST,id[dom[cat[x]]]] (* derived 2008 December 30 in CAT-WRAP.NB *) composite[cat[x_],id[cart[V,V]]] := cat[x] (* derived 2009 January 6 in CAT-UNIT.NB *) composite[cat[x_],id[dom[cat[x_]]]] := composite[FIRST,id[dom[cat[x]]]] (* derived 2009 January 11 in CAT-SPEC.NB *) composite[cat[x_],id[id[ids[cat[x_]]]]] := composite[id[ids[cat[x]]],inverse[DUP]] (* derived 2009 January 6 in CAT-UNIT.NB *) composite[cat[x_],id[inverse[cod[cat[x_]]]]] := composite[SECOND,id[inverse[cod[cat[x]]]]] (* derived 2009 January 7 in CAT-DIV.NB *) composite[cat[x_],inverse[FIRST],cat[x_],inverse[FIRST]] := composite[cat[x],inverse[FIRST]] (* derived 2009 January 7 in CAT-DIV.NB *) composite[cat[x_],inverse[SECOND],cat[x_],inverse[SECOND]] := composite[cat[x],inverse[SECOND]] (* derived 2005 August 1 in CATOFUNS.NB *) composite[CATOFUNS,cross[Id,CATOFUNS],ASSOC] := composite[CATOFUNS,cross[CATOFUNS,Id]] (* derived 2008 December 23 in IDS-FUNS.NB *) composite[CATOFUNS,id[cart[cart[V,V],cart[V,V]]]] := CATOFUNS (* derived 2008 December 23 in CATO-IDS.NB *) composite[CATOFUNS,id[cart[inverse[IMAGE[DUP]],inverse[IMAGE[DUP]]]]] := composite[id[inverse[IMAGE[DUP]]],inverse[DUP]] (* derived 2008 November 24 in CATORELN.NB *) composite[CATOFUNS,id[cart[V,V]]] := CATOFUNS (* derived 2008 November 12 in CATOFUNS.NB *) composite[CATOFUNS,id[composite[id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]],inverse[SECOND], IMAGE[FIRST],FIRST,id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]]]]] := CATOFUNS (* derived 2008 December 23 in CATO-IDS.NB *) composite[CATOFUNS,id[id[inverse[IMAGE[DUP]]]]] := composite[id[inverse[IMAGE[DUP]]],inverse[DUP]] (* derived 2005 August 1 in CATOFUNS.NB *) composite[CATORELN,cross[Id,CATORELN],ASSOC] := composite[CATORELN,cross[CATORELN,Id]] (* derived 2005 July 30 in CATORELN.NB *) composite[CATORELN,id[cart[cart[FUNS,V],cart[FUNS,V]]]] := CATOFUNS (* derived 2008 December 23 in CATOFUNS.NB *) composite[CATORELN,id[cart[composite[S,IMAGE[SECOND],id[FUNS]], composite[S,IMAGE[SECOND],id[FUNS]]]]] := CATOFUNS (* derived 2008 December 23 in CATOFUNS.NB *) composite[CATORELN,id[cart[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]], composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]]]] := CATORELN (* derived 2008 December 23 in CATO-IDS.NB *) composite[CATORELN,id[cart[inverse[IMAGE[DUP]],inverse[IMAGE[DUP]]]]] := composite[id[inverse[IMAGE[DUP]]],inverse[DUP]] (* derived 2008 November 24 in CATORELN.NB *) composite[CATORELN,id[cart[V,V]]] := CATORELN (* derived 2008 November 12 in CATOFUNS.NB *) composite[CATORELN,id[composite[id[composite[S,IMAGE[SECOND],id[FUNS]]],inverse[SECOND], IMAGE[FIRST],FIRST,id[composite[S,IMAGE[SECOND],id[FUNS]]]]]] := CATOFUNS (* derived 2008 December 23 in CATO-IDS.NB *) composite[CATORELN,id[id[inverse[IMAGE[DUP]]]]] := composite[id[inverse[IMAGE[DUP]]],inverse[DUP]] (* derived 2007 May 6 in CHN-REIF.NB *) composite[CHAINS,CART] := composite[CAP,cross[POWER,POWER]] (* derived 2008 September 23 in CHN-RFX.NB *) composite[CHAINS,CORE[RFX]] := CHAINS (* derived 2007 May 6 in HULL-SYM.NB *) composite[CHAINS,CORE[SYM]] := CLIQUES (* derived 2007 May 6 in CHN-FU.NB *) composite[CHAINS,HULL[invar[SWAP]]] := CHAINS (* derived 2007 August 7 in CHN-TO.NB *) composite[CHAINS,id[TO]] := composite[POWER,IMAGE[inverse[DUP]],id[TO]] (* derived 2008 March 9 in CHAIN-WO.NB *) composite[CHAINS,id[WO]] := composite[POWER,IMAGE[inverse[DUP]],id[WO]] (* derived 2007 May 6 in HULL-SYM.NB *) composite[CHAINS,IMAGE[DUP]] := composite[ADJOIN[set[0]],IMAGE[SINGLETON]] (* derived 2007 May 6 in CHN-REIF.NB *) composite[CHAINS,IMAGE[id[cart[x_,x_]]]] := composite[IMAGE[id[P[x]]],CHAINS] (* derived 2007 May 6 in CHN-REIF.NB *) composite[CHAINS,IMAGE[id[x_]],CART,DUP] := composite[IMAGE[id[chains[x]]],POWER] (* derived 2007 May 6 in CHN-REIF.NB *) composite[CHAINS,IMAGE[id[Di]]] := cart[V,set[set[0]]] (* derived 2007 May 6 in CHN-FU.NB *) composite[CHAINS,IMAGE[SWAP]] := CHAINS (* derived 2006 August 23 in CHARBOOL.NB *) composite[CHAR[x_],CAP,id[cart[P[x_],P[x_]]]] := composite[IMAGE[cross[inverse[DUP],CAP]],CROSS,cross[CHAR[x],CHAR[x]]] (* derived 2006 August 23 in CHARBOOL.NB *) composite[CHAR[x_],CUP] := composite[IMAGE[cross[inverse[DUP],CUP]],CROSS,cross[CHAR[x],CHAR[x]]] (* derived 2006 August 23 in CHARBOOL.NB *) composite[CHAR[x_],RC[x_]] := composite[IMAGE[cross[Id,union[cart[set[0],set[set[0]]],cart[set[set[0]],set[0]]]]],CHAR[x]] (* Theorem AC-SG-2 in CHOICE proved 2000 June 4 *) composite[CHOICE,SINGLETON] := Id /; AxCh (* derived 2006 October 14 in HULLCLIQ.NB *) composite[CLIQUES,BIGCUP,IMAGE[CART],IMAGE[DUP]] := HULL[range[CLIQUES]] (* added 2001 April 30 based on CLIQUES2.NB *) composite[CLIQUES,CAP] := composite[CAP,cross[CLIQUES,CLIQUES]] (* added 2001 April 30 based on CLIQUES2.NB *) composite[CLIQUES,CART] := composite[CAP,cross[POWER,POWER]] (* derived 2006 October 10 in CLIQ-RFX.NB *) composite[CLIQUES,CORE[intersection[RFX,SYM]]] := CLIQUES (* derived 2006 October 10 in CLIQ-RFX.NB *) composite[CLIQUES,CORE[RFX]] := CLIQUES (* derived 2006 October 10 in CLIQ-RFX.NB *) composite[CLIQUES,CORE[SYM]] := CLIQUES (* derived 2007 August 7 in CLIQUES.NB *) composite[CLIQUES,CROSS] := composite[IMAGE[composite[id[P[cart[V,V]]],inverse[DORA]]],CART,cross[CLIQUES,CLIQUES]] (* derived 2006 October 9 in REIFCLIQ.NB *) composite[CLIQUES,CUP,cross[composite[CART,DUP],composite[CART,DUP]]] := composite[CUP,cross[POWER,POWER]] (* derived 2007 August 7 in CHN-TO.NB *) composite[CLIQUES,CUP,intersection[composite[inverse[FIRST],IMAGE[SWAP]], composite[inverse[SECOND],IMAGE[id[cart[V,V]]]]]] := CHAINS (* derived 2007 August 7 in CLIQUES.NB *) composite[CLIQUES,FUNPART] := composite[ADJOIN[set[0]],IMAGE[SINGLETON],IMAGE[inverse[DUP]],FUNPART] (* derived 2007 May 6 in CHN-FU.NB *) composite[CLIQUES,HULL[invar[SWAP]]] := CHAINS (* derived 2007 October 30 in CLQ-SYM.NB *) composite[CLIQUES,HULL[SYM]] := composite[CHAINS,id[P[cart[V,V]]]] (* added 2001 April 30 based on CLIQUES3.NB *) composite[CLIQUES,IMAGE[DUP]] := composite[ADJOIN[set[0]],IMAGE[SINGLETON]] (* added 2001 April 30 based on CLIQUES4.NB *) composite[CLIQUES,IMAGE[id[x_]]] := composite[IMAGE[id[cliques[x]]],CLIQUES] (* added 2001 April 30 based on CLIQUES2.NB *) composite[CLIQUES,IMAGE[SWAP]] := CLIQUES (* added 2001 April 30 based on CLIQUES2.NB *) composite[CLIQUES,INVERSE] := composite[CLIQUES,id[P[cart[V,V]]]] (* added 2003 July 4 based on COARSER.NB *) composite[COARSER,COARSER] := COARSER (* added 2003 July 4 based on COARSER.NB *) composite[COARSER,E] := E (* derived 2003 December 31 in COARSER.NB *) composite[COARSER,inverse[BIGCUP]] := inverse[BIGCUP] (* derived 2003 December 31 in COARSER.NB *) composite[COARSER,POWER] := POWER (* derived 2008 January 5 in COARSER.NB *) composite[COARSER,PS] := PS (* added 2003 July 4 based on COARSER.NB *) composite[COARSER,S] := S (* derived 2008 January 5 in COARSER.NB *) composite[COARSER,SMALLER] := SMALLER (* derived 2009 January 9 in COD-CAT.NB *) composite[cod[cat[x_]],cat[x_]] := composite[cod[cat[x]],FIRST,id[domain[cat[x]]]] (* derived 2009 January 9 in CAT-DO.NB *) composite[cod[cat[x_]],domain[cat[x_]]] := dom[cat[x]] (* derived 2008 December 25 in COD-DOM.NB *) composite[cod[x_],cod[x_]] := cod[x] (* derived 2008 December 25 in COD-DOM.NB *) composite[cod[x_],dom[x_]] := dom[x] (* derived 2008 December 25 in COD-DOM.NB *) composite[cod[x_],id[ids[x_]]] := id[ids[x]] (* derived 2009 January 21 in HOM.NB *) composite[cod[x_],inverse[dom[x_]]] := domain[hom[x]] (* derived 2008 August 29 in LB-COMUT.NB *) composite[COMMUTE,ADJOIN[set[0]]] := COMMUTE (* added 2001 December 26 based on COMMUTE.NB *) composite[COMMUTE,COMMUTE] := cart[V,V] (* added 2003 January 30 *) composite[COMMUTE,complement[E]] := cart[V,V] (* added 2003 January 30 *) composite[COMMUTE,complement[S]] := cart[complement[set[0]],V] (* added 2003 October 21 based on COMMUTE.NB *) composite[COMMUTE,DISJOINT] := cart[V,V] (* derived 2004 December 21 in COMUTANT.NB *) composite[COMMUTE,IMAGE[DUP]] := intersection[composite[inverse[IMAGE[SWAP]],inverse[INVAR]],inverse[INVAR]] (* added 2001 May 18 based on COMMUTE5.NB *) composite[COMMUTE,IMAGE[id[cart[V,V]]]] := COMMUTE (* added 2003 October 21 based on COMMUTE.NB *) composite[COMMUTE,inverse[S]] := cart[V,V] (* Theorem ID-C-CP1 in ID-CO proved 1998 November 19 *) composite[w_,complement[cart[x_,y_]]] := union[cart[V,image[w,complement[y]]], cart[complement[x],range[w]]] (* Theorem ID-C-CP2 in ID-CO proved 1998 November 19 *) composite[complement[cart[x_,y_]],z_] := union[cart[domain[z],complement[y]], cart[image[inverse[z],complement[x]],V]] (* derived 2004 February 17 in SU-IM-C.NB *) composite[complement[x_],complement[composite[complement[inverse[x_]],UB[x_]]]] := composite[complement[x],inverse[E]] (* derived 2007 December 26 in SCHRODER.NB *) composite[complement[composite[complement[x_],inverse[x_]]],x_] := composite[Id,x] (* derived 2008 September 10 in RFX-S.NB *) composite[complement[composite[complement[x_],inverse[x_]]], complement[composite[complement[x_],inverse[x_]]]] := composite[Id,complement[composite[complement[x],inverse[x]]]] (* derived 2008 September 10 in RFX-S.NB *) composite[complement[composite[complement[inverse[x_]],x_]], complement[composite[complement[inverse[x_]],x_]]] := composite[Id,complement[composite[complement[inverse[x]],x]]] (* derived 2008 September 10 in RFX-S.NB *) composite[complement[composite[x_,complement[inverse[x_]]]], complement[composite[x_,complement[inverse[x_]]]]] := composite[Id,complement[composite[x,complement[inverse[x]]]]] (* derived 2007 December 26 in SCHRODER.NB *) composite[complement[composite[complement[inverse[x_]],x_]],inverse[x_]] := inverse[x] (* derived 2007 December 26 in SCHRODER.NB *) composite[complement[composite[Di,x_]],inverse[x_]] := id[range[funpart[x]]] (* added 2002 November 14 based on POW-SUC.NB *) composite[complement[composite[Di,SECOND,GREATEST[complement[cross[SUCC,SUCC]]]]], id[intersection[P[cart[omega,V]], subvar[union[cross[SUCC,SUCC],id[cart[set[0],V]]]]]],E] := rotate[composite[inverse[power[SUCC]],SWAP]] (* added 2002 November 14 based on POW-SUC.NB *) composite[complement[composite[Di,SECOND,GREATEST[complement[cross[SUCC,SUCC]]]]], id[intersection[P[cart[omega,V]], subvar[union[cross[SUCC,SUCC],id[cart[set[0],V]]]]]], inverse[IMAGE[x_]],E] := composite[rotate[ composite[inverse[power[SUCC]],SWAP]],inverse[x]]/; cond && thin[x] (* added 2002 November 13 based on NORM-ADD.NB *) composite[complement[composite[Di,SECOND,GREATEST[complement[cross[SUCC,SUCC]]]]], id[intersection[P[cart[omega,V]],subvar[union[cross[SUCC,SUCC], id[cart[set[0],V]]]]]],inverse[IMAGE[id[cart[V,omega]]]], inverse[IMAGE[SWAP]],E] := rotate[NATADD] (* added 2001 July 8 based on TAKEAWAY.NB *) composite[complement[composite[E,x_]]] := inverse[LB[complement[x]]] (* derived 2007 December 26 in SCHRODER.NB *) composite[x_,complement[composite[inverse[x_],complement[x_]]]] := composite[Id,x] (* derived 2008 September 10 in RFX-S.NB *) composite[complement[composite[inverse[x_],complement[x_]]], complement[composite[inverse[x_],complement[x_]]]] := composite[Id,complement[composite[inverse[x],complement[x]]]] (* derived 2007 December 26 in SCHRODER.NB *) composite[x_,complement[composite[inverse[x_],Di]]] := id[range[funpart[x]]] (* added 2001 July 8 based on ZN-2.NB *) composite[complement[composite[x_,inverse[E]]]] := UB[complement[x]] (* derived 2005 January 29 in DIV.NB *) composite[complement[DIV],inverse[DIV]] := composite[complement[DIV],id[omega]] (* added 1999 October 23 based on VS-S-LOG.2 but later removed composite[complement[E],x_] := union[cart[complement[domain[VERTSECT[x]]],V], composite[complement[S],VERTSECT[x]]] *) (* Theorem E-C-E-C in E-C proved 1999 March 26 *) composite[complement[E],complement[E]] := cart[V,V] (* Theorem E-C-C-IN in E-C proved 1998 September 4 *) composite[complement[E],complement[inverse[E]]] := cart[V,V] (* added 1998 August 23 on basis of ASSOC-3.LOG *) composite[complement[E],complement[inverse[S]]] := cart[V,V] (* 1999 March 25 session E-C-S-CO.LOG *) composite[complement[E],complement[S]] := cart[complement[set[0]],V] (* added 1999 October 5 based on CART.2 *) composite[complement[E],cross[inverse[E],inverse[E]]] := composite[complement[S],CART] (* Theorem E-C-DI-2 proved 1998 November 11 *) composite[complement[E],Di] := cart[V,V] (* added 1999 October 23 based on E-CO-DJT *) composite[complement[E],DISJOINT] := cart[V,V] (* added 1999 October 29 based on 1999 October 28 FIX-IDP.LOG *) composite[complement[E],DUP] := composite[inverse[IMAGE[inverse[DUP]]],complement[E]] (* Theorem SP-E-C-E in SP3 proved 1999 January 19 *) composite[complement[E],E] := cart[V,V] (* added 2002 February 4 based on RCF-NORM.NB *) composite[complement[E],id[DISJOINT],inverse[CUP]] := composite[complement[S],RCF] (* added 2001 March 31 based on HF-AGAIN.NB *) composite[complement[E],intersection[composite[inverse[S],HC],inverse[E]]] := composite[complement[S],HC] (* added 2002 April 10 based on INVAR.NB *) composite[complement[E],INVAR] := cart[V,V] (* Theorem SR-C-CO2 in SR/C *) composite[complement[E],inverse[E]] := composite[Id,complement[S]] (* added 2000 November 7 based on IMAGE.NB *) composite[complement[E],x_,inverse[E]] := union[cart[complement[P[domain[VERTSECT[x]]]],V], composite[complement[S],IMAGE[x]]] (* added 2001 January 11 based on TOPOLOGY.NB *) composite[complement[E],x_,inverse[S]] := composite[complement[S],IMAGE[x],POWER] /; cond && thin[x] (* added 2000 August 9 based on DOROTEST.NB *) composite[complement[E],inverse[FIRST]] := cart[V,V] (* added 1999 October 17 based on STRANGE.2 *) composite[complement[E],inverse[PAIRSET],inverse[S]] := composite[complement[S],CART,DUP] (* Theorem POW-SR-C in POW3 proved 1998 November 21 *) composite[complement[E],inverse[S]] := composite[complement[S],POWER] (* added 2000 August 9 based on DOROTEST.NB *) composite[complement[E],inverse[SECOND]] := cart[V,V] (* Theorem AP-SG-C5 in AP2 proved 1998 November 20 *) composite[complement[E],inverse[SINGLETON]] := composite[complement[S],id[range[SINGLETON]]] (* added 2000 May 24 based on VS-K.NB *) composite[complement[E],K] := cart[V,V] (* added 1999 October 23 based on VS-S-LOG.2 *) composite[complement[E],PS] := cart[V,V] (* derived 2004 December 31 in IN-RK.NB *) composite[complement[E],RANK] := composite[inverse[IMAGE[inverse[RANK]]],complement[E],id[REGULAR]] (* added 2002 November 24 based on CHAL.NB *) composite[complement[E],rotate[E]] := composite[complement[S],IMG,cross[Id,SINGLETON]] (* 1999 March 25 session YET-MORE.LOG *) composite[complement[E],S] := cart[V,V] (* added 2000 September 12 based on CHAL-IMG.NB *) composite[complement[E],SWAP,inverse[rotate[composite[IMG,SWAP]]]] := cart[V,V] (* added 2003 July 5 based on PLUS-ISO.NB *) composite[complement[E],SWAP,inverse[rotate[NATADD]]] := composite[complement[S],PLUS] (* added 2002 November 16 based on EQUIDIFF.NB *) composite[complement[EQUIDIFF],EQUIDIFF] := composite[complement[EQUIDIFF],id[cart[omega,omega]]] (* derived 2004 June 6 in EQV-C.NB *) composite[complement[eqv[x_]],eqv[x_]] := composite[complement[eqv[x]],id[fix[eqv[x]]]] (* derived 2006 May 28 in FUNPART.NB *) composite[complement[x_],id[domain[funpart[x_]]]] := composite[Di,funpart[x]] (* added 2002 November 12 based on VS-RULES.NB *) composite[complement[IMAGE[x_]],id[P[domain[VERTSECT[x_]]]]] := composite[Di,IMAGE[x]] (* derived 2006 June 16 in UB-I-CAP.NB *) composite[complement[image[inverse[IMG],x_]],IMAGE[DUP]] := composite[Id,complement[image[inverse[CAP],x]]] (* discovered 1998 October 27 in SESSION6.LOG *) composite[complement[image[V,x_]],y_] := cart[domain[y],complement[image[V,x]]] (* discovered 1998 October 27 in SESSION6.LOG *) composite[x_,complement[image[V,y_]]] := cart[V,intersection[complement[image[V,y]],range[x]]] (* added 2003 June 23 based on INVAR.NB *) composite[complement[INVAR],CART] := intersection[composite[complement[S],SECOND],composite[E,inverse[E],FIRST]] (* added 2002 June 23 based on INVARTRV.NB *) composite[complement[INVAR],HULL[TRV],inverse[S]] := composite[Id,complement[INVAR]] (* added 2002 April 10 based on INVAR.NB *) composite[complement[INVAR],inverse[E]] := composite[complement[INVAR],BIGCUP] (* derived 2004 January 22 in INVAR.NB *) composite[complement[INVAR],inverse[S]] := composite[Id,complement[INVAR]] (* added 2003 June 23 based on INVAR.NB *) composite[complement[INVAR],SINGLETON,DUP] := 0 (* added 2003 June 23 based on INVAR.NB *) composite[complement[INVAR],SINGLETON,inverse[FIRST]] := E (* added 2003 June 23 based on INVAR.NB *) composite[complement[INVAR],SINGLETON,inverse[SECOND]] := composite[id[complement[set[0]]],complement[E]] (* added 2003 June 23 based on INVAR.NB *) composite[complement[INVAR],SINGLETON,cross[Id,E]] := composite[E,FIRST] (* derived 2007 December 26 in COARSER.NB *) composite[complement[inverse[COARSER]],COARSER] := composite[Id,complement[inverse[COARSER]]] (* derived 2004 February 17 in SU-IM-C.NB *) composite[complement[inverse[x_]],complement[composite[complement[x_],LB[x_]]]] := composite[complement[inverse[x]],inverse[E]] (* derived 2005 January 29 in DIV.NB *) composite[complement[inverse[DIV]],DIV] := composite[complement[inverse[DIV]],id[omega]] (* derived 2004 December 24 in A.NB *) composite[complement[inverse[E]],BIGCAP,inverse[LB[x_]]] := composite[complement[inverse[E]],x] (* derived 2004 December 24 in A.NB *) composite[complement[inverse[E]],BIGCAP,inverse[UB[x_]]] := composite[complement[inverse[E]],inverse[x]] (* derived 2004 December 24 in A.NB *) composite[complement[inverse[E]],BIGCUP,inverse[LB[x_]]] := cart[V,V] (* derived 2004 December 24 in A.NB *) composite[complement[inverse[E]],BIGCUP,inverse[UB[x_]]] := cart[V,V] (* added 1999 October 5 based on CAP-SR.2 *) composite[complement[inverse[E]],CAP] := union[composite[complement[inverse[E]],FIRST], composite[complement[inverse[E]],SECOND]] (* added 1999 October 5 based on CART.1 *) composite[complement[inverse[E]],CART] := union[cart[cart[V,V],complement[cart[V,V]]], composite[inverse[FIRST],complement[inverse[E]],FIRST], composite[inverse[SECOND],complement[inverse[E]],SECOND]] (* added 2003 January 30 *) composite[complement[inverse[E]],COMMUTE] := cart[V,V] (* Theorem E-C-IN-C in E2 proved 1998 September 4 *) composite[complement[inverse[E]],complement[E]] := cart[V,V] (* Added 2000 September 26 based on VERTSECT.NB *) composite[complement[inverse[E]],complement[inverse[E]]] := cart[V,V] composite[complement[inverse[E]],complement[inverse[S]]] := cart[V,V] (* added 2000 December 16 based on Q-CA.NB *) composite[complement[inverse[E]],complement[Q]] := cart[V,V] (* Theorem E-C-IN-S in E2 proved 1998 November 21 *) composite[complement[inverse[E]],complement[S]] := cart[complement[set[0]],V] (* 1998 August 25 *) composite[complement[inverse[E]],Di] := cart[V,V] (* added 1999 October 26 based on DIF-LOG.3 *) composite[complement[inverse[E]],DIF] := union[composite[complement[inverse[E]],FIRST],composite[inverse[E],SECOND]] (* inverse of Theorem DJT-E-C in DJT *) composite[complement[inverse[E]],DISJOINT] := cart[V,V] (* derived 2005 May 5 in S-DIV.NB *) composite[complement[inverse[E]],DIV] := cart[omega,V] (* Theorem DI-CO-E1 in DI added 1998 July 2 *) composite[complement[inverse[E]],E] := Di (* derived 2007 August 2 in HULL-SG.NB *) composite[complement[inverse[E]],HULL[x_],E] := composite[complement[inverse[E]],HULL[x],SINGLETON] (* added 2003 April 1 based on HULL.NB *) composite[complement[inverse[E]],HULL[x_],S] := composite[complement[inverse[E]],HULL[x]] (* added 2003 May 31 based on IMAGE-DJ.NB *) composite[complement[inverse[E]],id[x_],complement[E]] := composite[inverse[E],id[image[DISJOINT,x]],E] (* derived 2007 August 2 in HULL-SG.NB *) composite[complement[inverse[E]],id[x_],E] := composite[complement[inverse[E]],HULL[x],SINGLETON] (* derived 2005 May 17 in S-OM-C-E.NB *) composite[complement[inverse[E]],id[omega],inverse[S]] := cart[V,V] (* added 2001 December 2 based on CARD-FUN.NB *) composite[complement[inverse[E]],id[OMEGA],Q] := composite[complement[inverse[E]],CARD] (* added 2003 June 18 based on CUT-CORE.NB *) composite[complement[inverse[E]],id[P[x_]],DISJOINT] := cart[V,V] (* derived 2007 August 2 in HULL-SG.NB *) composite[complement[inverse[E]],id[x_],POWER] := composite[complement[inverse[S]],id[image[inverse[POWER],x]]] (* added 2000 January 10 based on PC-U.NB *) composite[complement[inverse[E]],id[range[POWER]]] := composite[complement[inverse[S]],inverse[POWER]] (* added 2001 May 2 based on COREHULL.NB *) composite[complement[inverse[E]],id[x_],S] := composite[complement[inverse[E]],HULL[x]] (* derived 2007 August 2 in HULL-SG.NB *) composite[complement[inverse[E]],id[x_],SINGLETON] := composite[Di,id[image[inverse[SINGLETON],x]]] (* derived 2003 December 30 in T2.NB *) composite[complement[inverse[E]],id[Uclosure[x_]],complement[inverse[S]]] := composite[complement[inverse[E]],id[x],complement[inverse[S]]] (* derived 2003 December 30 in T2.NB *) composite[complement[inverse[E]],id[Uclosure[x_]],E] := composite[complement[inverse[E]],id[x],E] (* derived 2007 August 2 in HULL-SG.NB *) composite[complement[inverse[E]],id[x_],VERTSECT[y_]] := composite[complement[y],id[image[inverse[VERTSECT[y]],x]]] (* derived 2004 May 14 in REPLACE.NB *) composite[complement[inverse[E]],IMAGE[x_],E] := composite[complement[x],id[domain[VERTSECT[x]]]] (* added 2001 February 27 based on STUDY.NB *) composite[complement[inverse[E]],IMAGE[id[x_]]] := union[cart[V,complement[x]],composite[Id,complement[inverse[E]]]] (* added 2003 October 15 based on ACYCLIC.NB *) composite[complement[inverse[E]],IMAGE[inverse[DUP]],id[TRV],S] := composite[complement[inverse[E]],IMAGE[inverse[DUP]],HULL[TRV]] (* added 2003 October 7 based on WF-IND.NB *) composite[complement[inverse[E]],IMAGE[SWAP],id[TRV],S] := composite[complement[inverse[E]],INVERSE,HULL[TRV]] (* added 2002 April 10 based on INVAR.NB *) composite[complement[inverse[E]],INVAR] := cart[V,V] (* Theorem BA-E-IN3 in BIGCAP/BA1 proved 1998 December 8 *) composite[complement[inverse[E]],inverse[E]] := composite[complement[inverse[E]],BIGCAP] (* derived 2004 December 24 in A.NB *) composite[complement[inverse[E]],inverse[LB[x_]]] := cart[V,V] (* derived 2004 December 24 in A.NB *) composite[complement[inverse[E]],inverse[UB[x_]]] := cart[V,V] (* discovered 1999 December 20 in CANCEL.NB *) composite[complement[inverse[E]],inverse[POWER],S] := composite[complement[inverse[E]],BIGCUP] (* added 1998 July 31 *) composite[complement[inverse[E]],inverse[S]] := cart[V,V] (* derived 2004 December 22 in UCL-COMT.NB *) composite[complement[inverse[E]],LB[LB[x_]]] := cart[V,V] (* derived 2004 December 22 in UCL-COMT.NB *) composite[complement[inverse[E]],LB[UB[x_]]] := cart[V,V] (* Theorem POW-CO5 in POW3 proved 1998 November 12 *) composite[complement[inverse[E]],POWER] := composite[Id,complement[inverse[S]]] (* added 2000 May 9 based on Q-C-E.NB *) composite[complement[inverse[E]],Q] := cart[V,V] (* derived 2004 August 10 in RS-3.NB *) composite[complement[inverse[E]],RESTRICT] := cart[V,V] (* derived 2005 May 17 based on NATMOD.NB *) composite[complement[inverse[E]],rotate[composite[inverse[DIV],rotate[NATADD]]]] := composite[complement[inverse[E]],NATMOD,SWAP] (* derived 2005 May 17 based on NATMOD.NB *) composite[complement[inverse[E]],rotate[NATADD],cross[Id,DIV]] := composite[complement[inverse[E]],NATMOD] (* added 1998 August 23 *) composite[complement[inverse[E]],S] := composite[Id,complement[inverse[E]]] (* derived 2005 July 18 in MODULO.NB *) composite[complement[inverse[E]],SECOND,id[cart[image[DIV,set[x_]],V]],inverse[NATADD]] := composite[complement[inverse[E]],modulo[x]] (* derived 2004 May 14 in REPLACE.NB *) composite[complement[inverse[E]],VERTSECT[x_]] := composite[complement[x],id[domain[VERTSECT[x]]]] (* added 2001 July 14 based on ZN-IMG.NB *) composite[complement[inverse[E]],ZN] := cart[V,V] (* added 2003 May 10 based on APPLY.NB *) composite[complement[inverse[E]],rotate[E]] := composite[complement[inverse[E]],BIGCAP,IMG,cross[Id,SINGLETON]] (* Theorem AP-SG-C2 proved 1998 September 7 *) composite[complement[inverse[E]],SINGLETON] := Di (* added 2003 January 30 *) composite[complement[inverse[E]],SUBCOMMUTE] := cart[V,V] (* added 2000 August 16 based on DIF.NB *) composite[complement[inverse[E]],SYMDIF] := union[composite[complement[inverse[E]],CUP],composite[inverse[E],CAP]] (* added 2002 May 18 based on FUNPART.NB *) composite[complement[inverse[image[inverse[IMG],range[SINGLETON]]]],SINGLETON] := composite[inverse[FUNPART],inverse[IMAGE[FIRST]],complement[E]] (* added 2002 May 18 based on FUNPART.NB *) composite[complement[inverse[image[inverse[IMG],range[SINGLETON]]]],inverse[E],IMAGE[SINGLETON]] := composite[inverse[FUNPART],inverse[IMAGE[FIRST]],complement[S]] (* derived 2005 October 1 in PO-WRAP.NB *) composite[complement[inverse[po[x_]]],po[x_]] := composite[complement[inverse[po[x]]],id[fix[po[x]]]] (* derived 2004 December 17 in RFXTRV-C.NB *) composite[complement[inverse[rfx[trv[x_]]]],rfx[trv[x_]]] := composite[complement[inverse[rfx[trv[x]]]],id[fix[trv[x]]]] (* added 1999 October 6 based on CAP-CUP.LOG *) composite[complement[inverse[S]],CAP] := union[composite[complement[inverse[S]],FIRST],composite[complement[inverse[S]],SECOND]] (* derived 2007 December 26 in COARSER.NB *) composite[complement[inverse[S]],COARSER] := composite[Id,complement[inverse[S]]] (* added 2003 January 30 *) composite[complement[inverse[S]],COMMUTE] := cart[V,complement[set[0]]] (* Theorem ID-SR-E in ID-CO proved 1998 November 28 *) composite[complement[inverse[S]],complement[E]] := cart[V,complement[set[0]]] (* 1999 March 25 session CO-C-NEW.LOG *) composite[complement[inverse[S]],complement[inverse[E]]] := cart[V,complement[set[0]]] composite[complement[inverse[S]],complement[inverse[S]]] := cart[V,complement[set[0]]] (* added 2000 December 16 based on Q-CA.NB *) composite[complement[inverse[S]],complement[Q]] := cart[V,complement[set[0]]] (* Theorem ID-SR-C in ID-CO proved 1998 November 28 *) composite[complement[inverse[S]],complement[S]] := cart[complement[set[0]],complement[set[0]]] (* 1998 August 25 *) composite[complement[inverse[S]],Di] := cart[V,complement[set[0]]] (* added 1999 October 26 based on DIF-LOG.3 *) composite[complement[inverse[S]],DIF] := union[composite[complement[inverse[S]],FIRST], composite[E,inverse[E],SECOND]] (* inverse of rule found in TEST1.LOG *) composite[complement[inverse[S]],DISJOINT] := cart[V,complement[set[0]]] (* derived 2005 May 5 in S-DIV.NB *) composite[complement[inverse[S]],DIV] := cart[omega,complement[set[0]]] (* added 1998 August 23 *) composite[complement[inverse[S]],E] := composite[complement[inverse[S]],SINGLETON] (* added 2003 February 20 based on HULL-S.NB *) composite[complement[inverse[S]],HULL[x_],S] := composite[complement[inverse[S]],HULL[x]] (* added 2001 December 2 based on CARD-FUN.NB *) composite[complement[inverse[S]],id[OMEGA],Q] := composite[complement[inverse[S]],CARD] (* added 2001 May 2 based on COREHULL.NB *) composite[complement[inverse[S]],id[x_],S] := composite[complement[inverse[S]],HULL[x]] (* derived 2003 December 30 in T2.NB *) composite[complement[inverse[S]],id[Uclosure[x_]],complement[inverse[S]]] := composite[complement[inverse[S]],id[x],complement[inverse[S]]] (* derived 2003 December 30 in T2.NB *) composite[complement[inverse[S]],id[Uclosure[x_]],E] := composite[complement[inverse[S]],id[x],E] (* added 2002 April 10 based on INVAR-S.NB *) composite[complement[inverse[S]],INVAR] := cart[V,complement[set[0]]] (* Theorem BA-SR-C2 in BIGCAP/BA1 proved 1998 December 8 *) composite[complement[inverse[S]],inverse[E]] := composite[complement[inverse[S]],BIGCAP] (* added 2003 May 31 based on CUT-CO.NB *) composite[complement[inverse[S]],inverse[IMAGE[id[x_]]]] := composite[complement[inverse[S]],id[P[x]]] (* added 2000 January 10 based on PC-U.NB *) composite[complement[inverse[S]],inverse[POWER],S] := composite[complement[inverse[S]],BIGCUP] (* added 2003 May 31 based on RS-CO.NB *) composite[complement[inverse[S]],inverse[RESTRICT]] := composite[complement[inverse[S]],id[P[cart[V,V]]]] (* added 1998 July 31 *) composite[complement[inverse[S]],inverse[S]] := cart[V,complement[set[0]]] (* added 2000 May 9 based on Q-C-E.NB *) composite[complement[inverse[S]],Q] := cart[V,complement[set[0]]] (* added 2003 May 31 based on RS-CO.NB *) composite[complement[inverse[S]],RESTRICT] := cart[V,complement[set[0]]] (* Theorem SR-C-CO3 in SR/C *) composite[complement[inverse[S]],S] := composite[Id,complement[inverse[S]]] (* added 2003 January 30 *) composite[complement[inverse[S]],SUBCOMMUTE] := cart[V,complement[set[0]]] (* added 2000 August 16 based on SYMDIF.NB *) composite[complement[inverse[S]],SYMDIF] := union[composite[complement[inverse[S]],CUP],composite[E,inverse[E],CAP]] (* derived 2004 May 14 in REPLACE.NB *) composite[complement[inverse[S]],VERTSECT[x_]] := composite[E,complement[x],id[domain[VERTSECT[x]]]] (* derived 2005 January 29 in TRV-RFX.NB *) composite[complement[inverse[trv[rfx[x_]]]],trv[rfx[x_]]] := composite[complement[inverse[trv[rfx[x]]]],id[fix[x]]] (* added 2001 July 8 based on TAKEAWAY.NB *) composite[complement[omega]] := cart[V,V] (* added 2001 July 8 based on TAKEAWAY.NB *) composite[complement[OMEGA]] := cart[V,V] (* derived 2005 October 1 in PO-WRAP.NB *) composite[complement[po[x_]],inverse[po[x_]]] := composite[complement[po[x]],id[fix[po[x]]]] (* added 2000 December 16 based on Q-CA.NB *) composite[complement[Q],complement[E]] := cart[V,V] (* added 2000 December 16 based on Q-CA.NB *) composite[complement[Q],complement[S]] := cart[complement[set[0]],V] (* added 2000 December 16 based on Q-CA.NB *) composite[complement[Q],DISJOINT] := cart[V,V] (* Theorem Q-C-CO-2 in Q proved 2000 May 7 *) composite[complement[Q],Q] := composite[Id,complement[Q]] (* discovered 2000 May 7 in Q-CO.NB *) composite[complement[Q],SINGLETON] := cart[V,complement[range[SINGLETON]]] (* derived 2004 December 17 in RFXTRV-C.NB *) composite[complement[rfx[trv[x_]]],inverse[rfx[trv[x_]]]] := composite[complement[rfx[trv[x]]],id[fix[trv[x]]]] (* revised 1999 December 19 based on REVISED.NB *) composite[complement[S],ADJOIN[x_]] := union[cart[V, intersection[complement[image[S,set[x]]],image[V,set[x]]]], composite[complement[S],id[image[V,set[x]]]]] (* Theorem IMG-BC-8 in IMG4 proved 1998 November 21 *) composite[complement[S],BIGCUP] := composite[inverse[POWER],complement[S]] (* Theorem E-C-SR in E-C proved 1998 November 19 *) composite[complement[S],complement[E]] := cart[V,V] (* added 1998 August 23 on basis of ASSOC-3.LOG *) composite[complement[S],complement[inverse[E]]] := cart[V,V] (* Theorem SR-C-IN in SR-C proved 1998 November 21 *) composite[complement[S],complement[inverse[S]]] := cart[V,V] (* Theorem SR-C-SR in SR-C proved 1998 November 21 *) composite[complement[S],complement[S]] := cart[complement[set[0]],V] (* added 1999 October 6 based on CAP-CUP.LOG *) composite[complement[S],CUP] := union[composite[complement[S],FIRST],composite[complement[S],SECOND]] (* Theorem SR-C-DI1 in SR-C proved 1998 November 28 *) composite[complement[S],Di] := cart[V,V] (* Theorem SR-C-DJT in SR-C proved 1998 December 6 *) composite[complement[S],DISJOINT] := cart[V,V] (* Theorem RUS-CO-2 in RUS2 *) composite[complement[S],E] := cart[V,V] (* added 2001 May 2 based on COREHULL.NB *) composite[complement[S],id[x_],inverse[S]] := composite[complement[S],CORE[x]] (* added 2002 March 12 based on TRV.NB *) composite[complement[S],id[TRV],S] := cart[P[cart[V,V]],V] (* derived 2003 December 30 in T2.NB *) composite[complement[S],id[Uclosure[x_]],complement[E]] := composite[complement[S],id[x],complement[E]] (* derived 2003 December 30 in T2.NB *) composite[complement[S],id[Uclosure[x_]],complement[S]] := composite[complement[S],id[x],complement[S]] (* added 2002 May 16 based on IVR-NEW.NB *) composite[complement[S],IMG,id[cart[x_,y_]],inverse[SECOND]] := union[cart[intersection[y,complement[P[domain[VERTSECT[U[x]]]]]],V], composite[complement[S],IMAGE[U[x]],id[y]]] (* added 2003 January 25 based on INVAR.NB *) composite[complement[S],INVAR] := cart[V,V] (* Theorem BA-5B in BIGCAP/BA1 proved 1998 December 14 *) composite[complement[S],inverse[BIGCAP]] := composite[complement[E],S] (* Theorem POW-BC-C in POW3 proved 1998 November 21 *) composite[complement[S],inverse[BIGCUP]] := composite[complement[S],POWER] (* Theorem POW-CO6 in POW3 proved 1998 November 21 *) composite[complement[S],inverse[E]] := composite[inverse[POWER],complement[S]] (* added 2003 May 31 based on CUT-CO.NB *) composite[complement[S],inverse[IMAGE[id[x_]]],S] := cart[P[x],V] (* derived 2004 January 29 in UB-LB-CO.NB *) composite[complement[S],inverse[LB[x_]]] := composite[complement[E],x] (* Theorem SR-C-CO6 in SR/C *) composite[complement[S],inverse[S]] := composite[Id,complement[S]] (* derived 2004 January 29 in UB-LB-CO.NB *) composite[complement[S],inverse[UB[x_]]] := composite[complement[E],inverse[x]] (* Theorem SR-C-K in SR/C proved 2000 May 24 *) composite[complement[S],K] := cart[V,V] (* added 1999 October 6 based on PAIRSET.1 *) composite[complement[S],PAIRSET] := union[composite[complement[E],FIRST],composite[complement[E],SECOND]] (* added 1998 August 9 *) composite[complement[S],PS] := cart[V,V] (* derived 2005 November 22 in Q-RULES.NB *) composite[complement[S],Q] := cart[complement[set[0]],V] (* added 2003 May 31 based on RS-CO.NB *) composite[complement[S],RESTRICT] := composite[complement[S],IMAGE[id[cart[V,V]]]] (* Theorem RUS-CO-1 in RUS2 *) composite[complement[S],S] := cart[V,V] (* Theorem AP-SG-C3 in AP2 *) composite[complement[S],SINGLETON] := composite[Id,complement[E]] (* derived 2004 May 14 in REPLACE.NB *) composite[complement[S],VERTSECT[x_]] := composite[complement[E],thinpart[x]] (* added 2001 July 8 based on TAKEAWAY.NB *) composite[complement[set[0]]] := cart[V,V] (* derived 2005 January 29 in TRV-RFX.NB *) composite[complement[trv[rfx[x_]]],inverse[trv[rfx[x_]]]] := composite[complement[trv[rfx[x]]],id[fix[x]]] (* derived 2006 June 10 in CONST-CO.NB *) composite[COMPOSE,cross[CART,Id]] := composite[CART,cross[IMG,Id],ROT,cross[Id,IMAGE[SWAP]]] (* added 2003 May 30 based on RESTRICT.NB *) composite[COMPOSE,cross[composite[COMPOSE,cross[Id,IMAGE[DUP]]],IMAGE[DUP]]] := composite[COMPOSE,cross[Id,composite[CAP,cross[IMAGE[DUP],IMAGE[DUP]]]],ASSOC] (* added 2000 September 7 based on CUT.NB *) composite[COMPOSE,cross[x_,composite[IMAGE[id[cart[V,V]]],y_]]] := composite[COMPOSE,cross[x,y]] (* added 2000 September 7 based on CUT.NB *) composite[COMPOSE,cross[composite[IMAGE[id[cart[V,V]]],x_],y_]] := composite[COMPOSE,cross[x,y]] (* added 1999 December 21 based on CROSCOMP.NB *) composite[COMPOSE,cross[CROSS,CROSS]] := composite[CROSS,cross[COMPOSE,COMPOSE],TWIST] (* revised 1999 December 15 based on CHECK-C3.TXT *) composite[COMPOSE,cross[Id,CART]] := composite[CART,SWAP,cross[IMG,Id],inverse[ASSOC],cross[Id,SWAP]] (* added 1999 December 4 based on COMPOSE.NB *) composite[COMPOSE,cross[Id,COMPOSE],ASSOC] := composite[COMPOSE,cross[COMPOSE,Id]] (* discovered 1999 December 13 in NEWIDEAS.NB *) composite[COMPOSE,cross[IMAGE[DUP],IMAGE[DUP]]] := composite[IMAGE[DUP],CAP] (* added 1999 December 25 based on COMPOSE3.NB *) composite[COMPOSE,cross[IMAGE[id[cart[V,V]]],x_]] := composite[COMPOSE,cross[Id,x]] (* added 1999 December 25 based on COMPOSE3.NB *) composite[COMPOSE,cross[x_,IMAGE[id[cart[V,V]]]]] := composite[COMPOSE,cross[x,Id]] (* added 1999 December 14 based on COMPOSE2.NB *) composite[COMPOSE,cross[CART,IMAGE[SWAP]]] := composite[CART,cross[IMG,Id],ROT] (* derived 2004 December 10 in DIV-TRV.NB *) composite[COMPOSE,cross[COMPOSE,Id],inverse[ASSOC]] := composite[COMPOSE,cross[Id,COMPOSE]] (* added 2002 December 18 based on CPS-PLUS.NB *) composite[COMPOSE,cross[composite[INVERSE,PLUS],PLUS]] := composite[VERTSECT[EQUIDIFF],id[cart[omega,omega]]] (* derived 2004 December 19 in QO-IDEM.NB *) composite[COMPOSE,DUP,CORE[RFX],HULL[TRV]] := composite[CORE[RFX],HULL[TRV]] (* derived 2004 May 12 in EQUIV.NB *) composite[COMPOSE,DUP,EQUIV] := EQUIV (* derived 2006 June 18 in PO-EQV.NB *) composite[COMPOSE,DUP,id[IDEM]] := id[IDEM] (* derived 2004 December 19 in QO-IDEM.NB *) composite[COMPOSE,DUP,id[intersection[RFX,TRV]]] := id[intersection[RFX,TRV]] (* derived 2006 June 18 in PO-EQV.NB *) composite[COMPOSE,DUP,id[PO]] := id[PO] (* added 2002 April 4 based on IDP.NB *) composite[COMPOSE,DUP,IMAGE[DUP]] := IMAGE[DUP] (* added 2001 January 28 based on GENERAL.NB *) composite[COMPOSE,DUP,IMAGE[id[cart[V,V]]]] := composite[COMPOSE,DUP] (* added 2003 May 10 based on LAMBHULL.NB *) composite[COMPOSE,DUP,LAMBHULL] := LAMBHULL (* added 2002 February 3 based on RCF.NB *) composite[COMPOSE,DUP,RCF] := composite[IMAGE[DUP],POWER] (* added 2003 May 30 based on RESTRICT.NB *) composite[COMPOSE,id[cart[x_,P[Id]]],inverse[FIRST]] := composite[RESTRICT,id[x]] (* derived 2004 December 6 in IDP.NB *) composite[COMPOSE,id[cart[P[Id],P[Id]]]] := composite[CAP,id[cart[P[Id],P[Id]]]] (* added 2003 May 30 based on RESTRICT.NB *) composite[COMPOSE,id[cart[P[Id],V]],inverse[SECOND]] := composite[IMAGE[SWAP],RESTRICT,IMAGE[SWAP]] (* derived 2004 December 10 in DIV-TRV.NB *) composite[COMPOSE,id[cart[V,x_]],inverse[FIRST],COMPOSE,id[cart[V,y_]],inverse[FIRST]] := composite[COMPOSE,id[cart[V,image[COMPOSE,cart[y,x]]]],inverse[FIRST]] (* derived 2004 December 10 in DIV-TRV.NB *) composite[COMPOSE,id[cart[x_,V]],inverse[SECOND],COMPOSE,id[cart[y_,V]],inverse[SECOND]] := composite[COMPOSE,id[cart[image[COMPOSE,cart[x,y]],V]],inverse[SECOND]] (* added 2002 October 22 based on CO-ID.NB *) composite[COMPOSE,id[cart[V,V]]] := COMPOSE (* added 1999 November 28 based on COMPOSE1.NB *) composite[COMPOSE,id[composite[IMAGE[DUP],IMAGE[FIRST]]],inverse[FIRST]] := IMAGE[id[cart[V,V]]] (* added 1999 December 25 based on COMPOSE2.NB *) composite[COMPOSE,id[composite[inverse[IMAGE[SECOND]],inverse[IMAGE[DUP]]]], inverse[SECOND]] := IMAGE[id[cart[V,V]]] (* derived 2007 August 9 in COREPROJ.NB *) composite[COMPOSE,id[inverse[IMAGE[id[Id]]]],inverse[SECOND]] := CORE[PROJ] (* added 2002 June 11 based on FUNPART.NB *) composite[COMPOSE,id[INVERSE],inverse[FIRST],FUNPART] := composite[IMAGE[DUP],IMAGE[SECOND],FUNPART] (* added 2002 June 11 based on FUNPART.NB *) composite[COMPOSE,id[INVERSE],inverse[FIRST],IMAGE[DUP]] := IMAGE[DUP] (* derived 2004 January 7 in VSLAMBDA.NB *) composite[COMPOSE,intersection[composite[inverse[FIRST],VS], composite[inverse[SECOND],IMAGE[DUP],IMAGE[FIRST]]]] := VS (* added 2003 July 1 based on ASS-TRV.NB *) composite[COMPOSE,inverse[FIRST],COMPOSE,inverse[FIRST]] := composite[COMPOSE,inverse[FIRST]] (* added 2003 July 1 based on ASS-TRV.NB *) composite[COMPOSE,inverse[SECOND],COMPOSE,inverse[SECOND]] := composite[COMPOSE,inverse[SECOND]] (* revised 1999 December 19 based on REVISED.NB *) composite[COMPOSE,LEFT[x_]] := composite[IMAGE[cross[Id,x]], id[image[V,set[x]]]] (* revised 1999 December 19 based on REVISED.NB *) composite[COMPOSE,RIGHT[x_]] := composite[IMAGE[cross[inverse[x],Id]], id[image[V,set[x]]]] (* added 2001 December 27 based on CP-I.NB *) composite[COMPOSE,SWAP,cross[IMAGE[DUP],IMAGE[DUP]]] := composite[CAP,cross[IMAGE[DUP],IMAGE[DUP]]] (* added 1999 January 2 based on REMOVE-X.NB *) composite[COMPOSE,SWAP,cross[x_,IMAGE[id[cart[V,V]]]]] := composite[COMPOSE,SWAP,cross[x,Id]] (* added 1999 January 2 based on REMOVE-X.NB *) composite[COMPOSE,SWAP,cross[IMAGE[id[cart[V,V]]],x_]] := composite[COMPOSE,SWAP,cross[Id,x]] (* derived 2008 August 17 in CLQ-CMT.NB *) composite[COMPOSE,SWAP,id[COMMUTE]] := composite[COMPOSE,id[COMMUTE]] (* added 2003 August 31 based on CAP-CORE.NB *) composite[CORE[Aclosure[x_]],CAP] := composite[CAP,cross[CORE[Aclosure[x]],CORE[Aclosure[x]]]] (* added 2003 August 31 based on CAP-CORE.NB *) composite[CORE[binclosed[x_]],CAP] := composite[CAP,cross[CORE[binclosed[x]],CORE[binclosed[x]]]] (* added 2002 May 3 based on CORE-UCL.NB *) composite[CORE[x_],CORE[x_]] := CORE[x] (* added 2003 September 4 based on IDEMCORE.NB *) composite[CORE[x_],CORE[intersection[x_,y_]]] := CORE[intersection[x,y]] (* added 2001 October 27 based on CORE-UCL.NB *) composite[CORE[DESCENDING],id[DESCENDING]] := id[DESCENDING] (* derived 2007 December 12 in COREDESC.NB *) composite[CORE[DESCENDING],IMAGE[id[complement[REGULAR]]]] := CORE[DESCENDING] (* added 2002 November 21 based on UCLFPIMG.NB *) composite[CORE[fix[IMAGE[x_]]],id[fix[IMAGE[x_]]]] := id[fix[IMAGE[x]]] (* added 2003 March 9 based on CORE-HER.NB *) composite[CORE[fix[IMAGE[inverse[S]]]],IMAGE[inverse[S]]] := IMAGE[inverse[S]] (* derived 2007 June 30 in MAP.NB *) composite[CORE[fix[IMAGE[inverse[S]]]],POWER] := POWER (* added 2003 March 16 based on CORE-UCL.NB *) composite[CORE[fix[UCLOSURE]],POWER] := POWER (* derived 2007 May 26 in COREHULL.NB *) composite[CORE[x_],HULL[y_],CORE[x_],HULL[y_]] := composite[CORE[x],HULL[y]] (* derived 2004 May 4 in CRHL-FIX.NB *) composite[CORE[x_],id[x_]] := id[x] (* derived 2007 May 9 in COREHULL.NB *) composite[CORE[x_],id[intersection[x_,y_]]] := id[intersection[x,y]] (* added 2002 May 3 based on CORE-UCL.NB *) composite[CORE[x_],id[Uclosure[x_]]] := id[Uclosure[x]] (* added 2003 September 4 based on IDEMCORE.NB *) composite[CORE[x_],IMAGE[id[U[x_]]]] := CORE[x] (* added 2003 September 4 based on IDEMCORE.NB *) composite[CORE[intersection[x_,y_]],CORE[y_]] := CORE[intersection[x,y]] (* derived 2004 October 4 in REPLACE.NB *) composite[CORE[intersection[RFX,SYM]],EQUIV] := EQUIV (* derived 2004 October 4 in REPLACE.NB *) composite[CORE[intersection[RFX,SYM]],id[EQV]] := id[EQV] (* added 2001 October 28 based on IVR-RFX.NB *) composite[CORE[intersection[RFX,SYM]],id[intersection[RFX,SYM]]] := id[intersection[RFX,SYM]] (* derived 2006 October 10 in R-S-CORE.NB *) composite[CORE[intersection[RFX,SYM]],IMAGE[DUP]] := IMAGE[DUP] (* derived 2006 October 10 in R-S-CORE.NB *) composite[CORE[intersection[RFX,SYM]],IMAGE[SWAP]] := CORE[intersection[RFX,SYM]] (* added 2003 August 31 based on CAP-CORE.NB *) composite[CORE[invar[x_]],CAP] := composite[CAP,cross[CORE[invar[x]],CORE[invar[x]]]] (* derived 2006 February 7 in UCL-PROJ.NB *) composite[CORE[invar[composite[DUP,SECOND]]],IMAGE[id[cart[V,V]]]] := CORE[PROJ] (* added 2001 October 27 based on CORE-UCL.NB *) composite[CORE[invar[x_]],id[invar[x_]]] := id[invar[x]] (* derived 2005 January 5 in CORE-ON.NB *) composite[CORE[OMEGA],HC] := CORE[OMEGA] (* derived 2005 January 5 in CORE-ON.NB *) composite[CORE[OMEGA],IMAGE[id[OMEGA]]] := CORE[OMEGA] (* derived 2007 August 9 in COREPROJ.NB *) composite[CORE[PROJ],IMAGE[id[cart[V,V]]]] := CORE[PROJ] (* added 2003 May 23 Based on DEF-CLOS.NB *) composite[CORE[range[POWER]],POWER] := POWER (* added 2003 September 24 based on PO-FACTS.NB *) composite[CORE[RFX],CAP] := composite[CAP,cross[CORE[RFX],CORE[RFX]]] (* derived 2004 December 18 in RFX-WRAP.NB *) composite[CORE[RFX],CART] := composite[CART,DUP,CAP] (* derived 2004 October 4 in RFSYMCOR.NB *) composite[CORE[RFX],CORE[SYM]] := CORE[intersection[RFX,SYM]] (* derived 2004 December 18 in RFX-WRAP.NB *) composite[CORE[RFX],CROSS] := composite[CROSS,cross[CORE[RFX],CORE[RFX]]] (* derived 2005 November 19 in EQV.NB *) composite[CORE[RFX],EQUIV] := EQUIV (* derived 2006 October 29 in OOPART.NB *) composite[CORE[RFX],FUNPART] := composite[IMAGE[id[Id]],FUNPART] (* derived 2005 November 19 in EQV.NB *) composite[CORE[RFX],HULL[EQV]] := HULL[EQV] (* derived 2007 May 9 in IVR-SWAP.NB *) composite[CORE[RFX],HULL[invar[SWAP]]] := composite[HULL[SYM],CORE[RFX]] (* derived 2007 May 9 in RFX.NB *) composite[CORE[RFX],HULL[RFX]] := HULL[RFX] (* derived 2006 October 7 in TRV-RFX.NB *) composite[CORE[RFX],HULL[TRV],CORE[RFX]] := composite[HULL[TRV],CORE[RFX]] (* derived 2005 November 19 in EQV.NB *) composite[CORE[RFX],id[EQV]] := id[EQV] (* derived 2007 May 9 in RFX.NB *) composite[CORE[RFX],id[PO]] := id[PO] (* added 2001 October 28 based on IVR-RFX.NB *) composite[CORE[RFX],id[RFX]] := id[RFX] (* derived 2006 October 10 in R-S-CORE.NB *) composite[CORE[RFX],IMAGE[DUP]] := IMAGE[DUP] (* derived 2004 December 17 in RFX.NB *) composite[CORE[RFX],IMAGE[id[cart[V,V]]]] := CORE[RFX] (* derived 2004 December 17 in RFX.NB *) composite[CORE[RFX],IMAGE[SWAP]] := composite[INVERSE,CORE[RFX]] (* added 2001 October 27 based on CORE-UCL.NB *) composite[CORE[subvar[x_]],id[subvar[x_]]] := id[subvar[x]] (* added 2003 August 31 based on CAP-CORE.NB *) composite[CORE[SYM],CAP] := composite[CAP,cross[CORE[SYM],CORE[SYM]]] (* derived 2004 October 4 in RFSYMCOR.NB *) composite[CORE[SYM],CORE[RFX]] := CORE[intersection[RFX,SYM]] (* derived 2004 May 12 in EQUIV.NB *) composite[CORE[SYM],EQUIV] := EQUIV (* derived 2006 October 7 in SYM.NB *) composite[CORE[SYM],HULL[SYM]] := HULL[SYM] (* derived 2004 May 12 in EQUIV.NB *) composite[CORE[SYM],HULL[TRV]] := composite[EQUIV,id[P[cart[V,V]]]] (* added 2001 October 27 based on CORE-UCL.NB *) composite[CORE[SYM],id[SYM]] := id[SYM] (* derived 2008 March 6 in WO-ASYM.NB *) composite[CORE[SYM],id[WO]] := composite[IMAGE[id[Id]],id[WO]] (* derived 2006 October 10 in R-S-CORE.NB *) composite[CORE[SYM],IMAGE[DUP]] := IMAGE[DUP] (* added 2001 October 10 based on REPLACE.NB *) composite[CORE[SYM],IMAGE[id[cart[V,V]]]] := CORE[SYM] (* derived 2006 October 7 in SYM.NB *) composite[CORE[SYM],IMAGE[SWAP]] := CORE[SYM] (* derived 2006 October 29 in OOPART.NB *) composite[CORE[SYM],RCF] := RCF (* derived 2008 August 3 in WF-ASYM.NB *) composite[CORE[SYM],WFPART] := cart[V,set[0]] (* derived 2004 January 1 in SUB-T1.NB *) composite[CORE[T1],POWER] := POWER (* added 2003 March 16 based on REL-TOP.NB *) composite[CORE[TOPS],POWER] := POWER (* derived 2005 July 30 in CATORELN.NB *) composite[cross[COMPOSE,FIRST],TWIST,id[composite[id[composite[S,IMAGE[SECOND],id[FUNS]]], inverse[SECOND],IMAGE[FIRST],FIRST,id[composite[S,IMAGE[SECOND],id[FUNS]]]]]] := CATOFUNS (* derived 2005 July 30 in CATORELN.NB *) composite[cross[COMPOSE,FIRST],TWIST,id[composite[id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]], inverse[SECOND],IMAGE[FIRST],FIRST,id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]]]]] := CATORELN (* derived 2008 December 23 in CATO-IDS.NB *) composite[cross[COMPOSE,FIRST],TWIST,id[id[inverse[IMAGE[DUP]]]]] := composite[id[inverse[IMAGE[DUP]]],inverse[DUP]] (* derived 2008 December 23 in CATO-IDS.NB *) composite[cross[composite[COMPOSE,DUP],Id],id[inverse[IMAGE[DUP]]]] := id[inverse[IMAGE[DUP]]] (* added 2003 July 14 based on X12ASSOC.NB *) composite[cross[x_,composite[y_,FIRST]],ASSOC] := composite[cross[x,y],FIRST] (* added 2003 July 1 based on ASSOC.NB *) composite[cross[x_,composite[y_,id[cart[V,V]]]],ASSOC] := composite[cross[x,y],ASSOC] (* derived 2006 September 12 in DIRECT.NB *) composite[cross[composite[x_,id[cart[V,V]]],y_],TWIST] := composite[cross[x,y],TWIST] (* derived 2006 September 12 in DIRECT.NB *) composite[cross[x_,composite[y_,id[cart[V,V]]]],TWIST] := composite[cross[x,y],TWIST] (* derived 2009 January 11 in CAT-SPEC.NB *) composite[cross[composite[id[x_],inverse[DUP]],composite[id[y_],inverse[DUP]]],TWIST] := composite[id[cart[x,y]],inverse[DUP]] (* added 2003 July 14 based on X12ASSOC.NB *) composite[cross[x_,composite[y_,SECOND]],ASSOC] := cross[composite[x,FIRST],y] (* added 2002 June 7 based on RIF-SWAP.NB *) composite[cross[composite[x_,SECOND],composite[y_,FIRST]], id[composite[inverse[SECOND],FIRST]]] := composite[RIF,cross[cross[Id,x],cross[y,Id]]] (* Theorem X-CO-2 in X3 *) composite[cross[u_,v_],cross[x_,y_]] := cross[composite[u,x],composite[v,y]] (* added 2000 September 7 based on CUT.NB *) composite[CROSS,cross[composite[IMAGE[id[cart[V,V]]],x_],y_]] := composite[CROSS,cross[x,y]] (* added 2000 September 7 based on CUT.NB *) composite[CROSS,cross[x_,composite[IMAGE[id[cart[V,V]]],y_]]] := composite[CROSS,cross[x,y]] (* added 2000 September 7 based on CUT.NB *) composite[CROSS,cross[x_,IMAGE[id[cart[V,V]]]]] := composite[CROSS,cross[x,Id]] (* added 2000 September 7 based on CUT.NB *) composite[CROSS,cross[IMAGE[id[cart[V,V]]],x_]] := composite[CROSS,cross[Id,x]] (* added 1999 November 28 based on CROSS-1.NB *) composite[CROSS,cross[IMAGE[id[cart[V,V]]],IMAGE[id[cart[V,V]]]]] := CROSS (* added 1999 October 17 based on CROSS.2 *) composite[CROSS,cross[SINGLETON,SINGLETON]] := union[ cart[union[cart[V,complement[cart[V,V]]],cart[complement[cart[V,V]],V]], set[0]],composite[SINGLETON,TWIST]] (* Theorem X-DUP-1 in X1 proved 1998 November 29 *) composite[cross[x_,y_],DUP] := intersection[composite[inverse[FIRST],x], composite[inverse[SECOND],y]] (* added 2000 September 1 based on SESSION1 *) composite[cross[x_,FIRST],ASSOC] := composite[cross[x,Id],FIRST] (* added 2001 January 20 based on COMBINAT.NB *) composite[cross[FIRST,FIRST], id[composite[inverse[SECOND],SECOND]]] := composite[RIF,cross[SWAP,Id]] (* added 2001 February 8 based on TWIST-4.NB *) composite[cross[FIRST,FIRST],id[x_], cross[inverse[SECOND],inverse[SECOND]]] := inverse[twist[x]] (* derived 2004 May 9 in OOPART.NB *) composite[cross[FIRST,FIRST],id[SWAP]] := composite[FIRST,id[SWAP]] (* added 2003 August 10 based on RODIRECT.NB *) composite[cross[FIRST,FIRST],TWIST] := composite[FIRST,id[cart[cart[V,V],cart[V,V]]]] (* added 2002 June 25 based on ASSOC.NB *) composite[cross[FIRST,Id],id[composite[inverse[FIRST],SECOND]], cross[Id,inverse[SECOND]]] := ASSOC (* derived 2008 October 19 in I-ASS-X.NB *) composite[cross[FIRST,Id],id[SECOND]] := composite[FIRST,id[SECOND]] (* added 2000 September 1 based on SESSION1 *) composite[cross[FIRST,x_],inverse[ASSOC]] := cross[Id,composite[x,SECOND]] (* added 2007 based on RIF-IN.NB *) composite[cross[x_,FIRST],inverse[RIF]] := cross[composite[x,inverse[SECOND]],Id] (* added 2002 June 7 based on RIF.NB *) composite[cross[FIRST,x_],inverse[RIF]] := composite[SWAP,inverse[rotate[composite[x,SWAP]]],SECOND] (* added 2000 September 1 based on SESSION1 *) composite[cross[FIRST,x_],inverse[ROT]] := composite[SWAP,cross[x,Id],FIRST] (* added 2000 September 1 based on SESSION1 *) composite[cross[FIRST,x_],ROT] := composite[SWAP,cross[composite[x,SECOND],Id]] (* added 2002 December 28 based on REPLACE.NB *) composite[cross[FIRST,SECOND],id[composite[inverse[FIRST],SECOND]]] := composite[RIF,cross[SWAP,SWAP]] (* added 2001 February 8 based on TWIST-4.NB *) composite[cross[FIRST,SECOND],id[x_], cross[inverse[SECOND],inverse[FIRST]]] := twist[composite[x,SWAP]] (* added 2003 July 20 based on DIRECT12.NB *) composite[cross[FIRST,SECOND],TWIST] := cross[FIRST,SECOND] (* derived 2004 January 4 in VS-IMIN.NB *) composite[cross[Id,BIGCUP],DORA,VS] := DORA (* Theorem X-CO-4 in X3 proved 2000 August 1 *) composite[cross[u_,v_],id[cart[x_,y_]]] := cross[composite[u,id[x]],composite[v,id[y]]] (* added 2003 July 17 based on DIR-PROD.NB *) composite[cross[x_,id[cart[V,V]]],TWIST] := composite[cross[x,Id],TWIST] (* added 2003 July 17 based on DIR-PROD.NB *) composite[cross[id[cart[V,V]],x_],TWIST] := composite[cross[Id,x],TWIST] (* added 1999 October 9 based on CROSS.2 *) composite[CROSS,id[cart[V,V]]] := CROSS (* discovered 1998 October 17 *) composite[cross[x_,y_],id[complement[cart[u_,v_]]]] := union[cross[x,composite[y,id[complement[v]]]],cross[composite[x,id[complement[u]]],y]] (* added 1998 September 6 *) composite[cross[x_,y_],id[Id]] := composite[intersection[composite[inverse[FIRST],x],composite[inverse[SECOND],y]],inverse[DUP]] (* derived 2004 November 23 in A8-AXCH.NB *) composite[cross[x_,y_],id[id[z_]]] := composite[intersection[composite[inverse[FIRST],x],composite[inverse[SECOND],y]],id[z],inverse[DUP]] (* derived 2008 October 19 in I-ASS-X.NB *) composite[cross[Id,inverse[DUP]],ASSOC] := composite[FIRST,id[SECOND]] (* added 1999 October 14 based on X-ID-CO.1 *) composite[cross[x_,y_],id[z_],inverse[FIRST]] := intersection[composite[inverse[FIRST],x],composite[inverse[SECOND],y,z]] (* added 1999 October 14 based on X-ID-CO.1 *) composite[cross[x_,y_],id[z_],inverse[SECOND]] := intersection[composite[inverse[SECOND],y],composite[inverse[FIRST],x,inverse[z]]] (* added 2003 June 11 based on VS.NB *) composite[cross[Id,inverse[SINGLETON]], inverse[rotate[composite[IMG,SWAP]]]] := union[composite[inverse[E],IMAGE[SWAP],VS], composite[LEFT[0],complement[inverse[E]],IMAGE[FIRST]]] (* derived 2006 October 31 in REPLACE.NB *) composite[cross[Id,inverse[SINGLETON]], inverse[rotate[composite[inverse[SINGLETON],IMG,SWAP]]]] := composite[inverse[E],INVERSE,FUNPART] (* added 2002 May 20 based on ITER-X.NB *) composite[cross[x_,Id],iterate[cross[Id,y_],z_]] := iterate[cross[Id,y],composite[z,inverse[x]]] (* added 2002 May 20 based on ITER-X.NB *) composite[cross[Id,x_],iterate[cross[y_,Id],z_]] := iterate[cross[y,Id],composite[x,z]] (* derived 2008 October 19 in I-ASS-X.NB *) composite[cross[Id,SECOND],id[inverse[FIRST]]] := composite[SECOND,id[inverse[FIRST]]] (* added 1999 December 15 based on PILFRULE.NB *) composite[cross[Id,SWAP],ASSOC] := composite[SWAP,ROT,cross[SWAP,Id]] (* added 1999 November 13 based on CARTDORA.NB *) composite[cross[u_,v_],intersection[composite[inverse[FIRST],x_], composite[inverse[SECOND],y_]]] := intersection[composite[inverse[FIRST],u,x],composite[inverse[SECOND],v,y]] (* added 2003 July 20 based on DIRECT12.NB *) composite[cross[inverse[DUP],inverse[DUP]],TWIST] := composite[id[cart[V,V]],inverse[DUP]] (* added 2000 December 9 based on REPLACE.NB *) composite[cross[x_,y_],inverse[E],IMAGE[id[cart[V,V]]]] := composite[cross[x,y],inverse[E]] (* Theorem X-1ST-IN in X3 proved 2000 August 2 *) composite[cross[x_,y_],inverse[FIRST]] := composite[id[cart[V,range[y]]],inverse[FIRST],x] (* added 2002 May 22 based on INVERSE.NB *) composite[cross[inverse[x_],Id],power[x_]] := composite[cross[Id,x],power[x]] (* Theorem X-2ND-IN in X3 proved 2000 August 2 *) composite[cross[x_,y_],inverse[SECOND]] := composite[id[cart[range[x],V]],inverse[SECOND],y] (* derived 2008 July 29 in FUNAPPLY.NB *) composite[cross[inverse[SINGLETON],inverse[SINGLETON]],inverse[rotate[composite[IMG,SWAP]]]] := composite[inverse[E],INVERSE,FUNPART] (* revised 1999 December 19 based on REVISED.NB *) composite[CROSS,LEFT[x_]] := composite[IMAGE[composite[id[composite[inverse[FIRST],x,FIRST]], cross[inverse[SECOND],inverse[SECOND]]]], id[image[V,set[x]]]] (* added 1999 November 4 based on X-CURRY.LOG *) composite[cross[x_,y_],LEFT[z_]] := composite[id[cart[image[x,set[z]],V]],inverse[SECOND],y] (* added 2002 May 21 based on RIF.NB *) composite[cross[x_,y_],RIF] := composite[RIF,cross[cross[Id,x],cross[y,Id]]] (* revised 1999 December 19 based on REVISED.NB *) composite[CROSS,RIGHT[x_]] := composite[IMAGE[composite[id[composite[inverse[SECOND],x,SECOND]], cross[inverse[FIRST],inverse[FIRST]]]], id[image[V,set[x]]]] (* added 1999 November 4 based on X-CURRY.LOG *) composite[cross[x_,y_],RIGHT[z_]] := composite[id[cart[V,image[y,set[z]]]],inverse[FIRST],x] (* added 2002 December 23 based on EQDF.NB *) composite[cross[rotate[NATADD],inverse[power[SUCC]]],inverse[RIF]] := composite[SWAP,EQUIDIFF] (* added 2002 December 23 based on RIF-TW.NB *) composite[cross[rotate[NATADD],NATADD],inverse[RIF]] := composite[SWAP,inverse[rotate[NATADD]],NATADD] (* added 2002 December 23 based on RIF-TW.NB *) composite[cross[rotate[NATADD],rotate[NATADD]],inverse[RIF]] := composite[inverse[NATADD],rotate[NATADD],SWAP] (* added 2002 December 23 based on RIF-TW.NB *) composite[cross[rotate[NATADD],composite[rotate[NATADD],SWAP]],inverse[RIF]] := composite[SWAP,EQUIDIFF] (* added 2001 December 23 based on DORA-1.NB *) composite[cross[S,S],DORA] := composite[inverse[CART],S,IMAGE[id[cart[V,V]]]] (* added 2000 September 1 based on SESSION1 *) composite[cross[x_,SECOND],ASSOC] := cross[composite[x,FIRST],Id] (* added 2001 January 20 based on RIF-2.NB *) composite[cross[SECOND,FIRST], id[composite[inverse[SECOND],FIRST]]] := RIF (* added 2001 February 8 based on TWIST-4.NB *) composite[cross[SECOND,FIRST],id[x_], cross[inverse[FIRST],inverse[SECOND]]] := twist[composite[SWAP,x]] (* added 2003 July 20 based on DIRECT12.NB *) composite[cross[SECOND,FIRST],TWIST] := composite[SWAP,cross[SECOND,FIRST]] (* added 2000 September 1 based on SESSION1 *) composite[cross[SECOND,x_],inverse[ASSOC]] := composite[cross[Id,x],SECOND] (* added 2007 based on RIF-IN.NB *) composite[cross[SECOND,x_],inverse[RIF]] := cross[Id,composite[x,inverse[FIRST]]] (* added 2002 June 7 based on RIF.NB *) composite[cross[x_,SECOND],inverse[RIF]] := composite[inverse[rotate[x]],FIRST] (* added 2000 September 1 based on SESSION1 *) composite[cross[SECOND,x_],inverse[ROT]] := composite[SWAP,cross[composite[x,FIRST],Id]] (* added 2000 September 1 based on SESSION1 *) composite[cross[SECOND,x_],ROT] := composite[cross[Id,x],FIRST] (* added 2001 January 20 based on COMBINAT.NB *) composite[cross[SECOND,SECOND], id[composite[inverse[FIRST],FIRST]]] := composite[RIF,cross[Id,SWAP]] (* added 2001 January 18 in TWIST-1.NB *) composite[cross[SECOND,SECOND],id[x_], cross[inverse[FIRST],inverse[FIRST]]] := twist[x] (* added 2003 August 10 based on RODIRECT.NB *) composite[cross[SECOND,SECOND],TWIST] := composite[SECOND,id[cart[cart[V,V],cart[V,V]]]] (* Theorem X-SW-1C in X1 proved 1999 September 11 *) composite[cross[x_,y_],SWAP] := composite[SWAP,cross[y,x]] (* added 1999 December 15 based on PILFRULE.NB *) composite[cross[SWAP,Id],inverse[ASSOC]] := composite[inverse[ROT],SWAP,cross[Id,SWAP]] (* added 1999 November 4 based on 1999/NOV/03/WORK/FLIP-ROT.2 *) composite[cross[SWAP,Id],inverse[ROT]] := composite[ROT,cross[SWAP,Id]] (* added 1999 December 15 based on PERMUTE.NB *) composite[cross[SWAP,Id],ROT] := composite[inverse[ROT],cross[SWAP,Id]] (* added 2002 December 30 based on 9-TWIST.NB *) composite[cross[TWIST,TWIST],TWIST,cross[TWIST,TWIST]] := composite[TWIST,cross[TWIST,TWIST],TWIST] (* derived 2003 December 26 in DISTRIB.NB *) composite[CUP,cross[CAP,CAP],TWIST,cross[DUP,Id]] := composite[CAP,cross[Id,CUP]] (* derived 2003 December 26 in DISTRIB.NB *) composite[CUP,cross[CAP,CAP],TWIST,cross[Id,DUP]] := composite[CAP,cross[CUP,Id]] (* derived 2003 December 27 in DISTRBIN.NB *) composite[CUP,cross[CART,CART],TWIST,cross[DUP,Id]] := composite[CART,cross[Id,CUP]] (* derived 2003 December 27 in DISTRBIN.NB *) composite[CUP,cross[CART,CART],TWIST,cross[Id,DUP]] := composite[CART,cross[CUP,Id]] (* derived 2003 December 27 in DISTRBIN.NB *) composite[CUP,cross[COMPOSE,COMPOSE],TWIST,cross[DUP,Id]] := composite[COMPOSE,cross[Id,CUP]] (* derived 2003 December 27 in DISTRBIN.NB *) composite[CUP,cross[COMPOSE,COMPOSE],TWIST,cross[Id,DUP]] := composite[COMPOSE,cross[CUP,Id]] (* added 2002 January 19 based on PO.NB *) composite[CUP,cross[composite[SINGLETON,x_],composite[SINGLETON,y_]]] := composite[PAIRSET,cross[x,y]] (* derived 2004 February 17 in AX-PRS.NB *) composite[CUP,cross[composite[SINGLETON,x_],SINGLETON]] := composite[PAIRSET,cross[x,Id]] (* derived 2003 December 27 in DISTRBIN.NB *) composite[CUP,cross[CROSS,CROSS],TWIST,cross[DUP,Id]] := composite[CROSS,cross[Id,CUP]] (* derived 2003 December 27 in DISTRBIN.NB *) composite[CUP,cross[CROSS,CROSS],TWIST,cross[Id,DUP]] := composite[CROSS,cross[CUP,Id]] (* added 2000 September 20 based on KELLEY4A.LOG *) composite[CUP,cross[CUP,Id],inverse[ASSOC]] := composite[CUP,cross[Id,CUP]] (* added 2000 September 21 based on PERMS1.NB *) composite[CUP,cross[CUP,Id],inverse[ROT]] := composite[CUP,cross[CUP,Id]] (* added 2000 September 20 based on KELLEY4A.LOG *) composite[CUP,cross[CUP,Id],ROT] := composite[CUP,cross[CUP,Id]] (* derived 2003 December 26 in DISTRIB.NB *) composite[CUP,cross[DIF,DIF],TWIST,cross[DUP,Id]] := composite[DIF,cross[Id,CAP]] (* added 1999 November 16 based on DISJOINT.NB *) composite[CUP,cross[DISJOINT,DISJOINT]] := composite[DISJOINT,CAP] (* added 1999 November 3 based on ASS-DIF.TXT *) composite[CUP,cross[Id,CUP],ASSOC] := composite[CUP,cross[CUP,Id]] (* derived 2003 December 27 in DISTRBIN.NB *) composite[CUP,cross[IMG,IMG],TWIST,cross[DUP,Id]] := composite[IMG,cross[Id,CUP]] (* derived 2003 December 27 in DISTRBIN.NB *) composite[CUP,cross[IMG,IMG],TWIST,cross[Id,DUP]] := composite[IMG,cross[CUP,Id]] (* added 1999 November 16 based on CAP-CUP.NB *) composite[CUP,cross[inverse[S],inverse[S]]] := composite[inverse[S],CUP] (* derived 2004 February 17 in AX-PRS.NB *) composite[CUP,cross[SINGLETON,composite[SINGLETON,x_]]] := composite[PAIRSET,cross[Id,x]] (* added 1999 October 2 based on PAIRSET.9 *) composite[CUP,cross[SINGLETON,SINGLETON]] := PAIRSET (* Theorem CUP-DUP2 in CUP proved 1999 August 12 *) composite[CUP,DUP] := Id (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[ACLOSURE]] := composite[SECOND,id[ACLOSURE]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[ADJOIN[x_]]] := composite[SECOND,id[ADJOIN[x]]] (* discovered 1999 December 16 in CUP.NB *) composite[CUP,id[cart[x_,set[y_]]]] := composite[ADJOIN[y],id[x],inverse[RIGHT[y]]] (* discovered 1999 December 16 in CUP.NB *) composite[CUP,id[cart[set[x_],y_]]] := composite[ADJOIN[x],id[y],inverse[LEFT[x]]] (* added 2001 March 9 based on BC-IMG.TXT *) composite[CUP,id[BIGCUP],inverse[FIRST]] := composite[BIGCUP,IMAGE[SUCC]] (* derived 2006 July 1 in BIN-MAP.NB *) composite[CUP,id[cart[P[x_],P[x_]]]] := composite[id[P[x]],CUP] (* derived 2004 March 23 in TRV-K.NB *) composite[CUP,id[cart[V,FINITE]],inverse[FIRST]] := union[Id,trv[K]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[cart[x_,V]],inverse[FIRST]] := composite[S,id[x]] (* derived 2004 March 23 in TRV-K.NB *) composite[CUP,id[cart[V,x_]],inverse[FIRST],CUP] := composite[CUP, cross[Id,composite[CUP,id[cart[V,x]],inverse[FIRST]]]] (* added 2003 November 28 based on FIN-IND.NB *) composite[CUP,id[cart[V,range[SINGLETON]]],inverse[FIRST]] := union[K,id[complement[set[0]]]] (* derived 2004 March 23 in TRV-K.NB *) composite[CUP,id[cart[V,union[range[SINGLETON],set[0]]]],inverse[FIRST]] := union[Id,K] (* added 2002 October 22 based on CO-ID.NB *) composite[CUP,id[cart[V,V]]] := CUP (* added 1999 November 3 based on ASS-DIF.TXT *) composite[CUP,id[complement[cart[V,V]]]] := 0 (* added 2000 October 26 based on TC-4.NB *) composite[CUP,id[composite[BIGCUP,TC]],inverse[FIRST]] := TC (* added 2003 September 24 based on PO-FACTS.NB *) composite[CUP,id[composite[CUP,cross[IMAGE[DUP],IMAGE[DUP]],DORA,id[P[cart[V,V]]]]],inverse[FIRST]] := HULL[RFX] (* added 2003 December 9 based on ITER-K.NB *) composite[CUP,id[composite[id[range[SINGLETON]],DISJOINT]],inverse[FIRST]] := K (* added 2002 May 24 based on ADJOIN.NB *) composite[CUP,id[composite[SINGLETON,id[x_]]],inverse[FIRST]] := composite[SUCC,id[x]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[CORE[x_]]] := composite[FIRST,id[CORE[x]]] (* added 2000 June 2 based on DJ-U.NB *) composite[CUP,id[DISJOINT],inverse[FIRST]] := S (* added 2000 June 2 based on DJ-U.NB *) composite[CUP,id[DISJOINT],inverse[SECOND]] := S (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[HC]] := composite[FIRST,id[HC]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[HULL[x_]]] := composite[SECOND,id[HULL[x]]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[Id]] := inverse[DUP] (* derived 2004 June 6 in EQV-TRV.NB *) composite[CUP,id[IMAGE[eqv[x_]]],inverse[FIRST]] := HULL[invar[eqv[x]]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[IMAGE[id[x_]]]] := composite[FIRST,id[IMAGE[id[x]]]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[IMAGE[inverse[S]]]] := composite[SECOND,id[IMAGE[inverse[S]]]] (* derived 2004 June 15 in HULIVRSW.NB *) composite[CUP,id[IMAGE[SWAP]],inverse[FIRST]] := HULL[invar[SWAP]] (* derived 2004 June 6 in EQV-TRV.NB *) composite[CUP,id[IMAGE[trv[x_]]],inverse[FIRST]] := HULL[invar[x]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[inverse[CORE[x_]]]] := composite[SECOND,id[inverse[CORE[x]]]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[inverse[HC]]] := composite[SECOND,id[inverse[HC]]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[inverse[IMAGE[id[x_]]]]] := composite[SECOND,id[inverse[IMAGE[id[x]]]]] (* added 2003 November 6 based on HULL-EQV.NB *) composite[CUP,id[INVERSE],inverse[FIRST]] := HULL[SYM] (* added 1999 December 6 based on RESTRICT.NB *) composite[CUP,id[inverse[S]]] := composite[FIRST,id[inverse[S]]] (* added 2001 March 1 based on CAP-2ND.NB *) composite[CUP,id[x_],inverse[SECOND]] := composite[CUP,id[inverse[x]],inverse[FIRST]] (* added 1999 November 17 based on NEWRULES.1 *) composite[CUP,id[S]] := composite[SECOND,id[S]] (* added 2001 August 5 based on RK-U.NB *) composite[CUP,id[SINGLETON],inverse[FIRST]] := SUCC (* added 2001 August 5 based on RK-U.NB *) composite[CUP,id[SUCC],inverse[FIRST]] := SUCC (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[TC]] := composite[SECOND,id[TC]] (* derived 2004 May 11 in CAP-CORE.NB *) composite[CUP,id[UCLOSURE]] := composite[SECOND,id[UCLOSURE]] (* added 1999 December 7 based on BUILD-DJ.NB *) composite[CUP,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],CUP]]] := CUP (* added 1999 December 7 based on BUILD-DJ.NB *) composite[CUP,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],DIF]]] := FIRST (* added 1999 December 7 based on BUILD-DJ.NB *) composite[CUP,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],FIRST]]] := FIRST (* added 1999 December 7 based on BUILD-DJ.NB *) composite[CUP,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],SECOND]]] := SECOND (* added 1999 December 7 based on BUILD-DJ.NB *) composite[CUP,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],SYMDIF]]] := CUP (* added 2003 September 4 based on IDEMCORE.NB *) composite[CUP,intersection[composite[inverse[FIRST],CORE[x_]], composite[inverse[SECOND],CORE[y_]]]] := CORE[union[x,y]] (* added 1999 December 7 based on BUILD-DJ.NB *) composite[CUP,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],CUP]]] := CUP (* added 1999 December 2 based on SYMDIF-2.NB *) composite[CUP,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],DIF,SWAP]]] := SYMDIF (* added 1999 December 7 based on BUILD-DJ.NB *) composite[CUP,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],FIRST]]] := FIRST (* added 1999 December 7 based on BUILD-DJ.NB *) composite[CUP,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],SECOND]]] := CUP (* added 1999 December 7 based on BUILD-DJ.NB *) composite[CUP,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],SYMDIF]]] := SYMDIF (* added 1999 December 7 based on BUILD-1.NB *) composite[CUP,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],CUP]]] := CUP (* added 1999 December 7 based on BUILD-1.NB *) composite[CUP,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],DIF]]] := FIRST (* added 1999 December 7 based on BUILD-DJ.NB *) composite[CUP,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],SYMDIF]]] := CUP (* added 2003 September 4 based on IDEMCORE.NB *) composite[CUP,intersection[composite[inverse[FIRST],IMAGE[id[x_]]], composite[inverse[SECOND],IMAGE[id[y_]]]]] := IMAGE[id[union[x,y]]] (* derived 2006 August 22 in CHAR.NB *) composite[CUP,intersection[composite[inverse[FIRST],IMAGE[RIGHT[set[0]]]], composite[inverse[SECOND],IMAGE[RIGHT[0]],RC[x_]]]] := CHAR[x] (* added 1999 December 7 based on BUILD-1.NB *) composite[CUP,intersection[composite[inverse[FIRST],SECOND], composite[inverse[SECOND],DIF]]] := CUP (* added 1999 December 7 based on BUILD-DJ.NB *) composite[CUP,intersection[composite[inverse[FIRST],SECOND], composite[inverse[SECOND],SYMDIF]]] := CUP (* added 2002 January 10 based on PAIRSET.NB *) composite[CUP,intersection[composite[inverse[FIRST],SINGLETON,x_], composite[inverse[SECOND],SINGLETON,y_]]] := composite[PAIRSET, intersection[composite[inverse[FIRST],x],composite[inverse[SECOND],y]]] (* derived 2007 December 23 in HULL-IVR.NB *) composite[CUP,intersection[composite[inverse[FIRST],SINGLETON], composite[inverse[SECOND],TC]]] := composite[TC,SINGLETON] (* derived 2007 December 23 in HULL-IVR.NB *) composite[CUP,intersection[composite[inverse[FIRST],SINGLETON], composite[inverse[SECOND],VERTSECT[trv[thinpart[x_]]]]]] := composite[HULL[invar[thinpart[x]]],SINGLETON] (* added 1999 December 7 based on BUILD-1.NB *) composite[CUP,intersection[composite[inverse[FIRST],SYMDIF], composite[inverse[SECOND],DIF]]] := SYMDIF (* derived 2006 August 22 in CHAR.NB *) composite[CUP,intersection[composite[inverse[SECOND],IMAGE[RIGHT[set[0]]]], composite[inverse[FIRST],IMAGE[RIGHT[0]],RC[x_]]]] := CHAR[x] (* definition of JOIN introduced 2008 October 21 in JOIN.NB *) composite[CUP,intersection[composite[inverse[SECOND],SECOND],composite[inverse[FIRST],COMPOSE, cross[Id,composite[INVERSE,PLUS,IMAGE[FIRST]]]]],SWAP,id[cart[LISTS,LISTS]]] := JOIN (* Theorem CAPCUP-2 in CAP proved 2000 July 24 *) composite[CUP,inverse[CAP]] := S (* added 1999 October 5 based on CUP-1-2.LOG *) composite[CUP,inverse[FIRST]] := S (* added 2001 November 11 based on PAIRSET.NB *) composite[CUP,inverse[PAIRSET]] := composite[BIGCUP,id[range[PAIRSET]]] (* added 1999 October 5 based on CUP-1-2.LOG *) composite[CUP,inverse[SECOND]] := S (* added 1999 September 23 based on ADJOIN-1.LOG and CART-LOG.1 *) composite[CUP,LEFT[x_]] := ADJOIN[x] (* added 1999 September 23 based on ADJOIN-1.LOG *) composite[CUP,RIGHT[x_]] := ADJOIN[x] (* Theorem CUP-SW in CUP proved 1999 September 23 *) composite[CUP,SWAP] := CUP (* Theorem DI-C-E in DI proved 1998 December 16 *) composite[Di,complement[E]] := cart[V,V] (* derived 2004 June 12 based on X1196.NB *) composite[Di,complement[funpart[x_]]] := cart[V,V] (* Theorem E-C-DI-1 proved 1998 November 11 *) composite[Di,complement[inverse[E]]] := cart[V,V] (* Theorem SR-C-DI2 in SR-C proved 1998 December 16 *) composite[Di,complement[inverse[S]]] := cart[V,V] (* added 2000 May 25 based on K.NB *) composite[Di,complement[K]] := cart[V,V] (* 1998 August 25 *) composite[Di,complement[S]] := cart[complement[set[0]],V] (* Theorem SP-DI-DI in SP3 proved 1998 November 11 *) composite[Di,Di] := cart[V,V] (* Theorem SP-DJT-1 in SP3 proved 1998 September 3 *) composite[Di,DISJOINT] := cart[V,V] (* added 2004 July 14 based on X2530-41.NB *) composite[Di,DUP] := union[cart[V,union[Di,complement[cart[V,V]]]],composite[DUP,Di]] (* Theorem SP-DI-E in SP2 proved 1998 November 11 *) composite[Di,E] := cart[V,V] (* added 2002 April 10 based on INVAR.NB *) composite[Di,INVAR] := cart[V,V] (* added 1998 July 2 *) composite[Di,inverse[E]] := composite[inverse[SINGLETON],Di,id[complement[set[0]]]] (* added 1998 September 24 *) composite[Di,inverse[S]] := union[cart[V,complement[set[0]]],cart[complement[set[0]],V]] (* added 1999 August 31 based on 12-CO-DI *) composite[Di,inverse[FIRST]] := cart[V,V] (* added 1999 August 31 based on 12-CO-DI *) composite[Di,inverse[SECOND]] := cart[V,V] (* added 2001 July 15 based on FUNPART.NB *) composite[Di,inverse[ZN]] := cart[V,V] (* added 2000 May 24 based on K.NB *) composite[Di,K] := cart[V,V] (* 1998 August 25 *) composite[Di,PS] := cart[V,V] (* added 2001 July 15 based on FUNPART.NB *) composite[Di,Q] := union[cart[V,complement[set[0]]], cart[complement[set[0]],V]] (* Theorem PS-DI-SR in PS1 proved 1998 August 25 *) composite[Di,S] := cart[V,V] (* added 2000 September 5 based on CART-DIF.NB *) composite[DIF,cross[CART,CART],TWIST,cross[Id,DUP]] := composite[CART,cross[DIF,Id]] (* added 2000 September 5 based on CART-DIF.NB *) composite[DIF,cross[CART,CART],TWIST,cross[DUP,Id]] := composite[CART,cross[Id,DIF]] (* added 1999 November 3 based on ASS-DIF.TXT *) composite[DIF,cross[Id,CUP],ASSOC] := composite[DIF,cross[DIF,Id]] (* added 2002 December 23 based on REPLACE.NB *) composite[DIF,cross[Id,DIF],ASSOC] := composite[CUP, intersection[composite[inverse[FIRST],CAP,cross[FIRST,Id]], composite[inverse[SECOND],DIF,FIRST]]] (* added 1999 November 16 based on DIF.NB *) composite[DIF,cross[inverse[S],S]] := composite[inverse[S],DIF] (* added 1999 October 26 based on DIF-LOG.1 *) composite[DIF,DUP] := cart[V,set[0]] (* discovered 1999 December 16 in DIF.NB *) composite[DIF,id[cart[set[x_],y_]]] := composite[RC[x],IMAGE[id[x]],id[y],inverse[LEFT[x]]] (* discovered 1999 December 16 in DIF.NB *) composite[DIF,id[cart[x_,set[y_]]]] := composite[IMAGE[id[complement[y]]],id[x],inverse[RIGHT[y]]] (* added 1999 October 26 based on DIF-LOG.1 *) composite[DIF,id[cart[V,V]]] := DIF (* added 1999 October 26 based on DIF-LOG.2 ad hoc rule *) composite[DIF,id[complement[cart[V,V]]]] := 0 (* added 1999 December 7 based on RESTRICT.NB *) composite[DIF,id[DISJOINT]] := composite[FIRST,id[DISJOINT]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,id[Id]] := cart[Id,set[0]] (* derived 2006 November 14 in MINGLI.NB *) composite[DIF,id[inverse[S]],inverse[FIRST]] := inverse[S] (* derived 2006 November 14 in MINGLI.NB *) composite[DIF,id[inverse[S]],inverse[SECOND]] := DISJOINT (* added 1999 November 17 based on NEWRULES.1 *) composite[DIF,id[S]] := cart[S,set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],CUP]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],DIF]]] := CAP (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],FIRST]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],SECOND]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],SYMDIF]]] := CAP (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],CUP], composite[inverse[SECOND],CAP]]] := SYMDIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],CUP], composite[inverse[SECOND],DIF]]] := SECOND (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],CUP], composite[inverse[SECOND],FIRST]]] := composite[DIF,SWAP] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],CUP], composite[inverse[SECOND],SECOND]]] := DIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],CUP], composite[inverse[SECOND],SYMDIF]]] := CAP (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],CAP]]] := DIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],CUP]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],DIF,SWAP]]] := DIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],FIRST]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],SECOND]]] := DIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],SYMDIF]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],DIF,SWAP], composite[inverse[SECOND],DIF]]] := composite[DIF,SWAP] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],CAP]]] := DIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],CUP]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],DIF]]] := CAP (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],SYMDIF]]] := CAP (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],SECOND], composite[inverse[SECOND],CAP]]] := composite[DIF,SWAP] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],SECOND], composite[inverse[SECOND],CUP]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],SECOND], composite[inverse[SECOND],DIF]]] := SECOND (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],SECOND], composite[inverse[SECOND],SYMDIF]]] := CAP (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],SYMDIF], composite[inverse[SECOND],CAP]]] := SYMDIF (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],SYMDIF], composite[inverse[SECOND],CUP]]] := cart[cart[V,V],set[0]] (* added 1999 December 8 based on BUILDALL.TXT *) composite[DIF,intersection[composite[inverse[FIRST],SYMDIF], composite[inverse[SECOND],DIF]]] := composite[DIF,SWAP] (* added 1999 October 28 based on MOREDIF1.NB *) composite[DIF,inverse[FIRST]] := inverse[S] (* added 1999 October 28 based on MOREDIF1.NB *) composite[DIF,inverse[SECOND]] := DISJOINT (* added 1999 October 31 based on RC-DIF.NB *) composite[DIF,LEFT[x_]] := composite[RC[x],IMAGE[id[x]]] (* revised 1999 December 19 based on REVISED.NB *) composite[DIF,RIGHT[x_]] := composite[IMAGE[id[complement[x]]], id[image[V,set[x]]]] (* added 1999 December 7 based on RESTRICT.NB *) composite[DIF,SWAP,id[DISJOINT]] := composite[SECOND,id[DISJOINT]] (* added 1999 December 6 based on RESTRICT.NB *) composite[DIF,SWAP,id[inverse[S]]] := cart[inverse[S],set[0]] (* added 2000 September 26 based on VS-1.LOG *) composite[DISJOINT,x_] := cart[V,V] /; cond && thin[complement[x]] (* added 2003 October 21 based on COMMUTE.NB *) composite[DISJOINT,COMMUTE] := cart[V,V] (* Theorem DJT-E-C in DJT *) composite[DISJOINT,complement[E]] := cart[V,V] (* added 1999 October 23 based on E-CO-DJT *) composite[DISJOINT,complement[inverse[E]]] := cart[V,V] (* added August 23 based on ASSOC-2.LOG *) composite[DISJOINT,complement[inverse[S]]] := cart[V,V] (* added 2000 December 16 based on Q-CA.NB *) composite[DISJOINT,complement[Q]] := cart[V,V] (* Theorem DJT-SR-C in DJT proved 1998 August 6 *) composite[DISJOINT,complement[S]] := cart[complement[set[0]],V] (* added 2000 January 2 based on DC.NB *) composite[DISJOINT,COMPOSE,inverse[FIRST]] := cart[V,V] (* added 2000 January 2 based on DC.NB *) composite[DISJOINT,COMPOSE,inverse[SECOND]] := cart[V,V] (* Theorem SP-DJT-2 in SP3 proved 1998 September 3 *) composite[DISJOINT,Di] := cart[V,V] (* Theorem DJT-DJT in DJT *) composite[DISJOINT,DISJOINT] := cart[V,V] (* Theorem DJT-CO-E in DJT proved 1998 August 23 *) composite[DISJOINT,E] := composite[Id,complement[E]] (* added 1999 December 19 based on DISJOINT.NB *) composite[DISJOINT,id[P[x_]],DISJOINT] := cart[V,V] (* added 2003 June 18 based on CUT-CORE.NB *) composite[DISJOINT,id[P[x_]],E] := composite[complement[E],id[x]] (* added 1999 December 19 based on DISJOINT.NB *) composite[DISJOINT,id[P[x_]],S]:= composite[DISJOINT,id[P[x]]] (* derived 2003 December 30 in T2.NB *) composite[DISJOINT,id[Uclosure[x_]],E] := composite[DISJOINT,id[x],E] (* added 1999 December 19 based on DISJOINT.NB *) composite[DISJOINT,IMAGE[id[x_]],S] := composite[DISJOINT,IMAGE[id[x]]] (* added 1999 November 13 based on ANTISYMM.NB *) composite[DISJOINT,IMAGE[id[union[x_,complement[cart[V,V]]]]]]:= intersection[composite[DISJOINT,IMAGE[id[x]]], composite[DISJOINT,IMAGE[id[complement[cart[V,V]]]]]] (* derived 2004 January 25 in GT-LT-CO.NB *) composite[DISJOINT,inverse[GREATEST[x_]]] := composite[complement[E],id[fix[x]]] (* added 1999 December 19 based on DISJOINT.NB *) composite[DISJOINT,inverse[IMAGE[id[x_]]]] := composite[DISJOINT,id[P[x]]] (* derived 2004 January 25 in GT-LT-CO.NB *) composite[DISJOINT,inverse[LEAST[x_]]] := composite[complement[E],id[fix[x]]] (* inverse of Theorem DJT-CO-S in DJT *) composite[DISJOINT,inverse[S]] := cart[V,V] (* derived 2004 December 22 in UCL-COMT.NB *) composite[DISJOINT,LB[LB[x_]]] := cart[V,V] (* derived 2004 December 22 in UCL-COMT.NB *) composite[DISJOINT,LB[UB[x_]]] := cart[V,V] (* Theorem Q-DJ-2 in Q proved 2000 May 12 *) composite[DISJOINT,Q] := cart[V,V] (* added 1999 December 19 based on RC-5.NB *) composite[DISJOINT,RC[x_]] := composite[inverse[IMAGE[id[x]]],inverse[S], id[intersection[image[V,set[x]],P[x]]]] (* Theorem DJT-SR-1 in DJT proved 1998 August 23 *) composite[DISJOINT,S] := DISJOINT (* Theorem SG-DJT-2 in SG1 proved 1998 September 4 *) composite[DISJOINT,SINGLETON] := composite[Id,complement[E]] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[DISJOINT,SUBCOMMUTE] := cart[V,V] (* derived 2005 January 29 in DIV.NB *) composite[DIV,complement[inverse[DIV]]] := composite[id[omega],complement[inverse[DIV]]] (* added 2002 August 30 based on DIVIDES.NB *) composite[DIV,DIV] := DIV (* derived 2005 May 3 in DIV-E.NB *) composite[DIV,E] := union[cart[omega,set[0]],composite[id[omega],E]] (* derived 2005 April 21 in FACT-DIV.NB *) composite[DIV,id[intersection[omega,x_]]] := composite[DIV,id[x]] (* added 2002 October 22 based on CO-ID.NB *) composite[DIV,id[omega]] := DIV (* derived 2005 January 29 in DIV.NB *) composite[DIV,inverse[DIV]] := cart[omega,omega] (* derived 2009 January 9 in COD-CAT.NB *) composite[dom[cat[x_]],cat[x_]] := composite[dom[cat[x]],SECOND,id[domain[cat[x]]]] (* derived 2009 January 21 in HOM.NB *) composite[dom[cat[x_]],inverse[cod[cat[x_]]]] := inverse[domain[hom[cat[x]]]] (* derived 2008 December 25 in COD-DOM.NB *) composite[dom[x_],cod[x_]] := cod[x] (* derived 2008 December 25 in COD-DOM.NB *) composite[dom[x_],dom[x_]] := dom[x] (* derived 2008 December 25 in COD-DOM.NB *) composite[dom[x_],id[ids[x_]]] := id[ids[x]] (* derived 2008 November 26 in SEMIGP.NB *) composite[domain[binop[x_]],y_] := cart[image[inverse[y],fix[domain[binop[x]]]],fix[domain[binop[x]]]] (* derived 2008 November 26 in SEMIGP.NB *) composite[w_,domain[binop[x_]]] := cart[fix[domain[binop[x]]],image[w,fix[domain[binop[x]]]]] (* derived 2009 January 9 in CAT-DO.NB *) composite[domain[cat[x_]],cod[cat[x_]]] := composite[inverse[cod[cat[x]]],cod[cat[x]]] (* derived 2009 January 9 in CAT-DO.NB *) composite[domain[cat[x_]],dom[cat[x_]]] := domain[cat[x]] (* derived 2009 January 9 in CAT-DO.NB *) composite[domain[cat[x_]],inverse[dom[cat[x_]]]] := inverse[cod[cat[x]]] (* derived 2009 January 9 in CAT-DO.NB *) composite[domain[cat[x_]],inverse[domain[cat[x_]]]] := composite[inverse[cod[cat[x]]],cod[cat[x]]] (* derived 2008 December 25 in COD-DOM.NB *) composite[domain[x_],id[ids[x_]]] := inverse[cod[x]] (* derived 2008 October 18 in CO-DO-QG.NB *) composite[domain[quasigp[x_]],y_] := cart[image[inverse[y],range[quasigp[x]]],range[quasigp[x]]] (* derived 2008 October 18 in CO-DO-QG.NB *) composite[x_,domain[quasigp[y_]]] := cart[range[quasigp[y]],image[x,range[quasigp[y]]]] (* derived 2008 November 26 in SEMIGP.NB *) composite[domain[semigp[x_]],y_] := cart[image[inverse[y],fix[domain[semigp[x]]]],fix[domain[semigp[x]]]] (* derived 2008 November 26 in SEMIGP.NB *) composite[w_,domain[semigp[x_]]] := cart[fix[domain[semigp[x]]],image[w,fix[domain[semigp[x]]]]] (* added 2001 December 18 based on DORA.NB *) composite[DORA,CART] := union[cart[union[cart[V,set[0]], cart[set[0],V]],cart[set[0],set[0]]], id[cart[complement[set[0]],complement[set[0]]]]] (* derived 2004 December 17 in RFX.NB *) composite[DORA,CORE[RFX]] := composite[DUP,IMAGE[inverse[DUP]]] (* derived 2005 January 6 in DJ-U-Q.NB *) composite[DORA,CUP] := composite[cross[CUP,CUP],TWIST,cross[DORA,DORA]] (* derived 2006 October 28 in DORA.NB *) composite[DORA,HULL[EQV]] := composite[DUP,IMAGE[inverse[DUP]],HULL[EQV]] (* derived 2006 October 28 in DORA.NB *) composite[DORA,HULL[TRV]] := composite[DORA,id[P[cart[V,V]]]] (* added 2001 December 19 based on REPLACE.NB *) composite[DORA,id[complement[set[0]]],CART] := id[cart[complement[set[0]],complement[set[0]]]] (* derived 2006 October 28 in DORA.NB *) composite[DORA,id[EQV]] := composite[DUP,IMAGE[inverse[DUP]],id[EQV]] (* derived 2005 August 7 in DORA-FIN.NB *) composite[DORA,id[intersection[BIJ,FINITE]]] := composite[id[cart[FINITE,FINITE]],DORA,id[BIJ]] (* derived 2006 October 28 in DORA.NB *) composite[DORA,id[RFX]] := composite[DUP,IMAGE[inverse[DUP]],id[RFX]] (* added 2001 December 19 based on DORA-CO.NB *) composite[DORA,IMAGE[DUP]] := DUP (* added 2001 December 19 based on DORA-CO.NB *) composite[DORA,IMAGE[id[cart[V,V]]]] := DORA (* added 2001 December 19 based on DORA-CO.NB *) composite[DORA,IMAGE[SWAP]] := composite[SWAP,DORA] (* derived 2006 October 28 in DORA.NB *) composite[DORA,INVERSE] := composite[SWAP,DORA,id[P[cart[V,V]]]] (* derived 2004 July 26 in IMAGDORA.NB *) composite[DORA,inverse[IMAGE[id[cart[V,V]]]]] := composite[DORA,id[P[cart[V,V]]]] (* derived 2006 October 28 in DORA.NB *) composite[DORA,LAMBHULL] := intersection[composite[inverse[FIRST],IMAGE[inverse[S]]], composite[inverse[SECOND],ACLOSURE]] (* added 2003 February 4 based on PLUS-Q.NB *) composite[DORA,PLUS] := composite[LEFT[omega],RC[omega],id[omega]] (* added 2002 February 4 based on RCF-NORM.NB *) composite[DORA,RCF] := composite[DUP,POWER] (* added 2001 December 19 based on DORA-CO.NB *) composite[DORA,SINGLETON] := union[cart[complement[cart[V,V]], cart[set[0],set[0]]],cross[SINGLETON,SINGLETON]] (* derived 2006 October 28 in DORA.NB *) composite[DORA,TIMES] := composite[LEFT[omega],VERTSECT[DIV],id[omega]] (* revised 2000 September 26 *) composite[E,x_] := composite[inverse[IMAGE[inverse[x]]],E] /; cond && thin[inverse[x]] (* Theorem BA-IN-E2 in BIGCAP/BA1 proved 1998 November 24 *) composite[E,complement[E]] := composite[inverse[BIGCAP],complement[E]] (* Theorem SR-C-CO1 in SR/C *) composite[E,complement[inverse[E]]] := composite[Id,complement[inverse[S]]] composite[E,complement[inverse[S]]] := composite[complement[inverse[S]],POWER] (* Theorem BA-SR-C1 in BIGCAP\BA1 proved 1998 December 8 *) composite[E,complement[S]] := composite[inverse[BIGCAP],complement[S]] (* added 1998 July 2 *) composite[E,Di] := composite[id[complement[set[0]]],Di,SINGLETON] (* Theorem BC-E-2 in BIGCUP/BC *) composite[E,E] := composite[inverse[BIGCUP],E] (* added 2001 February 6 based on ROT-2.NB *) composite[E,FIRST,intersection[x_,composite[inverse[SECOND],inverse[E]]]] := inverse[fix[composite[inverse[SECOND],inverse[x],inverse[E],CART]]] (* added 2001 February 6 based on ROT-2.NB *) composite[E,SECOND,intersection[x_,composite[inverse[FIRST],inverse[E]]]] := fix[composite[inverse[FIRST],inverse[x],inverse[E],CART]] (* added 2002 November 12 based on VS-RULES.NB *) composite[E,UB[complement[x_]],id[P[domain[VERTSECT[x_]]]]] := composite[complement[inverse[S]],IMAGE[x]] (* added 2001 July 15 based on ZN-AGAIN.NB *) composite[E,UB[complement[ZN]]] := composite[Id,complement[ZN]] (* added 2002 November 16 based on EQUIDIFF.NB *) composite[EQUIDIFF,complement[EQUIDIFF]] := composite[id[cart[omega,omega]],complement[EQUIDIFF]] (* derived 2006 January 3 in ASSOC.NB *) composite[EQUIDIFF,cross[EQUIDIFF,Id]] := 0 (* derived 2006 January 3 in ASSOC.NB *) composite[EQUIDIFF,cross[Id,EQUIDIFF]] := 0 (* added 2002 December 19 based on EQDF-RIF.NB *) composite[EQUIDIFF,cross[NATADD,NATADD],inverse[RIF]] := EQUIDIFF (* derived 2007 January 23 in EQUIDIFF.NB *) composite[EQUIDIFF,DUP] := cart[omega,id[omega]] (* added 2002 November 5 based on EQDF-TRV.NB *) composite[EQUIDIFF,EQUIDIFF] := EQUIDIFF (* added 2002 November 30 based on POS-NEG.NB *) composite[EQUIDIFF,id[cart[set[0],omega]]] := composite[SWAP,inverse[rotate[NATADD]],inverse[LEFT[0]]] (* added 2002 November 3 based on EQUIDIFF.NB *) composite[EQUIDIFF,id[cart[V,V]]] := EQUIDIFF (* added 2002 November 3 based on EQUIDIFF.NB *) composite[EQUIDIFF,id[complement[cart[V,V]]]] := 0 (* added 2003 August 17 based on EQDF-SUB.NB *) composite[EQUIDIFF,id[composite[id[omega],x_,id[omega]]]] := composite[EQUIDIFF,id[x]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[EQUIDIFF,id[union[S,inverse[S]]]] := EQUIDIFF (* added 2003 July 20 based on EQUIDIFF.NB *) composite[EQUIDIFF,inverse[FIRST]] := composite[id[cart[omega,V]], inverse[rotate[composite[inverse[S],NATADD]]]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[EQUIDIFF,inverse[rotate[NATADD]]] := inverse[rotate[NATADD]] (* added 2003 July 20 based on EQUIDIFF.NB *) composite[EQUIDIFF,inverse[SECOND]] := composite[SWAP,id[cart[omega,V]], inverse[rotate[composite[inverse[S],NATADD]]]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[EQUIDIFF,LEFT[0]] := composite[SWAP,inverse[rotate[NATADD]]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[EQUIDIFF,RIGHT[0]] := inverse[rotate[NATADD]] (* added 2002 November 3 based on EQUIDIFF.NB *) composite[EQUIDIFF,SWAP] := composite[SWAP,EQUIDIFF] (* derived 2004 May 12 in EQUIV.NB *) composite[EQUIV,EQUIV] := EQUIV (* derived 2006 October 7 in EQUIV.NB *) composite[EQUIV,HULL[EQV]] := HULL[EQV] (* derived 2004 May 12 in EQUIV.NB *) composite[EQUIV,HULL[TRV]] := composite[EQUIV,id[P[cart[V,V]]]] (* derived 2006 October 7 in EQUIV.NB *) composite[EQUIV,id[EQV]] := id[EQV] (* derived 2005 November 19 in EQV.NB *) composite[EQUIV,IMAGE[DUP]] := IMAGE[DUP] (* derived 2004 June 27 in X1693-97.NB *) composite[EQUIV,IMAGE[id[cart[x_,x_]]],EQUIV] := composite[IMAGE[id[cart[x,x]]],EQUIV] (* derived 2004 May 12 in EQUIV.NB *) composite[EQUIV,IMAGE[id[cart[V,V]]]] := EQUIV (* derived 2005 November 19 in EQV.NB *) composite[EQUIV,IMAGE[SWAP]] := EQUIV (* derived 2004 June 6 in EQV-C.NB *) composite[eqv[x_],complement[eqv[x_]]] := composite[id[fix[eqv[x]]],complement[eqv[x]]] (* derived 2004 May 12 in EQV-GEN.NB *) composite[eqv[x_],eqv[x_]] := eqv[x] (* derived 2004 December 16 in RFX-CORE.NB *) composite[eqv[x_],id[fix[trv[x_]]]] := eqv[x] (* derived 2006 October 31 in EVALPLUS.NB *) composite[eval[0],id[image[INVERSE,range[PLUS]]]] := cart[set[id[omega]],set[0]] (* derived 2008 December 3 in CURRY-BO.NB *) composite[eval[x_],APPLY[CURRY,binop[y_]]] := composite[binop[y],RIGHT[x]] (* derived 2008 December 3 in CURRY-BO.NB *) composite[eval[x_],APPLY[CURRY,composite[binop[y_],SWAP]]] := composite[binop[y],LEFT[x]] (* derived 2006 November 22 in EVAL-CUR.NB *) composite[eval[x_],APPLY[CURRY,composite[funpart[setpart[y_]],id[cart[V,V]]]]] := composite[funpart[setpart[y]],RIGHT[x]] (* derived 2006 November 22 in EVAL-CUR.NB *) composite[eval[x_],APPLY[CURRY,composite[funpart[setpart[y_]],SWAP]]] := composite[funpart[setpart[y]],LEFT[x]] (* derived 2006 November 22 in EVAL-CUR.NB *) composite[eval[x_],APPLY[CURRY,composite[NATEXP,SWAP]]] := composite[NATEXP,LEFT[x]] (* derived 2006 November 22 in EVAL-CUR.NB *) composite[eval[x_],APPLY[CURRY,composite[NATMOD,SWAP]]] := composite[NATMOD,LEFT[x]] (* derived 2006 November 22 in EVAL-CUR.NB *) composite[eval[x_],APPLY[CURRY,NATEXP]] := composite[NATEXP,RIGHT[x]] (* derived 2006 November 22 in EVAL-CUR.NB *) composite[eval[x_],APPLY[CURRY,NATMOD]] := modulo[x] (* derived 2006 December 19 in ZTIMES-1.NB *) composite[eval[composite[id[omega],SUCC]],id[binhom[INTADD,INTADD]]] := inverse[INTTIMES] (* derived 2006 November 24 in CO-EVAL.NB *) composite[eval[x_],CROSS] := cross[eval[first[x]],eval[second[x]]] (* derived 2006 October 24 in EVAL.NB *) composite[eval[x_],FUNPART] := eval[x] (* derived 2006 November 23 in EVAL-TIM.NB *) composite[eval[x_],id[binhom[NATADD,NATADD]]] := composite[times[x],inverse[TIMES]] (* derived 2006 October 24 in EVAL.NB *) composite[eval[x_],id[complement[P[complement[cart[set[x_],V]]]]]] := eval[x] (* derived 2006 October 24 in EVAL.NB *) composite[eval[x_],id[image[V,set[x_]]]] := eval[x] (* derived 2006 November 24 in CO-EVAL.NB *) composite[eval[x_],y_,id[image[V,set[x_]]]] := composite[eval[x],y] (* derived 2006 October 31 in EVALPLUS.NB *) composite[eval[x_],id[range[PLUS]]] := composite[plus[x],inverse[PLUS]] (* derived 2006 December 25 in INTMUL-2.NB *) composite[eval[w_],IMAGE[cross[inverse[DUP],funpart[x_]]],CROSS, cross[FUNPART,FUNPART]] := composite[funpart[x],cross[eval[w],eval[w]]] (* derived 2006 December 25 in INTMUL-2.NB *) composite[eval[x_],IMAGE[cross[inverse[DUP],INTADD]],CROSS, cross[FUNPART,FUNPART]] := composite[INTADD,cross[eval[x],eval[x]]] (* derived 2006 December 25 in INTMUL-2.NB *) composite[eval[x_],IMAGE[cross[inverse[DUP],INTADD]],CROSS, id[cart[binhom[INTADD,INTADD],binhom[INTADD,INTADD]]]] := composite[INTADD,cross[composite[eval[x],id[binhom[INTADD,INTADD]]], composite[eval[x],id[binhom[INTADD,INTADD]]]]] (* derived 2006 November 24 in EVALMISC.NB *) composite[eval[x_],IMAGE[DUP]] := cart[complement[P[complement[set[x]]]],set[x]] (* derived 2006 November 24 in CO-EVAL.NB *) composite[eval[x_],IMAGE[id[cart[V,V]]]] := eval[x] (* derived 2006 November 22 in EVAL-CUR.NB *) composite[eval[x_],IMAGE[SWAP],VERTSECT[y_]] := composite[funpart[composite[inverse[RIGHT[x]],y]],id[domain[VERTSECT[y]]]] (* derived 2008 September 15 in REPLACE.NB *) composite[eval[x_],INTTIMES] := inttimes[x] (* derived 2006 October 31 in EVALPLUS.NB *) composite[eval[x_],INVERSE,PLUS] := image[inverse[NATADD],set[x]] (* derived 2006 November 24 in CO-EVAL.NB *) composite[eval[x_],inverse[S],FUNPART] := eval[x] (* derived 2006 November 23 in EVAL-TIM.NB *) composite[eval[x_],INVERSE,TIMES] := composite[image[inverse[NATMUL],set[x]],id[complement[set[0]]]] (* derived 2006 November 24 in EVALMISC.NB *) composite[eval[x_],LAMBHULL] := composite[BIGCAP,IMAGE[id[image[S,set[x]]]]] (* derived 2006 December 6 in MIXMUL-1.NB *) composite[eval[x_],MIXTIMES] := composite[MIXMUL,RIGHT[x]] (* derived 2006 October 31 in EVALPLUS.NB *) composite[eval[x_],PLUS] := plus[x] (* derived 2006 November 24 in EVALMISC.NB *) composite[eval[x_],RCF] := composite[id[P[complement[x]]],inverse[ADJOIN[x]]] (* derived 2006 November 24 in CO-EVAL.NB *) composite[eval[x_],RESTRICT] := eval[x] (* derived 2006 December 5 in MIXTIMES.NB *) composite[eval[set[0]],id[binhom[NATADD,INTADD]]] := inverse[MIXTIMES] (* derived 2006 October 24 in EVAL.NB *) composite[eval[x_],SINGLETON] := inverse[LEFT[x]] (* derived 2006 November 22 in EVAL-CUR.NB *) composite[eval[x_],TIMES] := times[x] (* derived 2006 October 24 in EVAL.NB *) composite[eval[x_],VERTSECT[y_]] := composite[funpart[composite[inverse[LEFT[x]],y]],id[domain[VERTSECT[y]]]] (* derived 2006 November 24 in EVALMISC.NB *) composite[eval[x_],VS] := composite[IMAGE[SECOND],IMAGE[id[cart[set[x],V]]], id[complement[P[complement[cart[set[x],V]]]]]] (* derived 2005 April 21 in FACT-DIV.NB *) composite[FACTORIAL,id[intersection[omega,x_]]] := composite[FACTORIAL,id[x]] (* derived 2005 April 16 in FACTRL.NB *) composite[FACTORIAL,id[omega]] := FACTORIAL (* derived 2005 April 16 in FACTRL.NB *) composite[FACTORIAL,SUCC] := composite[NATMUL,intersection[composite[inverse[FIRST],SUCC],composite[inverse[SECOND],FACTORIAL]]] (* Theorem FIN-CO3 in FINITE proved 2000 April 20 *) composite[FINITE,x_] := cart[domain[x],V] (* Theorem FIN-CO4 in FINITE proved 2000 April 20 *) composite[x_,FINITE] := cart[V,range[x]] (* added 1999 November 4 based on ASSOC.NB *) composite[FIRST,ASSOC] := composite[FIRST,FIRST] (* derived 2008 July 6 in UBD-MONO.NB *) composite[FIRST,complement[composite[cross[E,Id],complement[inverse[E]]]]] := composite[inverse[E],UBD] (* added 2000 August 9 based on DOROTEST.NB *) composite[FIRST,complement[inverse[E]]] := cart[V,V] (* Theorem X-1ST-CO in X1 proved 2000 July 31 *) composite[FIRST,cross[x_,y_]] := composite[x,FIRST,id[cart[V,domain[y]]]] (* added 1999 August 31 based on 12-CO-DI *) composite[FIRST,Di] := cart[V,V] (* added 2001 December 23 based on DORA-2.NB *) composite[FIRST,DORA] := IMAGE[FIRST] (* Theorem DUP1ST-2 in DUP1 proved 1998 November 29 *) composite[FIRST,DUP] := Id (* added 2003 July 20 based on EQUIDIFF.NB *) composite[FIRST,EQUIDIFF] := composite[rotate[composite[inverse[S],NATADD]],id[cart[omega,V]]] (* added 2002 October 22 based on CO-ID.NB *) composite[FIRST,FIRST,id[cart[cart[V,V],V]]] := composite[FIRST,FIRST] (* derived 2005 July 30 in RO-ASSOC.NB *) composite[FIRST,FIRST,id[inverse[DUP]]] := composite[SECOND,id[inverse[DUP]]] (* added 2002 December 30 based on RO-ROT.NB *) composite[FIRST,FIRST,intersection[composite[x_,FIRST], composite[cross[inverse[SECOND],Id],SECOND]]] := rotate[composite[inverse[x],ROT]] (* added 2001 October 7 based on ROTA-TRI.NB *) composite[f_,FIRST,id[f_]] := composite[SECOND,id[f]] /; FUNCTION[f] (* added 2007 based on RIF-IN.NB *) composite[FIRST,id[cart[x_,y_]],inverse[RIF]] := composite[SWAP,id[inverse[x]],cross[Id,y]] (* added 2003 May 30 based on RESTRICT.NB *) composite[FIRST,id[cart[x_,P[Id]]],inverse[COMPOSE]] := composite[id[x],inverse[RESTRICT]] (* added 2003 January 12 based on ITERATE.NB *) composite[FIRST,id[cart[x_,y_]],power[z_]] := composite[id[x],iterate[inverse[z],y]] (* Inverse of Normalization Rule for RIGHT[x] added 1999 August 16 *) composite[FIRST,id[cart[y_,set[x_]]]] := composite[id[y],inverse[RIGHT[x]]] (* derived 2007 January 21 in ZADDSWAP.NB *) composite[FIRST,id[cart[V,x_]],inverse[INTADD]] := composite[INVERSE,image[inverse[INTADD],x]] (* derived 2008 July 10 in UBD-VS.NB *) composite[FIRST,id[cart[V,range[SINGLETON]]],inverse[CART],inverse[S]] := composite[inverse[E],UBD] composite[FIRST,id[cart[V,V]]] := FIRST composite[FIRST,id[complement[cart[V,V]]]] := 0 (* added 2001 February 4 based on CLOSED.NB *) composite[FIRST,id[x_],complement[inverse[rotate[y_]]]] := composite[intersection[complement[y],composite[inverse[x],FIRST]],inverse[SECOND]] composite[FIRST,id[composite[Id,x_]]] := composite[FIRST,id[x]] (* derived 2005 July 30 in CATORELN.NB *) composite[FIRST,id[composite[IMAGE[DUP],IMAGE[FIRST],id[P[cart[V,V]]]]],inverse[COMPOSE]] := id[P[cart[V,V]]] (* added 1999 October 13 based on SESSION.3 *) composite[FIRST,id[x_],cross[y_,z_]] := intersection[composite[y,FIRST],composite[inverse[x],z,SECOND]] (* derived 2008 August 27 in UNOPS.NB *) composite[FIRST,id[x_],DORA] := composite[IMAGE[FIRST],id[image[inverse[DORA],x]]] (* Theorem DUP1ST-3 in DUP1 proved 1998 November 29 *) composite[FIRST,id[Id]] := inverse[DUP] composite[FIRST,id[id[x_]]] := composite[id[x],inverse[DUP]] (* from REPLACE.LOG *) composite[FIRST,id[x_],intersection[composite[inverse[FIRST],y_], composite[inverse[SECOND],z_]]] := intersection[y,composite[inverse[x],z]] (* Theorem 1ST-CO-2 in 1ST proved 1999 August 24 *) composite[FIRST,id[x_],inverse[FIRST]] := id[domain[x]] (* derived 2004 February 10 in TO.NB *) composite[FIRST,id[INVERSE],inverse[CUP]] := inverse[HULL[SYM]] (* added 2001 February 4 based on CLOSED.NB *) composite[FIRST,id[x_],inverse[rotate[y_]]] := composite[intersection[y,composite[inverse[x],FIRST]],inverse[SECOND]] (* added 2002 April 8 based on UCL-ACL.NB *) composite[FIRST,id[inverse[E]],UB[complement[cross[E,Id]]]] := composite[complement[inverse[E]],SUBVAR] (* added 2001 May 24 based on REIFY.NB *) composite[FIRST,id[inverse[S]],intersection[composite[inverse[DIF],SECOND], composite[inverse[SECOND],FIRST]]] := composite[CUP,id[DISJOINT]] (* derived 2007 May 28 in CUP-HULL.NB *) composite[FIRST,id[inverse[S]],inverse[DIF]] := S composite[FIRST,id[x_],inverse[SECOND]] := inverse[x] (* added 2001 February 3 based in IMG9B.NB *) composite[FIRST,intersection[composite[complement[inverse[rotate[x_]]],y_], composite[inverse[SECOND],z_]]] := composite[complement[x], intersection[composite[inverse[FIRST],z], composite[inverse[SECOND],y]]] (* added 2002 December 30 based on RO-TW.NB *) composite[FIRST,intersection[composite[x_,cross[Id,FIRST]], composite[inverse[SECOND],SECOND,SECOND]]] := composite[rotate[twist[x]],SWAP] (* added 2002 December 30 based on RO-TW.NB *) composite[FIRST,intersection[composite[x_,cross[Id,SECOND]], composite[inverse[SECOND],FIRST,SECOND]]] := composite[rotate[composite[SWAP,twist[x]]],SWAP] (* added 2003 May 30 based on FIX-ROT.NB *) composite[FIRST,intersection[composite[cross[inverse[FIRST],Id],FIRST], composite[SWAP,cross[Id,inverse[SECOND]],SECOND]]] := composite[RIF,cross[SWAP,SWAP]] (* added 1999 November 30 based on TRIRULES.1 *) composite[FIRST,intersection[composite[x_,FIRST], composite[inverse[SECOND],SECOND]]] := rotate[composite[inverse[x],SWAP]] (* added 2002 December 23 based on REPLACE.NB *) composite[FIRST,intersection[composite[intersection[composite[inverse[FIRST],u_], composite[inverse[SECOND],v_]],w_],composite[inverse[SECOND],x_]]] := composite[u,intersection[w,composite[inverse[v],x]]] (* added 1999 December 1 based on TRI-E.NB *) composite[FIRST,intersection[composite[inverse[E],IMAGE[SWAP],x_], composite[inverse[SECOND],y_]]] := composite[SECOND,intersection[composite[inverse[E],x],composite[inverse[FIRST],y]]] (* derived 2008 July 29 in FUNAPPLY.NB *) composite[FIRST,intersection[composite[inverse[IMG],SINGLETON,FIRST], composite[inverse[SECOND],SINGLETON,SECOND]]] := composite[inverse[FUNPART],INVERSE,E] (* added 2001 May 25 based on FUNPART.NB *) composite[FIRST,intersection[composite[inverse[IMG],SINGLETON,SECOND], composite[inverse[SECOND],SINGLETON,FIRST]]] := composite[inverse[FUNPART],E] (* added 2002 December 28 based on REPLACE.NB *) composite[FIRST,intersection[composite[inverse[RIF],x_,FIRST], composite[inverse[SECOND],y_,SECOND]]] := composite[SWAP,RIF,cross[composite[SWAP,x],composite[SWAP,y]]] (* added 2001 January 20 based on TWIST-4.NB *) composite[FIRST,intersection[composite[inverse[RIF],y_,SECOND], composite[inverse[SECOND],x_,FIRST]]] := composite[RIF,cross[x,y]] (* revised 1999 November 30 based on ROT-SWAP *) composite[FIRST,intersection[composite[inverse[SECOND],FIRST],composite[x_,SECOND]]] := composite[rotate[composite[inverse[x],SWAP]],SWAP] (* derived 2008 October 15 in QG-L-R.NB *) composite[FIRST,intersection[composite[inverse[SECOND],rotate[quasigp[x_]]], composite[inverse[quasigp[x_]],FIRST]]] := composite[SECOND,id[domain[quasigp[x]]]] (* added 2002 October 29 based on RO-I.NB *) composite[FIRST,intersection[inverse[rotate[x_]],inverse[rotate[y_]]]] := composite[intersection[x,y],inverse[SECOND]] (* added 1999 November 4 based on ASSOC.NB *) composite[FIRST,inverse[ASSOC]] := cross[Id,FIRST] (* added 2000 July 24 based on CAPCUP.NB *) composite[FIRST,inverse[CAP]] := S (* added 2000 July 24 based on CAPCUP.NB *) composite[FIRST,inverse[CUP]] := inverse[S] (* added 2001 March 8 based on IMIMG.NB *) composite[FIRST,inverse[DIF]] := S (* added 2002 January 6 based on LAMBDA42.NB *) composite[FIRST,inverse[IMG],E] := composite[inverse[IMAGE[SECOND]],E] (* added 2003 August 11 based on DOROZADD.NB *) composite[FIRST,inverse[INTADD]] := cart[Z,Z] (* derived 2007 January 3 in FUNPRZML.NB *) composite[FIRST,inverse[INTMUL]] := inverse[INTDIV] (* added 2002 June 21 based on NATADD.NB *) composite[FIRST,inverse[NATADD]] := composite[id[omega],inverse[S],id[omega]] (* derived 2005 February 18 in MUL-NORM.NB *) composite[FIRST,inverse[NATMUL]] := inverse[DIV] (* derived 2008 October 9 in QUASIGP.NB *) composite[FIRST,inverse[quasigp[x_]]] := domain[quasigp[x]] (* added 2001 February 1 based on RIF-1.NB *) composite[FIRST,inverse[RIF]] := composite[inverse[SECOND],FIRST] (* added 1999 September 12 based on 1999\SEP\07\ROTATE.8 *) composite[FIRST,inverse[ROT]] := cross[SECOND,Id] (* added 1999 October 17 based on 1999\OCT\15\WORK\SESSION.1 *) composite[FIRST,inverse[rotate[x_]]] := composite[x,inverse[SECOND]] (* Theorem 2ND-CO2 in 2ND proved 1998 November 5 *) composite[FIRST,inverse[SECOND]] := cart[V,V] (* added 1999 August 16 based on session NORMAL.5 *) composite[FIRST,LEFT[x_]] := cart[V,set[x]] (* added 2001 January 20 based on RIF-2.NB *) composite[FIRST,RIF] := composite[SECOND,FIRST,id[composite[inverse[SECOND],FIRST]]] (* Theorem RT-1ST in RIGHT proved 1999 August 24 *) composite[FIRST,RIGHT[x_]] := id[image[V,set[x]]] (* added 1999 September 12 based on 1999\SEP\07\ROTATE.8 *) composite[FIRST,ROT] := composite[cross[Id,FIRST],SWAP] (* added 2002 October 22 based on CO-ID.NB *) composite[FIRST,SECOND,id[cart[V,cart[V,V]]]] := composite[FIRST,SECOND] (* derived 2005 July 30 in RO-ASSOC.NB *) composite[FIRST,SECOND,id[DUP]] := composite[FIRST,id[DUP]] (* derived 2008 May 7 in 2-2-ID.NB *) composite[FIRST,SECOND,id[inverse[FIRST]]] := composite[FIRST,id[inverse[FIRST]]] (* Theorem 2ND-SW-1 in 2ND proved 1998 November 3 *) composite[FIRST,SWAP] := SECOND (* added 1999 October 11 based on 1999\OCT\10\ASSOC.2 *) composite[FIRST,TWIST] := cross[FIRST,FIRST] (* added 2003 July 20 based on DIRECT12.NB *) composite[FIRST,twist[x_]] := composite[rotate[composite[FIRST,x]],SWAP] (* derived 2008 October 28 in FIX-DUP.NB *) composite[fix[composite[DUP,x_]],fix[composite[DUP,x_]]] := fix[composite[DUP,x]] (* derived 2008 September 4 in IN-2-SBV.NB *) composite[fix[composite[inverse[SECOND],IMG]],inverse[S]] := composite[inverse[E],SUBVAR] (* derived 2008 December 4 in UNCURRY.NB *) composite[FUNPART,APPLY[CURRY,binop[x_]]] := APPLY[CURRY,binop[x]] (* added 2001 November 27 based on FUNPART1.NB *) composite[FUNPART,CAP,cross[Id,FUNPART]] := composite[CAP,cross[Id,FUNPART]] (* added 2002 September 26 *) composite[FUNPART,CART] := union[cart[cart[V,complement[range[SINGLETON]]],set[0]], composite[CART,id[cart[V,range[SINGLETON]]]]] (* derived 2006 December 23 in FUNPART.NB *) composite[FUNPART,CHAR[x_]] := CHAR[x] (* added 2001 November 25 based on FUNP-1.NB *) composite[FUNPART,COMPOSE,cross[Id,FUNPART]] := composite[COMPOSE,cross[FUNPART,FUNPART]] (* derived 2008 July 3 in MAX-FUNP.NB *) composite[funpart[composite[x_,y_]],id[domain[funpart[y_]]]] := composite[funpart[x],funpart[y]] (* derived 2006 November 24 in FUNP-X.NB *) composite[FUNPART,CROSS] := composite[CROSS,cross[FUNPART,FUNPART]] (* derived 2006 November 9 in DOAP-CUR.NB *) composite[FUNPART,CURRY] := CURRY (* added 2000 September 9 based on FNP-2.NB *) composite[FUNPART,FUNPART] := FUNPART (* derived 2008 May 4 in APORDREC.NB *) composite[funpart[x_],history[rec[funpart[x_],composite[inverse[E],id[OMEGA]]], composite[inverse[E],id[OMEGA]]],id[domain[rec[funpart[x_], composite[inverse[E],id[OMEGA]]]]]] := rec[funpart[x],composite[inverse[E],id[OMEGA]]] (* derived 2006 December 6 in MIXMUL-1.NB *) composite[FUNPART,id[binhom[x_,y_]]] := id[binhom[x,y]] (* derived 2008 October 7 in BNP-WRAP.NB *) composite[FUNPART,id[BINOPS]] := id[BINOPS] (* derived 2004 August 28 in FUNPTHIN.NB *) composite[funpart[x_],id[domain[x_]]] := funpart[x] (* derived 2004 June 19 in REPLACE.NB *) composite[funpart[x_],id[domain[oopart[x_]]]] := oopart[x] (* added 2000 September 9 based on FNP-2.NB *) composite[funpart[x_],id[domain[VERTSECT[x_]]]] := funpart[x] (* derived 2004 June 14 in FU-F-O.NB *) composite[funpart[x_],id[fix[composite[inverse[x_],Di,x_]]]] := 0 (* added 2001 November 25 based on FUNP-1.NB *) composite[FUNPART,id[FUNS]] := id[FUNS] (* derived 2006 November 28 in FUNPOOPT.NB *) composite[funpart[x_],id[image[inverse[funpart[x_]],y_]]] := composite[id[y],funpart[x]] (* derived 2005 November 5 in FIN-FUNP.NB *) composite[FUNPART,id[image[inverse[FUNPART],x_]]] := composite[id[x],FUNPART] (* derived 2008 November 21 in ASSOCFUN.NB *) composite[funpart[x_],id[image[V,assoc[funpart[x_]]]]] := assoc[funpart[x]] (* derived 2006 December 23 in FUNPART.NB *) composite[FUNPART,id[Z]] := id[Z] (* derived 2004 August 28 in FUNP-VS.NB *) composite[FUNPART,IMAGE[composite[id[x_],inverse[FIRST]]]] := composite[IMAGE[composite[id[funpart[x]],inverse[FIRST]]],id[P[domain[VERTSECT[x]]]]] (* derived 2006 October 29 in OOPART.NB *) composite[FUNPART,IMAGE[cross[oopart[x_],Id]]] := composite[IMAGE[cross[oopart[x],Id]],FUNPART] (* derived 2006 October 29 in OOPART.NB *) composite[FUNPART,IMAGE[cross[SWAP,Id]]] := composite[IMAGE[cross[SWAP,Id]],FUNPART] (* added 2002 April 6 based on FUNPART.NB *) composite[FUNPART,IMAGE[DUP]] := IMAGE[DUP] (* added 2000 September 9 based on FNP-3.NB *) composite[FUNPART,IMAGE[id[cart[V,V]]]] := FUNPART (* added 2002 April 6 based on FUNP-ROT.NB *) composite[FUNPART,IMAGE[inverse[ASSOC]],FUNPART] := composite[IMAGE[inverse[ASSOC]],FUNPART] (* derived 2006 December 23 in FUNPART.NB *) composite[FUNPART,INTADD] := INTADD (* derived 2006 December 23 in FUNPART.NB *) composite[FUNPART,INTDIV] := INTDIV (* derived 2006 December 23 in FUNPART.NB *) composite[FUNPART,INTLEQ] := INTLEQ (* derived 2006 December 23 in FUNPART.NB *) composite[FUNPART,INTMUL] := INTMUL (* derived 2006 December 19 in ZTIMES-1.NB *) composite[FUNPART,INTTIMES] := INTTIMES (* added 2000 February 5 based on FUNPART.NB *) composite[funpart[x_],inverse[x_]] := id[range[funpart[x]]] (* derived 2006 October 31 in REPLACE.NB *) composite[FUNPART,INVERSE,FUNPART] := composite[INVERSE,OOPART,FUNPART] (* derived 2006 December 23 in FUNPART.NB *) composite[FUNPART,INVERSE,INTLEQ] := composite[INVERSE,INTLEQ] (* derived 2006 October 31 in REPLACE.NB *) composite[FUNPART,INVERSE,OOPART] := composite[INVERSE,OOPART] (* added 2003 May 11 based on FUNPART.NB *) composite[FUNPART,INVERSE,PLUS] := composite[INVERSE,PLUS] (* added 2003 May 11 based on FUNPART.NB *) composite[FUNPART,LAMBHULL] := LAMBHULL (* derived 2006 December 23 in FUNPART.NB *) composite[FUNPART,MIXMUL] := MIXMUL (* derived 2006 December 6 in MIXMUL-1.NB *) composite[FUNPART,MIXTIMES] := MIXTIMES (* derived 2004 May 9 in OOPART.NB *) composite[FUNPART,OOPART] := OOPART (* added 2003 May 11 based on FUNPART.NB *) composite[FUNPART,PLUS] := PLUS (* added 2002 April 6 based on FUNPART.NB *) composite[FUNPART,RCF] := RCF (* derived 2004 August 28 in FUNP-VS.NB *) composite[FUNPART,RESTRICT] := composite[inverse[S],FUNPART] (* derived 2006 November 28 in FUNPOOPT.NB *) composite[funpart[x_],SECOND,id[inverse[funpart[x_]]]] := composite[FIRST,id[inverse[funpart[x]]]] (* added 2001 November 27 based on IM-SS.NB *) composite[FUNPART,SINGLETON] := union[cart[complement[cart[V,V]],set[0]],composite[SINGLETON,id[cart[V,V]]]] (* derived 2006 October 29 in OOPART.NB *) composite[FUNPART,TIMES] := TIMES (* added 2003 June 15 based on RA-VS.NB *) composite[FUNPART,VS] := VS (* derived 2007 April 24 in GCD-ADJ0.NB *) composite[GLB[DIV],ADJOIN[set[0]]] := GLB[DIV] (* derived 2005 October 5 in GLB-DIV.NB *) composite[GLB[DIV],id[intersection[x_,P[omega]]]] := composite[GLB[DIV],id[x]] (* derived 2007 April 21 in GCD-SU.NB *) composite[GLB[DIV],inverse[S],inverse[GLB[DIV]]] := DIV (* derived 2007 April 21 in GCD-SU.NB *) composite[GLB[DIV],S,inverse[GLB[DIV]]] := inverse[DIV] (* derived 2006 January 21 in LEAST-VS.NB *) composite[GLB[po[x_]],VERTSECT[po[x_]],id[fix[po[x_]]]] := id[fix[thinpart[po[x]]]] (* derived 2005 October 2 in POLUBGLB.NB *) composite[GLB[x_],SINGLETON] := intersection[complement[composite[complement[x],inverse[x]]],inverse[x]] (* derived 2007 February 20 in GCD-MULT.NB *) composite[GLB[DIV],VERTSECT[DIV]] := union[cart[complement[omega],set[0]],id[omega]] (* added 2000 December 24 based on LT-CO-S *) composite[GREATEST[x_],complement[E]] := composite[id[fix[x]],Di] (* derived 2004 January 25 in GT-LT-CO.NB *) composite[GREATEST[x_],DISJOINT] := composite[id[fix[x]],complement[inverse[E]]] (* added 2000 December 14 based on LT-CO-E.NB *) composite[GREATEST[x_],E] := composite[id[fix[x]],x] (* added 2002 November 17 based on LB-UB.NB *) composite[GREATEST[x_],id[P[domain[x_]]]] := GREATEST[x] (* derived 2004 January 25 in GT-LT-CO.NB *) composite[GREATEST[x_],inverse[LB[y_]]] := composite[id[fix[x]],y] (* added 2000 December 24 based on LT-CO-S *) composite[GREATEST[x_],inverse[S]] := composite[inverse[E],IMAGE[id[fix[x]]]] (* derived 2004 January 25 in GT-LT-CO.NB *) composite[GREATEST[x_],inverse[UB[y_]]] := composite[id[fix[x]],inverse[y]] (* added 2000 December 14 based on PAIRSET.NB *) composite[GREATEST[x_],PAIRSET] := union[composite[FIRST,id[composite[inverse[x],id[fix[x]]]]], composite[SECOND,id[composite[id[fix[x]],x]]]] (* added 2000 December 19 based on GT-S.NB *) composite[GREATEST[x_],S] := composite[id[fix[x]],UB[x]] (* added 2000 November 19 based on GT-CO-SG.NB *) composite[GREATEST[x_],SINGLETON] := id[fix[x]] (* derived 2007 June 10 in SPINE.NB *) composite[GREATEST[union[S,inverse[S]]],id[OMEGA]] := composite[inverse[E],id[OMEGA]] (* derived 2005 October 6 in GLB-VS.NB *) composite[GREATEST[x_],VERTSECT[composite[id[domain[x_]],LB[x_]]]] := composite[GLB[x],id[domain[VERTSECT[composite[id[domain[x]],LB[x]]]]]] (* derived 2004 March 9 in IDEMLTGT.NB *) composite[GREATEST[x_],VERTSECT[GREATEST[x_]]] := GREATEST[x] (* derived 2006 January 19 in VS-LUB.NB *) composite[GREATEST[x_],VERTSECT[LB[x_]]] := composite[GLB[x],id[domain[VERTSECT[LB[x]]]]] (* derived 2008 January 22 in HART-FU.NB *) composite[HARTOGS,id[FINITE]] := composite[id[omega],SUCC,CARD] (* derived 2008 January 22 in HART-FU.NB *) composite[HARTOGS,id[omega]] := composite[id[omega],SUCC] (* derived 2008 January 22 in HART-FU.NB *) composite[HARTOGS,Q] := HARTOGS (* added 2001 March 31 based on HF-IM.NB *) composite[HC,CAP] := composite[CAP,cross[HC,HC]] (* derived 2004 December 24 in CARD.NB *) composite[HC,CARD] := CARD (* derived 2005 January 5 in CORE-ON.NB *) composite[HC,CORE[OMEGA]] := CORE[OMEGA] (* added 2001 March 31 based on HF.NB *) composite[HC,HC] := HC (* added 2001 March 31 based on HF.NB *) composite[HC,id[FULL]] := id[FULL] (* added 2003 January 18 based on HC-TC-OM.NB *) composite[HC,id[omega]] := id[omega] (* added 2002 May 5 based on REPLACE.NB *) composite[HC,id[OMEGA]] := id[OMEGA] (* added 2002 May 4 based on HC-OMEGA.NB *) composite[HC,IMAGE[id[x_]]] := composite[IMAGE[id[H[x]]],HC] (* derived 2007 December 4 in HER-H.NB *) composite[HC,IMAGE[inverse[S]],HC] := composite[IMAGE[inverse[S]],HC] (* derived 2007 December 4 in HER-H.NB *) composite[HC,IMAGE[inverse[S]],TC] := composite[IMAGE[inverse[S]],TC] (* derived 2004 August 14 in ZN-RULES.NB *) composite[HC,IMAGE[ZN]] := IMAGE[ZN] (* added 2001 March 31 based on REMOVED.NB *) composite[HC,POWER] := composite[POWER,HC] (* added 2001 August 1 based on RK-TC.NB *) composite[HC,RANK] := RANK (* added 2001 March 31 based on HF.NB *) composite[HC,TC] := TC (* derived 2004 August 14 in ZN-RULES.NB *) composite[HC,VERTSECT[ZN]] := VERTSECT[ZN] (* derived 2009 January 21 in HOM.NB *) composite[hom[x_],id[cart[V,V]]] := hom[x] (* derived 2007 May 26 in COREHULL.NB *) composite[HULL[x_],CORE[y_],HULL[x_],CORE[y_]] := composite[HULL[x],CORE[y]] (* derived 2005 November 19 in EQV.NB *) composite[HULL[EQV],EQUIV] := EQUIV (* derived 2004 October 7 in HULL-I.NB *) composite[HULL[EQV],HULL[SYM]] := HULL[EQV] (* derived 2004 October 7 in HULL-I.NB *) composite[HULL[EQV],HULL[TRV]] := HULL[EQV] (* derived 2007 June 25 in UCH-HULL.NB *) composite[HULL[fix[UCHAINS]],UCHAINS] := HULL[fix[UCHAINS]] (* added 2003 February 21 based on IDEMHULL.NB *) composite[HULL[x_],HULL[x_]] := HULL[x] (* derived 2004 October 7 in HULL-I.NB *) composite[HULL[x_],HULL[intersection[x_,y_]]] := HULL[intersection[x,y]] (* derived 2004 May 4 in CRHL-FIX.NB *) composite[HULL[x_],id[x_]] := id[x] (* added 2002 May 6 based on FIX-HULL.NB *) composite[HULL[x_],id[Aclosure[x_]]] := id[Aclosure[x]] (* added 2001 May 15 based on HULL-1.NB *) composite[HULL[x_],id[complement[image[inverse[S],x_]]]] := 0 (* added 2002 February 2 based on RA-HULL.NB *) composite[HULL[x_],id[domain[VERTSECT[composite[id[x_],S]]]]] := composite[BIGCAP,VERTSECT[composite[id[x],S]]] (* added 2001 May 2 based on COREHULL.NB *) composite[HULL[x_],id[image[inverse[S],x_]]] := HULL[x] (* derived 2007 May 9 in COREHULL.NB *) composite[HULL[x_],id[intersection[x_,y_]]] := id[intersection[x,y]] (* derived 2005 October 5 in GLB-DIV.NB *) composite[HULL[image[VERTSECT[DIV],omega]],id[intersection[x_,P[omega]]]] := composite[HULL[image[VERTSECT[DIV],omega]],id[x]] (* derived 2004 October 7 in HULL-I.NB *) composite[HULL[intersection[x_,y_]],HULL[x_]] := HULL[intersection[x,y]] (* derived 2007 May 30 in NEXT-LIM.NB *) composite[HULL[intersection[OMEGA,fix[BIGCUP]]],SINGLETON,id[omega]] := cart[omega,set[omega]] (* added 2003 September 24 based on PO-FACTS.NB *) composite[HULL[invar[x_]],CUP] := composite[CUP,cross[HULL[invar[x]],HULL[invar[x]]]] (* derived 2004 June 6 in EQV-TRV.NB *) composite[HULL[invar[x_]],id[P[domain[VERTSECT[x_]]]]] := HULL[invar[x]] (* derived 2004 June 6 in EQV-TRV.NB *) composite[HULL[invar[x_]],id[P[domain[VERTSECT[trv[x_]]]]]] := HULL[invar[x]] (* derived 2007 May 6 in HULL-SYM.NB *) composite[HULL[invar[SWAP]],CORE[SYM]] := CORE[SYM] (* derived 2007 May 6 in HULL-SYM.NB *) composite[HULL[invar[SWAP]],HULL[SYM]] := HULL[SYM] (* derived 2004 June 15 in HULIVRSW.NB *) composite[HULL[invar[SWAP]],id[P[cart[V,V]]]] := HULL[SYM] (* derived 2007 May 6 in HULL-SYM.NB *) composite[HULL[invar[SWAP]],id[SYM]] := id[SYM] (* derived 2007 May 6 in HULL-SYM.NB *) composite[HULL[invar[SWAP]],IMAGE[id[cart[V,V]]]] := composite[HULL[SYM],IMAGE[id[cart[V,V]]]] (* derived 2008 February 3 in SYM-HULL.NB *) composite[HULL[invar[SWAP]],IMAGE[SWAP]] := composite[HULL[SYM],IMAGE[id[cart[V,V]]]] (* derived 2008 February 3 in SYM-HULL.NB *) composite[HULL[invar[SWAP]],INVERSE] := HULL[SYM] (* derived 2007 August 6 in OL-NAT.NB *) composite[HULL[nat[x_]],SUCC] := composite[id[nat[x]],SUCC] (* derived 2008 April 24 in ITERPRIM.NB *) composite[HULL[omega],HULL[PRIMES]] := HULL[PRIMES] (* derived 2008 April 24 in ITERPRIM.NB *) composite[HULL[omega],SINGLETON] := composite[id[omega],SUCC] (* derived 2005 July 24 in TC-HULL.NB *) composite[HULL[omega],TC] := HULL[omega] (* derived 2008 April 24 in ITERPRIM.NB *) composite[HULL[PRIMES],HULL[omega]] := HULL[PRIMES] (* derived 2008 April 24 in ITERPRIM.NB *) composite[HULL[PRIMES],id[omega],SUCC] := composite[HULL[PRIMES],SUCC] (* derived 2006 October 14 in HULL-RA.NB *) composite[HULL[range[x_]],x_] := composite[Id,x] (* derived 2007 May 9 in RFX.NB *) composite[HULL[RFX],CORE[RFX]] := CORE[RFX] (* added 2003 September 24 based on PO-FACTS.NB *) composite[HULL[RFX],CUP] := composite[CUP,cross[HULL[RFX],HULL[RFX]]] (* derived 2007 July 17 in U-EQV.NB *) composite[HULL[RFX],HULL[EQV]] := HULL[EQV] (* derived 2006 February 16 in HULL-RFX.NB *) composite[HULL[RFX],HULL[TRV]] := HULL[intersection[RFX,TRV]] (* derived 2007 July 17 in U-EQV.NB *) composite[HULL[RFX],id[EQV]] := id[EQV] (* derived 2007 May 9 in RFX.NB *) composite[HULL[RFX],id[PO]] := id[PO] (* added 2003 September 24 based on PO-FACTS.NB *) composite[HULL[subvar[x_]],CUP] := composite[CUP,cross[HULL[subvar[x]],HULL[subvar[x]]]] (* derived 2006 October 7 in SYM.NB *) composite[HULL[SYM],CORE[SYM]] := CORE[SYM] (* added 2003 September 24 based on PO-FACTS.NB *) composite[HULL[SYM],CUP] := composite[CUP,cross[HULL[SYM],HULL[SYM]]] (* derived 2005 November 19 in EQV.NB *) composite[HULL[SYM],EQUIV] := EQUIV (* derived 2004 October 7 in HULL-I.NB *) composite[HULL[SYM],HULL[EQV]] := HULL[EQV] (* derived 2007 May 6 in HULL-SYM.NB *) composite[HULL[SYM],HULL[invar[SWAP]]] := HULL[SYM] (* derived 2005 November 19 in EQV.NB *) composite[HULL[SYM],id[EQV]] := id[EQV] (* derived 2008 February 3 in SYM-HULL.NB *) composite[HULL[SYM],IMAGE[SWAP]] := composite[HULL[SYM],IMAGE[id[cart[V,V]]]] (* derived 2008 February 3 in SYM-HULL.NB *) composite[HULL[SYM],INVERSE] := HULL[SYM] (* derived 2006 October 29 in OOPART.NB *) composite[HULL[SYM],RCF] := RCF (* derived 2005 November 19 in TOP.NB *) composite[HULL[TOPS],ADJOIN[set[0]]] := HULL[TOPS] (* derived 2007 August 9 in HULLTOPS.NB *) composite[HULL[TOPS],CHAINS] := composite[POWER,IMAGE[inverse[DUP]]] (* derived 2007 August 9 in HULLTOPS.NB *) composite[HULL[TOPS],CLIQUES] := composite[POWER,IMAGE[inverse[DUP]]] (* derived 2005 November 19 in TOP.NB *) composite[HULL[TOPS],id[omega],SUCC] := composite[id[omega],SUCC] (* derived 2005 November 19 in TOP.NB *) composite[HULL[TOPS],id[OMEGA],SUCC] := composite[id[OMEGA],SUCC] (* derived 2005 November 19 in TOP.NB *) composite[HULL[TOPS],IMAGE[IMAGE[id[x_]]],HULL[TOPS]] := composite[IMAGE[IMAGE[id[x]]],HULL[TOPS]] (* derived 2005 November 19 in TOP.NB *) composite[HULL[TOPS],POWER] := POWER (* derived 2005 November 19 in TOP.NB *) composite[HULL[TOPS],SINGLETON] := composite[ADJOIN[set[0]],SINGLETON] (* derived 2007 August 9 in HULLTOPS.NB *) composite[HULL[TOPS],UCHAINS] := HULL[TOPS] (* derived 2005 November 19 in TOP.NB *) composite[HULL[TOPS],UCLOSURE] := HULL[TOPS] (* added 2003 March 5 based on TRV-CART.NB *) composite[HULL[TRV],CART] := CART (* derived 2006 October 7 in REIF-RFX.NB *) composite[HULL[TRV],CORE[RFX],HULL[TRV]] := composite[CORE[RFX],HULL[TRV]] (* derived 2005 November 19 in EQV.NB *) composite[HULL[TRV],EQUIV] := EQUIV (* derived 2004 October 7 in HULL-I.NB *) composite[HULL[TRV],HULL[EQV]] := HULL[EQV] (* derived 2007 March 1 in TRV-RFX.NB *) composite[HULL[TRV],HULL[RFX]] := HULL[intersection[RFX,TRV]] (* added 2003 November 6 based on HULL-EQV.NB *) composite[HULL[TRV],HULL[SYM]] := HULL[EQV] (* derived 2005 November 19 in EQV.NB *) composite[HULL[TRV],id[EQV]] := id[EQV] (* added 2002 February 13 based on HULL-TRV.NB *) composite[HULL[TRV],id[P[Id]]] := id[P[Id]] (* added 2002 February 13 based on HULL-TRV.NB *) composite[HULL[TRV],id[TRV]] := id[TRV] (* added 2003 March 5 based on TRV-ID.NB *) composite[HULL[TRV],IMAGE[DUP]] := IMAGE[DUP] (* added 2003 March 5 based on TRV-IN.NB *) composite[HULL[TRV],INVERSE] := composite[INVERSE,HULL[TRV]] (* added 2003 October 15 based on ACYCLIC.NB *) composite[HULL[TRV],inverse[IMAGE[id[cart[V,V]]]]] := HULL[TRV] (* added 2002 April 4 based on TRV.NB *) composite[HULL[TRV],inverse[S],IMAGE[id[cart[V,V]]]] := composite[HULL[TRV],inverse[S]] (* added 2003 September 24 based on PO-FACTS.NB *) composite[HULL[Uclosure[x_]],CUP] := composite[CUP,cross[HULL[Uclosure[x]],HULL[Uclosure[x]]]] (* derived 2006 September 30 in VECT-ADD.NB *) composite[HULL[Z],COMPOSE,cross[PLUS,composite[INVERSE,PLUS]]] := composite[INTADD,cross[PLUS,composite[INVERSE,PLUS]]] (* added 2003 July 26 based on HULL-Z.NB *) composite[HULL[Z],COMPOSE,cross[PLUS,PLUS]] := composite[COMPOSE,cross[PLUS,PLUS]] (* added 2003 July 25 based on INTADD.NB *) composite[HULL[Z],COMPOSE,id[cart[Z,Z]]] := INTADD (* added 2003 July 26 based on INTADDSW.NB *) composite[HULL[Z],COMPOSE,SWAP,id[cart[Z,Z]]] := INTADD (* added 2003 July 26 based on HULL-Z.NB *) composite[HULL[Z],id[Z]] := id[Z] (* derived 2006 September 30 in VECT-ADD.NB *) composite[HULL[Z],IMAGE[cross[NATADD,NATADD]],CROSS,id[cart[Z,Z]]] := INTADD (* derived 2006 September 30 in VECT-ADD.NB *) composite[HULL[Z],INTADD] := INTADD (* derived 2006 October 14 in HULL-RA.NB *) composite[HULL[Z],INTLEQ] := INTLEQ (* derived 2008 September 15 in INTARITH.NB *) composite[HULL[Z],INTMUL] := INTMUL (* derived 2006 September 30 in HULL-INV.NB *) composite[HULL[Z],INVERSE] := composite[INVERSE,HULL[Z]] (* derived 2006 July 31 in HULL-Z.NB *) composite[HULL[Z],PLUS] := PLUS (* added 2003 August 7 based on EQDFHULZ.NB *) composite[HULL[Z],SINGLETON] := composite[VERTSECT[EQUIDIFF],id[cart[omega,omega]]] (* added 2003 August 7 based on EQDFHULZ.NB *) composite[HULL[Z],VERTSECT[EQUIDIFF]] := VERTSECT[EQUIDIFF] (* Corollary ID-CO-FU in ID-CO proved 1998 November 19 *) composite[Id,x_] := x /; FUNCTION[x] (* derived 2008 November 29 in INT-WRAP.NB *) composite[Id,x_] := x /; member[x,Z] (* Theorem ID-COCO1 in ID/ID-CO *) composite[Id,x_,y_] := composite[x,y] (* Theorem ID-CO9 in ID/ID-CO *) composite[x_,Id] := composite[Id,x] (* Theorem ADJ-ID in ADJ proved 1999 March 11 *) composite[Id,ADJOIN[x_]] := ADJOIN[x] (* derived 2004 December 2 in PRECISE.NB *) composite[id[x_],ASSOC] := composite[ASSOC,id[rotate[inverse[x]]]] (* derived 2008 November 17 in ASS-WRAP.NB *) composite[Id,assoc[x_]] := assoc[x] (* derived 2006 February 4 in INVOL.NB *) composite[id[BIJ],HULL[SYM]] := HULL[INVOL] (* added 2000 September 4 based on NEW.M *) composite[id[BIJ],INVERSE] := composite[INVERSE,id[BIJ]] (* added 2000 September 4 based on NEW.M *) composite[id[BIJ],inverse[IMAGE[id[cart[V,V]]]]] := id[BIJ] (* added 2000 September 4 based on NEW.M *) composite[id[BIJ],inverse[IMAGE[SWAP]]] := composite[INVERSE,id[BIJ]] (* derived 2006 December 19 in ZTIMES-1.NB *) composite[id[binhom[INTADD,INTADD]],inverse[eval[composite[id[omega],SUCC]]]] := INTTIMES (* derived 2006 December 5 in MIXTIMES.NB *) composite[id[binhom[NATADD,INTADD]],inverse[eval[set[0]]]] := MIXTIMES (* derived 2006 November 23 in EVAL-TIM.NB *) composite[id[binhom[NATADD,NATADD]],inverse[eval[x_]]] := composite[TIMES,inverse[times[x]]] (* added 2003 July 16 based on L-R-PAIR.NB *) composite[id[cart[cart[set[x_],set[y_]],V]],inverse[SECOND]] := LEFT[PAIR[x,y]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[cart[cart[V,V],cart[V,V]]],TWIST] := TWIST (* added 2007 based on RIF-IN.NB *) composite[id[cart[x_,cart[V,V]]],inverse[RIF]] := composite[id[cart[x,V]],inverse[RIF]] (* added 2007 based on RIF-IN.NB *) composite[id[cart[cart[V,V],x_]],inverse[RIF]] := composite[id[cart[V,x]],inverse[RIF]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[cart[cart[V,V],V]],inverse[FIRST],inverse[FIRST]] := composite[inverse[FIRST],inverse[FIRST]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[cart[cart[V,V],V]],inverse[FIRST],inverse[SECOND]] := composite[inverse[FIRST],inverse[SECOND]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[cart[cart[V,V],V]],ROT] := ROT (* Theorem X-CO-3 in X3 proved 2000 August 1 *) composite[id[cart[u_,v_]],cross[x_,y_]] := cross[composite[id[u],x],composite[id[v],y]] (* derived 2005 August 7 in DORA-FIN.NB *) composite[id[cart[FINITE,FINITE]],DORA,id[FINITE]] := composite[DORA,id[FINITE]] (* added 2002 November 2 based on PAIR-V.NB *) composite[id[cart[x_,y_]],LeftPairV] := 0 (* added 2002 June 20 based on ITERNORM.NB *) composite[id[cart[omega,V]],inverse[NATADD]] := inverse[NATADD] (* derived 2005 February 18 in MUL-NORM.NB *) composite[id[cart[omega,V]],inverse[NATMUL]] := inverse[NATMUL] (* added 2002 June 5 based on COMMUTE.NB *) composite[id[cart[omega,V]],power[SUCC]] := composite[id[cart[V,omega]],power[SUCC]] (* added 2002 November 2 based on PAIR-V.NB *) composite[id[cart[x_,y_]],RightPairV] := 0 (* added 1999 August 16 based on ASSOC.LOG *) composite[id[cart[y_,set[x_]]],inverse[FIRST]] := composite[RIGHT[x],id[y]] (* added 1999 August 16 based on ASSOC.LOG *) composite[id[cart[set[x_],y_]],inverse[SECOND]] := composite[LEFT[x],id[y]] (* added 2003 July 16 based on L-R-PAIR.NB *) composite[id[cart[V,cart[set[x_],set[y_]]]], inverse[FIRST]] := RIGHT[PAIR[x,y]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[cart[V,cart[V,V]]],ASSOC] := ASSOC (* added 2002 October 22 based on CO-ID.NB *) composite[id[cart[V,cart[V,V]]],inverse[SECOND],inverse[FIRST]] := composite[inverse[SECOND],inverse[FIRST]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[cart[V,cart[V,V]]],inverse[SECOND],inverse[SECOND]] := composite[inverse[SECOND],inverse[SECOND]] (* added 2003 July 16 based on LAMBPAIR.NB *) composite[id[cart[V,intersection[x_,set[y_]]]],inverse[FIRST]] := composite[RIGHT[y],id[image[V,intersection[x,set[y]]]]] (* added 2002 December 19 based on PLUSNORM.NB *) composite[id[cart[V,omega]], intersection[composite[inverse[FIRST],inverse[power[SUCC]]], composite[inverse[SECOND],SECOND]],inverse[FIRST]] := composite[SWAP,inverse[rotate[NATADD]]] (* added 2002 June 20 based on ITERNORM.NB *) composite[id[cart[V,omega]],inverse[NATADD]] := inverse[NATADD] (* added 2003 July 5 based on PLUS-ISO.NB *) composite[id[cart[V,omega]], inverse[rotate[composite[inverse[power[SUCC]],SWAP]]]] := composite[SWAP,inverse[rotate[NATADD]]] (* added 2002 June 12 based on NATADD.NB *) composite[id[cart[V,omega]],power[SUCC]] := composite[SWAP,inverse[rotate[NATADD]]] (* added 1999 October 31 based on ASSOC.1 *) composite[id[cart[V,V]],ASSOC] := ASSOC (* derived 2008 December 23 in CATO-IDS.NB *) composite[id[cart[V,V]],CATOFUNS] := CATOFUNS (* added 2001 December 23 based on DORA-1.NB *) composite[id[cart[V,V]],DORA] := DORA (* added 2002 November 3 based on EQUIDIFF.NB *) composite[id[cart[V,V]],EQUIDIFF] := EQUIDIFF composite[id[cart[V,V]],intersection[x_,composite[inverse[FIRST],y_]]] := intersection[x,composite[inverse[FIRST],y]] composite[id[cart[V,V]],intersection[x_,composite[inverse[SECOND],y_]]] := intersection[x,composite[inverse[SECOND],y]] (* added 1999 December 14 based on ROT-FLIP.NB *) composite[id[cart[V,V]],inverse[ASSOC]] := inverse[ASSOC] composite[id[cart[V,V]],inverse[FIRST]] := inverse[FIRST] (* added 2002 November 3 based on SIMPLIFY.NB *) composite[id[cart[V,V]],inverse[NATADD]] := inverse[NATADD] (* added 2001 February 2 based on ROTATE.NB *) composite[id[cart[V,V]],inverse[RIF]] := inverse[RIF] (* added 1999 October 12 based on ROT.5 *) composite[id[cart[V,V]],inverse[ROT]] := inverse[ROT] (* added 1999 October 17 based on 1999\OCT\15\WORK\SESSION.1 *) composite[id[cart[V,V]],inverse[rotate[x_]]] := inverse[rotate[x]] composite[id[cart[V,V]],inverse[SECOND]] := inverse[SECOND] (* added 2002 November 9 based on TW-I-FL.NB *) composite[id[cart[V,V]],inverse[twist[x_]]] := inverse[twist[x]] (* added 2002 June 4 based on PWR-COID.NB *) composite[id[cart[V,V]],iterate[cross[x_,y_],Id]] := iterate[cross[x,y],Id] (* added 1999 November 4 based on 1999/NOV/03/WORK/FLIP-ROT.1 *) composite[id[cart[V,V]],LEFT[x_]] := LEFT[x] (* added 2002 June 4 based on PWR-COID.NB *) composite[id[cart[V,V]],power[x_]] := power[x] (* added 2002 October 22 based on CO-ID.NB *) composite[id[cart[V,V]],RIF] := RIF (* added 1999 November 4 based on 1999/NOV/03/WORK/FLIP-ROT.1 *) composite[id[cart[V,V]],RIGHT[x_]] := RIGHT[x] (* added 1999 October 12 based on ROT.5 *) composite[id[cart[V,V]],ROT] := ROT (* Theorem SW-CO-5 in SW3 *) composite[id[cart[V,V]],SWAP] := SWAP (* added 1999 October 10 based on TWIST.2 *) composite[id[cart[V,V]],TWIST] := TWIST (* added 2001 January 20 based on TWIST-2.NB *) composite[id[cart[V,V]],twist[x_]] := twist[x] (* derived 2006 August 22 in CHAR.NB *) composite[Id,CHAR[x_]] := CHAR[x] (* added 2000 December 9 based on CLIQUES.NB *) composite[id[cliques[x_]],S,id[complement[cliques[x_]]]] := 0 (* derived 2006 July 13 in CLOCK.NB *) composite[Id,clock[x_]] := clock[x] (* added 2003 July 4 based on COARSER.NB *) composite[Id,COARSER] := COARSER (* derived 2008 December 25 in COD-DOM.NB *) composite[Id,cod[x_]] := cod[x] (* added 2001 May 18 based on COMMUTE2.NB *) composite[Id,COMMUTE] := COMMUTE (* derived 2006 September 21 in CMTVNORM.NB *) composite[id[complement[cart[cart[V,V],V]]],GREATEST[complement[cross[SWAP,Id]]]] := composite[inverse[E],IMAGE[id[complement[cart[cart[V,V],V]]]]] (* discovered 1998 October 17 *) composite[id[complement[cart[u_,v_]]],cross[x_,y_]] := union[cross[x,composite[id[complement[v]],y]],cross[composite[id[complement[u]],x],y]] (* added 2002 November 3 based on EQUIDIFF.NB *) composite[id[complement[cart[V,V]]],EQUIDIFF] := 0 composite[id[complement[cart[V,V]]],inverse[FIRST]] := 0 composite[id[complement[cart[V,V]]],inverse[SECOND]] := 0 (* added 2002 June 6 based on POWERADD.NB *) composite[id[complement[cart[V,V]]],power[x_]] := 0 (* derived 2007 December 26 in SCHRODER.NB *) composite[Id,complement[composite[x_,complement[inverse[E]]]]] := composite[inverse[VERTSECT[inverse[x]]],inverse[S]] (* derived 2006 October 9 in REIFCLIQ.NB *) composite[Id,complement[composite[S,PAIRSET,x_]]] := composite[inverse[E],CLIQUES,inverse[LB[complement[x]]]] (* added 2003 June 23 based on DI-RULES.NB *) composite[id[complement[x_]],Di,id[x_]] := cart[x,complement[x]] composite[id[complement[domain[x_]]],inverse[x_]] := 0 (* Theorem IDX-C-DO in IDX2 proved 1998 November 19 *) composite[x_,id[complement[domain[x_]]]] := 0 (* derived 2006 April 27 in FU-IM.NB *) composite[x_,id[complement[fix[composite[inverse[x_],Di,x_]]]]] := funpart[x] (* derived 2006 June 14 in IMINCART.NB *) composite[id[complement[image[V,complement[fix[image[inverse[CART],image[inverse[IMAGE[id[x_]]],PO]]]]]]],x_] := po[x] (* derived 2006 June 14 in IMINCART.NB *) composite[id[complement[image[V,complement[fix[image[inverse[CART],image[inverse[IMAGE[id[x_]]],TO]]]]]]],x_] := to[x] (* added 2002 November 2 based on PAIR-V.NB *) composite[id[complement[image[V,x_]]],y_,id[image[V,x_]]] := 0 (* added 2003 August 8 based on REPLACE.NB *) composite[id[complement[image[V,intersection[x_,complement[y_]]]]],inverse[plus[x_]],plus[y_]] := plus[natsub[y,x]] (* derived 2007 May 2 in REIF-WO.NB *) composite[id[complement[image[V,intersection[complement[WO], image[IMAGE[id[x_]],image[CART,Id]]]]]],x_] := wo[x] (* added 2002 July 30 based on IMIN-ADD.NB *) composite[id[complement[omega]],image[inverse[NATADD],x_]] := 0 (* added 2002 October 24 based on SUBVAR.NB *) composite[id[complement[P[complement[set[0]]]]],SUBVAR] := SUBVAR (* Theorem IDX-C-RA in IDX2 proved 1998 November 19 *) composite[id[complement[range[x_]]],x_] := 0 (* added 2003 July 25 based on INTADD.NB *) composite[id[complement[set[0]]],COMPOSE,id[cart[Z,Z]]] := composite[COMPOSE,id[cart[Z,Z]]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[complement[set[0]]],E] := E (* derived 2005 April 23 in FACT-S.NB *) composite[id[complement[set[0]]],FACTORIAL] := FACTORIAL (* derived 2005 October 5 in GLB-DIV.NB *) composite[id[complement[set[0]]],HULL[image[VERTSECT[DIV],omega]]] := HULL[image[VERTSECT[DIV],omega]] (* added 1999 August 11 based on session SG-LOG.5 *) composite[id[complement[set[0]]],IMAGE[SINGLETON]] := composite[IMAGE[SINGLETON],id[complement[set[0]]]] (* added 2002 December 23 based on REPLACE.NB *) composite[id[complement[set[0]]],INVERSE,PLUS] := composite[INVERSE,PLUS] (* added 2002 October 22 based on CO-ID.NB *) composite[id[complement[set[0]]],K] := K (* added 2002 October 22 based on CO-ID.NB *) composite[id[complement[set[0]]],PS] := PS composite[id[complement[set[0]]],SINGLETON] := SINGLETON (* added 2002 May 24 based on ADJOIN.NB *) composite[id[complement[set[0]]],SUCC] := SUCC (* derived 2005 October 17 in VS-RS-DO.NB *) composite[id[complement[set[0]]],VERTSECT[x_]] := composite[VERTSECT[x],id[domain[x]]] (* derived 2004 November 26 in XSCP-MAP.NB *) composite[id[complement[set[0]]],XS] := composite[XS,id[SELECT]] (* derived 2004 September 18 in WF-WRAP.NB *) composite[id[complement[U[subvar[x_]]]],x_] := wf[x] composite[id[composite[Id,x_]],inverse[FIRST]] := composite[id[x],inverse[FIRST]] composite[id[composite[Id,x_]],inverse[SECOND]] := composite[id[x],inverse[SECOND]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[id[composite[id[omega],x_,id[omega]]],EQUIDIFF] := composite[id[x],EQUIDIFF] (* added 2001 January 20 based on COMBINAT.NB *) composite[id[composite[inverse[FIRST],FIRST]], cross[inverse[SECOND],inverse[SECOND]]] := composite[cross[Id,SWAP],inverse[RIF]] (* added 2002 December 28 based on REPLACE.NB *) composite[id[composite[inverse[FIRST],SECOND]], cross[inverse[FIRST],inverse[SECOND]]] := composite[cross[SWAP,SWAP],inverse[RIF]] (* added 2001 January 20 based on RIF-2.NB *) composite[id[composite[inverse[SECOND],FIRST]], cross[inverse[SECOND],inverse[FIRST]]] := inverse[RIF] (* added 2002 October 22 based on CO-ID.NB *) composite[id[composite[SECOND,x_,inverse[SECOND]]],twist[x_]] := twist[x] (* added 2004 April 17 based on CORE.NB *) composite[Id,core[z_,cart[x_,y_]]] := core[z,cart[x,y]] (* derived 2006 September 26 in CORECART.NB *) composite[Id,core[image[CART,x_],y_]] := core[image[CART,x],y] (* added 1999 October 9 based on CROSS.2 *) composite[Id,CROSS] := CROSS (* Theorem X-ID-CO in X1 proved 1998 August 4 *) composite[Id,cross[x_,y_]] := cross[x,y] (* added 2000 September 3 based on DUP-2.NB *) composite[id[x_],cross[f_,g_]] := composite[cross[f,g],id[composite[inverse[g],x,f]]] /; And[FUNCTION[f],FUNCTION[g]] (* derived 2006 March 25 in REG-DESC.NB *) composite[id[DESCENDING],intersection[DISJOINT,E]] := 0 (* Theorem DI-ID in DI added 1998 July 2 *) composite[Id,Di] := Di (* added 2003 June 23 based on DI-RULES.NB *) composite[id[x_],Di,id[complement[x_]]] := cart[complement[x],x] (* added 1999 October 26 based on DIF-LOG.1 *) composite[Id,DIF] := DIF (* Theorem DJT-ID in DJT *) composite[Id,DISJOINT] := DISJOINT (* added 2002 August 30 based on DIVIDES.NB *) composite[Id,DIV] := DIV (* derived 2008 December 25 in COD-DOM.NB *) composite[Id,dom[x_]] := dom[x] (* Theorem IDX-CO4B in IDX3 *) composite[x_,id[domain[x_]]] := composite[Id,x] (* derived 2008 November 17 in ASS-WRAP.NB *) composite[Id,domain[assoc[x_]]] := domain[assoc[x]] (* derived 2008 October 7 in BNP-WRAP.NB *) composite[Id,domain[binop[x_]]] := domain[binop[x]] (* derived 2009 January 3 in CAT-AX-1.NB *) composite[Id,domain[cat[x_]]] := domain[cat[x]] (* Theorem FUNP-RS2 in FU3 proved 2000 February 5 *) composite[x_,id[domain[funpart[x_]]]] := funpart[x] (* derived 2005 September 27 in LUB-SET.NB *) composite[id[domain[x_]],GLB[x_]] := GLB[x] (* derived 2009 January 21 in HOM.NB *) composite[Id,domain[hom[x_]]] := domain[hom[x]] (* derived 2005 September 27 in GLB-LUB.NB *) composite[id[domain[x_]],intersection[complement[composite[complement[x_],id[domain[x_]],LB[x_]]],LB[x_]]] := GLB[x] (* derived 2005 October 22 in IDX-CO-I.NB *) composite[id[domain[x_]],intersection[y_,inverse[x_]]] := intersection[y,inverse[x]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[domain[x_]],inverse[x_]] := inverse[x] (* added 2002 November 17 based on LB-UB.NB *) composite[id[domain[x_]],LEAST[x_]] := LEAST[x] (* derived 2004 December 11 in RESTRICT.NB *) composite[x_,id[domain[oopart[x_]]]] := oopart[x] (* derived 2008 October 9 in QUASIGP.NB *) composite[Id,domain[quasigp[x_]]] := domain[quasigp[x]] (* derived 2008 October 19 in SEMIGP.NB *) composite[Id,domain[semigp[x_]]] := domain[semigp[x]] (* derived 2006 August 6 in THINPART.NB *) composite[x_,id[domain[thinpart[x_]]]] := thinpart[x] (* derived 2004 May 14 in THINPART.NB *) composite[x_,id[domain[VERTSECT[x_]]]] := thinpart[x] (* derived 2007 December 26 in SCHRODER.NB *) composite[id[domain[VERTSECT[x_]]],complement[composite[complement[inverse[x_]],y_]]] := composite[inverse[VERTSECT[x]],S,VERTSECT[y]] (* derived 2004 September 30 in EQV-THNP.NB *) composite[id[domain[VERTSECT[eqv[x_]]]],eqv[x_]] := thinpart[eqv[x]] (* derived 2004 May 14 in REPLACE.NB *) composite[id[domain[VERTSECT[x_]]],inverse[x_]] := inverse[thinpart[x]] (* added 2003 June 17 based on THINRULE.NB *) composite[id[domain[VERTSECT[x_]]],LB[x_]] := composite[inverse[VERTSECT[x]],S] (* derived 2005 October 15 in TO-THIN.NB *) composite[id[domain[VERTSECT[to[x_]]]],thinpart[to[x_]]] := thinpart[to[x]] (* derived 2005 January 26 in THPT-TRV.NB *) composite[id[domain[VERTSECT[trv[x_]]]],thinpart[trv[x_]]] := thinpart[trv[x]] (* Theorem DUP-ID in DUP1 proved 1998 November 5 *) composite[Id,DUP] := DUP (* Theorem DUP-FP3 in DUP proved 1998 November 21 *) composite[id[x_],DUP] := composite[DUP,id[fix[x]]] (* Theorem ID-CO4-E in ID/ID-CO *) composite[Id,E] := E (* added 2002 November 3 based on EQUIDIFF.NB *) composite[Id,EQUIDIFF] := EQUIDIFF (* derived 2004 May 12 in EQV-GEN.NB *) composite[Id,eqv[x_]] := eqv[x] (* derived 2008 November 4 in EQV.NB *) composite[id[EQV],inverse[VS],inverse[IMAGE[SECOND]]] := composite[BIGCUP,IMAGE[CART],IMAGE[DUP], id[intersection[cliques[union[DISJOINT,Id]],P[complement[set[0]]]]]] (* derived 2003 December 22 in LOW-CARD.NB *) composite[id[FINITE],inverse[CARD]] := composite[inverse[CARD],id[omega]] (* derived 2004 March 14 in WF-WO.NB *) composite[id[FINITE],PS,id[FINITE]] := composite[id[FINITE],PS] (* added 2003 December 9 based on ITER-K.NB *) composite[id[FINITE],Q] := composite[inverse[CARD],id[omega],CARD] (* Theorem 1ST-ID in 1ST *) composite[Id,FIRST] := FIRST (* Corollary 1ST-IDX in 1ST proved 1998 November 21 *) composite[id[x_],FIRST] := composite[FIRST,id[cart[x,V]]] (* added 2001 March 4 based on FIX-FF.NB *) composite[f_,id[fix[f_]]] := id[fix[f]] /; FUNCTION[f] (* added 2001 March 4 based on FIX-FF.NB *) composite[id[fix[g_]],g_] := id[fix[g]] /; INVFUN[g] (* added 2002 October 22 based on CO-ID.NB *) composite[id[fix[ACLOSURE]],ACLOSURE] := ACLOSURE (* added 2002 October 22 based on CO-ID.NB *) composite[id[fix[CARD]],CARD] := CARD (* added 2001 December 17 based on Q-HAT.NB *) composite[id[fix[CARD]],inverse[CARD]] := id[fix[CARD]] (* added 2001 December 17 based on Q-HAT.NB *) composite[id[fix[CARD]],Q] := CARD (* added 1999 December 23 based on ASSOCDUP.NB *) composite[Id,fix[composite[x_,CAP]]] := fix[composite[x,CAP]] (* derived 2004 November 26 in XS-CP.NB *) composite[Id,fix[composite[x_,CART]]] := fix[composite[x,CART]] (* derived 2007 October 7 in FPCO-DUP.NB *) composite[Id,fix[composite[x_,COMPOSE]]] := fix[composite[x,COMPOSE]] (* added 2002 December 26 based on REPLACE.NB *) composite[Id,fix[composite[cross[x_,y_],z_]]] := fix[composite[cross[x,y],z]] (* added 2002 November 10 based on FIX-SW-X.NB *) composite[Id,fix[composite[x_,cross[y_,z_]]]] := fix[composite[x,cross[y,z]]] (* added 1999 December 23 based on ASSOCDUP.NB *) composite[Id,fix[composite[x_,CUP]]] := fix[composite[x,CUP]] (* added 1999 December 23 based on ASSOCDUP.NB *) composite[Id,fix[composite[x_,DIF]]] := fix[composite[x,DIF]] (* present in LOAD.M dated 1996 April 30 *) composite[Id,fix[composite[x_,FIRST]]] := fix[composite[x,FIRST]] (* added 1999 September 28 based on TRI-FP.LOG *) composite[Id,fix[composite[z_,intersection[composite[x_,FIRST], composite[y_,SECOND]]]]] := fix[composite[z, intersection[composite[x,FIRST],composite[y,SECOND]]]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[fix[composite[x_,y_]]],intersection[x_,inverse[y_]]] := intersection[x,inverse[y]] (* derived 2004 June 14 in FU-F-O.NB *) composite[x_,id[fix[composite[inverse[x_],Di,x_]]]] := intersection[x,composite[Di,x]] (* present in LOAD.M dated 1996 April 30 *) composite[Id,fix[composite[inverse[FIRST],x_]]] := fix[composite[inverse[FIRST],x]] (* present in LOAD.M dated 1996 April 30 *) composite[Id,fix[composite[inverse[SECOND],x_]]] := fix[composite[inverse[SECOND],x]] (* added 2000 December 3 based on IN-E.NB *) composite[Id,fix[composite[x_,PAIRSET]]] := fix[composite[x,PAIRSET]] (* present in LOAD.M dated 1996 April 30 *) composite[Id,fix[composite[x_,SECOND]]] := fix[composite[x,SECOND]] (* added 1998 August 11 *) composite[Id,fix[composite[SWAP,x_]]] := fix[composite[SWAP,x]] (* added 1998 August 11 *) composite[Id,fix[composite[x_,SWAP]]] := fix[composite[x,SWAP]] (* added 1999 December 23 based on ASSOCDUP.NB *) composite[Id,fix[composite[x_,SYMDIF]]] := fix[composite[x,SYMDIF]] (* derived 2007 May 2 in CARDCARD.NB *) composite[id[fix[E]],CARD] := 0 (* derived 2004 December 16 in VS-EQV.NB *) composite[id[fix[eqv[x_]]],inverse[VERTSECT[eqv[x_]]],VERTSECT[eqv[x_]],id[fix[eqv[x_]]]] := thinpart[eqv[x]] (* derived 2006 September 15 in ID-CHAR.NB *) composite[x_,id[fix[funpart[x_]]]] := id[fix[funpart[x]]] (* derived 2004 December 16 in RFX-CORE.NB *) composite[id[fix[x_]],x_,id[fix[x_]]] := rfx[x] (* added 2002 October 22 based on CO-ID.NB *) composite[id[fix[x_]],GREATEST[x_]] := GREATEST[x] (* added 2000 January 11 based on HER-FIX1.NB *) composite[id[fix[IMAGE[inverse[S]]]],inverse[IMAGE[inverse[S]]]] := id[fix[IMAGE[inverse[S]]]] (* derived 2007 June 30 in MAP.NB *) composite[id[fix[IMAGE[inverse[S]]]],POWER] := POWER (* derived 2005 April 7 in WF-TO.NB *) composite[id[fix[x_]],intersection[Di,complement[inverse[x_]]]] := composite[id[fix[x]],complement[inverse[x]]] (* derived 2006 October 11 in R-S-CORE.NB *) composite[id[fix[x_]],intersection[x_,inverse[x_]],id[fix[x_]]] := intersection[inverse[rfx[x]],rfx[x]] (* derived 2004 December 17 in RFX.NB *) composite[id[fix[x_]],inverse[x_],id[fix[x_]]] := inverse[rfx[x]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[fix[x_]],LEAST[x_]] := LEAST[x] (* derived 2005 October 22 in IDX-CO-I.NB *) composite[id[fix[po[x_]]],intersection[y_,inverse[po[x_]]]] := intersection[y,inverse[po[x]]] (* derived 2005 October 22 in IDX-CO-I.NB *) composite[id[fix[po[x_]]],intersection[y_,po[x_]]] := intersection[y,po[x]] (* derived 2008 June 26 in PO-ISO-S.NB *) composite[id[fix[po[x_]]],inverse[VERTSECT[inverse[po[x_]]]],inverse[S], VERTSECT[inverse[po[x_]]],id[fix[po[x_]]]] := thinpart[inverse[po[x]]] (* derived 2008 June 26 in PO-ISO-S.NB *) composite[id[fix[po[x_]]],inverse[VERTSECT[inverse[po[x_]]]],S,VERTSECT[inverse[po[x_]]], id[fix[po[x_]]]] := inverse[thinpart[inverse[po[x]]]] (* derived 2005 October 1 in PO-THIN.NB *) composite[id[fix[po[x_]]],inverse[VERTSECT[po[x_]]],inverse[S], VERTSECT[po[x_]],id[fix[po[x_]]]] := thinpart[po[x]] (* derived 2005 October 15 in OO-PO.NB *) composite[id[fix[po[x_]]],inverse[VERTSECT[po[x_]]],S, VERTSECT[po[x_]],id[fix[po[x_]]]] := inverse[thinpart[po[x]]] (* derived 2007 June 13 in THIN-PO.NB *) composite[id[fix[po[x_]]],inverse[VERTSECT[po[x_]]],VERTSECT[po[x_]],id[fix[po[x_]]]] := id[fix[thinpart[po[x]]]] (* derived 2006 January 24 in THPT-PO.NB *) composite[id[fix[po[x_]]],thinpart[po[x_]]] := thinpart[po[x]] (* derived 2007 June 13 in THIN-PO.NB *) composite[id[fix[thinpart[po[x_]]]],inverse[VERTSECT[thinpart[po[x_]]]], VERTSECT[thinpart[po[x_]]],id[fix[thinpart[po[x_]]]]] := id[fix[thinpart[po[x]]]] (* derived 2005 October 22 in IDX-CO-I.NB *) composite[id[fix[to[x_]]],intersection[y_,inverse[to[x_]]]] := intersection[y,inverse[to[x]]] (* derived 2005 October 22 in IDX-CO-I.NB *) composite[id[fix[to[x_]]],intersection[y_,to[x_]]] := intersection[y,to[x]] (* derived 2005 October 15 in OO-PO.NB *) composite[id[fix[to[x_]]],inverse[VERTSECT[to[x_]]],inverse[S],VERTSECT[to[x_]],id[fix[to[x_]]]] := thinpart[to[x]] (* derived 2005 October 15 in OO-PO.NB *) composite[id[fix[to[x_]]],inverse[VERTSECT[to[x_]]],S,VERTSECT[to[x_]],id[fix[to[x_]]]] := inverse[thinpart[to[x]]] (* derived 2004 December 16 in RFX-CORE.NB *) composite[id[fix[trv[x_]]],eqv[x_]] := eqv[x] (* derived 2004 December 17 in RFXTRV-C.NB *) composite[id[fix[trv[x_]]],inverse[VERTSECT[rfx[trv[x_]]]],inverse[S], VERTSECT[rfx[trv[x_]]],id[fix[trv[x_]]]] := thinpart[rfx[trv[x]]] (* derived 2005 October 15 in OORFXTRV.NB *) composite[id[fix[trv[x_]]],inverse[VERTSECT[rfx[trv[x_]]]],S,VERTSECT[rfx[trv[x_]]],id[fix[trv[x_]]]] := inverse[thinpart[rfx[trv[x]]]] (* derived 2005 November 19 in TOP.NB *) composite[id[fix[UCLOSURE]],HULL[TOPS]] := HULL[TOPS] (* added 2002 October 22 based on CO-ID.NB *) composite[id[fix[UCLOSURE]],UCLOSURE] := UCLOSURE (* derived 2005 October 22 in WO-DI.NB *) composite[id[fix[wo[x_]]],intersection[Di,inverse[wo[x_]]]] := intersection[Di,inverse[wo[x]]] (* derived 2005 October 22 in WO-DI.NB *) composite[id[fix[wo[x_]]],intersection[Di,wo[x_]]] := intersection[Di,wo[x]] (* derived 2005 January 5 in CORE-ON.NB *) composite[id[FULL],CORE[OMEGA]] := CORE[OMEGA] (* added 2001 March 31 based on HF.NB *) composite[id[FULL],HC] := HC (* added 2002 April 27 based on FULSUC-F.NB *) composite[id[FULL],intersection[E,complement[S]]] := 0 (* added 2000 January 8 based on REMOVED.NB *) composite[id[FULL],intersection[S,composite[complement[S],TC]]] := 0 (* added 2003 June 22 based on FP-HC.NB *) composite[id[FULL],inverse[S],HC] := composite[id[FULL],inverse[S]] (* derived 2005 February 17 in NAT-ACL.NB *) composite[id[FULL],inverse[S],id[omega]] := composite[id[omega],inverse[S],id[omega]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[FULL],TC] := TC (* added 2000 September 8 based on FUNPART.LOG *) composite[Id,FUNPART] := FUNPART (* corollary of Theorem FUNPART3 in FU1 *) composite[Id,funpart[x_]] := funpart[x] (* added 2002 September 25 based on CONSTFNS.NB *) composite[id[FUNS],CART,cross[Id,SINGLETON]] := composite[CART,cross[Id,SINGLETON]] (* derived 2006 December 23 in FUNPART.NB *) composite[id[FUNS],CHAR[x_]] := CHAR[x] (* added 2000 September 9 based on FNP-2.NB *) composite[id[FUNS],FUNPART] := FUNPART (* derived 2006 February 4 in INVOL.NB *) composite[id[FUNS],HULL[SYM]] := HULL[INVOL] (* derived 2006 November 18 in CURMAP-3.NB *) composite[id[FUNS],intersection[composite[inverse[IMAGE[FIRST]],FIRST,FIRST], composite[inverse[IMAGE[SECOND]],inverse[S],MAP,cross[SECOND,Id]]]] := composite[inverse[E],MAP,cross[Id,MAP],ASSOC] (* derived 2004 November 16 in XS.NB *) composite[id[FUNS],intersection[composite[inverse[IMAGE[FIRST]],IMAGE[FIRST]],inverse[S]]] := composite[inverse[E],XS] (* added 2001 April 30 based on OP.NB *) composite[id[FUNS],intersection[composite[inverse[IMAGE[SECOND]],inverse[S]],inverse[IMAGE[FIRST]]]] := composite[inverse[E],MAP,DUP] (* added 2001 April 28 based on MAP2.NB *) composite[id[FUNS],intersection[composite[inverse[S],CART], composite[inverse[IMAGE[FIRST]],FIRST]]] := composite[inverse[E],MAP] (* derived 2008 October 23 in SU-FU.NB *) composite[id[FUNS],intersection[S,composite[inverse[IMAGE[FIRST]],IMAGE[FIRST]]]] := id[FUNS] (* derived 2006 December 21 in ZTIMES-2.NB *) composite[id[FUNS],INTTIMES] := INTTIMES (* derived 2006 November 18 in CURMAP-3.NB *) composite[id[FUNS],inverse[DORA],cross[x_,inverse[S]]] := composite[inverse[E],MAP,cross[x,Id]] (* added 2000 September 4 based on NEW-Q.NB *) composite[id[FUNS],INVERSE,id[FUNS]] := composite[INVERSE,id[BIJ]] (* derived 2004 December 19 in FUNS-EQV.NB *) composite[id[FUNS],inverse[IMAGE[SWAP]]] := composite[id[FUNS],INVERSE] (* added 2003 October 8 based on FS-CUP.NB *) composite[id[FUNS],LB[LB[complement[cross[Id,Di]]]],id[FUNS]] := image[inverse[CUP],FUNS] (* derived 2006 November 21 in TIMES.NB *) composite[id[FUNS],TIMES] := TIMES (* derived 2004 January 4 in VS-IMIN.NB *) composite[id[FUNS],VS] := VS (* derived 2005 September 27 in GLB-LUB.NB *) composite[Id,GLB[x_]] := GLB[x] (* added 2000 November 13 based on MAX.NB *) composite[Id,GREATEST[x_]] := GREATEST[x] (* added 2000 December 29 based on GT-RS.NB *) composite[id[y_],GREATEST[x_],id[P[y_]]] := composite[GREATEST[x],id[P[y]]] (* derived 2008 January 22 in HART-FU.NB *) composite[Id,HARTOGS] := HARTOGS (* derived 2009 January 21 in HOM.NB *) composite[Id,hom[x_]] := hom[x] (* derived 2006 March 7 in HULL-ON.NB *) composite[id[x_],HULL[intersection[OMEGA,x_]]] := HULL[intersection[OMEGA,x]] (* Theorem ID-CO8 in ID/ID-CO *) composite[Id,Id] := Id composite[Id,id[x_]] := id[x] (* Theorem IDX-CO-I in IDX2 *) composite[id[x_],id[y_]] := id[intersection[x,y]] (* added 1998 July 2 *) composite[id[Id],Di,DUP] := composite[DUP,Di] composite[id[Id],inverse[FIRST]] := DUP composite[id[id[x_]],inverse[FIRST]] := composite[DUP,id[x]] composite[id[Id],inverse[SECOND]] := DUP composite[id[id[x_]],inverse[SECOND]] := composite[DUP,id[x]] (* derived 2007 June 6 in IDEMWRAP.NB *) composite[Id,idem[x_]] := idem[x] (* derived 2008 December 25 in COD-DOM.NB *) composite[id[ids[x_]],domain[x_]] := dom[x] (* derived 2008 December 25 in COD-DOM.NB *) composite[id[ids[x_]],inverse[cod[x_]]] := id[ids[x]] (* derived 2008 December 25 in COD-DOM.NB *) composite[id[ids[x_]],inverse[dom[x_]]] := id[ids[x]] (* derived 2008 December 25 in COD-DOM.NB *) composite[id[ids[x_]],inverse[domain[x_]]] := cod[x] (* see IMG-1DEM in IMG1.DEM *) composite[Id,IMAGE[x_]] := IMAGE[x] (* based on 1999 December 11 notebook CART-DUP.NB *) composite[id[image[CART,Id]],inverse[IMAGE[inverse[DUP]]]] := composite[CART,DUP] (* derived 2008 October 4 in BIN-NORM.NB *) composite[id[image[CART,Id]],S,IMAGE[DUP]] := composite[id[image[CART,Id]],S,CART,DUP] (* added 2002 October 22 based on CO-ID.NB *) composite[id[image[x_,cart[V,V]]],x_,SWAP] := composite[x,SWAP] (* derived 2008 December 23 in CATO-IDS.NB *) composite[Id,image[CATOFUNS,x_]] := image[CATOFUNS,x] (* added 2002 October 22 based on CO-ID.NB *) composite[id[image[x_,domain[y_]]],x_,inverse[y_]] := composite[x,inverse[y]] (* added 2002 February 5 based on DORA.NB *) composite[Id,image[DORA,x_]] := image[DORA,x] (* derived 2008 November 24 in IMIN-ASS.NB *) composite[Id,image[inverse[assoc[x_]],y_]] := image[inverse[assoc[x]],y] (* added 1999 October 8 based on CAP-LOG.2 *) composite[Id,image[inverse[CAP],x_]] := image[inverse[CAP],x] (* added 1999 October 5 based on CARTINIM.LOG *) composite[Id,image[inverse[CART],x_]] := image[inverse[CART],x] (* derived 2009 January 3 in CAT-AX-1.NB *) composite[Id,image[inverse[cat[x_]],y_]] := image[inverse[cat[x]],y] (* added 1999 December 4 based on COMPOSE.NB *) composite[Id,image[inverse[COMPOSE],x_]] := image[inverse[COMPOSE],x] (* added 1999 December 21 based on CROSS.NB *) composite[Id,image[inverse[CROSS],x_]] := image[inverse[CROSS],x] (* added 1999 November 17 based on NEWRULES.1 *) composite[Id,image[inverse[CUP],x_]] := image[inverse[CUP],x] (* added 1999 November 17 based on NEWRULES.1 *) composite[Id,image[inverse[DIF],x_]] := image[inverse[DIF],x] (* added 2002 October 22 based on CO-ID.NB *) composite[x_,y_,id[image[inverse[y_],domain[x_]]]] := composite[x,y] (* added 2002 October 22 based on CO-ID.NB *) composite[id[image[inverse[y_],domain[x_]]],inverse[y_],inverse[x_]] := composite[inverse[y],inverse[x]] (* derived 2006 November 28 in FUNPOOPT.NB *) composite[id[image[inverse[funpart[x_]],y_]],inverse[funpart[x_]]] := composite[inverse[funpart[x]],id[y]] (* based on 1999 December 10 notebook FUNPART.NB *) composite[Id,image[inverse[IMG],x_]] := image[inverse[IMG],x] (* added 2003 August 12 based on RO-ZADD.NB *) composite[Id,image[inverse[INTADD],x_]] := image[inverse[INTADD],x] (* derived 2006 March 4 in KURA.NB *) composite[Id,image[inverse[KURA],x_]] := image[inverse[KURA],x] (* added 2001 September 4 based on BIN-IMIN.NB *) composite[Id,image[inverse[MAP],x_]] := image[inverse[MAP],x] (* added 2002 June 18 based on NATSUB.NB *) composite[Id,image[inverse[NATADD],x_]] := image[inverse[NATADD],x] (* derived 2006 November 28 in NATEXP-5.NB *) composite[Id,image[inverse[NATEXP],x_]] := image[inverse[NATEXP],x] (* derived 2005 May 17 based on NATMOD.NB *) composite[Id,image[inverse[NATMOD],x_]] := image[inverse[NATMOD],x] (* added 2002 September 3 based on DIV-ONE.NB *) composite[Id,image[inverse[NATMUL],x_]] := image[inverse[NATMUL],x] (* derived 2006 November 28 in FUNPOOPT.NB *) composite[id[image[inverse[oopart[x_]],y_]],inverse[oopart[x_]]] := composite[inverse[oopart[x]],id[y]] (* added 2000 December 3 based on DO-LT.NB *) composite[Id,image[inverse[PAIRSET],x_]] := image[inverse[PAIRSET],x] (* derived 2008 October 18 in QG-ROT.NB *) composite[Id,image[inverse[quasigp[x_]],y_]] := image[inverse[quasigp[x]],y] (* derived 2007 January 1 in INTMUL-4.NB *) composite[id[image[INVERSE,range[PLUS]]],INVERSE] := composite[INVERSE,id[range[PLUS]]] (* derived 2006 November 28 in FUNPOOPT.NB *) composite[id[image[oopart[x_],y_]],oopart[x_]] := composite[oopart[x],id[y]] (* derived 2007 May 3 in SMALLWOB.NB *) composite[id[image[Q,OMEGA]],SMALLER,id[image[Q,OMEGA]]] := composite[inverse[CARD],E,CARD] (* added 2002 October 22 based on CO-ID.NB *) composite[id[image[x_,range[y_]]],x_,y_] := composite[x,y] (* derived 2003 December 30 in T2.NB *) composite[id[image[RC[omega],FINITE]],DISJOINT,id[image[RC[omega],FINITE]]] := 0 (* added 1999 December 4 based on 1999/DEC/03/CURRY-SD.NB *) composite[Id,image[inverse[SYMDIF],x_]] := image[inverse[SYMDIF],x] (* From ADJOIN.LOG session 1999 April 15 *) composite[id[image[S,set[x_]]],intersection[S, composite[inverse[IMAGE[id[complement[x_]]]],inverse[S]]]] := ADJOIN[x] (* added 2002 June 4 based on PWR-COID.NB *) composite[Id,image[power[x_],y_]] := image[power[x],y] (* added 2002 October 22 based on CO-ID.NB *) composite[id[image[S,set[x_]]],ADJOIN[x_]] := ADJOIN[x] (* added 1999 November 21 based on 1999/NOV/20/CUT-ADJ.NB *) composite[id[image[S,set[x_]]],inverse[IMAGE[id[complement[x_]]]]] := composite[ADJOIN[x],id[P[complement[x]]]] (* added 2003 August 8 based on REPLACE.NB *) composite[id[image[S,set[x_]]],plus[x_]] := plus[x] (* derived 2006 October 10 in RA-SG-DJ.NB *) composite[id[image[SINGLETON,x_]],E] := composite[SINGLETON,id[x]] (* derived 2004 December 16 in VS-EQV.NB *) composite[id[IMAGE[SWAP]],inverse[FIRST],VS] := composite[id[INVERSE],inverse[FIRST],VS] composite[x_,id[image[V,x_]]] := composite[Id,x] composite[x_,y_,id[image[V,x_]]] := composite[x,y] (* added 1999 December 19 to prevent looping *) composite[id[image[V,x_]],id[image[V,y_]]] := id[intersection[image[V,x],image[V,y]]] (* derived 2008 December 3 in CURRY-BO.NB *) composite[id[image[V,intersection[fix[domain[binop[x_]]],set[y_]]]],binop[x_],LEFT[y_]] := composite[binop[x],LEFT[y]] (* derived 2008 December 3 in CURRY-BO.NB *) composite[id[image[V,intersection[fix[domain[binop[x_]]],set[y_]]]],binop[x_],RIGHT[y_]] := composite[binop[x],RIGHT[y]] (* derived 2006 December 9 in EXTRA.NB *) composite[id[image[V,intersection[omega,set[x_]]]],MIXMUL,RIGHT[x_]] := composite[MIXMUL,RIGHT[x]] (* derived 2006 June 29 in NATEXP-3.NB *) composite[id[image[V,intersection[omega,set[x_]]]],NATEXP,LEFT[x_]] := composite[NATEXP,LEFT[x]] (* derived 2006 June 29 in NATEXP-3.NB *) composite[id[image[V,intersection[omega,set[x_]]]],NATEXP,RIGHT[x_]] := composite[NATEXP,RIGHT[x]] (* derived 2008 September 15 in INTTIMES.NB *) composite[id[image[V,intersection[Z,set[x_]]]],inttimes[x_]] := inttimes[x] (* derived 2006 November 1 in LTRT-IMV.NB *) composite[id[image[V,set[x_]]],image[y_,set[x_]]] := composite[Id,image[y,set[x]]] (* derived 2006 November 1 in LTRT-IMV.NB *) composite[id[image[V,set[x_]]],inverse[image[y_,set[x_]]]] := inverse[image[y,set[x]]] (* derived 2006 November 1 in LTRT-IMV.NB *) composite[id[image[V,set[x_]]],inverse[modulo[x_]]] := inverse[modulo[x]] (* derived 2006 November 1 in LTRT-IMV.NB *) composite[id[image[V,set[x_]]],inverse[times[x_]]] := inverse[times[x]] (* derived 2006 October 28 in NATMOD.NB *) composite[id[image[V,set[x_]]],modulo[x_]] := modulo[x] (* added 2000 September 10 based on VS.NB *) composite[id[image[V,set[x_]]],RC[x_]] := RC[x] (* derived 2006 November 1 in LTRT-IMV.NB *) composite[id[image[V,set[x_]]],times[x_]] := times[x] (* added 2001 December 17 based on Q-HAT.NB *) composite[id[image[Q,OMEGA]],CARD] := CARD (* added 2001 December 17 based on Q-HAT.NB *) composite[id[image[Q,OMEGA]],Q] := composite[inverse[CARD],CARD] (* added 1999 December 19 based on ID-IMV.NB removed 1999 December 23 because of looping in TRYTHIS.NB composite[id[image[V,x_]],y_] := composite[y,id[image[V,x]]] *) (* derived 2004 April 25 in ADJOIN.NB *) composite[id[image[V,x_]],ADJOIN[A[x_]]] := ADJOIN[A[x]] (* added 2002 November 2 based on PAIR-V.NB *) composite[id[image[V,x_]],y_,id[complement[image[V,x_]]]] := 0 (* added 2002 July 2 based on ITER-IMV.NB *) composite[id[image[V,w_]],x_,id[image[V,w_]]] := composite[id[image[V,w]],x] (* added 2003 August 8 based on REPLACE.NB *) composite[id[image[V,intersection[omega,set[x_]]]],y___,inverse[plus[x_]]] := composite[y,inverse[plus[x]]] (* derived 2005 July 18 in REPLACE.NB *) composite[id[image[V,intersection[omega,set[x_]]]],iterate[iterate[SUCC,set[x_]],set[0]]] := times[x] (* added 2003 August 8 based on REPLACE.NB *) composite[id[image[V,intersection[omega,set[x_]]]],iterate[SUCC,set[x_]]] := plus[x] (* derived 2005 July 18 in MODULO.NB *) composite[id[image[V,intersection[omega,set[x_]]]],modulo[x_]] := modulo[x] (* added 2003 August 8 based on REPLACE.NB *) composite[id[image[V,intersection[omega,set[x_]]]],y___,plus[x_]] := composite[y,plus[x]] (* derived 2005 July 17 in TIMES.NB *) composite[id[image[V,intersection[omega,set[x_]]]],y___,times[x_]] := composite[y,times[x]] (* derived 2006 December 11 in ITER-MIX.NB *) composite[id[image[V,intersection[Z,set[x_]]]], iterate[composite[image[inverse[INTADD],set[x_]],INVERSE],set[id[omega]]]] := composite[MIXMUL,LEFT[x]] (* derived 2008 September 15 in REPLACE.NB *) composite[id[image[V,intersection[Z,set[x_]]]],MIXMUL,LEFT[x_]] := composite[MIXMUL,LEFT[x]] (* added 2003 September 11 based on ID-IMV.NB *) composite[id[image[V,set[x_]]],y___,ADJOIN[x_]] := composite[y,ADJOIN[x]] (* added 2003 August 12 based on RO-ZADD.NB *) composite[id[image[V,set[x_]]],y___,image[inverse[INTADD],set[x_]]] := composite[y,image[inverse[INTADD],set[x]]] (* added 2003 August 8 based on REPLACE.NB *) composite[id[image[V,set[x_]]],y___,inverse[plus[x_]]] := composite[y,inverse[plus[x]]] (* added 2002 July 4 based on NATADD.NB *) composite[id[image[V,set[y_]]],iterate[x_,set[y_]]] := iterate[x,set[y]] (* added 2002 August 25 based on LEFT-MUL.NB *) composite[id[image[V,set[x_]]],y___,LEFT[x_]] := composite[y,LEFT[x]] (* added 2003 August 8 based on REPLACE.NB *) composite[id[image[V,set[x_]]],y___,plus[x_]] := composite[y,plus[x]] (* added 2003 September 11 based on ID-IMV.NB *) composite[id[image[V,set[x_]]],y___,RC[x_]] := composite[y,RC[x]] (* added 2003 September 11 based on ID-IMV.NB *) composite[id[image[V,set[x_]]],y___,RC[U[x_]]] := composite[y,RC[U[x]]] (* added 2002 August 25 based on LEFT-MUL.NB *) composite[id[image[V,set[x_]]],y___,RIGHT[x_]] := composite[y,RIGHT[x]] (* derived 2008 November 7 in VS-A.NB *) composite[id[image[V,x_]],VERTSECT[A[x_]]] := VERTSECT[A[x]] (* derived 2006 October 16 in EQV-PROJ.NB *) composite[id[image[VERTSECT[eqv[thinpart[x_]]],fix[eqv[thinpart[x_]]]]],E] := composite[VERTSECT[eqv[thinpart[x]]],id[fix[eqv[thinpart[x]]]]] (* derived 2006 October 21 in INTDIV.NB *) composite[Id,INTDIV] := INTDIV composite[Id,intersection[x_,y_]] := intersection[x,y] /; x == composite[Id,x] (* derived 2008 November 4 in EQV.NB *) composite[id[intersection[cliques[union[DISJOINT,Id]],P[complement[set[0]]]]],inverse[IMAGE[DUP]], inverse[IMAGE[CART]],inverse[BIGCUP]] := composite[IMAGE[SECOND],VS,id[EQV]] (* derived 2004 June 12 based on X1196.NB *) composite[id[x_],intersection[y_,complement[composite[Di,id[x_],y_]]]] := funpart[composite[id[x],y]] composite[x_,id[intersection[complement[domain[x_]],y_]]] := 0 (* derived 2004 June 14 in FU-F-O.NB *) composite[Id,intersection[x_,complement[funpart[x_]]]] := intersection[x,composite[Di,x]] (* derived 2007 June 6 in IDEMWRAP.NB *) composite[id[intersection[complement[image[V,fix[composite[complement[inverse[x_]],x_,x_]]]], complement[image[V,intersection[x_,complement[composite[x_,x_]]]]]]],x_] := idem[x] (* derived 2007 June 6 in IDEMWRAP.NB *) composite[id[intersection[complement[image[V,fix[composite[inverse[x_],inverse[x_],complement[x_]]]]], complement[image[V,intersection[x_,complement[composite[x_,x_]]]]]]],x_] := idem[x] (* derived 2007 May 2 in REIF-WO.NB *) composite[Id,intersection[complement[image[V,intersection[complement[fix[x_]],domain[x_]]]], complement[image[V,intersection[complement[fix[x_]],range[x_]]]], complement[image[V,intersection[complement[domain[funpart[LEAST[x_]]]], complement[set[0]],P[fix[x_]]]]],x_]] := wo[x] (* added 2002 July 30 based on ADD-INV.NB *) composite[id[intersection[x_,complement[omega]]],image[inverse[NATADD],y_]] := 0 (* added 2002 May 27 based on ITERSUCC.NB *) composite[id[intersection[x_,complement[set[0]]]],E] := composite[id[x],E] (* derived 2004 September 18 in WF-WRAP.NB *) composite[id[intersection[x_,complement[U[subvar[y_]]]]],y_] := composite[id[x],wf[y]] (* added 2001 March 8 based on FUNRULE2.NB *) composite[f_,id[x_],intersection[y_,composite[g_,z_]]] := intersection[z,composite[f,id[x],y]] /; And[FUNCTION[f],inverse[f]==g] composite[x_,id[intersection[domain[x_],y_]]] := composite[x,id[y]] (* derived 2004 August 10 in RS-3.NB *) composite[x_,id[intersection[y_,domain[VERTSECT[x_]]]]] := composite[thinpart[x],id[y]] (* derived 2007 October 19 in RECT-CUT.NB *) composite[id[intersection[u_,image[x_,v_]]],x_, id[intersection[v_,image[inverse[x_],u_]]]] := composite[id[u],x,id[v]] (* added 2003 October 21 based on MONOPLUS.NB *) composite[id[intersection[image[S,set[x_]], image[V,intersection[omega,set[x_]]]]],plus[x_]] := plus[x] (* added 1999 December 19 based on ID-IMV.NB removed 1999 December 23 because of looping in TRYTHIS.NB composite[id[intersection[x_,image[V,y_]]],z_] := composite[id[x],z,id[image[V,y]]] *) (* derived 2005 July 21 in Q15.NB *) composite[id[intersection[x_,image[V,intersection[omega,set[y_]]]]],modulo[y_]] := composite[id[x],modulo[y]] (* derived 2004 April 26 in ANTITONE.NB *) composite[id[intersection[y_,image[V,set[x_]]]],z___,RC[x_]] := composite[id[y],z,RC[x]] composite[x_,id[intersection[image[V,x_],y_]]] := composite[x,id[y]] composite[x_,y_,id[intersection[image[V,x_],z_]]] := composite[x,y,id[z]] (* added 2002 July 4 based on NATADD.NB *) composite[id[intersection[w_,image[V,set[y_]]]], iterate[x_,set[y_]]] := composite[id[w],iterate[x,set[y]]] (* added 2002 February 3 based on RCF.NB *) composite[id[intersection[image[V,set[x_]],P[x_]]], intersection[DISJOINT,composite[S,RC[x_]]]] := RC[x] (* derived 2008 October 22 in JOIN-RS.NB *) composite[id[intersection[LISTS,x_]],JOIN] := composite[id[x],JOIN] (* revised 2003 June 1 based on REPLACE.NB *) composite[id[intersection[OMEGA,complement[fix[BIGCUP]]]], inverse[IMAGE[inverse[SUCC]]]] := composite[id[OMEGA],SUCC] (* derived 2007 May 23 in OL-C-ORD.NB *) composite[id[intersection[OMEGA,complement[ord[x_]]]],SUCC, id[intersection[OMEGA,complement[ord[x_]]]]] := composite[SUCC,id[intersection[OMEGA,complement[ord[x]]]]] (* derived 2006 November 22 in NATADD.NB *) composite[id[intersection[omega,x_]],image[inverse[NATADD],y_]] := composite[id[x],image[inverse[NATADD],y]] (* derived 2006 November 21 in NATMUL.NB *) composite[id[intersection[omega,x_]],image[inverse[NATMUL],y_]] := composite[id[x],image[inverse[NATMUL],y]] (* added 2003 August 8 based on REPLACE.NB *) composite[id[intersection[omega,x_]],iterate[SUCC,set[y_]]] := composite[id[x],plus[y]] (* added 2002 September 15 based on NATADDEZ.NB *) composite[id[intersection[omega,x_]],NATADD] := composite[id[x],NATADD] (* added 2003 August 8 based on REPLACE.NB *) composite[id[intersection[omega,x_]],plus[y_]] := composite[id[x],plus[y]] (* derived 2006 November 21 in TIMES.NB *) composite[id[intersection[omega,x_]],times[y_]] := composite[id[x],times[y]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[intersection[y_,P[x_]]],RC[x_]] := composite[id[y],RC[x]] (* derived 2004 April 25 in IDEMPOT.NB *) composite[id[intersection[y_,P[x_]]],CORE[z_],RC[x_]] := composite[id[y],CORE[z],RC[x]] composite[id[intersection[x_,range[z_]]],z_] := composite[id[x],z] (* derived 2006 September 24 in INTLEQ.NB *) composite[Id,INTLEQ] := INTLEQ (* derived 2006 December 21 in INTMUL-1.NB *) composite[Id,INTMUL] := INTMUL (* derived 2006 December 19 in ZTIMES-1.NB *) composite[Id,INTTIMES] := INTTIMES (* derived 2008 September 15 in INTTIMES.NB *) composite[Id,inttimes[x_]] := inttimes[x] (* derived 2009 January 21 in INV.NB *) composite[Id,inv[x_]] := inv[x] (* added 2002 April 10 based on INVAR.NB *) composite[Id,INVAR] := INVAR (* Theorem ID-COIN1 in ID/ID-CO *) composite[Id,inverse[x_]] := inverse[x] (* added 2002 October 22 based on CO-ID.NB *) composite[id[x_],inverse[y_]] := inverse[y] /; x==domain[y] (* a special case of rule added 2000 September 3 based on DUP-1.NB *) composite[f_,id[x_],inverse[f_]] := id[image[f,x]] /; FUNCTION[f] (* added 2001 January 27 based on BETTER.NB *) composite[id[inverse[FIRST]],cross[Id,inverse[SECOND]]] := composite[id[inverse[FIRST]],inverse[SECOND]] (* added 2001 June 28 based on OP.NB *) composite[id[x_],inverse[FIRST],FIRST,id[x_]] := id[x] /; FUNCTION[x] (* derived 2008 December 23 in CATORELN.NB *) composite[id[inverse[IMAGE[DUP]]],inverse[FIRST],inverse[IMAGE[FIRST]]] := composite[id[inverse[IMAGE[DUP]]],inverse[SECOND]] (* derived 2004 December 16 in VS-EQV.NB *) composite[id[inverse[IMAGE[SWAP]]],inverse[SECOND],VS] := composite[id[INVERSE],inverse[SECOND],VS] (* added 2002 December 27 based on TWIST.NB *) composite[id[x_],inverse[ROT]] := composite[inverse[ROT],id[rotate[x]]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[id[inverse[S]],EQUIDIFF] := composite[EQUIDIFF,id[inverse[S]]] (* added 2001 June 28 based on OP.NB *) composite[id[x_],inverse[SECOND],SECOND,id[x_]] := id[x] /; INVFUN[x] (* added 2002 April 15 based on ITERATE.NB *) composite[Id,iterate[x_,y_]] := iterate[x,y] (* added 2000 May 14 based on K-2.NB *) composite[Id,K] := K (* added 2000 November 7 based on LB-2.NB *) composite[Id,LB[x_]] := LB[x] (* added 2000 November 13 based on MAX.NB *) composite[Id,LEAST[x_]] := LEAST[x] (* added 2000 December 28 based on LT-DO-RS.NB *) composite[id[y_],LEAST[x_],id[P[y_]]] := composite[LEAST[x],id[P[y]]] (* added 1999 August 16 on basis of session NORMAL.3 *) composite[Id,LEFT[x_]] := LEFT[x] (* added 1999 December 6 based on CURRY.NB *) composite[id[x_],LEFT[y_]] := composite[LEFT[y],id[image[x,set[y]]]] (* rules added 1998 January 22 *) composite[Id,LeftPairV] := LeftPairV (* derived 2008 October 24 in SUFX-PO.NB *) composite[id[LISTS],intersection[x_,composite[JOIN,inverse[SECOND]]],id[LISTS]] := intersection[x,composite[JOIN,inverse[SECOND]]] (* derived 2005 September 27 in GLB-LUB.NB *) composite[Id,LUB[x_]] := LUB[x] (* added 2001 April 27 based on MAP2.NB *) composite[Id,MAP] := MAP (* added 2000 November 13 based on MAX.NB *) composite[Id,MAXIMAL[x_]] := MAXIMAL[x] (* added 2000 November 13 based on MAX.NB *) composite[Id,MINIMAL[x_]] := MINIMAL[x] (* derived 2006 December 3 in MIXDIV.NB *) composite[Id,MIXDIV] := MIXDIV (* derived 2006 December 5 in MIXTIMES.NB *) composite[Id,MIXTIMES] := MIXTIMES (* derived 2005 July 18 in MODULO.NB *) composite[Id,modulo[x_]] := modulo[x] (* derived 2008 April 17 in ORD-NAT.NB *) composite[id[nat[x_]],inverse[IMAGE[id[nat[x_]]]]] := id[nat[x]] (* derived 2007 September 19 in UCH-WF.NB *) composite[id[nat[x_]],inverse[PS],id[nat[x_]]] := composite[inverse[E],id[nat[x]]] (* derived 2008 April 17 in ORD-NAT.NB *) composite[id[nat[x_]],PS,id[nat[x_]]] := composite[id[nat[x]],E] (* added 2002 June 12 based on NATADD.NB *) composite[Id,NATADD] := NATADD (* derived 2006 June 27 in NATEXP-1.NB *) composite[Id,NATEXP] := NATEXP (* derived 2005 February 16 in BC-OM.NB *) composite[id[omega],ADJOIN[set[0]],id[omega]] := composite[ADJOIN[set[0]],id[omega]] (* added 2001 December 14 based on CARD-Q.NB *) composite[id[OMEGA],CARD] := CARD (* added 2003 December 9 based on ITER-K.NB *) composite[id[omega],CARD,inverse[K]] := composite[inverse[SUCC],id[omega],CARD] (* added 2003 December 9 based on ITER-K.NB *) composite[id[omega],CARD,K] := composite[id[omega],SUCC,CARD] (* added 2002 November 13 based on NATMUL.NB *) composite[id[omega],complement[composite[complement[ composite[rotate[composite[inverse[power[SUCC]],SWAP]],RIF, cross[SECOND,composite[SWAP,SECOND]], id[composite[id[cart[omega,V]],inverse[FIRST],SUCC,FIRST]], cross[inverse[E],Id]]],id[composite[inverse[E], IMAGE[id[complement[cart[set[0],Id]]]]]], inverse[FIRST]]],inverse[IMAGE[cross[Id,inverse[LEFT[0]]]]], inverse[IMAGE[SWAP]],E] := rotate[NATMUL] (* derived 2008 June 3 in CARD-ORD.NB *) composite[id[OMEGA],complement[E],CARD] := composite[id[OMEGA],inverse[S],CARD] (* added 2002 June 3 based on REPLACE.NB *) composite[id[omega],complement[E],id[omega]] := composite[id[omega],inverse[S],id[omega]] (* added 2002 June 2 based on ON-C-E-S.NB *) composite[id[OMEGA],complement[E],id[OMEGA]] := composite[id[OMEGA],inverse[S],id[OMEGA]] (* added 2002 June 3 based on REPLACE.NB *) composite[id[omega],complement[inverse[E]],id[omega]] := composite[id[omega],S,id[omega]] (* added 2002 June 2 based on ON-C-E-S.NB *) composite[id[OMEGA],complement[inverse[E]],id[OMEGA]] := composite[id[OMEGA],S,id[OMEGA]] (* added 2002 June 3 based on REPLACE.NB *) composite[id[omega],complement[inverse[S]],id[omega]] := composite[id[omega],E] (* added 2002 June 2 based on S-SUCC.NB *) composite[id[OMEGA],complement[inverse[S]],id[OMEGA]] := composite[id[OMEGA],E] (* added 2002 June 3 based on REPLACE.NB *) composite[id[omega],complement[S],id[omega]] := composite[inverse[E],id[omega]] (* added 2002 June 2 based on ON-C-E-S.NB *) composite[id[OMEGA],complement[S],id[OMEGA]] := composite[inverse[E],id[OMEGA]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[omega],DIV] := DIV (* derived 2005 April 16 in FACTRL.NB *) composite[id[omega],FACTORIAL] := FACTORIAL (* derived 2008 January 22 in HART-FU.NB *) composite[id[OMEGA],HARTOGS] := HARTOGS (* derived 2006 March 7 in HULL-ON.NB *) composite[id[OMEGA],HULL[intersection[OMEGA,x_]]] := HULL[intersection[OMEGA,x]] (* derived 2008 April 24 in ITERPRIM.NB *) composite[id[omega],HULL[PRIMES]] := HULL[PRIMES] (* derived 2006 December 16 in ZEROPROD.NB *) composite[id[omega],image[inverse[MIXMUL],x_]] := image[inverse[MIXMUL],x] (* added 2002 July 30 based on IMIN-ADD.NB *) composite[id[omega],image[inverse[NATADD],x_]] := image[inverse[NATADD],x] (* derived 2006 November 28 in NATEXP-5.NB *) composite[id[omega],image[inverse[NATEXP],x_]] := image[inverse[NATEXP],x] (* derived 2006 November 21 in NATMUL.NB *) composite[id[omega],image[inverse[NATMUL],x_]] := image[inverse[NATMUL],x] (* added 2002 August 24 based on SUCCITER.NB *) composite[id[omega],image[power[SUCC],x_]] := composite[NATADD,id[cart[V,x]],inverse[FIRST]] (* derived 2008 November 29 in INT-WRAP.NB *) composite[id[omega],int[x_]] := int[x] (* derived 2005 February 18 in MUL-NORM.NB *) composite[id[omega],intersection[complement[composite[SECOND,id[cart[V,omega]], intersection[composite[inverse[FIRST],SECOND],composite[inverse[NATMUL],complement[S],FIRST]]]], complement[rotate[composite[complement[S],NATMUL]]]],id[cart[V,omega]]] := rotate[NATMUL] (* derived 2006 March 25 in PC-ON-A.NB *) composite[id[OMEGA],intersection[DISJOINT,inverse[E]]] := composite[BIGCAP,IMAGE[id[OMEGA]]] (* added 2002 June 3 based on REPLACE.NB *) composite[id[omega],intersection[E,complement[inverse[E]]]] := composite[id[omega],E] (* added 2002 June 2 based on S-SUCC.NB *) composite[id[OMEGA],intersection[E,complement[inverse[E]]]] := composite[id[OMEGA],E] (* added 2002 June 3 based on REPLACE.NB *) composite[id[omega],intersection[E,complement[inverse[S]]]] := composite[id[omega],E] (* added 2002 June 2 based on S-SUCC.NB *) composite[id[OMEGA],intersection[E,complement[inverse[S]]]] := composite[id[OMEGA],E] (* added 2002 June 3 based on REPLACE.NB *) composite[id[omega],intersection[E,complement[S]]] := 0 (* added 2002 June 2 based on S-SUCC.NB *) composite[id[OMEGA],intersection[E,complement[S]]] := 0 (* derived 2008 August 5 in E-E-ON.NB *) composite[id[OMEGA],intersection[E,composite[inverse[BIGCUP],complement[E]]]] := composite[id[OMEGA],SUCC] (* added 2002 June 3 based on REPLACE.NB *) composite[id[omega],intersection[E,x_],id[omega]] := composite[id[omega],intersection[E,x]] (* added 2002 June 2 based on S-SUCC.NB *) composite[id[OMEGA],intersection[E,x_],id[OMEGA]] := composite[id[OMEGA],intersection[E,x]] (* added 2002 June 3 based on REPLACE.NB *) composite[id[omega],intersection[E,inverse[E]]] := 0 (* added 2002 June 2 based on S-SUCC.NB *) composite[id[OMEGA],intersection[E,inverse[E]]] := 0 (* added 2002 June 3 based on REPLACE.NB *) composite[id[omega],intersection[E,inverse[S]]] := 0 (* added 2002 June 2 based on S-SUCC.NB *) composite[id[OMEGA],intersection[E,inverse[S]]] := 0 (* added 2002 June 3 based on REPLACE.NB *) composite[id[omega],intersection[x_,inverse[E]],id[omega]] := composite[intersection[x,inverse[E]],id[omega]] (* added 2002 June 2 based on S-SUCC.NB *) composite[id[OMEGA],intersection[x_,inverse[E]],id[OMEGA]] := composite[intersection[x,inverse[E]],id[OMEGA]] (* derived 2008 August 5 in E-E-ON.NB *) composite[id[OMEGA],intersection[PS,complement[composite[PS,id[OMEGA],PS]]],id[OMEGA]] := composite[id[OMEGA],SUCC] (* added 2002 April 23 based on ON-SUCC.NB *) composite[id[OMEGA],intersection[PS,complement[E]],id[FULL]] := 0 (* added 2002 June 2 based on ON-ORD-4.NB *) composite[id[OMEGA],intersection[PS,complement[E]],id[OMEGA]] := 0 (* added 2002 May 28 based on FINITE.NB *) composite[id[omega],inverse[CARD]] := id[omega] (* added 2002 May 26 based on SUCC-ID.NB *) composite[id[omega],inverse[IMAGE[id[omega]]]] := id[omega] (* added 2002 May 26 based on SUCC-ID.NB *) composite[id[OMEGA],inverse[IMAGE[id[OMEGA]]]] := id[OMEGA] (* derived 2005 February 19 in ITR-OM-E.NB *) composite[id[omega],inverse[IMAGE[inverse[S]]],inverse[IMAGE[id[omega]]],E] := composite[id[omega],E] (* added 2002 May 26 based on COMMUTE.NB *) composite[id[omega],inverse[IMAGE[inverse[SUCC]]]] := union[cart[set[0],set[0]],composite[id[omega],SUCC]] (* derived 2006 April 29 in ITERMONO.NB *) composite[id[omega],inverse[iterate[x_,y_]]] := inverse[iterate[x,y]] (* added 2003 December 9 based on ITER-K.NB *) composite[id[omega],inverse[K],id[omega]] := composite[inverse[SUCC],id[omega]] (* added 2003 August 8 based on REPLACE.NB *) composite[id[omega],inverse[plus[x_]]] := inverse[plus[x]] (* derived 2007 September 19 in UCH-WF.NB *) composite[id[omega],inverse[PS],id[omega]] := composite[inverse[E],id[omega]] (* derived 2007 November 1 in MAX-ON.NB *) composite[id[OMEGA],inverse[PS],id[OMEGA]] := composite[inverse[E],id[OMEGA]] (* added 2002 June 21 based on NATASS.NB *) composite[id[omega],inverse[S],id[omega],inverse[S],id[omega]] := composite[id[omega],inverse[S],id[omega]] (* added 2002 June 20 based on OMEGA-S.NB *) composite[id[omega],inverse[S],id[omega],S,id[omega]] := cart[omega,omega] (* added 2002 September 24 based on ADD-S.NB *) composite[id[omega],inverse[S],image[inverse[NATADD],set[x_]]] := composite[image[inverse[NATADD],set[x]],S,id[omega]] (* added 2002 April 15 based on OM-SUCC.NB *) composite[id[omega],inverse[SUCC]] := composite[inverse[SUCC],id[omega]] (* added 2002 May 26 based on SUCC-ID.NB *) composite[id[OMEGA],inverse[SUCC]] := composite[inverse[SUCC],id[OMEGA]] (* derived 2005 July 17 in TIMES.NB *) composite[id[omega],inverse[times[x_]]] := inverse[times[x]] (* derived 2006 April 11 in ZN-OM.NB *) composite[id[omega],inverse[ZN]] := composite[id[omega],S,RANK] (* derived 2005 January 5 in RANK-S.NB *) composite[id[OMEGA],inverse[ZN]] := composite[id[OMEGA],S,RANK] (* added 2002 December 23 based on REPLACE.NB *) composite[id[omega],iterate[composite[NATADD,x_],set[0]]] := iterate[composite[NATADD,x],set[0]] (* added 2002 July 5 based on NATADD-2.NB *) composite[id[omega],iterate[inverse[SUCC],x_]] := image[inverse[NATADD],x] (* derived 2005 July 18 in REPLACE.NB *) composite[id[omega],iterate[iterate[SUCC,set[x_]],set[0]]] := union[cart[set[0], intersection[complement[image[V,intersection[omega,set[x]]]],set[0]]],times[x]] (* added 2003 August 7 based on PLUS.NB *) composite[id[omega],iterate[SUCC,set[x_]]] := plus[x] (* added 2003 December 9 based on ITER-K.NB *) composite[id[omega],K,id[omega]] := composite[id[omega],SUCC] (* derived 2005 January 13 in K-ON.NB *) composite[id[OMEGA],K,id[OMEGA]] := composite[id[OMEGA],SUCC] (* derived 2005 July 18 in MODULO.NB *) composite[id[omega],modulo[x_]] := modulo[x] (* added 2002 October 22 based on CO-ID.NB *) composite[id[omega],NATADD] := NATADD (* added 2002 October 22 based on CO-ID.NB *) composite[id[omega],NATMUL] := NATMUL (* derived 2006 March 12 in OLIST-OO.NB *) composite[id[OMEGA],ordlist[x_]] := ordlist[x] (* added 2003 August 8 based on REPLACE.NB *) composite[id[omega],plus[x_]] := plus[x] (* derived 2005 August 17 in PRIMESEQ.NB *) composite[id[omega],PRIMESEQ] := PRIMESEQ (* added 2002 June 3 based on REPLACE.NB *) composite[id[omega],PS,id[omega]] := composite[id[omega],E] (* added 2002 June 2 based on ON-ORD-4.NB *) composite[id[OMEGA],PS,id[OMEGA]] := composite[id[OMEGA],E] (* added 2002 May 28 based on FINITE.NB *) composite[id[omega],Q] := composite[id[omega],CARD] (* derived 2008 June 5 in CARDHART.NB *) composite[id[OMEGA],Q,id[OMEGA],Q] := composite[id[OMEGA],Q] (* derived 2008 June 5 in CARDHART.NB *) composite[id[OMEGA],Q,inverse[E],HARTOGS] := composite[inverse[E],HARTOGS] (* added 2002 October 22 based on CO-ID.NB *) composite[id[OMEGA],RANK] := RANK (* added 2003 July 5 based on PLUS-ISO.NB *) composite[id[omega],rotate[composite[inverse[power[SUCC]],SWAP]]] := composite[rotate[NATADD],SWAP] (* added 2002 June 12 based on NATADD.NB *) composite[id[omega],rotate[inverse[power[SUCC]]]] := NATADD (* derived 2005 November 2 in S-RS.NB *) composite[id[omega],S,id[FINITE]] := composite[id[omega],S] (* added 2002 June 20 based on OMEGA-S.NB *) composite[id[omega],S,id[omega],inverse[S],id[omega]] := cart[omega,omega] (* derived 2005 November 2 in S-RS.NB *) composite[id[omega],S,id[omega],S] := composite[id[omega],S] (* derived 2007 May 23 in SU-ON.NB *) composite[id[OMEGA],S,id[OMEGA],S] := composite[id[OMEGA],S] (* added 2002 June 3 based on S-ON.TXT *) composite[id[omega],S,id[omega],SUCC] := composite[id[omega],E] (* added 2003 June 2 based on ON-CO.NB *) composite[id[OMEGA],S,id[OMEGA],SUCC] := composite[id[OMEGA],E] (* added 2002 June 3 based on REPLACE.NB *) composite[id[omega],S,SUCC] := composite[id[omega],E] (* added 2002 June 2 based on S-SUCC.NB *) composite[id[OMEGA],S,SUCC] := composite[id[OMEGA],E] (* derived 2008 August 10 in SMALL-OM.NB *) composite[id[omega],SMALLER,id[omega]] := composite[id[omega],E] (* derived 2003 December 24 in UCL-ON.NB *) composite[id[OMEGA],SUCC,BIGCUP,id[OMEGA]] := composite[SUCC,BIGCUP,id[OMEGA]] (* added 2002 June 16 based on LEFT-ROT.NB *) composite[id[omega],SUCC,NATADD] := composite[SUCC,NATADD] (* added 2003 August 8 based on REPLACE.NB *) composite[id[omega],SUCC,plus[x_]] := composite[SUCC,plus[x]] (* derived 2005 August 17 in PRIMESEQ.NB *) composite[id[omega],SUCC,PRIMESEQ] := composite[SUCC,PRIMESEQ] (* added 2002 June 3 based on S-ON.TXT *) composite[id[omega],SUCC,S,id[omega]] := composite[id[omega],E] (* derived 2006 June 22 in PLUSTIME.NB *) composite[id[omega],SUCC,times[x_]] := composite[SUCC,times[x]] (* added 2001 December 4 based on TC-ON.NB *) composite[id[OMEGA],TC] := composite[TC,id[P[OMEGA]]] (* derived 2005 July 17 in TIMES.NB *) composite[id[omega],times[x_]] := times[x] (* added 2002 June 16 based on ADD-1ST.NB *) composite[id[omega],trv[SUCC]] := composite[id[omega],E] (* derived 2004 May 9 in OOPART.NB *) composite[Id,OOPART] := OOPART (* derived 2008 April 17 in ORD-NAT.NB *) composite[id[ord[x_]],inverse[IMAGE[id[ord[x_]]]]] := id[ord[x]] (* derived 2008 April 17 in ORD-NAT.NB *) composite[id[ord[x_]],PS,id[ord[x_]]] := composite[id[ord[x]],E] (* derived 2006 March 12 in OLIST-OO.NB *) composite[id[x_],ordlist[x_]] := ordlist[x] (* derived 2006 November 5 in CURRY.NB *) composite[id[P[cart[cart[x_,y_],z_]]],inverse[IMAGE[ASSOC]]] := composite[IMAGE[inverse[ASSOC]],id[P[cart[x,cart[y,z]]]]] (* derived 2006 November 9 in IMG-FLIP.NB *) composite[id[P[cart[cart[x_,y_],z_]]],inverse[IMAGE[cross[SWAP,Id]]]] := composite[IMAGE[cross[SWAP,Id]],id[P[cart[cart[y,x],z]]]] (* derived 2006 November 5 in CURRY.NB *) composite[id[P[cart[x_,cart[y_,z_]]]],inverse[IMAGE[inverse[ASSOC]]]] := composite[IMAGE[ASSOC],id[P[cart[cart[x,y],z]]]] (* added 2001 November 20 based on UNWRAP.NB *) composite[id[P[cart[cart[V,V],cart[V,V]]]],CROSS] := CROSS (* derived 2008 October 28 in BCL-CPS.NB *) composite[id[P[cart[x_,y_]]],COMPOSE,id[cart[P[cart[x_,y_]],P[cart[x_,y_]]]]] := composite[COMPOSE,id[cart[P[cart[x,y]],P[cart[x,y]]]]] (* derived 2008 September 14 in INTARITH.NB *) composite[id[P[cart[omega,omega]]],INTADD] := INTADD (* derived 2008 September 15 in INTARITH.NB *) composite[id[P[cart[omega,omega]]],INTMUL] := INTMUL (* added 2002 November 30 based on Z-PLUS.NB *) composite[id[P[cart[omega,omega]]],PLUS] := PLUS (* derived 2006 November 21 in TIMES.NB *) composite[id[P[cart[omega,omega]]],TIMES] := TIMES (* derived 2006 November 21 in TIMES.NB *) composite[id[P[cart[omega,V]]],TIMES] := TIMES (* derived 2006 November 21 in TIMES.NB *) composite[id[P[cart[V,omega]]],TIMES] := TIMES (* corollary of CART-RA5 in CART proved 1999 July 26 *) composite[id[P[cart[V,V]]],CART] := CART (* added 2002 October 22 based on CO-ID.NB *) composite[id[P[cart[V,V]]],COMPOSE] := COMPOSE (* derived 2007 August 9 in COREPROJ.NB *) composite[id[P[cart[V,V]]],CORE[PROJ]] := CORE[PROJ] (* derived 2004 December 17 in RFX.NB *) composite[id[P[cart[V,V]]],CORE[RFX]] := CORE[RFX] (* derived 2007 May 6 in HULL-SYM.NB *) composite[id[P[cart[V,V]]],CORE[SYM]] := CORE[SYM] (* added 2002 January 2 based on CRSRULES.NB *) composite[id[P[cart[V,V]]],CROSS] := CROSS (* derived 2006 November 24 in CO-VS.NB *) composite[id[P[cart[V,V]]],CURRY] := CURRY (* derived 2004 May 12 in EQUIV.NB *) composite[id[P[cart[V,V]]],EQUIV] := EQUIV (* added 2001 May 24 based on REIFY.NB *) composite[id[P[cart[V,V]]],FUNPART] := FUNPART (* derived 2005 November 19 in EQV.NB *) composite[id[P[cart[V,V]]],HULL[EQV]] := HULL[EQV] (* derived 2007 August 7 in HULL-SYM.NB *) composite[id[P[cart[V,V]]],HULL[invar[SWAP]]] := HULL[SYM] (* derived 2007 May 9 in RFX.NB *) composite[id[P[cart[V,V]]],HULL[RFX]] := HULL[RFX] (* derived 2007 May 6 in HULL-SYM.NB *) composite[id[P[cart[V,V]]],HULL[SYM]] := HULL[SYM] (* added 2002 July 9 based on HULL-TRV.NB *) composite[id[P[cart[V,V]]],HULL[TRV]] := HULL[TRV] (* derived 2006 September 30 in HULL-INV.NB *) composite[id[P[cart[V,V]]],HULL[Z]] := HULL[Z] composite[id[P[cart[V,V]]],IMAGE[DUP]] := IMAGE[DUP] (* derived 2008 October 7 in BNP-WRAP.NB *) composite[id[P[cart[V,V]]],IMAGE[FIRST],id[BINOPS]] := composite[IMAGE[FIRST],id[BINOPS]] composite[id[P[cart[V,V]]],IMAGE[id[Id]]] := IMAGE[id[Id]] (* derived 2007 January 23 in IMINZADD.NB *) composite[id[P[cart[V,V]]],image[inverse[INTADD],x_]] := image[inverse[INTADD],x] (* derived 2006 November 14 in MINGLI.NB *) composite[id[P[cart[V,V]]],INTADD] := INTADD (* derived 2006 October 21 in INTDIV.NB *) composite[id[P[cart[V,V]]],INTDIV] := INTDIV (* derived 2004 September 25 in WFPART.NB *) composite[id[P[cart[V,V]]],intersection[composite[S,WFPART], composite[inverse[IMAGE[SECOND]],DISJOINT,BIGCUP,SUBVAR],inverse[S]]] := WFPART (* derived 2007 October 19 in RECT-CUT.NB *) composite[id[P[cart[V,V]]],intersection[inverse[S], UB[union[E,composite[inverse[DORA],inverse[CART],complement[E]]]]]] := composite[CAP,id[cart[V,range[CART]]],inverse[FIRST]] (* derived 2006 September 24 in INTLEQ.NB *) composite[id[P[cart[V,V]]],INTLEQ] := INTLEQ (* derived 2006 December 29 in INTMUL-3.NB *) composite[id[P[cart[V,V]]],INTMUL] := INTMUL (* derived 2008 August 11 in CO-ID-RA.NB *) composite[id[P[cart[V,V]]],INTTIMES] := INTTIMES (* derived 2008 September 15 in REPLACE.NB *) composite[id[P[cart[V,V]]],inttimes[x_]] := inttimes[x] (* added 2002 October 22 based on CO-ID.NB *) composite[id[P[cart[V,V]]],INVERSE] := INVERSE (* derived 2007 October 30 in RFX-CPTV.NB *) composite[id[P[cart[V,V]]],inverse[HULL[invar[SWAP]]]] := inverse[HULL[SYM]] (* added 2000 June 14 based on IMAGE-Q.NB *) composite[id[P[cart[V,V]]],inverse[IMAGE[SWAP]]] := INVERSE (* derived 2006 November 24 in CO-VS.NB *) composite[id[P[cart[V,V]]],LAMBHULL] := LAMBHULL (* derived 2008 August 11 in CO-ID-RA.NB *) composite[id[P[cart[V,V]]],MIXDIV] := MIXDIV (* derived 2007 January 9 in MIXMUL.NB *) composite[id[P[cart[V,V]]],MIXMUL] := MIXMUL (* derived 2006 December 9 in SIMPLIFY.NB *) composite[id[P[cart[V,V]]],MIXTIMES] := MIXTIMES (* derived 2006 October 29 in OOPART.NB *) composite[id[P[cart[V,V]]],OOPART] := OOPART (* added 2002 November 29 based on PLUS.NB *) composite[id[P[cart[V,V]]],PLUS] := PLUS (* added 2003 May 5 based on IN-E-RCF.NB *) composite[id[P[cart[V,V]]],RCF] := RCF composite[id[P[cart[V,V]]],SINGLETON,DUP] := composite[SINGLETON,DUP] (* derived 2006 October 26 in MUL-TIM.NB *) composite[id[P[cart[V,V]]],TIMES] := TIMES (* derived 2007 October 19 in RECT-CUT.NB *) composite[id[P[cart[V,V]]],UB[union[E,composite[inverse[DORA],inverse[CART],complement[E]]]]] := fix[composite[inverse[DIF],DISJOINT,intersection[S,composite[CART,DORA]],SECOND]] (* derived 2004 January 4 in VS-IMIN.NB *) composite[id[P[cart[V,V]]],VS] := VS (* derived 2004 September 25 in LAMB-WF.NB *) composite[id[P[cart[V,V]]],WFPART] := WFPART (* derived 2004 April 25 in HULL-RC.NB *) composite[id[P[x_]],CORE[y_],id[z_],RC[x_]] := composite[CORE[y],id[z],RC[x]] (* derived 2004 April 25 in IDEMPOT.NB *) composite[id[P[x_]],CORE[y_],RC[x_]] := composite[CORE[y],RC[x]] (* added 1999 December 19 based on DISJOINT.NB *) composite[id[P[x_]],DISJOINT,IMAGE[id[x_]]] := composite[id[P[x]],DISJOINT] (* derived 2007 December 26 in SCHRODER.NB *) composite[id[P[domain[VERTSECT[x_]]]],E,inverse[x_]] := composite[inverse[IMAGE[x]],E] (* added 2002 February 4 based on RCF-NORM.NB *) composite[id[P[DISJOINT]],inverse[UB[CUP]]] := composite[inverse[S],RCF] (* derived 2007 June 13 in THIN-PO.NB *) composite[id[P[fix[po[thinpart[x_]]]]],inverse[IMAGE[VERTSECT[po[thinpart[x_]]]]], IMAGE[VERTSECT[po[thinpart[x_]]]],id[P[fix[po[thinpart[x_]]]]]] := id[P[fix[po[thinpart[x]]]]] (* added 2001 April 30 based on OP.NB *) composite[id[P[FUNS]],intersection[ composite[inverse[BIGCUP],inverse[IMAGE[SECOND]],inverse[S]], inverse[UB[IMAGE[FIRST]]]]] := composite[inverse[S],MAP,DUP] (* added 2001 December 23 based on MAP-1.NB *) composite[id[P[FUNS]],intersection[composite[inverse[UB[IMAGE[FIRST]]],FIRST], composite[inverse[BIGCUP],inverse[IMAGE[SECOND]],inverse[S],SECOND]]] := composite[inverse[S],MAP] (* added 2001 April 27 based on MAP2.NB *) composite[id[P[FUNS]],MAP] := MAP (* derived 2004 November 16 in XS.NB *) composite[id[P[FUNS]],XS] := XS (* added 2001 November 22 based on IDP.NB *) composite[id[P[Id]],inverse[IMAGE[FIRST]]] := IMAGE[DUP] (* derived 2008 January 15 in CO-SEL.NB *) composite[id[P[Id]],inverse[IMAGE[SECOND]]] := IMAGE[DUP] (* derived 2007 May 26 in IMG-ID.NB *) composite[id[P[x_]],IMAGE[id[y_]],id[P[x_]]] := composite[IMAGE[id[y]],id[P[x]]] (* added 1999 December 24 based on SYMDIF-2.NB *) composite[id[P[x_]],image[inverse[SYMDIF],set[x_]]] := RC[x] (* derived 2007 October 21 in SYM-RSX.NB *) composite[id[P[x_]],intersection[y_,composite[inverse[S],IMAGE[id[x_]]]]] := intersection[y,composite[inverse[S],IMAGE[id[x]]]] (* added 1999 November 13 based on CARTNORM.1 *) composite[id[P[x_]],intersection[y_,composite[inverse[IMAGE[id[x_]]],z_]]] := composite[id[P[x]],intersection[y,z]] (* added 2001 May 29 nased on PBF-RULE.NB *) composite[id[P[x_]],intersection[composite[S,IMAGE[composite[id[x_],inverse[f_]]]], composite[inverse[IMAGE[f_]],inverse[S]]]] := IMAGE[composite[id[x],inverse[f]]] /; And[FUNCTION[f],subclass[x,domain[f]]] (* derived 2008 July 9 in C-CO-C-E.NB *) composite[id[P[x_]],intersection[composite[S,VERTSECT[composite[id[x_],y_]]],inverse[LB[y_]]]] := VERTSECT[composite[id[x],y]] (* revised 1999 December 20 based on CUP-C8.NB *) composite[id[P[x_]],intersection[DISJOINT,composite[S,RC[x_]]]] := RC[x] (* added 1999 November 21 based on 1999/NOV/20/CUT-ADJ.NB *) composite[id[P[x_]],intersection[composite[S,IMAGE[id[x_]]],inverse[S]]] := IMAGE[id[x]] (* added 2000 September 4 based on NEW.M *) composite[id[P[x_]],inverse[IMAGE[id[y_]]]] := id[P[x]] /; subclass[x,y] (* Theorem FIX-IDP5 in FIX2 proved 1998 December 20 *) composite[id[P[Id]],inverse[IMAGE[inverse[DUP]]]] := IMAGE[DUP] (* derived 2006 June 10 in SYMDIF.NB *) composite[id[P[x_]],inverse[IMAGE[id[complement[x_]]]]] := cart[set[0],P[x]] composite[id[P[x_]],inverse[IMAGE[id[x_]]]] := id[P[x]] (* derived 2006 March 2 in WFINPSPC.NB *) composite[id[P[x_]],inverse[PS],id[P[x_]]] := composite[inverse[PS],id[P[x]]] (* direction needed for Normality of IMAGE[id[x]] *) composite[id[P[x_]],inverse[S]] := composite[inverse[S],IMAGE[id[x]]] (* derived 2005 January 5 in CORE-ON.NB *) composite[id[P[OMEGA]],CORE[OMEGA]] := CORE[OMEGA] (* derived 2005 January 5 in CORE-ON.NB *) composite[id[P[OMEGA]],HC] := composite[id[OMEGA],HC] (* derived 2008 January 22 in HART-FU.NB *) composite[id[P[OMEGA]],intersection[composite[S,HARTOGS],inverse[UB[composite[Q,S]]]]] := HARTOGS (* derived 2007 June 13 in IMGVSDIV.NB *) composite[id[P[omega]],inverse[IMAGE[VERTSECT[DIV]]], IMAGE[VERTSECT[DIV]],id[P[omega]]] := id[P[omega]] (* derived 2005 January 5 in REPLACE.NB *) composite[id[P[OMEGA]],RANK] := RANK (* added 2001 December 4 based on TC-ON.NB *) composite[id[P[OMEGA]],TC] := composite[TC,id[P[OMEGA]]] (* derived 2006 November 11 in CO-MAP.NB *) composite[id[P[P[cart[V,V]]]],MAP] := MAP (* derived 2006 February 28 in PS.NB *) composite[id[P[x_]],PS,id[P[x_]]] := composite[id[P[x]],PS] (* added 1999 October 29 based on 1999 October 28 session RC-LOG.1 *) composite[id[P[x_]],RC[x_]] := RC[x] (* derived 2006 June 10 in SYMDIF.NB *) composite[id[P[x_]],S,IMAGE[id[complement[x_]]]] := cart[P[x],P[x]] (* added 2003 October 21 based on LAMHUL-2.NB *) composite[id[P[S]],LAMBHULL] := LAMBHULL (* derived 2006 August 29 in SYMDIF.NB *) composite[id[P[x_]],SYMDIF,id[cart[P[x_],V]]] := composite[SYMDIF,id[cart[P[x],P[x]]]] (* derived 2006 August 29 in SYMDIF.NB *) composite[id[P[x_]],SYMDIF,id[cart[V,P[x_]]]] := composite[SYMDIF,id[cart[P[x],P[x]]]] (* derived 2005 July 24 in TC-HULL.NB *) composite[id[P[tc[x_]]],TC] := composite[TC,id[P[tc[x]]]] (* added 2003 June 24 based on INTERIOR.NB *) composite[id[P[U[x_]]],CORE[x_]] := CORE[x] (* derived 2007 August 2 in HULL-SG.NB *) composite[id[P[U[x_]]],HULL[x_]] := HULL[x] (* added 1999 October 2 based on PAIRSET.4 *) composite[Id,PAIRSET] := PAIRSET (* added 2002 November 29 based on PLUS.NB *) composite[Id,PLUS] := PLUS (* added 2003 August 7 based on PLUS.NB *) composite[Id,plus[x_]] := plus[x] (* derived 2005 October 1 in PO-WRAP.NB *) composite[Id,po[x_]] := po[x] (* added 1998 August 7 *) composite[Id,POWER] := POWER (* added 2002 based on POWER.NB *) composite[Id,power[x_]] := power[x] (* derived 2005 August 17 in MONOPRSQ.NB *) composite[id[PRIMES],inverse[IMAGE[inverse[PRIMESEQ]]],E] := composite[PRIMESEQ,E] (* derived 2005 August 17 in PRIMESEQ.NB *) composite[id[PRIMES],PRIMESEQ] := PRIMESEQ (* Theorem PS-ID in PS1 proved 1998 November 28 *) composite[Id,PS] := PS (* Theorem Q-1B in Q proved 2000 April 25 *) composite[Id,Q] := Q (* Theorem IDX-CO3B in IDX3 *) composite[id[range[x_]],x_] := composite[Id,x] (* added 2002 October 22 based on CO-ID.NB *) composite[id[range[domain[x_]]],rotate[x_]] := rotate[x] (* added 2002 November 17 based on LB-UB.NB *) composite[id[range[x_]],GREATEST[x_]] := GREATEST[x] (* derived 2007 June 6 in IDEMWRAP.NB *) composite[id[range[idem[x_]]],x_] := idem[x] (* derived 2005 October 22 in IDX-CO-I.NB *) composite[id[range[x_]],intersection[x_,y_]] := composite[Id,intersection[x,y]] (* derived 2005 September 27 in GLB-LUB.NB *) composite[id[range[x_]],intersection[complement[composite[complement[inverse[x_]],id[range[x_]],UB[x_]]],UB[x_]]] := LUB[x] composite[Id,range[LeftPairV]] := 0 (* derived 2005 September 27 in LUB-SET.NB *) composite[id[range[x_]],LUB[x_]] := LUB[x] (* derived 2008 August 11 in CO-ID-RA.NB *) composite[id[range[PAIRSET]],KURA] := KURA (* derived 2006 October 31 in EVALPLUS.NB *) composite[id[range[PLUS]],inverse[eval[x_]]] := composite[PLUS,inverse[plus[x]]] (* Theorem POW-CO4 in POW3 proved 1998 September 19 *) composite[id[range[POWER]],E] := composite[id[range[POWER]],S,POWER] (* added 1998 August 9 *) composite[id[range[POWER]],inverse[BIGCAP]] := cart[set[0],range[POWER]] (* Theorem POW-BC9 in POW5 proved 1999 January 27 *) composite[id[range[POWER]],inverse[BIGCUP]] := POWER (* derived 2006 January 17 in POW-SG.NB *) composite[id[range[POWER]],inverse[IMAGE[POWER]],E] := composite[id[range[POWER]],S,id[range[POWER]]] composite[Id,range[RightPairV]] := 0 (* added 1998 July 2 *) composite[id[range[SINGLETON]],complement[E]] := composite[SINGLETON,Di] (* added 1998 July 2 *) composite[id[range[SINGLETON]],Di,SINGLETON] := composite[SINGLETON,Di] composite[id[range[SINGLETON]],E] := SINGLETON (* see 1998/SEP/24 SESSION4.LOG *) composite[id[range[SINGLETON]],inverse[BIGCAP]] := SINGLETON composite[id[range[SINGLETON]],inverse[BIGCUP]] := SINGLETON composite[id[range[SINGLETON]],inverse[IMAGE[SINGLETON]]] := composite[id[range[SINGLETON]],inverse[SINGLETON]] composite[id[range[SINGLETON]],inverse[S]] := composite[inverse[E],IMAGE[SINGLETON]] (* derived 2005 October 5 in GLB-DIV.NB *) composite[id[range[VERTSECT[DIV]]],HULL[image[VERTSECT[DIV],omega]]] := HULL[image[VERTSECT[DIV],omega]] (* derived 2004 December 11 in RESTRICT.NB *) composite[id[range[x_]],wf[x_]] := wf[x] (* derived 2004 December 11 in RESTRICT.NB *) composite[id[range[wf[x_]]],x_] := wf[x] (* Theorem RC-CO-ID in RC proved 2001 September 3 *) composite[Id,RC[x_]] := RC[x] (* derived 2008 May 3 in FU-REC.NB *) composite[Id,rec[x_,y_]] := rec[x,y] (* derived 2006 April 16 in RS-REG.NB *) composite[id[REGULAR],ACLOSURE] := composite[ACLOSURE,id[REGULAR]] (* derived 2005 February 8 in X1775.NB *) composite[id[REGULAR],E,inverse[E],id[DESCENDING]] := 0 (* added 2002 May 26 based on SUCC-ID.NB *) composite[id[REGULAR],inverse[IMAGE[id[REGULAR]]]] := id[REGULAR] (* Theorem REG-ID in REG2 *) composite[Id,REGULAR] := cart[REGULAR,REGULAR] (* added 2002 April 18 based on SUCC.NB *) composite[id[REGULAR],inverse[SUCC]] := composite[inverse[SUCC],id[REGULAR]] (* derived 2004 December 31 in IN-RK.NB *) composite[id[REGULAR],RANK] := RANK (* derived 2006 April 16 in RS-REG.NB *) composite[id[REGULAR],TC] := composite[TC,id[REGULAR]] (* derived 2006 April 16 in RS-REG.NB *) composite[id[REGULAR],UCLOSURE] := composite[UCLOSURE,id[REGULAR]] (* added 2003 May 30 based on RESTRICT.NB *) composite[Id,RESTRICT] := RESTRICT (* derived 2004 December 16 in RFX-CORE.NB *) composite[Id,rfx[x_]] := rfx[x] (* derived 2005 November 19 in EQV.NB *) composite[id[RFX],HULL[EQV]] := HULL[EQV] (* added 2002 December 3 based on IDX-RIF.NB *) composite[id[x_],RIF] := composite[RIF,id[composite[SWAP,cross[Id,x]]]] (* added 1999 August 16 on basis of session NORMAL.3 *) composite[Id,RIGHT[x_]] := RIGHT[x] (* added 1999 December 6 based on CURRY.NB *) composite[id[x_],RIGHT[y_]] := composite[RIGHT[y],id[image[inverse[x],set[y]]]] composite[Id,RightPairV] := RightPairV composite[Id,rotate[x_]] := rotate[x] (* Theorem ID-CO4-S in ID/ID-CO *) composite[Id,S] := S (* added 2003 August 17 based on EQDF-SUB.NB *) composite[id[S],EQUIDIFF] := composite[EQUIDIFF,id[S]] (* added 2003 February 23 based on IDXSHULL.NB *) composite[id[x_],S,HULL[x_]] := composite[id[x],S] (* Theorem 2ND-ID in 2ND *) composite[Id,SECOND] := SECOND (* Corollary 2ND-IDX in 2ND proved 1998 November 21 *) composite[id[x_],SECOND] := composite[SECOND,id[cart[V,x]]] (* derived 2008 October 20 in ID2-XIN1.NB *) composite[id[SECOND],cross[inverse[FIRST],Id]] := composite[id[SECOND],inverse[FIRST]] (* derived 2004 November 26 in XSCP-MAP.NB *) composite[id[SELECT],CART] := CART (* added 1998 August 8 *) composite[Id,SINGLETON] := SINGLETON (* derived 2004 April 6 in SMALLER.NB *) composite[Id,SMALLER] := SMALLER (* added 2002 December 27 based on SBCOMMUT.NB *) composite[Id,SUBCOMMUTE] := SUBCOMMUTE (* added 2000 February 15 based on SUBVAR2.LOG *) composite[Id,SUBVAR] := SUBVAR (* Theorem SUC-ID in SUC-REL proved 1999 October 3 *) composite[Id,SUCC] := SUCC (* Corollary SW-CO-ID in SW2 proved 1998 November 2 *) composite[Id,SWAP] := SWAP (* Theorem SW-IDX2 in SW3 proved 2000 July 31 *) composite[id[x_],SWAP] := composite[SWAP,id[inverse[x]]] (* derived 2005 November 19 in EQV.NB *) composite[id[SYM],HULL[EQV]] := HULL[EQV] (* derived 2008 February 3 in SYM-HULL.NB *) composite[id[SYM],HULL[invar[SWAP]]] := HULL[SYM] (* added 2000 January 7 based on TCMEMBER.NB *) composite[Id,TC] := TC (* derived 2004 May 14 in THINPART.NB *) composite[Id,thinpart[x_]] := thinpart[x] (* derived 2005 October 8 in TO-WRAP.NB *) composite[Id,to[x_]] := to[x] (* added 2002 March 24 based on TRV-1.NB *) composite[Id,trv[x_]] := trv[x] (* derived 2004 February 19 in REPLACE2.NB *) composite[id[x_],TWIST] := TWIST /; subclass[cart[cart[V,V],cart[V,V]],x] (* added 2001 January 18 based on TWIST-1.NB *) composite[Id,twist[x_]] := twist[x] (* derived 2006 November 25 in U-BINHOM.NB *) composite[Id,U[binhom[x_,y_]]] := U[binhom[x,y]] (* added 2002 February 13 based on HULL-TRV.NB *) composite[Id,U[image[HULL[TRV],x_]]] := U[image[HULL[TRV],x]] (* derived 2004 September 21 in WF-X.NB *) composite[Id,U[subvar[cross[x_,y_]]]] := U[subvar[cross[x,y]]] (* added 2000 November 3 based on UB-2.NB *) composite[Id,UB[x_]] := UB[x] (* added 2002 October 22 based on CO-ID.NB *) composite[id[Uclosure[x_]],CORE[x_]] := CORE[x] (* added 2002 October 22 based on CO-ID.NB *) composite[id[union[cart[complement[set[0]],complement[set[0]]], cart[set[0],set[0]]]],DORA] := DORA (* added 2001 December 6 based on CONDRULE.NB *) composite[x_,id[union[y_,complement[z_]]]] := composite[x,id[y]] /; subclass[domain[x],z] (* added 2001 December 6 based on CONDRULE.NB *) composite[id[union[x_,complement[y_]]],z_] := composite[id[x],z] /; subclass[range[z],y] (* derived 2007 March 1 in TRV-RFX.NB *) composite[x_,id[union[y_,domain[x_]]]] := composite[Id,x] (* derived 2008 February 2 in RELNS.NB *) composite[id[union[x_,domain[y_]]],inverse[y_]] := inverse[y] (* derived 2007 March 1 in TRV-RFX.NB *) composite[id[union[x_,range[y_]]],y_] := composite[Id,y] (* derived 2008 February 2 in RELNS.NB *) composite[id[union[x_,range[y_]]],intersection[y_,z_]] := composite[Id,intersection[y,z]] (* added 2002 October 22 based on CO-ID.NB *) composite[id[union[Id,trv[x_]]],power[x_]] := power[x] (* Theorem VS-2 in VS proved 1999 July 11 *) composite[Id,VERTSECT[x_]] := VERTSECT[x] (* added 2003 June 11 based on VS.NB *) composite[Id,VS] := VS (* derived 2004 September 18 in WF-WRAP.NB *) composite[Id,wf[x_]] := wf[x] (* derived 2004 September 25 in LAMB-WF.NB *) composite[Id,WFPART] := WFPART (* derived 2005 October 16 in WO-WRAP.NB *) composite[Id,wo[x_]] := wo[x] (* derived 2006 June 15 in IMINCART.NB *) composite[id[Z],CART] := 0 (* added 2003 July 26 based on HULL-Z.NB *) composite[id[Z],COMPOSE,cross[PLUS,PLUS]] := composite[COMPOSE,cross[PLUS,PLUS]] (* added 2002 December 16 based on EQUIDIFF.NB *) composite[id[Z],E] := composite[VERTSECT[EQUIDIFF],id[cart[omega,omega]]] (* derived 2007 January 23 in IMINZADD.NB *) composite[id[Z],image[inverse[INTADD],x_]] := image[inverse[INTADD],x] (* derived 2007 January 1 in INTMUL-4.NB *) composite[id[Z],image[inverse[INTMUL],x_]] := image[inverse[INTMUL],x] (* derived 2008 September 15 in INTTIMES.NB *) composite[id[Z],inttimes[x_]] := inttimes[x] (* derived 2006 October 31 in EVALPLUS.NB *) composite[id[Z],inverse[eval[0]]] := PLUS (* derived 2006 September 7 in CO-IMS-Z.NB *) composite[id[Z],INVERSE,PLUS] := composite[INVERSE,PLUS] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[id[Z],INVERSE,VERTSECT[EQUIDIFF]] := composite[INVERSE,VERTSECT[EQUIDIFF],id[cart[omega,omega]]] (* added 2003 July 26 based on INTADDSW.NB *) composite[id[Z],PLUS] := PLUS (* derived 2007 June 9 in S-Z-Z.NB *) composite[id[Z],PS,id[Z]] := 0 (* added 2003 July 25 based on INTADD.NB *) composite[id[Z],S,COMPOSE,id[cart[Z,Z]]] := INTADD (* added 2003 July 26 based on INTADDSW.NB *) composite[id[Z],S,COMPOSE,SWAP,id[cart[Z,Z]]] := INTADD (* added 2003 July 25 based on HULL-Z.NB *) composite[id[Z],S,id[complement[set[0]]]] := composite[HULL[Z],id[complement[set[0]]]] (* derived 2007 June 9 in S-Z-Z.NB *) composite[id[Z],S,id[Z]] := id[Z] (* added 2001 July 12 based on ZN-2.NB *) composite[Id,ZN] := ZN (* derived 2007 June 6 in IDEMWRAP.NB *) composite[idem[x_],idem[x_]] := idem[x] (* derived 2007 May 29 in IVR-HULL.NB *) composite[IMAGE[ACLOSURE],IMAGE[ACLOSURE]] := IMAGE[ACLOSURE] (* derived 2008 July 8 in IMG-ADJ.NB *) composite[IMAGE[x_],ADJOIN[y_]] := composite[id[image[V,set[y]]],ADJOIN[image[x,y]],IMAGE[x]] (* added 2003 July 19 based on IMGASSOC.NB *) composite[IMAGE[ASSOC],CART,cross[CART,Id]] := composite[CART,cross[Id,CART],ASSOC] (* derived 2006 November 11 in REPLACE.NB *) composite[IMAGE[ASSOC],IMAGE[id[cart[cart[V,V],V]]]] := IMAGE[ASSOC] (* derived 2004 April 24 in BA-BC.NB *) composite[IMAGE[BIGCAP],IMAGE[inverse[BIGCUP]]] := IMAGE[inverse[S]] (* added 1999 November 6 based on CO-5.LOG *) composite[IMAGE[BIGCAP],IMAGE[SINGLETON]] := Id (* added 2001 May 10 based on ACLOSURE.NB *) composite[IMAGE[BIGCAP],POWER] := ACLOSURE (* turned around 2001 May 10 based on UCLOS-2.NB *) composite[IMAGE[BIGCAP],UCLOSURE] := composite[ACLOSURE,IMAGE[BIGCAP]] composite[IMAGE[BIGCUP],id[P[range[SINGLETON]]]] := inverse[IMAGE[SINGLETON]] (* added 2002 November 20 based on UCL-U.NB *) composite[IMAGE[BIGCUP],IMAGE[CUP]] := composite[IMAGE[CUP],IMAGE[cross[BIGCUP,BIGCUP]]] (* derived 2007 June 25 in UCH-HULL.NB *) composite[IMAGE[BIGCUP],IMAGE[id[chains[S]]],POWER] := UCHAINS (* added 2002 January 20 based on UU.NB *) composite[IMAGE[BIGCUP],IMAGE[inverse[BIGCUP]]] := Id (* added 1998 August 7 *) composite[IMAGE[BIGCUP],IMAGE[POWER]] := Id composite[IMAGE[BIGCUP],IMAGE[SINGLETON]] := Id (* added 2001 May 10 based on UCLOS-1.NB *) composite[IMAGE[BIGCUP],POWER] := UCLOSURE (* added 2001 May 10 based on UCLOS-1.NB *) composite[IMAGE[BIGCUP],UCLOSURE] := composite[UCLOSURE,IMAGE[BIGCUP]] (* revised 2003 June 23 based on CAP-IM-G.NB *) composite[IMAGE[g_],CAP] := composite[CAP,cross[IMAGE[g],IMAGE[g]]] /; cond && FUNCTION[inverse[g]] && thin[g] (* derived 2008 February 16 in CAP.NB *) composite[IMAGE[CAP],CART,cross[CLIQUES,CLIQUES]] := composite[CAP,cross[CLIQUES,CLIQUES]] (* added 2003 May 19 based on CAPCLOSE.NB *) composite[IMAGE[CAP],CART,DUP,ACLOSURE] := ACLOSURE (* derived 2005 October 25 in TOP-WRAP.NB *) composite[IMAGE[CAP],CART,DUP,HULL[TOPS]] := HULL[TOPS] (* added 2003 May 12 based on LAMBHULL.NB *) composite[IMAGE[CAP],LAMBHULL] := IMAGE[inverse[S]] (* derived 2005 January 6 in RCF.NB *) composite[IMAGE[CAP],RCF] := cart[V,set[set[0]]] (* added 1999 January 1 based on SR-IMG-H.NB *) composite[IMAGE[CART],id[P[Id]],S] := composite[id[P[image[CART,Id]]],S,IMAGE[CART],id[P[Id]]] (* derived 2007 May 27 in COARSER.NB *) composite[IMAGE[COARSER],IMAGE[COARSER]] := IMAGE[COARSER] (* derived 2003 December 31 in COARSER.NB *) composite[IMAGE[COARSER],POWER,POWER] := composite[POWER,POWER] (* derived 2006 June 20 in UOBCLCPS.NB *) composite[IMAGE[COMPOSE],CART,DUP,MAP,DUP] := composite[MAP,DUP] (* derived 2008 July 10 in UBD-VS.NB *) composite[IMAGE[composite[FIRST,id[cart[V,range[SINGLETON]]],inverse[CART]]],POWER] := UBD (* derived 2006 October 16 in EQV-PROJ.NB *) composite[IMAGE[composite[id[E],inverse[SECOND]]],IMAGE[SECOND],VS,id[EQV]] := composite[VS,id[EQV]] (* added 2001 December 22 based on DORA-2.NB *) composite[IMAGE[composite[id[FUNS],inverse[DORA]]],CART,cross[SINGLETON,POWER]] := MAP (* derived 2004 August 26 in WF-REC-3.NB *) composite[IMAGE[composite[id[w_],inverse[FIRST]]],IMAGE[id[z_]]] := IMAGE[composite[id[composite[w,id[z]]],inverse[FIRST]]] (* derived 2008 January 22 in HART-FU.NB *) composite[IMAGE[composite[id[OMEGA],Q]],POWER] := HARTOGS (* added 2002 November 11 based on NORMIMAG.NB *) composite[IMAGE[composite[x_,y_]],id[P[domain[VERTSECT[y_]]]]] := composite[IMAGE[x],IMAGE[y]] (* added 2001 April 29 based on CLIQUES2.NB *) composite[IMAGE[composite[inverse[DUP],inverse[CART]]],POWER] := CLIQUES (* derived 2008 July 10 in UBD-VS.NB *) composite[IMAGE[composite[SECOND,id[cart[range[SINGLETON],V]],inverse[CART]]],POWER] := composite[UBD,IMAGE[SWAP]] (* derived 2007 May 29 in IVR-CORE.NB *) composite[IMAGE[CORE[x_]],IMAGE[CORE[x_]]] := IMAGE[CORE[x]] (* added 1999 October 19 based on CARTRULE.NB (corrected 1999 October 23) *) composite[IMAGE[cross[x_,y_]],CART] := composite[CART,cross[IMAGE[x],IMAGE[y]]] /; And[cond,thin[x],thin[y]] (* derived 2004 December 7 in ASV-DIV.NB *) composite[IMAGE[cross[FIRST,Id]],IMAGE[composite[id[SECOND],inverse[FIRST]]]] := IMAGE[id[cart[V,V]]] (* derived 2004 December 7 in ASV-DIV.NB *) composite[IMAGE[cross[FIRST,Id]],IMAGE[cross[SWAP,Id]]] := IMAGE[cross[SECOND,Id]] (* added 2003 July 20 based on DIRECT12.NB *) composite[IMAGE[cross[FIRST,SECOND]],CROSS] := composite[CART,cross[IMAGE[FIRST],IMAGE[SECOND]]] (* added 2002 December 28 based on REPLACE.NB *) composite[IMAGE[cross[FIRST,SECOND]],IMAGE[id[composite[inverse[FIRST],SECOND]]]] := composite[IMAGE[RIF],IMAGE[cross[SWAP,SWAP]]] (* derived 2006 December 16 in PLUSTIME.NB *) composite[IMAGE[cross[Id,composite[INVERSE,PLUS]]],TIMES] := composite[MIXTIMES,INVERSE,PLUS] (* derived 2006 November 22 in EVAL-CUR.NB *) composite[IMAGE[cross[Id,eval[x_]]],CURRY] := composite[FUNPART,IMAGE[cross[Id,inverse[LEFT[x]]]],IMAGE[ASSOC],id[P[cart[cart[V,V],V]]]] (* derived 2006 October 24 in EVAL.NB *) composite[IMAGE[cross[Id,eval[x_]]],VS] := composite[FUNPART,IMAGE[cross[Id,inverse[LEFT[x]]]]] (* derived 2004 August 9 in RS-2.NB *) composite[IMAGE[cross[x_,Id]],IMAGE[cross[Id,thinpart[y_]]]] := IMAGE[cross[x,thinpart[y]]] (* derived 2006 August 23 in CHARBOOL.NB *) composite[IMAGE[cross[Id,x_]],IMAGE[cross[inverse[DUP],Id]]] := IMAGE[cross[inverse[DUP],x]] (* derived 2008 October 28 in CO-IMG-X.NB *) composite[IMAGE[cross[Id,y_]],IMAGE[cross[thinpart[x_],Id]]] := IMAGE[cross[thinpart[x],y]] (* added 2001 May 28 based on IMAGE-X.NB *) composite[IMAGE[cross[Id,x_]],IMAGE[DUP]] := IMAGE[composite[id[x],inverse[FIRST]]] (* added 2001 May 28 based on IMAGE-X.NB *) composite[IMAGE[cross[x_,Id]],IMAGE[DUP]] := IMAGE[composite[id[inverse[x]],inverse[SECOND]]] (* derived 2006 November 5 in CURRY.NB *) composite[IMAGE[cross[Id,inverse[E]]],CURRY] := composite[IMAGE[ASSOC],id[P[cart[cart[V,V],V]]]] (* derived 2006 October 19 in EQV-BC.NB *) composite[IMAGE[cross[Id,inverse[E]]],IMAGE[composite[id[E],inverse[SECOND]]]] := composite[BIGCUP,IMAGE[CART],IMAGE[DUP]] (* derived 2004 January 6 in VS-OO.NB *) composite[IMAGE[cross[Id,inverse[E]]],VS] := IMAGE[id[cart[V,V]]] (* derived 2006 December 19 in ENDZ-INV.NB *) composite[IMAGE[cross[Id,INVERSE]],IMAGE[cross[Id,INVERSE]]] := IMAGE[id[cart[V,P[cart[V,V]]]]] (* derived 2006 December 16 in BHNATINT.NB *) composite[IMAGE[cross[Id,INVERSE]],MIXTIMES] := composite[MIXTIMES,INVERSE] (* derived 2004 August 28 in FUNP-VS.NB *) composite[IMAGE[cross[Id,inverse[SINGLETON]]],VS] := FUNPART (* derived 2006 December 16 in PLUSTIME.NB *) composite[IMAGE[cross[Id,PLUS]],TIMES] := composite[MIXTIMES,PLUS] (* added 1999 November 30 based on IMG-SWAP.LOG *) composite[IMAGE[cross[x_,y_]],IMAGE[id[cart[u_,v_]]]] := IMAGE[cross[composite[x,id[u]],composite[y,id[v]]]] (* derived 2006 December 9 in MISC.NB *) composite[IMAGE[cross[x_,y_]],IMAGE[SWAP]] := composite[INVERSE,IMAGE[cross[y,x]]] (* derived 2006 December 16 in PLUSTIME.NB *) composite[IMAGE[cross[x_,y_]],INVERSE] := composite[INVERSE,IMAGE[cross[y,x]],id[P[cart[V,V]]]] (* derived 2006 December 23 in ZTIMES-4.NB *) composite[IMAGE[cross[inverse[DUP],INTADD]],CROSS, cross[INTTIMES,INTTIMES]] := composite[INTTIMES,INTADD] (* derived 2006 December 26 in ISOTIMES.NB *) composite[IMAGE[cross[inverse[DUP],NATADD]],CROSS,cross[TIMES,TIMES]] := composite[TIMES,NATADD] (* derived 2008 August 11 in CO-ID-RA.NB *) composite[IMAGE[cross[inverse[PLUS],Id]],INTTIMES] := MIXTIMES (* derived 2006 July 27 in IND-Z.NB *) composite[IMAGE[cross[inverse[SUCC],Id]],PLUS] := composite[PLUS,SUCC] (* derived 2006 September 30 in VECT-ADD.NB *) composite[IMAGE[cross[NATADD,NATADD]],CROSS,cross[PLUS,PLUS]] := composite[INTADD,cross[PLUS,PLUS]] (* derived 2006 September 5 in RA-PLUS.NB *) composite[IMAGE[cross[NATADD,NATADD]],CROSS,SWAP] := composite[IMAGE[cross[NATADD,NATADD]],CROSS] (* added 2001 January 20 based on RIF-2.NB *) composite[IMAGE[cross[SECOND,FIRST]],IMAGE[id[composite[inverse[SECOND],FIRST]]]] := IMAGE[RIF] (* derived 2004 December 7 in ASV-DIV.NB *) composite[IMAGE[cross[SECOND,Id]],IMAGE[cross[SWAP,Id]]] := IMAGE[cross[FIRST,Id]] (* added 1999 December 21 based on COMPOSE.NB *) composite[IMAGE[cross[SECOND,SECOND]],IMAGE[id[composite[inverse[FIRST],FIRST]]],CART, cross[IMAGE[SWAP],Id]] := composite[COMPOSE,SWAP] (* derived 2004 December 7 in ASV-DIV.NB *) composite[IMAGE[cross[SWAP,Id]],IMAGE[cross[SWAP,Id]]] := IMAGE[id[cart[cart[V,V],V]]] (* derived 2008 October 4 in IMAG-ROT.NB *) composite[IMAGE[cross[SWAP,Id]],IMAGE[inverse[ROT]]] := composite[IMAGE[ROT],IMAGE[cross[SWAP,Id]]] (* derived 2008 October 4 in IMAG-ROT.NB *) composite[IMAGE[cross[SWAP,Id]],IMAGE[ROT]] := composite[IMAGE[inverse[ROT]],IMAGE[cross[SWAP,Id]]] (* added 1999 October 19 based on CROSS.1 *) composite[IMAGE[cross[SWAP,SWAP]],CROSS] := composite[CROSS,SWAP] (* added 1999 October 9 based on CUP-LOG.2 *) composite[IMAGE[x_],CUP] := composite[CUP,cross[IMAGE[x],IMAGE[x]]] (* added 2002 November 20 based on UCL-U.NB *) composite[IMAGE[CUP],CART,cross[POWER,POWER]] := composite[POWER,CUP] (* added 2002 November 20 based on UCL-U.NB *) composite[IMAGE[CUP],CART,cross[UCLOSURE,UCLOSURE]] := composite[UCLOSURE,CUP] (* added 2002 March 12 based on CUP.NB *) composite[IMAGE[CUP],IMAGE[cross[inverse[S],inverse[S]]]] := composite[IMAGE[inverse[S]],IMAGE[CUP]] (* added 2002 March 12 based on CUP.NB *) composite[IMAGE[CUP],IMAGE[id[cart[V,V]]]] := IMAGE[CUP] (* added 2002 March 12 based on CUP.NB *) composite[IMAGE[CUP],IMAGE[inverse[CUP]]] := Id (* added 2002 November 20 based on UCL-U.NB *) composite[IMAGE[CUP],IMAGE[RIGHT[x_]]] := IMAGE[ADJOIN[x]] (* derived 2007 May 28 in CUP-HULL.NB *) composite[IMAGE[CUP],LAMBHULL] := ACLOSURE (* derived 2005 January 6 in RCF.NB *) composite[IMAGE[CUP],RCF] := SINGLETON (* derived 2006 November 18 in CURMAP-3.NB *) composite[IMAGE[CURRY],MAP,cross[CART,Id]] := union[cart[cart[cart[V,set[0]],V],set[set[0]]], composite[MAP,cross[Id,MAP],ASSOC,id[cart[cart[V,complement[set[0]]],V]]]] (* added 2003 June 23 based on DIF-IM-G.NB *) composite[IMAGE[g_],DIF] := composite[DIF,cross[IMAGE[g],IMAGE[g]]] /; cond && FUNCTION[inverse[g]] && thin[g] (* derived 2007 January 27 in DIV-SBV.NB *) composite[IMAGE[DIV],IMAGE[DIV]] := IMAGE[DIV] (* derived 2004 July 26 in DORAFUNS.NB *) composite[image[DORA,FUNS],image[DORA,FUNS]] := image[DORA,FUNS] (* derived 2004 July 26 in DORAFUNS.NB *) composite[image[DORA,FUNS],Q] := image[DORA,FUNS] (* derived 2004 July 26 in DORAFUNS.NB *) composite[image[DORA,FUNS],S] := union[cart[V,complement[set[0]]],cart[set[0],V]] (* derived 2008 June 7 in LB-UB-E.NB *) composite[image[DORA,P[x_]],inverse[S],id[P[domain[VERTSECT[x_]]]]] := composite[inverse[S],IMAGE[x]] (* derived 2008 June 7 in LB-UB-E.NB *) composite[image[DORA,P[thinpart[x_]]],inverse[S]] := composite[inverse[S],IMAGE[thinpart[x]]] (* derived 2008 June 7 in LB-UB-E.NB *) composite[image[DORA,P[ZN]],inverse[S]] := ZN (* added 1999 October 17 based on CROSS.3 flipped 1999 November 28 *) composite[IMAGE[DUP],CART] := composite[CROSS,cross[IMAGE[DUP],IMAGE[DUP]]] (* Theorem FIX-IDP3 in FIX2 proved 1998 December 20 *) composite[IMAGE[DUP],IMAGE[inverse[DUP]]] := IMAGE[id[Id]] (* added 2003 January 30 *) composite[IMAGE[DUP],INVAR] := composite[id[P[Id]],SUBCOMMUTE] (* added 2002 January 19 based on PO.NB *) composite[IMAGE[DUP],PAIRSET] := composite[PAIRSET,cross[DUP,DUP]] (* derived 2007 December 26 in SCHRODER.NB *) composite[IMAGE[x_],E,inverse[x_]] := composite[id[range[IMAGE[x]]],E] (* added 2002 November 16 based on EQUIDIFF.NB *) composite[IMAGE[EQUIDIFF],IMAGE[EQUIDIFF]] := IMAGE[EQUIDIFF] (* added 2002 November 30 based on POS-NEG.NB *) composite[IMAGE[EQUIDIFF],IMAGE[SWAP]] := composite[IMAGE[SWAP],IMAGE[EQUIDIFF]] (* added 2002 November 16 based on EQUIDIFF.NB *) composite[IMAGE[EQUIDIFF],VERTSECT[EQUIDIFF]] := VERTSECT[EQUIDIFF] (* added 2003 June 11 based on VS.NB *) composite[IMAGE[FIRST],ADJOIN[set[0]]] := IMAGE[FIRST] (* derived 2004 October 4 in REPLACE.NB *) composite[IMAGE[FIRST],BIGCUP,IMAGE[CART],IMAGE[DUP]] := BIGCUP (* added 1999 December 24 based on FIX-CAP.NB *) composite[IMAGE[FIRST],CAP] := composite[IMAGE[inverse[DUP]],COMPOSE,cross[IMAGE[SWAP],Id]] (* added 1999 October 9 based on CART-LOG.3 *) composite[IMAGE[FIRST],CART] := union[composite[FIRST,id[cart[V,complement[set[0]]]]], cart[cart[V,set[0]],set[0]]] (* added 1999 December 25 based on COMPOSE4.NB *) composite[IMAGE[FIRST],COMPOSE] := composite[IMG,SWAP,cross[IMAGE[FIRST],IMAGE[SWAP]]] (* derived 2004 October 4 in REPLACE.NB *) composite[IMAGE[FIRST],CORE[intersection[RFX,SYM]]] := IMAGE[inverse[DUP]] (* derived 2004 December 17 in RFX.NB *) composite[IMAGE[FIRST],CORE[RFX]] := IMAGE[inverse[DUP]] (* derived 2004 October 4 in REPLACE.NB *) composite[IMAGE[FIRST],CORE[SYM]] := composite[IMAGE[inverse[DUP]],COMPOSE,DUP] (* added 1999 October 17 based on CROSS.3 *) composite[IMAGE[FIRST],CROSS] := composite[CART,cross[IMAGE[FIRST],IMAGE[FIRST]]] (* derived 2006 November 9 in DOAP-CUR.NB *) composite[IMAGE[FIRST],CURRY] := composite[IMAGE[FIRST],IMAGE[FIRST],id[P[cart[cart[V,V],V]]]] (* derived 2004 May 12 in EQUIV.NB *) composite[IMAGE[FIRST],EQUIV] := composite[IMAGE[inverse[DUP]],EQUIV] (* derived 2005 July 30 in CATORELN.NB *) composite[IMAGE[FIRST],FIRST,CATORELN] := composite[IMAGE[FIRST],FIRST,SECOND,id[composite[id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]], inverse[SECOND],IMAGE[FIRST],FIRST,id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]]]]] (* derived 2006 September 17 in IDS-INCL.NB *) composite[IMAGE[FIRST],FIRST,id[inverse[IMAGE[DUP]]]] := composite[SECOND,id[inverse[IMAGE[DUP]]]] (* added 2003 March 3 based on DO-TRV.NB *) composite[IMAGE[FIRST],HULL[TRV]] := composite[IMAGE[FIRST],id[P[cart[V,V]]]] (* derived 2006 December 6 in MIXMUL-1.NB *) composite[IMAGE[FIRST],id[binhom[x_,y_]]] := cart[binhom[x,y],set[fix[domain[x]]]] (* derived 2006 October 16 in ID-EQV.NB *) composite[IMAGE[FIRST],id[EQV]] := composite[IMAGE[inverse[DUP]],id[EQV]] (* derived 2008 December 23 in DOM-RAN.NB *) composite[IMAGE[FIRST],id[image[inverse[DORA],Id]]] := composite[inverse[DUP],DORA] (* added 2001 December 19 based on REPLACE.NB *) composite[IMAGE[FIRST],id[x_],inverse[IMAGE[SECOND]]] := inverse[image[DORA,x]] (* derived 2006 December 6 in MIXMUL-1.NB *) composite[IMAGE[FIRST],id[map[x_,y_]]] := cart[map[x,y],set[x]] (* derived 2005 November 22 in IMDORARS.NB *) composite[IMAGE[FIRST],id[P[cart[V,V]]],Q] := image[DORA,FUNS] composite[IMAGE[FIRST],id[P[Id]]] := inverse[IMAGE[DUP]] (* derived 2006 June 18 in PO-EQV.NB *) composite[IMAGE[FIRST],id[PO]] := composite[IMAGE[inverse[DUP]],id[PO]] (* derived 2006 June 18 in PO-EQV.NB *) composite[IMAGE[FIRST],id[RFX]] := composite[IMAGE[inverse[DUP]],id[RFX]] (* derived 2006 June 18 in REIF-PO.NB *) composite[IMAGE[FIRST],id[TO]] := composite[IMAGE[inverse[DUP]],id[TO]] (* derived 2006 November 9 in DOAP-CUR.NB *) composite[IMAGE[FIRST],IMAGE[ASSOC]] := composite[IMAGE[FIRST],IMAGE[FIRST]] (* added 2001 May 29 based on IMG-RHO.NB *) composite[IMAGE[FIRST],IMAGE[composite[id[x_],inverse[FIRST]]]] := composite[IMAGE[id[domain[x]]],id[P[domain[VERTSECT[x]]]]] (* added 2001 May 29 based on IMG-RHO.NB *) composite[IMAGE[FIRST],IMAGE[composite[id[x_],inverse[SECOND]]]] := IMAGE[inverse[x]] (* added 2000 September 12 based on ASSERT.NB *) composite[IMAGE[FIRST],IMAGE[cross[x_,FIRST]]] := composite[IMAGE[x],IMAGE[FIRST],IMAGE[id[cart[V,cart[V,V]]]]] (* added 2000 September 12 based on ASSERT.NB *) composite[IMAGE[FIRST],IMAGE[cross[x_,Id]]] := composite[IMAGE[x],IMAGE[FIRST]] (* added 2000 September 12 based on ASSERT.NB *) composite[IMAGE[FIRST],IMAGE[cross[x_,SECOND]]] := composite[IMAGE[x],IMAGE[FIRST],IMAGE[id[cart[V,cart[V,V]]]]] composite[IMAGE[FIRST],IMAGE[DUP]] := Id (* derived 2008 October 7 in BNP-WRAP.NB *) composite[IMAGE[FIRST],IMAGE[FIRST],id[BINOPS]] := composite[IMAGE[inverse[DUP]],IMAGE[FIRST],id[BINOPS]] (* added 1999 November 27 based on NEAT.NB *) composite[IMAGE[FIRST],IMAGE[id[cart[V,Id]]],CROSS] := composite[COMPOSE,SWAP,cross[Id,IMAGE[SWAP]]] composite[IMAGE[FIRST],IMAGE[id[cart[V,V]]]] := IMAGE[FIRST] composite[IMAGE[FIRST],IMAGE[id[Id]]] := IMAGE[inverse[DUP]] (* derived 2008 September 13 in IMINTMUL.NB *) composite[IMAGE[FIRST],IMAGE[inverse[INTMUL]]] := IMAGE[inverse[INTDIV]] (* derived 2004 August 19 in X2901-93.NB *) composite[IMAGE[FIRST],IMAGE[RIGHT[x_]]] := Id /; member[x,V] (* added 1999 November 30 based on IMG-SWAP.1 *) composite[IMAGE[FIRST],IMAGE[SWAP]] := IMAGE[SECOND] (* derived 2006 December 19 in ZTIMES-1.NB *) composite[IMAGE[FIRST],INTTIMES] := cart[Z,set[Z]] (* added 1999 October 12 based on INVERSE.5 *) composite[IMAGE[FIRST],INVERSE] := composite[IMAGE[SECOND],id[P[cart[V,V]]]] (* added 2001 December 18 based on DORA.NB *) composite[IMAGE[FIRST],inverse[IMAGE[SECOND]]] := union[cart[complement[set[0]],complement[set[0]]], cart[set[0],set[0]]] (* added 2000 September 4 based on NEW.M *) composite[IMAGE[FIRST],inverse[IMAGE[SWAP]]] := composite[IMAGE[SECOND],id[P[cart[V,V]]]] (* added 2000 September 4 based on NEW.M *) composite[IMAGE[FIRST],inverse[IMAGE[id[cart[V,V]]]]] := composite[IMAGE[FIRST],id[P[cart[V,V]]]] (* derived 2008 October 21 in DORAJOIN.NB *) composite[IMAGE[FIRST],JOIN] := composite[NATADD, cross[composite[IMAGE[FIRST],id[LISTS]],composite[IMAGE[FIRST],id[LISTS]]]] (* added 2003 May 12 based on LAMBHULL.NB *) composite[IMAGE[FIRST],LAMBHULL] := IMAGE[inverse[S]] (* derived 2006 December 7 in MIXMUL-1.NB *) composite[IMAGE[FIRST],MIXTIMES] := cart[Z,set[omega]] (* added 2003 February 4 based on PLUS-Q.NB *) composite[IMAGE[FIRST],PLUS] := cart[omega,set[omega]] (* added 2002 February 3 based on RCF.NB *) composite[IMAGE[FIRST],RCF] := POWER (* derived 2004 August 10 in RS-3.NB *) composite[IMAGE[FIRST],RESTRICT] := composite[inverse[S],IMAGE[FIRST]] (* derived 2006 October 28 in DORA.NB *) composite[IMAGE[FIRST],TIMES] := cart[omega,set[omega]] (* added 2003 June 11 based on VS.NB *) composite[IMAGE[FIRST],VS] := IMAGE[FIRST] (* derived 2008 September 4 in IN-2-SBV.NB *) composite[IMAGE[fix[composite[inverse[SECOND],IMG]]],POWER] := SUBVAR (* added 2001 February 24 based on NEW.NB *) composite[IMAGE[GREATEST[x_]],POWER] := IMAGE[id[fix[x]]] (* derived 2007 May 29 in IVR-HULL.NB *) composite[IMAGE[HULL[x_]],IMAGE[HULL[x_]]] := IMAGE[HULL[x]] (* derived 2006 January 19 in GLB-S-PC.NB *) composite[IMAGE[id[x_]],BIGCAP,id[P[P[x_]]]] := composite[BIGCAP,id[P[P[x]]]] (* added 2001 December 27 based on CP-I.NB removed 2008 October 26 because of problems with normalizing IMG composite[IMAGE[id[x_]],CART] := composite[COMPOSE,SWAP, cross[IMAGE[composite[id[x],inverse[FIRST]]],IMAGE[DUP]]] /; cond && thin[x] *) (* added 1999 October 9 based on CART-LOG.1 *) composite[IMAGE[id[cart[x_,y_]]],CART] := composite[CART,cross[IMAGE[id[x]],IMAGE[id[y]]]] (* added 1999 December 23 based on CROSS-2.NB *) composite[IMAGE[id[cart[cart[u_,v_],cart[x_,y_]]]],CROSS] := composite[CROSS,cross[IMAGE[id[cart[u,x]]],IMAGE[id[cart[v,y]]]]] (* derived 2008 October 7 in BNP-WRAP.NB *) composite[IMAGE[id[cart[cart[V,V],V]]],id[BINOPS]] := id[BINOPS] (* derived 2004 June 28 in X1773-1800.NB *) composite[IMAGE[id[cart[cart[V,V],V]]],IMAGE[cross[SWAP,Id]]] := IMAGE[cross[SWAP,Id]] (* derived 2008 October 4 in IMAG-ROT.NB *) composite[IMAGE[id[cart[cart[V,V],V]]],IMAGE[inverse[ROT]]] := IMAGE[inverse[ROT]] (* derived 2008 October 4 in IMAG-ROT.NB *) composite[IMAGE[id[cart[cart[V,V],V]]],IMAGE[ROT]] := IMAGE[ROT] (* added 2002 January 3 based on COMPOSE.NB *) composite[IMAGE[id[cart[x_,y_]]],COMPOSE] := composite[COMPOSE,cross[IMAGE[id[cart[V,y]]],IMAGE[id[cart[x,V]]]]] (* derived 2007 October 19 in RECT-CUT.NB *) composite[IMAGE[id[x_]],CART,DORA,IMAGE[id[x_]],CART,DORA] := composite[IMAGE[id[x]],CART,DORA] (* derived 2008 October 2 in BIJ-MOND.NB *) composite[IMAGE[id[cart[x_,y_]]],id[bij[x_,y_]]] := id[bij[x,y]] (* derived 2008 October 2 in MAP-MOND.NB *) composite[IMAGE[id[cart[x_,y_]]],id[map[x_,y_]]] := id[map[x,y]] (* derived 2006 November 21 in TIMES.NB *) composite[IMAGE[id[cart[omega,omega]]],TIMES] := TIMES (* derived 2008 October 21 in DORAJOIN.NB *) composite[IMAGE[id[cart[omega,V]]],id[LISTS]] := id[LISTS] (* derived 2006 November 21 in TIMES.NB *) composite[IMAGE[id[cart[omega,V]]],TIMES] := TIMES (* added 2003 June 11 based on VS.NB *) composite[IMAGE[id[cart[V,complement[set[0]]]]],VS] := VS (* derived 2008 October 2 in BIJ-MOND.NB *) composite[IMAGE[id[cart[x_,V]]],id[bij[x_,y_]]] := id[bij[x,y]] (* derived 2008 October 2 in BIJ-MOND.NB *) composite[IMAGE[id[cart[V,y_]]],id[bij[x_,y_]]] := id[bij[x,y]] (* derived 2008 October 2 in MAP-MOND.NB *) composite[IMAGE[id[cart[x_,V]]],id[map[x_,y_]]] := id[map[x,y]] (* derived 2008 October 2 in MAP-MOND.NB *) composite[IMAGE[id[cart[V,y_]]],id[map[x_,y_]]] := id[map[x,y]] (* derived 2004 August 9 in RS-2.NB *) composite[IMAGE[id[cart[x_,V]]],IMAGE[cross[Id,thinpart[y_]]]] := IMAGE[cross[id[x],thinpart[y]]] (* derived 2006 November 21 in TIMES.NB *) composite[IMAGE[id[cart[V,omega]]],TIMES] := TIMES (* added 2003 June 11 based on VS.NB *) composite[IMAGE[id[cart[V,set[0]]]],VS] := cart[V,set[0]] (* derived 2007 August 9 in COREPROJ.NB *) composite[IMAGE[id[cart[V,V]]],CORE[PROJ]] := CORE[PROJ] (* derived 2004 December 17 in RFX.NB *) composite[IMAGE[id[cart[V,V]]],CORE[RFX]] := CORE[RFX] (* derived 2007 May 6 in HULL-SYM.NB *) composite[IMAGE[id[cart[V,V]]],CORE[SYM]] := CORE[SYM] (* added 2001 November 20 based on UNWRAP.NB *) composite[IMAGE[id[cart[V,V]]],CROSS] := CROSS (* derived 2004 May 12 in EQUIV.NB *) composite[IMAGE[id[cart[V,V]]],EQUIV] := EQUIV (* added 2001 May 24 based on REIFY.NB *) composite[IMAGE[id[cart[V,V]]],FUNPART] := FUNPART (* derived 2007 May 9 in IVR-SWAP.NB *) composite[IMAGE[id[cart[V,V]]],HULL[invar[SWAP]]] := composite[HULL[SYM],IMAGE[id[cart[V,V]]]] (* derived 2007 May 9 in RFX.NB *) composite[IMAGE[id[cart[V,V]]],HULL[RFX]] := HULL[RFX] (* derived 2007 May 6 in HULL-SYM.NB *) composite[IMAGE[id[cart[V,V]]],HULL[SYM]] := HULL[SYM] (* added 2002 July 9 based on HULL-TRV.NB *) composite[IMAGE[id[cart[V,V]]],HULL[TRV]] := HULL[TRV] (* added 2000 September 4 based on NEW.M *) composite[IMAGE[id[cart[V,V]]],id[BIJ]] := id[BIJ] (* derived 2006 October 16 in ID-EQV.NB *) composite[IMAGE[id[cart[V,V]]],id[EQV]] := id[EQV] (* added 2000 September 4 based on NEW.M *) composite[IMAGE[id[cart[V,V]]],id[FUNS]] := id[FUNS] (* added 2002 November 30 based on INVERSE.NB *) composite[IMAGE[id[cart[V,V]]],id[image[INVERSE,x_]]] := id[image[INVERSE,x]] composite[IMAGE[id[cart[V,V]]],id[P[Id]]] := id[P[Id]] (* derived 2008 June 27 in ID-PO.NB *) composite[IMAGE[id[cart[V,V]]],id[PO]] := id[PO] (* derived 2006 October 16 in ID-EQV.NB *) composite[IMAGE[id[cart[V,V]]],id[RFX]] := id[RFX] (* derived 2007 June 24 in UCL-UO.NB *) composite[IMAGE[id[cart[V,V]]],id[SELECT]] := composite[id[SELECT],IMAGE[id[cart[V,V]]]] (* derived 2006 October 16 in ID-EQV.NB *) composite[IMAGE[id[cart[V,V]]],id[SYM]] := id[SYM] (* derived 2006 October 16 in ID-EQV.NB *) composite[IMAGE[id[cart[V,V]]],id[TRV]] := id[TRV] (* added 2003 July 26 based on INTADDSW.NB *) composite[IMAGE[id[cart[V,V]]],id[Z]] := id[Z] (* derived 2006 November 5 in CURRY.NB *) composite[IMAGE[id[cart[V,V]]],IMAGE[ASSOC]] := IMAGE[ASSOC] (* derived 2006 September 19 in IMG-X.NB *) composite[IMAGE[id[cart[V,V]]],IMAGE[cross[x_,y_]]] := IMAGE[cross[x,y]] (* added 2002 January 10 based on MORE-PRS.NB *) composite[IMAGE[id[cart[V,V]]],IMAGE[inverse[PAIRSET]]] := IMAGE[inverse[PAIRSET]] (* added 2001 January 20 based on RIF-2.NB *) composite[IMAGE[id[cart[V,V]]],IMAGE[RIF]] := IMAGE[RIF] (* Theorem INV-CO4 in INV2 *) composite[IMAGE[id[cart[V,V]]],INVERSE] := INVERSE (* Theorem INV-CO4 in INV2 *) composite[IMAGE[id[cart[V,V]]],inverse[IMAGE[SWAP]]] := INVERSE (* derived 2006 September 30 in LAMBHULL.NB *) composite[IMAGE[id[cart[V,V]]],LAMBHULL] := LAMBHULL (* derived 2006 December 9 in SIMPLIFY.NB *) composite[IMAGE[id[cart[V,V]]],MIXTIMES] := MIXTIMES (* derived 2004 May 9 in OOPART.NB *) composite[IMAGE[id[cart[V,V]]],OOPART] := OOPART (* added 2002 November 29 based on PLUS.NB *) composite[IMAGE[id[cart[V,V]]],PLUS] := PLUS (* added 2003 May 5 based on IN-E-RCF.NB *) composite[IMAGE[id[cart[V,V]]],RCF] := RCF (* added 2003 May 31 based on RS-CO.NB *) composite[IMAGE[id[cart[V,V]]],RESTRICT] := RESTRICT (* derived 2006 November 21 in TIMES.NB *) composite[IMAGE[id[cart[V,V]]],TIMES] := TIMES (* added 2001 May 24 based on REIFY.NB *) composite[IMAGE[id[cart[V,V]]],VERTSECT[GREATEST[complement[cross[Id,Di]]]]] := FUNPART (* derived 2006 December 9 in AP-MIX.NB *) composite[IMAGE[id[cart[V,V]]],VERTSECT[inverse[rotate[x_]]]] := VERTSECT[inverse[rotate[x]]] (* added 2003 June 11 based on VS.NB *) composite[IMAGE[id[cart[V,V]]],VS] := VS (* derived 2004 September 25 in LAMB-WF.NB *) composite[IMAGE[id[cart[V,V]]],WFPART] := WFPART (* added 2002 December 16 based on REPLACE.NB *) composite[IMAGE[id[complement[x_]]],ADJOIN[x_]] := composite[IMAGE[id[complement[x]]],id[image[V,set[x]]]] (* corrected 1999 November 6 based on CO-2.LOG *) composite[IMAGE[id[complement[cart[V,V]]]],IMAGE[SWAP]] := cart[V,set[0]] (* corrected 1999 November 6 based on CO-2.LOG *) composite[IMAGE[id[complement[cart[V,V]]]],INVERSE] := cart[V,set[0]] (* derived 2006 June 10 in SYMDIF.NB *) composite[IMAGE[id[complement[x_]]],id[P[x_]]] := cart[P[x],set[0]] (* added 2002 June 9 based on OMEGA.NB *) composite[IMAGE[id[complement[omega]]],id[omega]] := cart[omega,set[0]] (* added 2003 May 31 based on CUT-CO.NB *) composite[IMAGE[id[x_]],complement[S]] := composite[id[P[x]],complement[S]] (* added 2002 May 24 based on ADJOIN.NB *) composite[IMAGE[id[complement[set[0]]]],IMAGE[SUCC]] := IMAGE[SUCC] (* derived 2004 April 25 in HULL-RC.NB *) composite[IMAGE[id[x_]],CORE[y_],id[z_],RC[x_]] := composite[CORE[y],id[z],RC[x]] (* derived 2004 April 25 in IDEMPOT.NB *) composite[IMAGE[id[x_]],CORE[y_],RC[x_]] := composite[CORE[y],RC[x]] (* added 1999 December 21 based on CROSS.NB *) composite[IMAGE[id[cross[x_,y_]]],CROSS] := composite[CROSS,cross[IMAGE[id[x]],IMAGE[id[y]]]] (* added 2003 September 24 based on PO-FACTS.NB *) composite[IMAGE[id[Di]],HULL[RFX]] := composite[IMAGE[id[Di]],id[P[cart[V,V]]]] (* discovered 1999 December 16 in CUT.NB *) composite[IMAGE[id[x_]],DISJOINT] := composite[id[P[x]],DISJOINT] (* added 2003 May 5 based on IN-E-RCF.NB *) composite[IMAGE[id[DISJOINT]],RCF] := RCF (* added 2002 February 3 based on RCF.NB *) composite[IMAGE[id[DISJOINT]],VERTSECT[inverse[CUP]]] := RCF (* derived 2004 September 5 in WF-REC-4.NB *) composite[IMAGE[id[domain[VERTSECT[ZN]]]],id[domain[VERTSECT[ZN]]]] := id[domain[VERTSECT[ZN]]] (* derived 2004 September 5 in WF-REC-4.NB *) composite[IMAGE[id[domain[VERTSECT[ZN]]]],id[REGULAR]] := id[REGULAR] (* added 2001 May 28 based on REMOVED.NB *) composite[IMAGE[id[FIRST]],CART] := composite[IMAGE[composite[id[FIRST],inverse[FIRST]]], COMPOSE,cross[Id,IMAGE[DUP]]] (* added 2002 May 4 based on HC-OMEGA.NB *) composite[IMAGE[id[FULL]],id[OMEGA]] := id[OMEGA] (* added 2001 April 28 based on MAP3.NB *) composite[IMAGE[id[FUNS]],MAP] := MAP (* derived 2004 November 16 in XS.NB *) composite[IMAGE[id[FUNS]],VERTSECT[intersection[composite[inverse[IMAGE[FIRST]],IMAGE[FIRST]],inverse[S]]]] := XS (* added 2001 December 23 based on MAP-1.NB *) composite[IMAGE[id[FUNS]],VERTSECT[intersection[composite[inverse[S],CART], composite[inverse[IMAGE[FIRST]],FIRST]]],id[cart[V,V]]] := MAP (* derived 2007 May 26 in IMG-ID.NB *) composite[IMAGE[id[x_]],id[y_],IMAGE[id[x_]]] := composite[id[y],IMAGE[id[x]]] (* derived 2003 December 30 in T2.NB *) composite[IMAGE[id[x_]],id[image[RC[x_],y_]]] := id[image[RC[x],y]] (* added 1999 October 13 based on NEWRULES.1 *) composite[IMAGE[id[Id]],IMAGE[SWAP]] := IMAGE[id[Id]] (* added 1999 October 13 based on NEWRULES.1 *) composite[IMAGE[id[id[x_]]],IMAGE[SWAP]] := IMAGE[id[id[x]]] (* added 2002 February 2 based on VSIN-CUP.NB *) composite[IMAGE[id[x_]],id[intersection[y_,P[x_]]]] := id[intersection[y,P[x]]] (* added 1999 October 12 based on NEWRULES.2 *) composite[IMAGE[id[Id]],INVERSE] := composite[IMAGE[id[Id]],id[P[cart[V,V]]]] (* added 1999 October 12 based on NEWRULES.2 *) composite[IMAGE[id[id[x_]]],INVERSE] := composite[IMAGE[id[id[x]]],id[P[cart[V,V]]]] composite[IMAGE[id[Id]],inverse[IMAGE[inverse[DUP]]]] := IMAGE[DUP] (* added 1999 October 13 based on NEWRULES.1 *) composite[IMAGE[id[Id]],inverse[IMAGE[SWAP]]] := composite[IMAGE[id[Id]],id[P[cart[V,V]]]] composite[IMAGE[id[x_]],id[P[x_]]] := id[P[x]] (* added 2000 September 4 based on NEW.M *) composite[IMAGE[id[x_]],id[P[y_]]] := id[P[y]] /; subclass[y,x] (* added 2000 September 28 based on CROSS.NB *) composite[IMAGE[id[x_]],id[P[complement[x_]]]] := cart[P[complement[x]],set[0]] (* derived 2004 April 26 in RCCORERC.NB *) composite[IMAGE[id[x_]],id[y_],RC[x_]] := composite[id[y],RC[x]] (* added 2001 December 24 based on MAP.NB *) composite[IMAGE[id[x_]],IMAGE[composite[id[P[cart[V,V]]],inverse[DORA]]]] := IMAGE[composite[id[intersection[x,P[cart[V,V]]]],inverse[DORA]]] (* Theorem IDP-CO-2 in IDP proved 1998 December 17 *) composite[IMAGE[id[x_]],IMAGE[DUP]] := composite[IMAGE[DUP],IMAGE[id[fix[x]]]] composite[IMAGE[id[x_]],IMAGE[FIRST]] := composite[IMAGE[FIRST],IMAGE[id[cart[x,V]]]] (* Theorem CUT-CO2 in CUT2 proved 1998 December 25 *) composite[IMAGE[id[x_]],IMAGE[id[y_]]] := IMAGE[id[intersection[x,y]]] composite[IMAGE[id[x_]],IMAGE[SECOND]] := composite[IMAGE[SECOND],IMAGE[id[cart[V,x]]]] (* added 1999 November 30 based on IMG-SWAP.4 *) composite[IMAGE[id[x_]],IMAGE[SWAP]] := composite[IMAGE[SWAP],IMAGE[id[inverse[x]]]] (* derived 2008 July 29 in IM-IN-VS.NB *) composite[IMAGE[x_],id[image[V,y_]],SINGLETON] := composite[id[image[V,y]],VERTSECT[x]] (* added 2002 June 9 based on OMEGA.NB *) composite[IMAGE[id[intersection[omega,x_]]],id[omega]] := composite[IMAGE[id[x]],id[omega]] (* derived 2006 May 31 in OL-NOGAP.NB *) composite[IMAGE[id[intersection[OMEGA,x_]]],ordlist[x_]] := composite[IMAGE[ordlist[x]],id[domain[ordlist[x]]]] (* added 2001 May 28 based on REMOVED.NB *) composite[IMAGE[id[inverse[FIRST]]],CART] := composite[IMAGE[SWAP], IMAGE[composite[id[FIRST],inverse[FIRST]]],COMPOSE,SWAP,cross[IMAGE[DUP],Id]] (* added 2000 September 4 based on NEW.M *) composite[IMAGE[id[x_]],inverse[IMAGE[id[y_]]]] := composite[IMAGE[id[x]],id[P[y]]] /; subclass[x,y] (* added 2000 September 4 based on NEW.M *) composite[IMAGE[id[x_]],inverse[IMAGE[id[y_]]]] := composite[id[P[x]],inverse[IMAGE[id[y]]]] /; subclass[y,x] (* derived 2004 January 29 in UB-LB-CO.NB *) composite[IMAGE[id[x_]],inverse[LB[y_]]] := composite[id[P[x]],inverse[LB[y]]] (* special case of conditional rule IMG-SR-4 in IMG3 *) composite[IMAGE[id[x_]],inverse[S]] := composite[inverse[S],IMAGE[id[x]]] (* added 2001 May 28 based on REMOVED.NB *) composite[IMAGE[id[inverse[SECOND]]],CART] := composite[IMAGE[SWAP], IMAGE[composite[id[SECOND],inverse[FIRST]]],COMPOSE,cross[IMAGE[DUP],Id]] (* derived 2004 January 29 in UB-LB-CO.NB *) composite[IMAGE[id[x_]],inverse[UB[y_]]] := composite[id[P[x]],inverse[UB[y]]] (* derived 2008 April 17 in ORD-NAT.NB *) composite[IMAGE[id[nat[x_]]],id[nat[x_]]] := id[nat[x]] (* derived 2005 January 5 in CORE-ON.NB *) composite[IMAGE[id[OMEGA]],CORE[OMEGA]] := CORE[OMEGA] (* derived 2006 February 5 in CORE-SEL.NB *) composite[IMAGE[id[omega]],HC] := CORE[omega] (* derived 2005 January 5 in CORE-ON.NB *) composite[IMAGE[id[OMEGA]],HC] := CORE[OMEGA] (* derived 2007 August 2 in HULL-SG.NB *) composite[IMAGE[id[omega]],HULL[omega]] := HULL[omega] (* added 2001 May 20 based on OMEGA.NB *) composite[IMAGE[id[omega]],id[omega]] := id[omega] (* added 2001 May 20 based on OMEGA.NB *) composite[IMAGE[id[OMEGA]],id[OMEGA]] := id[OMEGA] (* derived 2005 December 1 in ORD-UNIQ.NB *) composite[IMAGE[id[OMEGA]],id[ord[x_]]] := id[ord[x]] (* derived 2005 November 19 in TOP.NB *) composite[IMAGE[id[omega]],POWER,id[omega]] := composite[id[omega],SUCC] (* derived 2007 August 2 in HULL-SG.NB *) composite[IMAGE[id[OMEGA]],POWER,id[OMEGA]] := composite[id[OMEGA],SUCC] (* derived 2005 December 1 in ORD-UNIQ.NB *) composite[IMAGE[id[ord[x_]]],id[ord[x_]]] := id[ord[x]] (* added 2001 May 20 based on IDEA.NB *) composite[IMAGE[id[P[cart[V,V]]]],IMAGE[CART]] := IMAGE[CART] (* derived 2006 November 11 in CO-MAP.NB *) composite[IMAGE[id[P[cart[V,V]]]],MAP] := MAP (* added 2002 October 22 based on CO-ID.NB *) composite[IMAGE[x_],id[P[domain[VERTSECT[x_]]]]] := IMAGE[x] (* added 2001 May 2 based on IMG-PC.NB *) composite[IMAGE[id[P[x_]]],POWER] := composite[POWER,IMAGE[id[x]]] (* added 2003 September 4 based on IDEMCORE.NB *) composite[IMAGE[id[x_]],POWER,CORE[x_]] := composite[IMAGE[id[x]],POWER] (* derived 2005 August 17 in PRIMESEQ.NB *) composite[IMAGE[id[PRIMES]],PRIMESEQ] := composite[IMAGE[PRIMESEQ],id[omega]] (* added 2001 October 16 based on RA-SG.NB *) composite[IMAGE[id[range[SINGLETON]]],POWER] := IMAGE[SINGLETON] (* added 1999 November 2 based on 1999 November 1 session WORK/ASSOC.LOG *) composite[IMAGE[id[x_]],RC[x_]] := RC[x] (* derived 2007 December 8 in IMGIDREG.NB *) composite[IMAGE[id[REGULAR]],id[omega]] := id[omega] (* derived 2007 December 8 in IMGIDREG.NB *) composite[IMAGE[id[REGULAR]],id[OMEGA]] := id[OMEGA] (* added 2001 October 27 based on CORE-UCL.NB *) composite[IMAGE[id[REGULAR]],id[REGULAR]] := id[REGULAR] (* added 2001 May 2 based on IMG-PC.NB *) composite[IMAGE[id[REGULAR]],POWER] := composite[POWER,IMAGE[id[REGULAR]]] (* added 1999 December 31 based on IMG-SR-1.NB *) composite[IMAGE[id[x_]],S] := composite[id[P[x]],S,IMAGE[id[x]]] (* added 2001 May 28 based on REMOVED.NB *) composite[IMAGE[id[SECOND]],CART] := composite[IMAGE[composite[id[SECOND],inverse[FIRST]]], COMPOSE,SWAP,cross[Id,IMAGE[DUP]]] (* derived 2008 August 24 in FUNPART.NB *) composite[IMAGE[x_],id[y_],SINGLETON] := composite[VERTSECT[x],id[image[inverse[SINGLETON],y]]] (* added 2003 June 24 based on INTERIOR.NB *) composite[IMAGE[id[U[x_]]],CORE[x_]] := CORE[x] (* derived 2007 August 2 in HULL-SG.NB *) composite[IMAGE[id[U[x_]]],HULL[x_]] := HULL[x] (* added 2001 April 30 based on CUT-SC.NB *) composite[IMAGE[id[U[x_]]],id[x_]] := id[x] (* derived 2007 June 6 in IDEMWRAP.NB *) composite[IMAGE[idem[x_]],IMAGE[idem[x_]]] := IMAGE[idem[x]] (* derived 2004 May 7 in IIOO-ACL.NB *) composite[IMAGE[IMAGE[h_]],ACLOSURE] := composite[ACLOSURE,IMAGE[IMAGE[h]]] /; ONEONE[h] (* derived 2007 November 13 in AC-IN-K.NB *) composite[IMAGE[IMAGE[FIRST]],XS] := union[cart[complement[SELECT],set[0]], composite[SINGLETON,IMAGE[FIRST],id[SELECT]]] (* derived 2006 November 11 in CO-MAP.NB *) composite[IMAGE[IMAGE[id[cart[V,V]]]],MAP] := MAP (* derived 2007 May 6 in CHN-REIF.NB *) composite[IMAGE[IMAGE[id[x_]]],CHAINS] := composite[IMAGE[id[P[x]]],CHAINS] (* derived 2007 May 6 in CHN-REIF.NB *) composite[IMAGE[IMAGE[id[x_]]],CLIQUES] := composite[IMAGE[id[P[x]]],CLIQUES] (* added 2001 December 20 based on Q-POW.NB *) composite[IMAGE[x_],IMAGE[id[domain[x_]]]] := IMAGE[x] (* derived 2004 May 14 in REPLACE.NB *) composite[IMAGE[x_],IMAGE[id[domain[VERTSECT[x_]]]]] := IMAGE[thinpart[x]] (* added 2003 March 13 based on IMG-CUT.NB *) composite[IMAGE[IMAGE[id[x_]]],id[P[P[x_]]]] := id[P[P[x]]] (* added 2003 March 13 based on IMG-CUT.NB *) composite[IMAGE[IMAGE[id[x_]]],IMAGE[id[P[x_]]]] := IMAGE[id[P[x]]] (* derived 2007 May 29 in IVR-HULL.NB *) composite[IMAGE[IMAGE[id[x_]]],IMAGE[IMAGE[id[x_]]]] := IMAGE[IMAGE[id[x]]] (* added 2000 January 1 based on RA-IMG-H.NB *) composite[IMAGE[h_],IMAGE[inverse[h_]]] := IMAGE[id[range[h]]] /; FUNCTION[h] && FUNCTION[inverse[h]] (* Theorem IMG-POW proved 2001 September 27 *) composite[IMAGE[IMAGE[f_]],POWER] := composite[POWER,IMAGE[f]] /; FUNCTION[f] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[IMAGE[IMAGE[SWAP]],IMAGE[IMAGE[SWAP]]] := IMAGE[IMAGE[id[cart[V,V]]]] (* added 2003 March 16 based on IMG-UCL.NB *) composite[IMAGE[IMAGE[x_]],UCLOSURE] := composite[UCLOSURE,IMAGE[IMAGE[x]]] (* added 1999 October 21 based on VERTSECT.NB *) composite[IMAGE[intersection[composite[x_,FIRST],composite[y_,SECOND]]],CART] := composite[CAP,cross[IMAGE[x],IMAGE[y]]] /; And[cond,thin[x],thin[y]] (* derived 2006 May 2 in RFX-XFM.NB *) composite[IMAGE[intersection[composite[x_,FIRST],composite[x_,SECOND]]],CORE[RFX]] := composite[IMAGE[x],IMAGE[inverse[DUP]]] (* derived 2007 November 3 in MAX-S.NB *) composite[IMAGE[intersection[composite[x_,FIRST],composite[y_,SECOND]]],IMAGE[DUP]] := IMAGE[intersection[x,y]] (* derived 2006 November 5 in CURRY.NB *) composite[IMAGE[inverse[ASSOC]],id[P[cart[V,cart[V,V]]]],inverse[VS]] := inverse[CURRY] (* derived 2006 November 5 in CURRY.NB *) composite[IMAGE[inverse[ASSOC]],IMAGE[cross[Id,inverse[E]]],id[intersection[FUNS, P[cart[V,intersection[complement[set[0]],P[cart[V,V]]]]]]]] := inverse[CURRY] (* added 2001 February 24 based on NEW.NB *) composite[IMAGE[inverse[BIGCUP]],POWER] := composite[POWER,POWER] (* derived 2008 February 16 in CAP.NB *) composite[image[inverse[CAP],x_],inverse[S]] := composite[S,id[x],inverse[S]] (* derived 2007 May 27 in COARSER.NB *) composite[IMAGE[inverse[COARSER]],IMAGE[inverse[COARSER]]] := IMAGE[inverse[COARSER]] (* added 2002 January 2 based on CRSRULES.NB *) composite[image[inverse[CROSS],x_],IMAGE[id[cart[V,V]]]] := image[inverse[CROSS],x] (* derived 2007 January 27 in DIV-SBV.NB *) composite[IMAGE[inverse[DIV]],IMAGE[inverse[DIV]]] := IMAGE[inverse[DIV]] (* added 2003 June 11 based on VS.NB *) composite[IMAGE[inverse[DUP]],ADJOIN[set[0]]] := IMAGE[inverse[DUP]] (* derived 2004 October 4 in REPLACE.NB *) composite[IMAGE[inverse[DUP]],BIGCUP,IMAGE[CART],IMAGE[DUP]] := BIGCUP (* Definition DEF-CAP in CAP used in Otter 1999 August 12 *) composite[IMAGE[inverse[DUP]],CART] := CAP (* added 1999 December 24 based on FIX-CAP.NB *) composite[IMAGE[inverse[DUP]],COMPOSE,cross[IMAGE[SWAP],IMAGE[SWAP]]] := composite[IMAGE[inverse[DUP]],COMPOSE,SWAP] (* derived 2004 October 4 in REPLACE.NB *) composite[IMAGE[inverse[DUP]],CORE[intersection[RFX,SYM]]] := IMAGE[inverse[DUP]] (* added 2003 September 21 based on RFX-CORE.NB *) composite[IMAGE[inverse[DUP]],CORE[RFX]] := IMAGE[inverse[DUP]] (* derived 2004 October 4 in REPLACE.NB *) composite[IMAGE[inverse[DUP]],CORE[SYM]] := IMAGE[inverse[DUP]] (* added 1999 October 17 based on CROSS.3 *) composite[IMAGE[inverse[DUP]],CROSS] := composite[CART,cross[IMAGE[inverse[DUP]],IMAGE[inverse[DUP]]]] (* added 1999 December 21 based on FIX-DIF.NB *) composite[IMAGE[inverse[DUP]],DIF] := composite[DIF,cross[IMAGE[inverse[DUP]],IMAGE[inverse[DUP]]]] (* derived 2007 May 6 in CHN-UCL.NB *) composite[IMAGE[inverse[DUP]],HULL[invar[SWAP]]] := IMAGE[inverse[DUP]] (* derived 2006 October 7 in TRV-RFX.NB *) composite[IMAGE[inverse[DUP]],HULL[TRV],CORE[RFX]] := IMAGE[inverse[DUP]] (* derived 2004 September 25 in LAMB-WF.NB *) composite[IMAGE[inverse[DUP]],HULL[TRV],WFPART] := cart[V,set[0]] (* based on 1999 December 11 notebook CART-DUP.NB *) composite[IMAGE[inverse[DUP]],id[image[CART,Id]]] := composite[inverse[DUP],inverse[CART]] (* derived 2008 April 30 in ACYCLIC.NB *) composite[IMAGE[inverse[DUP]],id[P[Di]]] := cart[P[Di],set[0]] composite[IMAGE[inverse[DUP]],id[P[Id]]] := inverse[IMAGE[DUP]] (* derived 2004 December 6 in IDP.NB *) composite[IMAGE[inverse[DUP]],id[P[id[x_]]]] := composite[id[P[x]],inverse[IMAGE[DUP]]] (* derived 2008 May 17 in FIX-WO.NB *) composite[IMAGE[inverse[DUP]],IMAGE[cross[oopart[x_],oopart[x_]]]] := composite[IMAGE[oopart[x]],IMAGE[inverse[DUP]]] (* Theorem FIX-IDP2 in FIX2 proved 1998 December 20 *) composite[IMAGE[inverse[DUP]],IMAGE[DUP]] := Id composite[IMAGE[inverse[DUP]],IMAGE[id[x_]]] := composite[IMAGE[id[fix[x]]],IMAGE[inverse[DUP]]] (* added 1999 October 13 based on NEWRULES.1 *) composite[IMAGE[inverse[DUP]],IMAGE[SWAP]] := IMAGE[inverse[DUP]] (* added 1999 October 12 based on NEWRULES.2 *) composite[IMAGE[inverse[DUP]],INVERSE] := composite[IMAGE[inverse[DUP]],id[P[cart[V,V]]]] (* added 1998 August 23 *) composite[IMAGE[inverse[DUP]],inverse[IMAGE[id[Id]]]] := inverse[IMAGE[DUP]] (* added 2003 May 10 based on LAMBHULL.NB *) composite[IMAGE[inverse[DUP]],LAMBHULL] := ACLOSURE (* added 2002 February 4 based on RCF-NORM.NB *) composite[IMAGE[inverse[DUP]],RCF] := union[cart[complement[set[0]],set[0]],cart[set[0],set[set[0]]]] (* derived 2004 September 25 in LAMB-WF.NB *) composite[IMAGE[inverse[DUP]],WFPART] := cart[V,set[0]] (* added 2000 January 1 based on RAIMGH-2.NB *) composite[IMAGE[inverse[h_]],IMAGE[h_]] := IMAGE[id[domain[h]]] /; FUNCTION[h] && FUNCTION[inverse[h]] (* derived 2005 November 22 in IMDORARS.NB *) composite[IMAGE[x_],inverse[IMAGE[id[domain[x_]]]]] := composite[IMAGE[x],id[P[domain[x]]]] (* derived 2004 September 30 in EQV-THNP.NB *) composite[image[inverse[IMG],EQV],IMAGE[composite[id[inverse[FIRST]],inverse[SECOND]]],EQUIV] := composite[INVAR,EQUIV] (* derived 2006 June 16 in UB-I-CAP.NB *) composite[image[inverse[IMG],x_],IMAGE[DUP]] := image[inverse[CAP],x] (* added 2001 November 25 based on FUNP-1.NB *) composite[image[inverse[IMG],x_],IMAGE[id[cart[V,V]]]] := image[inverse[IMG],x] (* derived 2004 September 30 in EQV-THNP.NB *) composite[image[inverse[IMG],TRV],IMAGE[composite[id[inverse[FIRST]],inverse[SECOND]]], HULL[TRV],IMAGE[id[cart[V,V]]]] := cart[V,V] (* derived 2006 September 24 in INTLEQ.NB *) composite[image[inverse[INTADD],x_],id[P[cart[V,V]]]] := image[inverse[INTADD],x] (* added 2003 August 12 based on RO-ZADD.NB *) composite[image[inverse[INTADD],x_],id[Z]] := image[inverse[INTADD],x] (* added 2003 August 12 based on RO-ZADD.NB *) composite[image[inverse[INTADD],x_],id[intersection[y_,Z]]] := composite[image[inverse[INTADD],x],id[y]] (* derived 2007 January 23 in IMINZADD.NB *) composite[image[inverse[INTADD],image[INVERSE,x_]],INVERSE] := composite[INVERSE,image[inverse[INTADD],x]] (* added 2003 August 12 based on RO-ZADD.NB *) composite[image[inverse[INTADD],set[x_]],y___,id[image[V,set[x_]]]] := composite[image[inverse[INTADD],set[x]],y] (* derived 2008 September 13 in INTADD.NB *) composite[image[inverse[INTADD],set[x_]],image[inverse[INTADD],set[x_]]] := id[intersection[Z,image[V,intersection[Z,set[x]]]]] (* derived 2006 December 11 in INTADD.NB *) composite[image[inverse[INTADD],set[x_]],INTADD] := composite[INTADD,cross[INVERSE,image[inverse[INTADD],set[x]]]] (* added 2003 August 12 based on RO-ZADD.NB *) composite[image[inverse[INTADD],set[x_]],INVERSE, image[inverse[INTADD],set[y_]]] := image[inverse[INTADD],set[intadd[x,y]]] (* derived 2007 January 23 in IMINZADD.NB *) composite[image[inverse[INTADD],set[inverse[x_]]],INVERSE] := composite[INVERSE,image[inverse[INTADD],set[composite[Id,x]]]] (* derived 2008 September 13 in IMINTMUL.NB *) composite[image[inverse[INTMUL],x_],id[Z]] := image[inverse[INTMUL],x] (* derived 2006 December 16 in ZEROPROD.NB *) composite[image[inverse[MIXMUL],x_],id[Z]] := image[inverse[MIXMUL],x] (* added 2002 July 30 based on IMIN-ADD.NB *) composite[image[inverse[NATADD],x_],id[complement[omega]]] := 0 (* derived 2006 November 22 in NATADD.NB *) composite[image[inverse[NATADD],x_],id[intersection[omega,y_]]] := composite[image[inverse[NATADD],x],id[y]] (* added 2002 July 30 based on IMIN-ADD.NB *) composite[image[inverse[NATADD],x_],id[omega]] := image[inverse[NATADD],x] (* derived 2008 September 13 in NAT-SUCC.NB *) composite[image[inverse[NATADD],set[x_]],image[inverse[NATADD],set[x_]]] := id[nat[succ[x]]] (* added 2003 August 8 based on REPLACE.NB *) composite[image[inverse[NATADD],set[x_]],plus[y_]] := image[inverse[NATADD],set[natsub[x,y]]] (* derived 2006 November 28 in NATEXP-5.NB *) composite[image[inverse[NATEXP],x_],id[omega]] := image[inverse[NATEXP],x] (* derived 2006 November 21 in NATMUL.NB *) composite[image[inverse[NATMUL],x_],id[intersection[omega,y_]]] := composite[image[inverse[NATMUL],x],id[y]] (* derived 2006 November 21 in NATMUL.NB *) composite[image[inverse[NATMUL],x_],id[omega]] := image[inverse[NATMUL],x] (* derived 2007 May 8 in PAIRSET.NB *) composite[IMAGE[inverse[PAIRSET]],CHAINS] := composite[HULL[SYM],CORE[RFX]] (* derived 2007 May 8 in PAIRSET.NB *) composite[IMAGE[inverse[PAIRSET]],CLIQUES] := CORE[intersection[RFX,SYM]] (* added 1999 October 17 based on STRANGE.7 *) composite[IMAGE[inverse[PAIRSET]],POWER] := composite[CART,DUP] (* added 1998 August 7 *) composite[IMAGE[inverse[POWER]],IMAGE[POWER]] := Id (* derived 2007 December 10 in CORE-IMS.NB *) composite[IMAGE[inverse[POWER]],POWER] := CORE[fix[IMAGE[inverse[S]]]] (* derived 2006 April 14 in PC-TOWER.NB *) composite[IMAGE[inverse[RANK]],id[omega],SUCC] := composite[POWER,IMAGE[inverse[RANK]],id[omega]] (* derived 2006 April 14 in REPLACE.NB *) composite[IMAGE[inverse[RANK]],id[OMEGA],SUCC] := composite[POWER,IMAGE[inverse[RANK]],id[OMEGA]] (* derived 2006 April 11 in IMINRANK.NB *) composite[IMAGE[inverse[RANK]],IMAGE[id[OMEGA]]] := IMAGE[inverse[RANK]] (* derived 2006 April 11 in IMINRANK.NB *) composite[IMAGE[inverse[RANK]],IMAGE[inverse[RANK]]] := IMAGE[inverse[RANK]] (* derived 2006 March 14 in ZN-ON.NB *) composite[IMAGE[inverse[RANK]],IMAGE[inverse[S]],id[OMEGA]] := composite[IMAGE[inverse[RANK]],id[OMEGA]] (* derived 2008 October 4 in IMAG-ROT.NB *) composite[IMAGE[inverse[ROT]],IMAGE[id[cart[cart[V,V],V]]]] := IMAGE[inverse[ROT]] (* derived 2008 October 4 in IMAG-ROT.NB *) composite[IMAGE[inverse[ROT]],IMAGE[inverse[ROT]]] := IMAGE[ROT] (* Theorem IMG-SR-4 in IMG3 *) composite[IMAGE[f_],inverse[S]] := composite[inverse[S],IMAGE[f]] /; FUNCTION[f] (* added 2001 October 16 based on IMS-ACL.NB *) composite[IMAGE[inverse[S]],ACLOSURE] := IMAGE[inverse[S]] (* derived 2007 May 6 in CHN-FU.NB *) composite[IMAGE[inverse[S]],CHAINS] := CHAINS (* added 2001 May 4 based on CLIQUES.NB *) composite[IMAGE[inverse[S]],CLIQUES] := CLIQUES (* derived 2005 November 19 in TOP.NB *) composite[IMAGE[inverse[S]],HULL[TOPS]] := composite[POWER,BIGCUP,HULL[TOPS]] (* derived 2007 September 4 in U-CHAINS.NB *) composite[IMAGE[inverse[S]],id[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]]] := composite[POWER,BIGCUP,id[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]]] (* added 2000 January 11 based on HER-FIX1.NB *) composite[IMAGE[inverse[S]],id[fix[IMAGE[inverse[S]]]]] := id[fix[IMAGE[inverse[S]]]] (* added 1998 August 7 *) composite[IMAGE[inverse[S]],id[range[POWER]]] := id[range[POWER]] (* added 2001 May 4 based on IMG-INS.NB *) composite[IMAGE[inverse[S]],IMAGE[CAP],CART] := composite[CAP,cross[IMAGE[inverse[S]],IMAGE[inverse[S]]]] (* added 2002 January 21 based on VS-IN-BC.TXT *) composite[IMAGE[inverse[S]],IMAGE[inverse[POWER]]] := composite[BIGCUP,IMAGE[id[range[POWER]]]] composite[IMAGE[inverse[S]],IMAGE[inverse[S]]] := IMAGE[inverse[S]] (* added 2001 February 19 based on IMINS.NB *) composite[IMAGE[inverse[S]],IMAGE[POWER],POWER] := composite[POWER,POWER] (* added 2003 March 9 based on CORE-HER.NB *) composite[IMAGE[inverse[S]],inverse[S],IMAGE[inverse[S]]] := composite[id[fix[IMAGE[inverse[S]]]],inverse[S],IMAGE[inverse[S]]] (* derived 2007 October 16 in INS-MAP.NB *) composite[IMAGE[inverse[S]],MAP] := union[cart[cart[complement[set[0]],set[0]],set[0]],cart[cart[set[0],V],set[set[0]]], composite[IMAGE[id[FUNS]],POWER,id[complement[set[0]]],CART]] (* added 1998 August 7 *) composite[IMAGE[inverse[S]],POWER] := POWER (* derived 2007 May 22 in SU-OM.NB *) composite[IMAGE[inverse[S]],RC[omega],id[omega]] := cart[omega,set[image[inverse[S],omega]]] (* derived 2008 July 10 in UBD-CO.NB *) composite[IMAGE[inverse[S]],UBD] := UBD (* added 2003 March 1 based on HER-UCL.NB *) composite[IMAGE[inverse[S]],UCLOSURE] := composite[POWER,BIGCUP] (* derived 2004 August 10 in RS-3.NB *) composite[IMAGE[inverse[S]],VERTSECT[RESTRICT]] := composite[POWER,IMAGE[id[cart[V,V]]]] (* derived 2004 May 2 in ZN.NB *) composite[IMAGE[inverse[S]],VERTSECT[ZN]] := VERTSECT[ZN] (* derived 2007 May 8 in PAIRSET.NB *) composite[IMAGE[inverse[SINGLETON]],CHAINS] := IMAGE[inverse[DUP]] (* added 2001 October 10 based on REPLACE.NB *) composite[IMAGE[inverse[SINGLETON]],CLIQUES] := IMAGE[inverse[DUP]] (* derived 2008 September 3 in IM-IN-SG.NB *) composite[IMAGE[inverse[SINGLETON]],DISJOINT] := composite[DISJOINT,IMAGE[inverse[SINGLETON]]] (* added 1998 August 7 *) composite[IMAGE[inverse[SINGLETON]],id[range[POWER]]] := inverse[POWER] composite[IMAGE[inverse[SINGLETON]],IMAGE[inverse[S]]] := BIGCUP (* derived 2008 July 29 in FUNAPPLY.NB *) composite[IMAGE[inverse[SINGLETON]],IMAGE[SECOND],VS] := composite[IMAGE[SECOND],FUNPART] composite[IMAGE[inverse[SINGLETON]],IMAGE[SINGLETON]] := Id (* derived 2008 September 3 in IM-IN-SG.NB *) composite[IMAGE[inverse[SINGLETON]],KURA] := composite[SINGLETON,FIRST] (* added 1998 August 7 *) composite[IMAGE[inverse[SINGLETON]],POWER] := Id (* derived 2008 September 3 in IM-IN-SG.NB *) composite[IMAGE[inverse[SINGLETON]],SUBVAR] := IMAGE[inverse[DUP]] (* derived 2008 July 10 in UBD-CO.NB *) composite[IMAGE[inverse[SINGLETON]],UBD] := IMAGE[FIRST] (* derived 2005 November 17 in RUSSELL.NB *) composite[IMAGE[inverse[SINGLETON]],UCLOSURE] := IMAGE[inverse[SINGLETON]] (* added 2002 May 26 based on COMMUTE.NB *) composite[IMAGE[inverse[SUCC]],id[omega]] := union[cart[set[0],set[0]],composite[inverse[SUCC],id[omega]]] (* added 2002 May 26 based on ON-SUC-1.NB *) composite[IMAGE[inverse[SUCC]],id[OMEGA],SUCC] := id[OMEGA] (* added 1999 December 24 based on SYMDIF-2.NB *) composite[image[inverse[SYMDIF],set[x_]],id[P[x_]]] := RC[x] (* added 1999 December 24 based on SYMDIF-2.NB *) composite[image[inverse[SYMDIF],set[x_]],image[inverse[SYMDIF],set[x_]]] := id[image[V,set[x]]] (* added 1999 December 24 based on SYMDIF-2.NB *) composite[image[inverse[SYMDIF],set[x_]],RC[x_]] := id[intersection[image[V,set[x]],P[x]]] (* added 2001 March 31 based on REMOVED.NB *) composite[IMAGE[inverse[TC]],POWER] := composite[POWER,HC] (* derived 2007 June 5 in COA-ZN.NB *) composite[IMAGE[inverse[ZN]],IMAGE[inverse[ZN]]] := IMAGE[inverse[ZN]] (* added 2001 February 24 based on NEW.NB *) composite[IMAGE[LB[x_]],POWER] := 0 (* added 2001 February 24 based on NEW.NB *) composite[IMAGE[LEAST[x_]],POWER] := IMAGE[id[fix[x]]] (* derived 2006 November 1 in REIF-TRI.NB *) composite[IMAGE[x_],PAIRSET] := composite[CUP,cross[VERTSECT[x],VERTSECT[x]]] (* derived 2006 October 16 in PAIRSET.NB *) composite[IMAGE[PAIRSET],CART,DUP] := composite[IMAGE[id[range[PAIRSET]]],POWER] (* added 2002 January 10 based on MORE-PRS.NB *) composite[IMAGE[PAIRSET],IMAGE[id[cart[V,V]]]] := IMAGE[PAIRSET] (* derived 2007 May 7 in SBV-PO.NB *) composite[IMAGE[po[x_]],IMAGE[po[x_]]] := IMAGE[po[x]] (* added 2002 May 22 based on INVERSE.NB *) composite[image[power[x_],y_],x_] := composite[x,image[power[x],y]] (* added 1998 August 7 *) composite[IMAGE[POWER],IMAGE[inverse[POWER]]] := IMAGE[id[range[POWER]]] (* added 2002 July 28 based on ADD-NAT.NB *) composite[image[power[x_],y_],image[power[x_],z_]] := image[power[x],image[NATADD,cart[y,z]]] (* reoriented 2002 June 13 based on LOOPING.NB *) composite[image[power[x_],z_],iterate[x_,y_]] := composite[iterate[x,y],image[power[SUCC],z]] (* added 2002 June 5 based on COMMUTE.NB *) composite[image[power[SUCC],x_],id[omega]] := composite[id[omega],image[power[SUCC],x]] (* derived 2006 June 28 in NATEXP-2.NB *) composite[image[power[times[nat[x_]]],set[nat[y_]]],id[omega]] := times[natexp[nat[x],nat[y]]] (* derived 2007 July 4 in IMAGRANK.NB *) composite[IMAGE[RANK],id[OMEGA]] := id[OMEGA] (* derived 2007 July 4 in IMAGRANK.NB *) composite[IMAGE[RANK],id[P[OMEGA]]] := id[P[OMEGA]] (* derived 2007 July 4 in IMAGRANK.NB *) composite[IMAGE[RANK],IMAGE[id[OMEGA]]] := IMAGE[id[OMEGA]] (* derived 2007 December 8 in RANK-ORD.NB *) composite[IMAGE[RANK],IMAGE[id[ord[x_]]]] := IMAGE[id[ord[x]]] (* derived 2004 December 31 in IN-RK.NB *) composite[IMAGE[RANK],IMAGE[inverse[RANK]]] := IMAGE[id[OMEGA]] (* derived 2007 July 4 in IMAGRANK.NB *) composite[IMAGE[RANK],IMAGE[RANK]] := IMAGE[RANK] (* derived 2007 May 6 in CHN-REIF.NB *) composite[IMAGE[RESTRICT],CHAINS] := composite[IMAGE[id[P[cart[V,V]]]],CHAINS] (* derived 2007 May 6 in CHN-REIF.NB *) composite[IMAGE[RESTRICT],CLIQUES] := composite[IMAGE[id[P[cart[V,V]]]],CLIQUES] (* derived 2007 October 16 in INS-MAP.NB *) composite[IMAGE[RESTRICT],IMAGE[id[FUNS]]] := composite[IMAGE[inverse[S]],IMAGE[id[FUNS]]] (* derived 2007 October 16 in INS-MAP.NB *) composite[IMAGE[RESTRICT],MAP] := union[cart[cart[complement[set[0]],set[0]],set[0]],cart[cart[set[0],V],set[set[0]]], composite[IMAGE[id[FUNS]],POWER,id[complement[set[0]]],CART]] (* added 2001 January 20 based on RIF-2.NB *) composite[IMAGE[RIF],CART] := composite[COMPOSE,SWAP,cross[IMAGE[SWAP],IMAGE[SWAP]]] (* added 2001 January 20 based on RIF-2.NB *) composite[IMAGE[RIF],CROSS] := COMPOSE (* added 2002 December 28 based on REPLACE.NB *) composite[IMAGE[RIF],IMAGE[SWAP]] := composite[IMAGE[SWAP],IMAGE[RIF],IMAGE[cross[SWAP,SWAP]]] (* added 1999 December 21 based on ROTATE.NB *) composite[IMAGE[ROT],DIF] := composite[DIF,cross[IMAGE[ROT],IMAGE[ROT]]] (* derived 2008 October 4 in IMAG-ROT.NB *) composite[IMAGE[ROT],IMAGE[id[cart[cart[V,V],V]]]] := IMAGE[ROT] (* derived 2008 October 4 in IMAG-ROT.NB *) composite[IMAGE[ROT],IMAGE[ROT]] := IMAGE[inverse[ROT]] (* added 2002 April 6 based on FUNP-ROT.NB *) composite[IMAGE[ROT],IMAGE[SWAP]] := IMAGE[inverse[ASSOC]] (* added 2003 April 17 based on IM-IMG.NB *) composite[IMAGE[rotate[x_]],CART] := composite[IMG,cross[IMAGE[inverse[x]],Id]] /; cond && thin[inverse[x]] (* added 1999 January 1 based on SR-IMG-H.NB *) composite[IMAGE[h_],S] := composite[id[P[range[h]]],S,IMAGE[h]] /; FUNCTION[h] && FUNCTION[inverse[h]] (* added 2003 June 11 based on VS.NB *) composite[IMAGE[SECOND],ADJOIN[set[0]]] := IMAGE[SECOND] (* derived 2004 October 4 in REPLACE.NB *) composite[IMAGE[SECOND],BIGCUP,IMAGE[CART],IMAGE[DUP]] := BIGCUP (* added 1999 December 24 based on FIX-CAP.NB *) composite[IMAGE[SECOND],CAP] := composite[IMAGE[inverse[DUP]],COMPOSE,cross[Id,IMAGE[SWAP]]] (* added 1999 October 9 based on CART-LOG.3 *) composite[IMAGE[SECOND],CART] := union[composite[SECOND,id[cart[complement[set[0]],V]]], cart[cart[set[0],V],set[0]]] (* added 1999 December 25 based on COMPOSE4.NB *) composite[IMAGE[SECOND],COMPOSE] := composite[IMG,cross[Id,IMAGE[SECOND]]] (* derived 2004 October 4 in REPLACE.NB *) composite[IMAGE[SECOND],CORE[intersection[RFX,SYM]]] := IMAGE[inverse[DUP]] (* derived 2004 December 17 in RFX.NB *) composite[IMAGE[SECOND],CORE[RFX]] := IMAGE[inverse[DUP]] (* derived 2004 October 4 in REPLACE.NB *) composite[IMAGE[SECOND],CORE[SYM]] := composite[IMAGE[inverse[DUP]],COMPOSE,DUP] (* added 1999 October 17 based on CROSS.3 *) composite[IMAGE[SECOND],CROSS] := composite[CART,cross[IMAGE[SECOND],IMAGE[SECOND]]] (* derived 2004 May 12 in EQUIV.NB *) composite[IMAGE[SECOND],EQUIV] := composite[IMAGE[inverse[DUP]],EQUIV] (* added 2003 March 28 based on RA-TRV.NB *) composite[IMAGE[SECOND],HULL[TRV]] := composite[IMAGE[SECOND],id[P[cart[V,V]]]] (* derived 2006 October 16 in ID-EQV.NB *) composite[IMAGE[SECOND],id[EQV]] := composite[IMAGE[inverse[DUP]],id[EQV]] (* derived 2008 December 23 in DOM-RAN.NB *) composite[IMAGE[SECOND],id[image[inverse[DORA],Id]]] := composite[inverse[DUP],DORA] (* added 2001 December 18 based on DORA.NB *) composite[IMAGE[SECOND],id[x_],inverse[IMAGE[FIRST]]] := image[DORA,x] (* derived 2005 November 22 in IMDORARS.NB *) composite[IMAGE[SECOND],id[P[cart[V,V]]],Q] := image[DORA,FUNS] composite[IMAGE[SECOND],id[P[Id]]] := inverse[IMAGE[DUP]] (* derived 2006 June 18 in PO-EQV.NB *) composite[IMAGE[SECOND],id[PO]] := composite[IMAGE[inverse[DUP]],id[PO]] (* derived 2006 June 18 in PO-EQV.NB *) composite[IMAGE[SECOND],id[RFX]] := composite[IMAGE[inverse[DUP]],id[RFX]] (* derived 2006 June 18 in REIF-PO.NB *) composite[IMAGE[SECOND],id[TO]] := composite[IMAGE[inverse[DUP]],id[TO]] (* derived 2007 May 2 in REIF-WO.NB *) composite[IMAGE[SECOND],id[WO]] := composite[IMAGE[inverse[DUP]],id[WO]] (* added 2001 May 29 based on IMG-RHO.NB *) composite[IMAGE[SECOND],IMAGE[composite[id[x_],inverse[FIRST]]]] := IMAGE[x] (* added 2001 May 29 based on IMG-RHO.NB *) composite[IMAGE[SECOND],IMAGE[composite[id[x_],inverse[SECOND]]]] := composite[IMAGE[id[range[x]]],id[P[domain[VERTSECT[inverse[x]]]]]] (* added 2000 September 12 based on ASSERT.NB *) composite[IMAGE[SECOND],IMAGE[cross[Id,x_]]] := composite[IMAGE[x],IMAGE[SECOND]] (* added 2000 September 12 based on ASSERT.NB *) composite[IMAGE[SECOND],IMAGE[cross[SECOND,x_]]] := composite[IMAGE[x],IMAGE[SECOND],IMAGE[id[cart[cart[V,V],V]]]] composite[IMAGE[SECOND],IMAGE[DUP]] := Id (* derived 2008 October 7 in BNP-WRAP.NB *) composite[IMAGE[SECOND],IMAGE[FIRST],id[BINOPS]] := composite[IMAGE[inverse[DUP]],IMAGE[FIRST],id[BINOPS]] (* added 1999 December 21 based on COMPOSE.NB *) composite[IMAGE[SECOND],IMAGE[id[cart[Id,V]]],CROSS] := composite[COMPOSE,SWAP,cross[IMAGE[SWAP],Id]] composite[IMAGE[SECOND],IMAGE[id[cart[V,V]]]] := IMAGE[SECOND] composite[IMAGE[SECOND],IMAGE[id[Id]]] := IMAGE[inverse[DUP]] (* derived 2008 September 13 in IMINTMUL.NB *) composite[IMAGE[SECOND],IMAGE[inverse[INTMUL]]] := IMAGE[inverse[INTDIV]] (* derived 2004 August 19 in X2901-93.NB *) composite[IMAGE[SECOND],IMAGE[LEFT[x_]]] := Id /; member[x,V] (* added 1999 November 30 based on IMG-SWAP.LOG *) composite[IMAGE[SECOND],IMAGE[SWAP]] := IMAGE[FIRST] (* derived 2008 June 7 in IMG-DORA.NB *) composite[IMAGE[SECOND],intersection[composite[inverse[S],FIRST], composite[inverse[IMAGE[FIRST]],inverse[S],SECOND]]] := composite[inverse[S],IMG] (* added 1999 October 12 based on INVERSE.5 *) composite[IMAGE[SECOND],INVERSE] := composite[IMAGE[FIRST],id[P[cart[V,V]]]] (* added 2000 September 4 based on NEW.M *) composite[IMAGE[SECOND],inverse[IMAGE[id[cart[V,V]]]]] := composite[IMAGE[SECOND],id[P[cart[V,V]]]] (* added 2001 December 18 based on DORA-RA.NB *) composite[IMAGE[SECOND],inverse[IMAGE[FIRST]]] := union[cart[complement[set[0]],complement[set[0]]],cart[set[0],set[0]]] (* added 2000 September 4 based on NEW.M *) composite[IMAGE[SECOND],inverse[IMAGE[SWAP]]] := composite[IMAGE[FIRST],id[P[cart[V,V]]]] (* derived 2008 October 21 in DORAJOIN.NB *) composite[IMAGE[SECOND],JOIN] := composite[CUP, cross[composite[IMAGE[SECOND],id[LISTS]],composite[IMAGE[SECOND],id[LISTS]]]] (* added 2003 May 12 based on LAMBHULL.NB *) composite[IMAGE[SECOND],LAMBHULL] := ACLOSURE (* added 2003 February 4 based on PLUS-Q.NB *) composite[IMAGE[SECOND],PLUS] := composite[RC[omega],id[omega]] (* added 2002 February 3 based on RCF.NB *) composite[IMAGE[SECOND],RCF] := POWER (* derived 2004 August 10 in RS-3.NB *) composite[IMAGE[SECOND],RESTRICT] := composite[IMG,inverse[FIRST]] (* derived 2004 September 14 in WF-REC-6.NB *) composite[IMAGE[SECOND],SECOND,history[x_,y_]] := composite[IMAGE[x],VERTSECT[y]] (* derived 2006 October 28 in DORA.NB *) composite[IMAGE[SECOND],TIMES] := composite[VERTSECT[DIV],id[omega]] (* derived 2006 November 12 in CURMAP-1.NB *) composite[IMAGE[SECOND],VERTSECT[inverse[rotate[w_]]]] := composite[VERTSECT[inverse[domain[w]]],id[domain[VERTSECT[composite[w,inverse[SECOND]]]]]] (* derived 2006 November 1 in LTRT-IMV.NB *) composite[image[x_,set[y_]],id[image[V,set[y_]]]] := composite[Id,image[x,set[y]]] (* Theorem VS-IMG-3 in VS2 proved 1999 July 14 *) composite[IMAGE[x_],SINGLETON] := VERTSECT[x] composite[IMAGE[SINGLETON],id[range[SINGLETON]]] := composite[SINGLETON,id[range[SINGLETON]]] composite[IMAGE[SINGLETON],IMAGE[inverse[SINGLETON]]] := IMAGE[id[range[SINGLETON]]] (* added 2002 May 24 based on ADJOIN.NB *) composite[IMAGE[SUCC],id[omega]] := composite[IMAGE[id[complement[set[0]]]],id[omega],SUCC] (* added 2000 January 1 based on RA-IMG-H.NB *) composite[IMAGE[SUCC],IMAGE[inverse[SUCC]]] := IMAGE[id[range[SUCC]]] (* added 1999 September 23 based on CART-LOG.1 *) composite[IMAGE[SWAP],CART] := composite[CART,SWAP] (* added 1999 November 28 based on COMPOSE1.NB *) composite[IMAGE[SWAP],COMPOSE] := composite[COMPOSE,cross[IMAGE[SWAP],IMAGE[SWAP]],SWAP] (* derived 2006 October 10 in R-S-CORE.NB *) composite[IMAGE[SWAP],CORE[intersection[RFX,SYM]]] := CORE[intersection[RFX,SYM]] (* derived 2004 December 17 in RFX.NB *) composite[IMAGE[SWAP],CORE[RFX]] := composite[INVERSE,CORE[RFX]] (* derived 2006 October 10 in R-S-CORE.NB *) composite[IMAGE[SWAP],CORE[SYM]] := CORE[SYM] (* added 1999 November 28 based on CROSS-1.NB *) composite[IMAGE[SWAP],CROSS] := composite[CROSS,cross[IMAGE[SWAP],IMAGE[SWAP]]] (* added 1999 December 21 based on IMAGSWAP.NB *) composite[IMAGE[SWAP],DIF] := composite[DIF,cross[IMAGE[SWAP],IMAGE[SWAP]]] (* derived 2004 May 12 in EQUIV.NB *) composite[IMAGE[SWAP],EQUIV] := EQUIV (* derived 2006 October 29 in OOPART.NB *) composite[IMAGE[SWAP],FUNPART] := composite[INVERSE,FUNPART] (* derived 2008 February 3 in SYM-HULL.NB *) composite[IMAGE[SWAP],HULL[invar[SWAP]]] := composite[HULL[SYM],IMAGE[id[cart[V,V]]]] (* derived 2008 February 3 in SYM-HULL.NB *) composite[IMAGE[SWAP],HULL[SYM]] := HULL[SYM] (* added 2003 March 5 based on TRV-IN.NB *) composite[IMAGE[SWAP],HULL[TRV]] := composite[INVERSE,HULL[TRV]] (* derived 2006 September 30 in HULL-INV.NB *) composite[IMAGE[SWAP],HULL[Z]] := composite[INVERSE,HULL[Z]] (* added 2000 September 4 based on NEW.M *) composite[IMAGE[SWAP],id[BIJ]] := composite[INVERSE,id[BIJ]] (* derived 2006 October 16 in ID-EQV.NB *) composite[IMAGE[SWAP],id[EQV]] := id[EQV] (* added 2000 September 4 based on NEW.M *) composite[IMAGE[SWAP],id[FUNS]] := composite[INVERSE,id[FUNS]] (* derived 2006 September 30 in VECT-ADD.NB *) composite[IMAGE[SWAP],id[image[INVERSE,range[PLUS]]]] := composite[INVERSE,id[image[INVERSE,range[PLUS]]]] (* added 1999 October 12 based on INVERSE.4 *) composite[IMAGE[SWAP],id[P[cart[V,V]]]] := INVERSE (* added 1999 October 13 based on NEWRULES.1 *) composite[IMAGE[SWAP],id[P[Id]]] := id[P[Id]] (* derived 2006 September 30 in VECT-ADD.NB *) composite[IMAGE[SWAP],id[range[PLUS]]] := composite[INVERSE,id[range[PLUS]]] (* added 2001 October 30 based on SYM-CORE.NB *) composite[IMAGE[SWAP],id[SYM]] := id[SYM] (* added 2003 August 10 based on ZADD-INV.NB *) composite[IMAGE[SWAP],id[Z]] := composite[INVERSE,id[Z]] (* derived 2006 October 31 in OOPTNORM.NB *) composite[IMAGE[SWAP],IMAGE[composite[id[SWAP],inverse[FIRST]]]] := IMAGE[composite[id[SWAP],inverse[SECOND]]] (* derived 2006 October 31 in OOPTNORM.NB *) composite[IMAGE[SWAP],IMAGE[composite[id[SWAP],inverse[SECOND]]]] := IMAGE[composite[id[SWAP],inverse[FIRST]]] (* derived 2006 September 30 in VECT-ADD.NB *) composite[IMAGE[SWAP],IMAGE[cross[x_,y_]]] := composite[INVERSE,IMAGE[cross[x,y]]] (* added 1999 October 13 based on NEWRULES.1 *) composite[IMAGE[SWAP],IMAGE[DUP]] := IMAGE[DUP] (* derived 2008 October 7 in BNP-WRAP.NB *) composite[IMAGE[SWAP],IMAGE[FIRST],id[BINOPS]] := composite[IMAGE[FIRST],id[BINOPS]] (* added 1999 December 24 based on FIX-CAP.NB *) composite[IMAGE[SWAP],IMAGE[id[cart[V,V]]]] := IMAGE[SWAP] (* derived 2008 September 13 in IMINTMUL.NB *) composite[IMAGE[SWAP],IMAGE[inverse[INTMUL]]] := IMAGE[inverse[INTMUL]] (* derived 2004 August 6 in CONSTANT.NB *) composite[IMAGE[SWAP],IMAGE[LEFT[x_]]] := IMAGE[RIGHT[x]] (* derived 2004 August 6 in CONSTANT.NB *) composite[IMAGE[SWAP],IMAGE[RIGHT[x_]]] := IMAGE[LEFT[x]] (* Theorem INV-CO2 in INV2 *) composite[IMAGE[SWAP],IMAGE[SWAP]] := IMAGE[id[cart[V,V]]] (* added 2003 August 10 based on ZADD-INV.NB *) composite[IMAGE[SWAP],INTADD] := composite[INTADD,cross[INVERSE,INVERSE]] (* derived 2006 December 18 in INTDIV-0.NB *) composite[IMAGE[SWAP],INTDIV] := INTDIV (* derived 2006 December 30 in ZTIMES-5.NB *) composite[IMAGE[SWAP],INTTIMES] := composite[INVERSE,INTTIMES] (* added 2000 September 4 based on NEW.M *) composite[IMAGE[SWAP],INVERSE] := id[P[cart[V,V]]] (* added 2002 January 6 based on Q-AGAIN.NB *) composite[IMAGE[SWAP],inverse[IMAGE[FIRST]]] := composite[id[P[cart[V,V]]],inverse[IMAGE[SECOND]]] (* added 2000 September 4 based on NEW.M *) composite[IMAGE[SWAP],inverse[IMAGE[id[cart[V,V]]]]] := INVERSE (* added 2002 January 6 based on Q-AGAIN.NB *) composite[IMAGE[SWAP],inverse[IMAGE[SECOND]]] := composite[id[P[cart[V,V]]],inverse[IMAGE[FIRST]]] (* derived 2006 December 18 in INTDIV-0.NB *) composite[IMAGE[SWAP],inverse[INTDIV]] := inverse[INTDIV] (* derived 2006 December 9 in AP-MIX.NB *) composite[IMAGE[SWAP],MIXTIMES] := composite[INVERSE,MIXTIMES] (* derived 2006 October 29 in OOPART.NB *) composite[IMAGE[SWAP],OOPART] := composite[INVERSE,OOPART] (* added 2003 July 26 based on INTADDSW.NB *) composite[IMAGE[SWAP],PLUS] := composite[INVERSE,PLUS] (* added 2002 February 3 based on RCF.NB *) composite[IMAGE[SWAP],RCF] := RCF (* derived 2006 October 26 in MUL-TIM.NB *) composite[IMAGE[SWAP],TIMES] := composite[INVERSE,TIMES] (* added 2003 January 25 based on TC-ZN.NB *) composite[IMAGE[TC],IMAGE[TC]] := IMAGE[TC] (* derived 2005 November 6 in IMG-THIN.NB *) composite[IMAGE[thinpart[x_]],complement[E]] := composite[IMAGE[x],complement[E]] (* derived 2005 November 6 in IMG-THIN.NB *) composite[IMAGE[thinpart[x_]],complement[S]] := composite[IMAGE[x],complement[S]] (* derived 2005 August 5 in IMG-INS.NB *) composite[IMAGE[thinpart[x_]],id[P[domain[VERTSECT[x_]]]]] := IMAGE[x] (* derived 2005 November 6 in IMG-THIN.NB *) composite[IMAGE[thinpart[x_]],inverse[S]] := composite[IMAGE[x],inverse[S]] (* derived 2004 September 5 in WF-REC-4.NB *) composite[IMAGE[thinpart[ZN]],id[REGULAR]] := composite[IMAGE[ZN],id[REGULAR]] (* derived 2007 June 6 in HLTRVRFX.NB *) composite[IMAGE[trv[rfx[x_]]],id[P[fix[x_]]],IMAGE[trv[rfx[x_]]]] := IMAGE[trv[rfx[x]]] (* added 1999 October 11 based on CROSS.1 *) composite[IMAGE[TWIST],CART] := CROSS (* added 1999 October 11 based on CROSS.1 *) composite[IMAGE[TWIST],CROSS] := composite[CART,cross[IMAGE[id[cart[V,V]]],IMAGE[id[cart[V,V]]]]] (* added 1999 October 11 based on CROSS.1 *) composite[IMAGE[TWIST],IMAGE[TWIST]] := IMAGE[id[cart[cart[V,V],cart[V,V]]]] (* added 2001 February 24 based on NEW.NB *) composite[IMAGE[UB[x_]],POWER] := 0 (* derived 2004 December 21 in UCL-A.NB *) composite[IMAGE[UCLOSURE],ACLOSURE,IMAGE[UCLOSURE]] := composite[ACLOSURE,IMAGE[UCLOSURE]] (* derived 2007 May 29 in IVR-HULL.NB *) composite[IMAGE[UCLOSURE],IMAGE[UCLOSURE]] := IMAGE[UCLOSURE] (* Theorem CO-IM-V1 in CO2 *) composite[image[V,x_],y_] := cart[domain[y],image[V,x]] (* Theorem CO-IM-V2 in CO2 *) composite[x_,image[V,y_]] := cart[V,intersection[range[x],image[V,y]]] (* derived 2006 January 24 in VS-RS.NB *) composite[IMAGE[VS],VERTSECT[RESTRICT]] := composite[POWER,VS] (* derived 2006 April 11 in ZN-OM.NB *) composite[IMAGE[ZN],id[omega]] := composite[IMAGE[inverse[RANK]],id[omega]] (* derived 2006 March 14 in ZN-ON.NB *) composite[IMAGE[ZN],id[OMEGA]] := composite[IMAGE[inverse[RANK]],id[OMEGA]] (* added 2003 January 25 based on TC-ZN.NB *) composite[IMAGE[ZN],IMAGE[TC]] := IMAGE[ZN] (* added 2001 July 17 based on ZN-IMG1.TXT *) composite[IMAGE[ZN],IMAGE[ZN]] := IMAGE[ZN] (* added 2001 July 15 based on ZN-AGAIN.NB *) composite[IMAGE[ZN],POWER] := VERTSECT[ZN] (* added 2002 May 17 based on ZN.NB *) composite[IMAGE[ZN],SUCC] := VERTSECT[ZN] (* added 2002 May 17 based on TC.NB *) composite[IMAGE[ZN],TC] := IMAGE[ZN] (* added 2001 July 17 based on ZN-IMG4.NB *) composite[IMAGE[ZN],VERTSECT[ZN]] := VERTSECT[ZN] (* added 2001 November 29 *) composite[IMG,cross[CART,Id]] := union[cart[composite[DISJOINT,FIRST],set[0]], composite[SECOND,FIRST,id[composite[E,inverse[E],FIRST]]]] (* added 2001 May 4 based on LAMBDA.NB *) composite[IMG,cross[COMPOSE,Id]] := composite[IMG,cross[Id,IMG],ASSOC] (* added 2000 September 7 based on CUT.NB *) composite[IMG,cross[composite[IMAGE[id[cart[u_,v_]]],x_],y_]] := composite[IMAGE[id[v]],IMG,cross[x,composite[IMAGE[id[u]],y]]] (* tentative rule added 1999 November 28 based on CROSS-1.NB *) composite[IMG,cross[CROSS,Id],ROT] := composite[COMPOSE,cross[COMPOSE,IMAGE[SWAP]]] (* derived 2005 July 30 in BOYER.NB *) composite[IMG,cross[Id,IMAGE[SECOND]],id[composite[inverse[IMAGE[SECOND]],S,IMAGE[FIRST]]]] := composite[IMAGE[SECOND],FIRST,id[composite[inverse[IMAGE[SECOND]],S,IMAGE[FIRST]]]] (* added 1999 December 25 based on REMOVED.NB *) composite[IMG,cross[IMAGE[DUP],x_]] := composite[CAP,cross[Id,x]] (* added 1999 December 25 based on IMG-IDX.TXT *) composite[IMG,cross[IMAGE[id[cart[x_,y_]]],z_]] := composite[IMAGE[id[y]],IMG,cross[Id,composite[IMAGE[id[x]],z]]] (* turned around 2005 December 6 *) composite[IMG,cross[inverse[S],Id]] := composite[inverse[S],IMG] (* derived 2005 November 9 in RESTRICT.NB *) composite[IMG,cross[RESTRICT,Id]] := composite[IMG,cross[Id,inverse[S]]] (* derived 2005 November 5 in IMIMG-OO.NB *) composite[IMG,id[cart[BIJ,x_]],inverse[SECOND]] := composite[Q,inverse[S],id[x]] (* derived 2005 November 5 in IM-DORA.NB *) composite[IMG,id[cart[FUNS,x_]],inverse[SECOND]] := composite[image[DORA,FUNS],inverse[S],id[x]] (* derived 2007 October 18 in ERASE.NB *) composite[IMG,id[cart[image[IMAGE[DUP],x_],V]],inverse[SECOND]] := composite[CAP,id[cart[V,x]],inverse[FIRST]] (* derived 2005 November 5 in IM-DORA.NB *) composite[IMG,id[cart[P[Id],x_]],inverse[SECOND]] := composite[inverse[S],id[x]] (* derived 2005 November 5 in IM-DORA.NB *) composite[IMG,id[cart[P[id[x_]],y_]],inverse[SECOND]] := composite[inverse[S],IMAGE[id[x]],id[y]] (* discovered 1999 December 16 in IMG.NB *) composite[IMG,id[cart[set[x_],y_]]] := composite[IMAGE[x],id[y],inverse[LEFT[x]]] (* discovered 1999 December 16 in IMG.NB *) composite[IMG,id[cart[x_,set[y_]]]] := composite[IMAGE[SECOND],IMAGE[id[cart[y,V]]],id[x],inverse[RIGHT[y]]] (* derived 2007 October 18 in ERASE.NB *) composite[IMG,id[cart[V,x_]],inverse[FIRST],IMAGE[DUP]] := composite[CAP,id[cart[V,x]],inverse[FIRST]] (* added 2003 June 11 based on VS.NB *) composite[IMG,id[cart[V,range[SINGLETON]]],inverse[FIRST]] := union[cart[V,set[0]],composite[inverse[E],IMAGE[SECOND],VS]] (* added 2002 October 22 based on CO-ID.NB *) composite[IMG,id[cart[V,V]]] := IMG (* derised 2008 August 11 in BC-SBV.NB *) composite[IMG,id[composite[BIGCUP,SUBVAR]],inverse[FIRST]] := composite[BIGCUP,SUBVAR] (* added 2000 September 28 based on IMG.NB *) composite[IMG,id[composite[DISJOINT,IMAGE[FIRST]]]] := cart[composite[DISJOINT,IMAGE[FIRST]],set[0]] (* derived 2008 May 15 in IMG-IDP.NB *) composite[IMG,id[inverse[IMAGE[DUP]]],inverse[SECOND]] := Id (* derived 2006 October 31 in OOPTNORM.NB *) composite[IMG,intersection[composite[inverse[FIRST],IMAGE[composite[id[SWAP],inverse[SECOND]]]], composite[inverse[SECOND],INVERSE,OOPART]]] := OOPART (* derived 2008 November 1 in PARTN.NB *) composite[IMG,intersection[composite[inverse[FIRST],VS], composite[inverse[SECOND],IMAGE[FIRST]]]] := composite[IMAGE[SECOND],VS] (* derived 2008 November 4 in EQV.NB *) composite[IMG,intersection[composite[inverse[FIRST],VS], composite[inverse[SECOND],IMAGE[inverse[DUP]]]],EQUIV] := composite[IMAGE[SECOND],VS,EQUIV] (* derived 2008 November 4 in PO.NB *) composite[IMG,intersection[composite[inverse[FIRST],VS], composite[inverse[SECOND],IMAGE[inverse[DUP]]]],HULL[PO]] := composite[IMAGE[SECOND],VS,HULL[PO]] (* derived 2008 November 4 in EQV.NB *) composite[IMG,intersection[composite[inverse[FIRST],VS], composite[inverse[SECOND],IMAGE[inverse[DUP]]]],id[EQV]] := composite[IMAGE[SECOND],VS,id[EQV]] (* derived 2008 November 4 in PO.NB *) composite[IMG,intersection[composite[inverse[FIRST],VS], composite[inverse[SECOND],IMAGE[inverse[DUP]]]],id[PO]] := composite[IMAGE[SECOND],VS,id[PO]] (* derived 2007 October 18 in ERASE.NB *) composite[IMG,inverse[FIRST],IMAGE[DUP]] := inverse[S] (* derived 2008 May 8 in RESTRICT.NB *) composite[IMG,inverse[FIRST],IMAGE[composite[id[inverse[FIRST]],inverse[SECOND]]]] := RESTRICT (* derived 2008 June 7 in IMG-DORA.NB *) composite[IMG,inverse[FIRST],inverse[S]] := composite[inverse[S],IMAGE[SECOND]] (* added 1999 December 27 based on IMG-1.NB *) composite[IMG,inverse[SECOND]] := composite[IMAGE[SECOND],id[P[cart[V,V]]], inverse[IMAGE[FIRST]],inverse[S]] (* revised 1999 December 19 based on REVISED.NB *) composite[IMG,LEFT[x_]] := composite[IMAGE[x],id[image[V,set[x]]]] (* revised 1999 December 19 based on REVISED.NB *) composite[IMG,RIGHT[x_]] := composite[IMAGE[SECOND],IMAGE[id[cart[x,V]]],id[image[V,set[x]]]] (* added 1999 December 25 based on REMOVED.NB *) composite[IMG,SWAP,cross[x_,IMAGE[DUP]]] := composite[CAP,cross[x,Id]] (* derived 2005 July 30 in BOYER.NB *) composite[IMG,SWAP,cross[IMAGE[FIRST],IMAGE[SWAP]],id[composite[inverse[IMAGE[SECOND]],inverse[S],IMAGE[FIRST]]]] := composite[IMAGE[FIRST],SECOND,id[composite[inverse[IMAGE[SECOND]],inverse[S],IMAGE[FIRST]]]] (* derived 2008 November 29 in INT-WRAP.NB *) composite[int[x_],id[omega]] := int[x] (* derived 2005 August 5 in BINHOM-5.NB *) composite[INTADD,cross[composite[id[Z],x_],y_]] := composite[INTADD,cross[x,y]] (* derived 2005 August 5 in BINHOM-5.NB *) composite[INTADD,cross[x_,composite[id[Z],y_]]] := composite[INTADD,cross[x,y]] (* derived 2005 August 5 in BINHOM-5.NB *) composite[INTADD,cross[composite[INTADD,DUP],composite[INTADD,DUP]]] := composite[INTADD,DUP,INTADD] (* added 2003 August 9 based on ASS-ADDZ.NB *) composite[INTADD,cross[Id,INTADD],ASSOC] := composite[INTADD,cross[INTADD,Id]] (* derived 2006 December 11 in INTADD.NB *) composite[INTADD,cross[id[P[cart[V,V]]],x_]] := composite[INTADD,cross[Id,x]] (* derived 2006 December 11 in INTADD.NB *) composite[INTADD,cross[x_,id[P[cart[V,V]]]]] := composite[INTADD,cross[x,Id]] (* added 2003 August 22 based on AC-TWIST.NB *) composite[INTADD,cross[INTADD,INTADD],TWIST] := composite[INTADD,cross[INTADD,INTADD]] (* derived 2007 January 1 in INTMUL-4.NB *) composite[INTADD,cross[INTMUL,INTMUL],TWIST,cross[DUP,Id]] := composite[INTMUL,cross[Id,INTADD]] (* derived 2006 December 23 in ZTIMES-4.NB *) composite[INTADD,cross[INTMUL,INTMUL],TWIST,cross[Id,DUP]] := composite[INTMUL,cross[INTADD,Id]] (* derived 2006 December 11 in MIXDISTR.NB *) composite[INTADD,cross[MIXMUL,MIXMUL],TWIST,cross[DUP,Id]] := composite[MIXMUL,cross[Id,NATADD]] (* derived 2006 December 14 in MIXMUL-2.NB *) composite[INTADD,cross[MIXMUL,MIXMUL],TWIST,cross[Id,DUP]] := composite[MIXMUL,cross[INTADD,Id]] (* derived 2006 November 14 in MINGLI.NB *) composite[INTADD,id[cart[image[INVERSE,range[PLUS]],V]],inverse[SECOND]] := composite[INVERSE,INTLEQ,INVERSE] (* derived 2006 November 14 in MINGLI.NB *) composite[INTADD,id[cart[P[cart[V,V]],x_]]] := composite[INTADD,id[cart[V,x]]] (* derived 2006 November 14 in MINGLI.NB *) composite[INTADD,id[cart[x_,P[cart[V,V]]]]] := composite[INTADD,id[cart[x,V]]] (* derived 2007 January 21 in ZADDSWAP.NB *) composite[INTADD,id[cart[V,x_]],inverse[FIRST]] := composite[image[inverse[INTADD],x],INVERSE] (* derived 2007 January 21 in ZADDSWAP.NB *) composite[INTADD,id[cart[x_,V]],inverse[SECOND]] := composite[image[inverse[INTADD],x],INVERSE] (* added 2003 July 25 based on INTADD.NB *) composite[INTADD,id[cart[V,V]]] := INTADD (* derived 2006 November 14 in MINGLI.NB *) composite[INTADD,id[cart[Z,x_]]] := composite[INTADD,id[cart[V,x]]] (* derived 2006 November 14 in MINGLI.NB *) composite[INTADD,id[cart[x_,Z]]] := composite[INTADD,id[cart[x,V]]] (* derived 2006 December 23 in NEG-INT.NB *) composite[INTADD,id[composite[id[Z],INVERSE]]] := composite[INTADD,id[INVERSE]] (* added 2003 August 12 based on RO-ZADD.NB *) composite[INTADD,id[INVERSE],inverse[FIRST]] := cart[Z,set[id[omega]]] (* derived 2006 December 23 in NEG-INT.NB *) composite[INTADD,id[INVERSE],inverse[SECOND]] := cart[Z,set[id[omega]]] (* derived 2006 December 18 in INTDIV.NB *) composite[INTADD,intersection[composite[inverse[FIRST],INTDIV], composite[inverse[SECOND],INTDIV]]] := INTDIV (* derived 2008 September 15 in REPLACE.NB *) composite[INTADD,intersection[composite[inverse[FIRST],inttimes[x_]], composite[inverse[SECOND],inttimes[y_]]]] := inttimes[intadd[x,y]] (* derived 2006 December 14 in MIXMUL-2.NB *) composite[INTADD,intersection[composite[inverse[FIRST],MIXMUL,LEFT[x_]], composite[inverse[SECOND],MIXMUL,LEFT[y_]]]] := composite[MIXMUL,LEFT[intadd[x,y]]] (* added 2003 August 11 based on DOROZADD.NB *) composite[INTADD,inverse[FIRST]] := cart[Z,Z] (* added 2003 August 11 based on DOROZADD.NB *) composite[INTADD,inverse[SECOND]] := cart[Z,Z] (* added 2003 August 12 based on RO-ZADD.NB *) composite[INTADD,LEFT[x_]] := composite[image[inverse[INTADD],set[x]],INVERSE] (* added 2003 August 12 based on RO-ZADD.NB *) composite[INTADD,RIGHT[x_]] := composite[image[inverse[INTADD],set[x]],INVERSE] (* added 2003 July 26 based on INTADDSW.NB *) composite[INTADD,SWAP] := INTADD (* derived 2006 October 21 in INTDIV.NB *) composite[INTDIV,id[P[cart[V,V]]]] := INTDIV (* derived 2006 October 21 in INTDIV.NB *) composite[INTDIV,INTDIV] := INTDIV (* derived 2006 October 21 in INTDIV.NB *) composite[INTDIV,INVERSE] := INTDIV (* derived 2006 December 3 in MIXDIV.NB *) composite[INTDIV,MIXDIV] := MIXDIV (* derived 2007 January 6 in MIXDIV.NB *) composite[INTDIV,PLUS] := MIXDIV (* revised 1999 October 24 *) composite[w_,intersection[complement[cart[x_,y_]],z_]] := union[composite[w,id[complement[y]],z],composite[w,z,id[complement[x]]]] (* revised 1999 October 24 *) composite[intersection[complement[cart[x_,y_]],z_],w_] := union[composite[id[complement[y]],z,w],composite[z,id[complement[x]],w]] (* added 2002 June 3 based on REPLACE.NB *) composite[intersection[complement[E],inverse[E]],id[omega]] := composite[inverse[E],id[omega]] (* added 2002 June 3 based on REPLACE.NB *) composite[intersection[complement[inverse[S]],inverse[E]],id[omega]] := 0 (* added 2002 June 3 based on REPLACE.NB *) composite[intersection[complement[S],inverse[E]],id[omega]] := composite[inverse[E],id[omega]] (* derived 2008 May 6 in RESTRICT.NB *) composite[intersection[COMPOSE,composite[inverse[IMAGE[FIRST]],inverse[IMAGE[DUP]],SECOND]], inverse[FIRST]] := RESTRICT (* Theorem FU-CO2 in FU proved 2000 July 31 *) composite[f_,intersection[x_,composite[g_,y_]]] := intersection[y,composite[f,x]] /; And[FUNCTION[f],inverse[f]==g] (* derived 2004 January 3 in ABSTRACT.NB *) composite[intersection[x_,composite[y_,BIGCAP]],SINGLETON] := intersection[y,composite[x,SINGLETON]] (* added 2002 May 5 based on REPLACE.NB *) composite[intersection[composite[BIGCUP,CAP], composite[inverse[POWER],SECOND]],inverse[FIRST]] := composite[inverse[E],UCLOSURE] (* derived 2004 January 3 in ABSTRACT.NB *) composite[intersection[x_,composite[y_,BIGCUP]],SINGLETON] := intersection[y,composite[x,SINGLETON]] (* derived 2004 January 3 in ABSTRACT.NB *) composite[intersection[x_,composite[y_,DISJOINT]],SINGLETON] := intersection[composite[x,SINGLETON],composite[y,complement[E]]] (* derived 2009 January 21 in HOM.NB *) composite[intersection[composite[domain[x_],SECOND],composite[inverse[domain[x_]],FIRST]], id[cart[ids[x_],ids[x_]]]] := hom[x] (* derived 2005 May 27 in MOD-SU-2.NB *) composite[intersection[composite[E,FIRST],rotate[NATMOD]],inverse[SECOND]] := cart[omega,intersection[omega,complement[set[0]]]] (* added 2002 December 3 based on STRANGE.NB *) composite[intersection[composite[u_,FIRST],composite[v_, intersection[composite[x_,FIRST],composite[y_,SECOND]]]], inverse[SECOND]] := composite[intersection[v,composite[u,inverse[x]]],y] (* added 1998 September 6 *) composite[intersection[composite[u_,FIRST],composite[v_,SECOND]], cross[x_,y_]] := intersection[composite[u,x,FIRST],composite[v,y,SECOND]] (* Suggested 1998 October 11 in CAP-LOG.1 *) composite[intersection[composite[x_,FIRST],composite[y_,SECOND]],DUP] := composite[Id,intersection[x,y]] (* From ID-DUP.LOG *) composite[intersection[composite[x_,FIRST],composite[y_,SECOND]], id[DUP]] := composite[intersection[x,composite[y,DUP]],FIRST,id[DUP]] composite[intersection[composite[x_,FIRST],composite[y_,SECOND]], id[z_],inverse[FIRST]] := intersection[x,composite[y,z]] composite[intersection[composite[x_,FIRST],composite[y_,SECOND]], id[z_],inverse[SECOND]] := intersection[y,composite[x,inverse[z]]] (* added 2002 October 29 based on RIF-DUP.NB *) composite[intersection[composite[x_,FIRST],composite[y_,SECOND]],inverse[RIF],DUP] := composite[intersection[y,composite[x,SWAP]],inverse[FIRST]] (* added 1999 November 4 based on ASSOC.NB *) composite[intersection[composite[x_,FIRST],composite[y_,SECOND]],LEFT[z_]] := composite[id[image[x,set[z]]],y] (* added 1999 November 4 based on ASSOC.NB *) composite[intersection[composite[x_,FIRST],composite[y_,SECOND]],RIGHT[z_]] := composite[id[image[y,set[z]]],x] (* 1998 October 18 found using AssInt test *) composite[intersection[composite[x_,FIRST],y_],id[cart[V,V]]] := intersection[composite[x,FIRST],y] (* added 1998 September 6 *) composite[intersection[composite[x_,FIRST],composite[y_,SECOND]],inverse[FIRST]] := composite[id[range[y]],x] (* derived 2004 January 3 in BINCLOSE.NB *) composite[intersection[composite[x_,FIRST],composite[y_,SECOND]],inverse[rotate[z_]]] := composite[intersection[composite[x,z],composite[y,FIRST]],inverse[SECOND]] (* added 1998 September 6 *) composite[intersection[composite[x_,FIRST],composite[y_,SECOND]],inverse[SECOND]] := composite[id[range[x]],y] composite[intersection[composite[x_,FIRST],composite[y_,SECOND]],SWAP] := intersection[composite[y,FIRST],composite[x,SECOND]] (* added 1999 November 13 based on CARTNORM.1 *) composite[intersection[x_,composite[y_,IMAGE[id[z_]]]],id[P[z_]]] := composite[intersection[x,y],id[P[z]]] (* added 2002 December 30 based on RO-TW.NB *) composite[intersection[composite[w_,intersection[composite[x_,FIRST],composite[y_,SECOND]]], composite[z_,FIRST]],SWAP] := intersection[composite[w, intersection[composite[x,SECOND],composite[y,FIRST]]],composite[z,SECOND]] (* added 2001 February 4 based on IMAGEDIF.NB *) composite[intersection[composite[w_,intersection[composite[x_,FIRST],composite[y_,SECOND]]], composite[z_,SECOND]],SWAP] := intersection[composite[w, intersection[composite[x,SECOND],composite[y,FIRST]]],composite[z,FIRST]] (* added 1999 December 2 based on SYMDIF-2.NB *) composite[intersection[composite[inverse[DIF],FIRST], composite[SWAP,inverse[DIF],SECOND]],inverse[CUP]]:=inverse[SYMDIF] (* added 1999 October 14 based on ROT-FLIP.1 *) composite[intersection[composite[inverse[FIRST],x_],composite[inverse[SECOND],FIRST]], inverse[SECOND]] := inverse[rotate[x]] (* added 2001 February 2 based on ROTATE.NB *) composite[intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],x_]],inverse[SECOND]] := composite[SWAP,inverse[rotate[x]]] (* added 2001 May 25 based on FUNPART.NB *) composite[intersection[composite[inverse[FIRST],inverse[SINGLETON],SECOND], composite[inverse[SECOND],inverse[SINGLETON],IMG]], inverse[FIRST]] := composite[inverse[E],FUNPART] (* added 2002 December 3 based on EQDFNORM.NB *) composite[intersection[composite[inverse[FIRST],x_,RIF], composite[inverse[SECOND],y_,FIRST]],inverse[SECOND]] := composite[cross[x,y],inverse[RIF]] (* added 2002 December 3 based on IMG-EQDF.NB *) composite[intersection[composite[inverse[FIRST],u_,SECOND], composite[inverse[SECOND],v_, intersection[composite[x_,SECOND],composite[y_,FIRST]]]], id[z_],inverse[FIRST]] := composite[cross[u,v],id[composite[Id,x]], intersection[composite[inverse[FIRST],z],composite[inverse[SECOND],y]]] (* added 1999 October 14 based on ROT-FLIP.1 *) composite[intersection[composite[inverse[FIRST],SECOND],composite[inverse[SECOND],x_]],inverse[FIRST]] := composite[SWAP,inverse[rotate[composite[x,SWAP]]]] (* added 2001 October 5 based on PATHS.NB *) composite[intersection[composite[inverse[FIRST],x_,SECOND], composite[inverse[SECOND],y_,rotate[z_]]],inverse[FIRST]] := composite[cross[x,y],inverse[z]] (* added 2002 May 5 based on REPLACE.NB *) composite[intersection[composite[inverse[POWER],SECOND],composite[complement[inverse[S]],BIGCUP,CAP]], inverse[FIRST]] := composite[complement[inverse[E]],UCLOSURE] (* derived 2007 September 23 in CAP-ID-K.NB *) composite[intersection[composite[K,SECOND],composite[inverse[S],FIRST]],id[S]] := 0 (* added 2002 September 12 based on LEFT-SUB.NB *) composite[intersection[composite[NATADD,FIRST],composite[NATADD,SECOND]], inverse[RIF]] := composite[id[omega],S,id[omega],inverse[DUP]] (* derived 2007 October 30 in RFX-CPTV.NB *) composite[intersection[composite[S,IMAGE[id[cart[V,V]]]],inverse[S]],HULL[SYM]] := HULL[SYM] (* added 1999 November 23 based on ADJ-B1.NB *) composite[intersection[composite[S,IMAGE[id[complement[x_]]]],inverse[S]], id[image[S,set[x_]]]] := inverse[ADJOIN[x]] (* derived 2004 August 11 in RS-4.NB *) composite[intersection[composite[S,IMAGE[x_]],LB[LB[x_]]],SINGLETON] := VERTSECT[x] (* derived 2006 June 10 in REPLACE.NB *) composite[intersection[composite[S,IMAGE[SECOND]],IMAGE[FIRST]],id[FUNS]] := composite[IMAGE[FIRST],id[UNOPS]] (* derived 2007 September 23 in CAP-ID-K.NB *) composite[intersection[composite[S,SECOND],composite[inverse[K],FIRST]],id[S]] := 0 (* derived 2007 September 23 in CAP-ID-K.NB *) composite[intersection[composite[S,SECOND],composite[inverse[S],FIRST]],id[K]] := 0 (* derived 2007 September 23 in CAP-ID-K.NB *) composite[intersection[composite[S,SECOND],composite[inverse[S],FIRST]],id[PS]] := 0 (* derived 2004 January 3 in ABSTRACT.NB *) composite[intersection[x_,composite[y_,S]],SINGLETON] := intersection[composite[x,SINGLETON],composite[y,E]] (* from COLLAPSE.LOG session 1999 April 15 *) composite[intersection[composite[w_,SECOND],composite[x_,FIRST]], intersection[composite[inverse[FIRST],y_],composite[inverse[SECOND],z_]]] := intersection[composite[w,z],composite[x,y]] (* added 2002 December 3 based on STRANGE.NB *) composite[intersection[composite[u_,SECOND],composite[v_, intersection[composite[x_,SECOND],composite[y_,FIRST]]]], inverse[FIRST]] := composite[intersection[v,composite[u,inverse[x]]],y] (* derived 2008 August 20 in RIF-WF.NB *) composite[intersection[composite[x_,SECOND],composite[y_,inverse[DUP],FIRST]],inverse[RIF]] := composite[intersection[x,composite[y,SECOND]],SWAP] (* 1998 October 18 found using AssInt test *) composite[intersection[composite[x_,SECOND],y_],id[cart[V,V]]] := intersection[composite[x,SECOND],y] (* added 1999 December 7 based on FLIPRULE.NB *) composite[intersection[x_,composite[y_,SWAP]],id[cart[V,V]]] := intersection[x,composite[y,SWAP]] (* added 1999 December 7 based on FLIPRULE.NB *) composite[intersection[x_,composite[y_,SWAP]],SWAP] := intersection[y,composite[x,SWAP]] (* derived 2005 October 22 in TO-C.NB *) composite[intersection[Di,inverse[to[x_]]],inverse[to[x_]]] := intersection[Di,inverse[to[x]]] (* derived 2005 October 22 in WO-DI.NB *) composite[intersection[Di,inverse[wo[x_]]],id[fix[wo[x_]]]] := intersection[Di,inverse[wo[x]]] (* derived 2005 October 22 in WO-DI.NB *) composite[intersection[Di,inverse[wo[x_]]],inverse[wo[x_]]] := intersection[Di,inverse[wo[x]]] (* derived 2005 October 22 in CO-PO-DI.NB *) composite[intersection[Di,po[x_]],po[x_]] := intersection[Di,po[x]] (* derived 2005 October 22 in TO-C.NB *) composite[intersection[Di,to[x_]],to[x_]] := intersection[Di,to[x]] (* derived 2005 October 22 in WO-DI.NB *) composite[intersection[Di,wo[x_]],id[fix[wo[x_]]]] := intersection[Di,wo[x]] (* derived 2005 October 22 in WO-C.NB *) composite[intersection[Di,wo[x_]],wo[x_]] := intersection[Di,wo[x]] (* added 2001 March 9 based on QUICKER.NB *) composite[intersection[DISJOINT,composite[S,RC[x_]]],id[P[x_]]] := intersection[DISJOINT,composite[S,RC[x]]] (* derived 2006 March 25 in PC-ON-A.NB *) composite[intersection[DISJOINT,inverse[E]],id[OMEGA]] := cart[intersection[OMEGA,complement[set[0]]],set[0]] (* derived 2006 March 25 in PC-ON-A.NB *) composite[intersection[DISJOINT,inverse[E]],id[P[OMEGA]]] := composite[BIGCAP,id[P[OMEGA]]] (* added 2002 April 18 based on DESCEND.NB *) composite[intersection[E,inverse[E]],id[REGULAR]] := 0 (* derived 2005 April 23 in FACT-S.NB *) composite[intersection[FACTORIAL,x_],id[omega]] := intersection[FACTORIAL,x] (* derived 2005 October 22 in IDX-CO-I.NB *) composite[intersection[x_,y_],id[domain[x_]]] := composite[Id,intersection[x,y]] (* derived 2008 February 2 in RELNS.NB *) composite[intersection[x_,y_],id[union[z_,domain[y_]]]] := composite[Id,intersection[x,y]] composite[w_,intersection[x_,image[V,y_]]] := composite[w,x,id[image[V,y]]] composite[intersection[x_,image[V,y_]],z_] := composite[x,id[image[V,y]],z] (* derived 2007 October 19 in RECT-CUT.NB *) composite[intersection[IMG,composite[inverse[DORA],inverse[CART],SECOND]],inverse[FIRST],IMAGE[DUP]] := composite[CAP,id[cart[V,range[CART]]],inverse[FIRST]] (* derived 2007 October 21 in CUP-DORA.NB *) composite[intersection[IMG,composite[inverse[DORA],inverse[CUP],inverse[DUP],inverse[CART],SECOND]], inverse[FIRST],IMAGE[DUP]] := composite[CAP,id[cart[V,image[CART,Id]]],inverse[FIRST]] (* added 2002 October 22 based on CO-ID.NB *) composite[intersection[y_,inverse[x_]],id[fix[composite[x_,y_]]]] := intersection[y,inverse[x]] (* derived 2005 October 22 in IDX-CO-I.NB *) composite[intersection[x_,inverse[y_]],id[range[y_]]] := intersection[x,inverse[y]] (* derived 2005 October 22 in IDX-CO-I.NB *) composite[intersection[x_,inverse[po[y_]]],id[fix[po[y_]]]] := intersection[x,inverse[po[y]]] (* derived 2004 August 10 in RS-3.NB *) composite[intersection[inverse[S],UB[union[E,composite[inverse[IMAGE[FIRST]],complement[E],FIRST]]]],IMAGE[id[cart[V,V]]]] := RESTRICT (* derived 2005 October 22 in IDX-CO-I.NB *) composite[intersection[x_,inverse[to[y_]]],id[fix[to[y_]]]] := intersection[x,inverse[to[y]]] (* derived 2005 October 22 in IDX-CO-I.NB *) composite[intersection[x_,po[y_]],id[fix[po[y_]]]] := intersection[x,po[y]] (* added 1999 December 21 based on ROTATE.NB *) composite[intersection[x_,rotate[y_]],id[cart[V,V]]] := intersection[x,rotate[y]] (* added 2002 October 29 based on RO-I.NB *) composite[intersection[rotate[x_],rotate[y_]],inverse[FIRST]] := composite[SECOND,intersection[inverse[x],inverse[y]]] (* added 2002 October 29 based on RO-I.NB *) composite[intersection[rotate[x_],rotate[y_]],inverse[SECOND]] := composite[Id,fix[composite[inverse[x],y]]] (* derived 2005 November 22 in IMDORARS.NB *) composite[intersection[S,composite[inverse[IMAGE[id[domain[x_]]]],inverse[S]]],id[P[domain[x_]]]] := inverse[IMAGE[id[domain[x]]]] (* added 2002 June 3 based on REPLACE.NB *) composite[intersection[S,inverse[E]],id[omega]] := 0 (* derived 2005 October 22 in IDX-CO-I.NB *) composite[intersection[x_,to[y_]],id[fix[to[y_]]]] := intersection[x,to[y]] (* derived 2006 September 24 in INTLEQ.NB *) composite[INTLEQ,id[P[cart[V,V]]]] := INTLEQ (* derived 2006 September 24 in INTLEQ.NB *) composite[INTLEQ,INTLEQ] := INTLEQ (* derived 2006 September 24 in INTLEQ.NB *) composite[INTLEQ,INVERSE,INTLEQ] := cart[Z,Z] (* derived 2007 January 11 in PLUS-S.NB *) composite[INTLEQ,PLUS] := composite[PLUS,S,id[omega]] (* derived 2007 January 10 in MIXMUL.NB *) composite[INTMUL,cross[composite[id[Z],x_],y_]] := composite[INTMUL,cross[x,y]] (* derived 2006 December 29 in INTMUL-3.NB *) composite[INTMUL,cross[x_,composite[id[Z],y_]]] := composite[INTMUL,cross[x,y]] (* derived 2006 December 29 in INTMUL-3.NB *) composite[INTMUL,cross[Id,INTMUL],ASSOC] := composite[INTMUL,cross[INTMUL,Id]] (* derived 2006 December 29 in INTMUL-3.NB *) composite[INTMUL,cross[Id,INVERSE]] := composite[INVERSE,INTMUL] (* derived 2007 January 1 in INTMUL-4.NB *) composite[INTMUL,cross[Id,PLUS]] := MIXMUL (* derived 2006 December 29 in INTMUL-3.NB *) composite[INTMUL,cross[INTMUL,Id],inverse[ASSOC]] := composite[INTMUL,cross[Id,INTMUL]] (* derived 2007 January 10 in MIXMUL.NB *) composite[INTMUL,cross[INVERSE,x_]] := composite[INVERSE,INTMUL,cross[Id,x]] (* derived 2006 December 29 in INTMUL-3.NB *) composite[INTMUL,cross[INVERSE,INVERSE]] := INTMUL (* derived 2007 January 9 in NAT-ZMUL.NB *) composite[INTMUL,cross[PLUS,PLUS]] := composite[PLUS,NATMUL] (* derived 2006 December 21 in INTMUL-1.NB *) composite[INTMUL,id[cart[V,V]]] := INTMUL (* derived 2006 December 29 in INTMUL-3.NB *) composite[INTMUL,id[cart[V,Z]]] := INTMUL (* derived 2007 January 10 in MIXMUL.NB *) composite[INTMUL,id[cart[Z,V]]] := INTMUL (* derived 2007 January 3 in FUNPRZML.NB *) composite[INTMUL,inverse[FIRST]] := INTDIV (* derived 2006 December 21 in INTMUL-1.NB *) composite[INTMUL,inverse[SECOND]] := INTDIV (* derived 2008 September 15 in INTTIMES.NB *) composite[INTMUL,LEFT[x_]] := inttimes[x] (* derived 2008 September 15 in INTTIMES.NB *) composite[INTMUL,RIGHT[x_]] := inttimes[x] (* derived 2006 December 25 in INTMUL-2.NB *) composite[INTMUL,SWAP] := INTMUL (* derived 2008 September 15 in INTTIMES.NB *) composite[inttimes[x_],id[image[V,intersection[Z,set[x_]]]]] := inttimes[x] (* derived 2008 September 15 in INTTIMES.NB *) composite[inttimes[x_],id[P[cart[V,V]]]] := inttimes[x] (* derived 2008 September 15 in INTTIMES.NB *) composite[inttimes[x_],id[Z]] := inttimes[x] (* derived 2008 September 15 in INTTIMES.NB *) composite[inttimes[x_],INTADD] := composite[INTADD,cross[inttimes[x],inttimes[x]]] (* derived 2008 September 15 in INTTIMES.NB *) composite[inttimes[x_],INTMUL] := composite[INTMUL,cross[Id,inttimes[x]]] (* derived 2008 September 15 in INTTIMES.NB *) composite[inttimes[x_],inttimes[y_]] := inttimes[intmul[x,y]] (* derived 2008 September 15 in INTTIMES.NB *) composite[inttimes[x_],INVERSE] := composite[INVERSE,inttimes[x]] (* derived 2008 September 15 in INTTIMES.NB *) composite[inttimes[x_],PLUS] := composite[MIXMUL,LEFT[x]] (* added 2002 April 10 based on INVAR-S.NB *) composite[INVAR,ADJOIN[x_]] := composite[id[intersection[image[V,set[x]],invar[x]]],INVAR] (* added 2002 April 10 based on INVAR.NB *) composite[INVAR,CART] := union[composite[DISJOINT,FIRST],composite[S,SECOND]] (* added 2002 April 10 based on INVAR-S.NB *) composite[INVAR,complement[E]] := cart[V,V] (* derived 2004 January 22 in INVAR.NB *) composite[INVAR,complement[inverse[S]]] := cart[V,V] (* added 2002 April 10 based on INVAR-S.NB *) composite[INVAR,complement[S]] := cart[complement[set[0]],V] (* added 2002 April 10 based on INVAR.NB *) composite[INVAR,CUP] := intersection[composite[INVAR,FIRST],composite[INVAR,SECOND]] (* added 2002 April 10 based on INVAR-S.NB *) composite[INVAR,DISJOINT] := cart[V,V] (* added 2002 April 10 based on INVAR-S.NB *) composite[INVAR,E] := composite[INVAR,SINGLETON] (* derived 2007 August 4 in IVR-TRV.NB *) composite[INVAR,HULL[TRV],IMAGE[id[cart[V,V]]]] := INVAR (* added 2002 April 10 based on INVAR.NB *) composite[INVAR,IMAGE[DUP]] := cart[V,V] (* added 2002 April 10 based on INVAR.NB *) composite[INVAR,IMAGE[id[cart[V,V]]]] := INVAR (* added 2002 April 10 based on INVAR.NB *) composite[INVAR,IMAGE[id[Di]]] := INVAR (* derived 2004 January 22 in INVAR.NB *) composite[INVAR,INVAR] := cart[V,V] (* added 2002 April 10 based on INVAR-S.NB *) composite[INVAR,inverse[S]] := cart[V,V] (* added 2002 April 10 based on INVAR-S.NB *) composite[INVAR,S] := INVAR (* added 2003 June 23 based on INVAR.NB *) composite[INVAR,SINGLETON] := union[cart[complement[cart[V,V]],V], composite[E,SECOND],composite[complement[E],FIRST]] (* added 2003 January 30 *) composite[INVAR,SUBCOMMUTE] := cart[V,V] (* Theorem FU-IDX-1 in FU3 *) composite[x_,inverse[x_]] := id[range[x]] /; FUNCTION[x] composite[inverse[x_],x_] := id[domain[x]] /; INVFUN[x] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[ACLOSURE],inverse[S],ACLOSURE] := composite[inverse[S],ACLOSURE] (* derived 2006 April 22 in NESTCLOS.NB *) composite[inverse[ACLOSURE],LB[UB[union[S,inverse[S]]]]] := LB[UB[union[S,inverse[S]]]] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[ACLOSURE],S,ACLOSURE] := composite[inverse[ACLOSURE],S] (* derived 2006 November 1 in LTRT-IMV.NB *) composite[inverse[ADJOIN[x_]],id[image[V,set[x_]]]] := inverse[ADJOIN[x]] (* inverse of Theorem ADJ-CO2 in ADJ proved 1999 March 13 *) composite[inverse[ADJOIN[x_]],inverse[S]] := composite[inverse[S],id[image[S,set[x]]]] (* revised 1999 December 19 based on REVISED.NB *) composite[inverse[ADJOIN[x_]],S] := composite[S,IMAGE[id[complement[x]]],id[image[V,set[x]]]] (* derived 2008 August 29 in LB-COMUT.NB *) composite[inverse[ADJOIN[set[0]]],LB[COMMUTE]] := LB[COMMUTE] (* derived 2008 August 29 in LB-COMUT.NB *) composite[inverse[ADJOIN[set[0]]],LB[LB[COMMUTE]]] := LB[LB[COMMUTE]] (* derived 2004 July 27 in ROTASSOC.NB *) composite[inverse[ASSOC],cross[x_,cross[y_,z_]],ASSOC] := cross[cross[x,y],z] (* derived 2008 October 19 in I-ASS-X.NB *) composite[inverse[ASSOC],cross[Id,DUP]] := composite[id[SECOND],inverse[FIRST]] (* added 2002 June 16 based on LEFT-ROT.NB *) composite[inverse[ASSOC],cross[Id,LEFT[x_]]] := cross[RIGHT[x],Id] (* derived 2004 March 23 in TRV-K.NB *) composite[inverse[ASSOC],id[cart[x_,y_]],inverse[SECOND]] := composite[cross[composite[id[cart[x,V]],inverse[SECOND]],Id],id[y]] (* added 1999 October 31 based on ASSOC.1 *) composite[inverse[ASSOC],id[cart[V,V]]] := inverse[ASSOC] (* derived 2008 November 24 in IN-ASSOC.NB *) composite[inverse[ASSOC],inverse[FIRST]] := composite[inverse[FIRST],inverse[FIRST]] (* added 1999 October 31 based on ASSOC.1 *) composite[inverse[ASSOC],inverse[ROT]] := composite[ROT,ASSOC] (* derived 2008 November 24 in IN-ASSOC.NB *) composite[inverse[ASSOC],inverse[SECOND]] := cross[inverse[SECOND],Id] (* added 1999 November 3 based on CURRY.NB *) composite[inverse[ASSOC],LEFT[x_]] := cross[LEFT[x],Id] (* added 2002 June 16 based on LEFT-ROT.NB *) composite[inverse[ASSOC],RIGHT[x_]] := composite[RIGHT[second[x]],RIGHT[first[x]]] (* added 1999 October 13 based on ASSOC.1 *) composite[inverse[ASSOC],SWAP] := ROT (* derived 2004 December 31 in IN-RK.NB *) composite[inverse[BIGCUP],complement[inverse[E]]] := composite[complement[inverse[E]],IMAGE[inverse[BIGCUP]]] (* added 1998 August 9 *) composite[inverse[BIGCUP],complement[inverse[S]]] := composite[complement[inverse[S]],POWER] (* added 2001 July 21 based on LB-ZN.NB *) composite[inverse[BIGCUP],complement[ZN]] := composite[complement[ZN],POWER] (* added 1998 August 9 *) composite[inverse[BIGCUP],inverse[S]] := composite[inverse[S],POWER] (* added 2001 July 21 based on LB-ZN.NB *) composite[inverse[BIGCUP],ZN] := composite[ZN,POWER] (* derived 2007 May 2 in CARDCARD.NB *) composite[inverse[CARD],complement[E],CARD] := composite[inverse[CARD],inverse[S],CARD] (* derived 2007 May 2 in CARDCARD.NB *) composite[inverse[CARD],complement[inverse[E]],CARD] := composite[inverse[CARD],S,CARD] (* derived 2007 May 2 in CARDCARD.NB *) composite[inverse[CARD],complement[inverse[S]],CARD] := composite[inverse[CARD],E,CARD] (* derived 2007 May 2 in CARDCARD.NB *) composite[inverse[CARD],complement[S],CARD] := composite[inverse[CARD],inverse[E],CARD] (* added 2001 December 17 based on Q-HAT.NB *) composite[inverse[CARD],id[image[Q,OMEGA]]] := inverse[CARD] (* added 2002 May 28 based on FINITE.NB *) composite[inverse[CARD],id[OMEGA]] := inverse[CARD] (* derived 2005 November 5 in CARD.NB *) composite[inverse[CARD],intersection[E,inverse[S]],CARD] := 0 (* derived 2005 November 5 in CARD.NB *) composite[inverse[CARD],intersection[S,inverse[E]],CARD] := 0 (* added 2001 December 17 based on Q-HAT.NB *) composite[inverse[CARD],inverse[CARD]] := inverse[CARD] (* added 2001 December 17 based on Q-HAT.NB *) composite[inverse[CARD],Q] := composite[inverse[CARD],CARD] (* added 1999 October 12 based on NEWRULES.1 *) composite[INVERSE,CART] := composite[CART,SWAP] (* based on 1999 December 11 notebook CART-OO.NB *) composite[inverse[CART],CART] := union[id[cart[V,V]], cart[union[cart[V,set[0]],cart[set[0],V]], union[cart[V,set[0]],cart[set[0],V]]]] (* based on 1999 December 11 notebook CART-OO.NB *) composite[inverse[CART],id[complement[set[0]]],CART] := id[cart[complement[set[0]],complement[set[0]]]] (* added 2001 April 30 based on CLIQUES3.NB *) composite[inverse[CART],id[P[cart[V,V]]]] := inverse[CART] (* added 2001 April 24 based on RFX3.NB *) composite[inverse[CART],inverse[IMAGE[id[cart[V,V]]]]] := inverse[CART] (* derived 2007 October 13 in MONOCART.NB *) composite[inverse[CART],inverse[IMAGE[inverse[DUP]]]] := inverse[CAP] (* added 2002 December 27 based on SBCOMMUT.NB *) composite[inverse[CART],inverse[IMAGE[RIF]]] := composite[SWAP,cross[inverse[IMAGE[SWAP]],inverse[IMAGE[SWAP]]],inverse[COMPOSE]] (* derived 2007 October 13 in MONOCART.NB *) composite[inverse[CART],inverse[IMAGE[TWIST]]] := inverse[CROSS] (* added 2001 May 8 based on MONOCART.NB *) composite[inverse[CART],S,CART] := union[cross[S,S], cart[union[cart[V,set[0]],cart[set[0],V]],cart[V,V]]] (* added 2003 October 7 based on WF-IND.NB *) composite[inverse[CART],SINGLETON] := cross[SINGLETON,SINGLETON] (* added 2001 April 30 based on CLIQUES2.NB *) composite[inverse[CLIQUES],complement[E]] := composite[complement[S],CART,DUP] (* added 2001 April 30 based on CLIQUES2.NB *) composite[inverse[CLIQUES],E] := composite[S,CART,DUP] (* derived 2003 December 31 in COARSER.NB *) composite[inverse[COARSER],COARSER] := composite[inverse[BIGCUP],BIGCUP] (* derived 2007 December 26 in COARSER.NB *) composite[inverse[COARSER],complement[COARSER]] := composite[Id,complement[COARSER]] (* derived 2007 December 26 in COARSER.NB *) composite[inverse[COARSER],complement[S]] := composite[Id,complement[S]] (* derived 2007 May 27 in COARSER.NB *) composite[inverse[COARSER],inverse[COARSER]] := inverse[COARSER] (* derived 2003 December 31 in COARSER.NB *) composite[inverse[COARSER],POWER] := inverse[BIGCUP] (* derived 2009 January 9 in CAT-DO.NB *) composite[inverse[cod[cat[x_]]],dom[cat[x_]]] := domain[cat[x]] (* derived 2009 January 9 in CAT-DO.NB *) composite[inverse[cod[cat[x_]]],domain[cat[x_]]] := domain[cat[x]] (* derived 2007 December 26 in SCHRODER.NB *) composite[inverse[x_],complement[composite[x_,complement[inverse[x_]]]]] := inverse[x] (* added 2002 November 19 based on EQV.NB *) composite[INVERSE,COMPOSE] := composite[COMPOSE,SWAP,cross[IMAGE[SWAP],IMAGE[SWAP]]] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[CORE[x_]],inverse[S],CORE[x_]] := composite[inverse[CORE[x]],inverse[S]] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[CORE[x_]],S,CORE[x_]] := composite[S,CORE[x]] (* derived 2007 October 13 in MONOCART.NB *) composite[inverse[CROSS],inverse[IMAGE[RIF]]] := inverse[COMPOSE] (* derived 2004 June 14 in TP-SYM.NB *) composite[INVERSE,CUP] := composite[CUP,cross[INVERSE,INVERSE]] (* derived 2005 January 29 in DIV.NB *) composite[inverse[DIV],complement[DIV]] := composite[id[omega],complement[DIV]] (* derived 2005 January 29 in DIV.NB *) composite[inverse[DIV],DIV] := cart[omega,omega] (* derived 2005 May 5 in S-DIV.NB *) composite[inverse[DIV],E] := cart[omega,intersection[omega,complement[set[0]]]] (* derived 2007 January 27 in DIV-SBV.NB *) composite[inverse[DIV],inverse[DIV]] := inverse[DIV] (* derived 2005 May 5 in S-DIV.NB *) composite[inverse[DIV],inverse[S]] := cart[V,omega] (* derived 2009 January 9 in CAT-DO.NB *) composite[inverse[dom[cat[x_]]],cod[cat[x_]]] := inverse[domain[cat[x]]] (* derived 2009 January 9 in CAT-DO.NB *) composite[inverse[dom[cat[x_]]],domain[cat[x_]]] := composite[inverse[dom[cat[x]]],dom[cat[x]]] (* derived 2009 January 9 in CAT-DO.NB *) composite[inverse[domain[cat[x_]]],domain[cat[x_]]] := composite[inverse[dom[cat[x]]],dom[cat[x]]] (* derived 2008 December 25 in COD-DOM.NB *) composite[inverse[domain[x_]],id[ids[x_]]] := inverse[dom[x]] (* added 2001 December 23 based on DORA-1.NB *) composite[inverse[DORA],cross[inverse[S],inverse[S]]] := composite[inverse[IMAGE[id[cart[V,V]]]],inverse[S],CART] (* added 2001 December 23 based on DORA-1.NB *) composite[inverse[DORA],id[cart[V,V]]] := inverse[DORA] (* added 1999 October 29 based on 1999 October 28 FIX-IDP.LOG *) composite[inverse[DUP],complement[inverse[E]]] := composite[complement[inverse[E]],IMAGE[inverse[DUP]]] composite[inverse[DUP],cross[x_,y_]] := intersection[composite[x,FIRST],composite[y,SECOND]] composite[inverse[DUP],cross[x_,y_],DUP] := composite[Id,intersection[x,y]] (* added 2004 July 14 based on X2530-41.NB *) composite[inverse[DUP],Di] := union[cart[union[Di,complement[cart[V,V]]],V], composite[Di,inverse[DUP]]] (* Theorem DUP-CO1 in DUP1 proved 1998 November 29 *) composite[inverse[DUP],DUP] := Id (* derived 2007 January 23 in EQUIDIFF.NB *) composite[inverse[DUP],EQUIDIFF] := cart[id[omega],omega] (* derived 2008 May 7 in 2-2-ID.NB *) composite[inverse[DUP],FIRST,id[FIRST]] := composite[SECOND,id[inverse[DUP]]] (* derived 2008 May 7 in 2-2-ID.NB *) composite[inverse[DUP],FIRST,id[SECOND]] := composite[SECOND,id[inverse[DUP]]] composite[inverse[DUP],id[x_]] := composite[id[fix[x]],inverse[DUP]] (* Suggested 1998 October 11 in CAP-LOG.1 *) composite[inverse[DUP],intersection[composite[inverse[FIRST],x_], composite[inverse[SECOND],y_]]] := composite[Id,intersection[x,y]] (* added 2002 April 28 based on CLIQUES.NB *) composite[inverse[DUP],inverse[CART],complement[inverse[S]]] := composite[complement[inverse[E]],CLIQUES] (* added 2000 December 14 based on CHECK-H8.NB *) composite[inverse[DUP],inverse[CART],DISJOINT] := composite[inverse[POWER],DISJOINT,IMAGE[PAIRSET]] (* added 1999 October 17 based on STRANGE.7 *) composite[inverse[DUP],inverse[CART],E] := composite[S,PAIRSET] (* derived 2006 October 16 in PAIRSET.NB *) composite[inverse[DUP],inverse[CART],inverse[IMAGE[PAIRSET]]] := composite[inverse[POWER],inverse[IMAGE[id[range[PAIRSET]]]]] (* derived 2006 October 9 in REIFCLIQ.NB *) composite[inverse[DUP],inverse[CART],inverse[LB[x_]]] := composite[inverse[E],CLIQUES,inverse[LB[x]]] (* added 2001 April 30 based on CLIQUES2.NB *) composite[inverse[DUP],inverse[CART],inverse[S]] := composite[inverse[E],CLIQUES] composite[inverse[DUP],inverse[FIRST]] := Id (* derived 2006 August 24 in NAT-SQR.NB *) composite[inverse[DUP],inverse[NATMUL],S,NATMUL,DUP] := composite[id[omega],S,id[omega]] composite[inverse[DUP],inverse[SECOND]] := Id (* added 2003 July 1 based on IN-DUP.NB *) composite[inverse[DUP],LEFT[x_]] := cart[set[x],set[x]] (* added 2002 October 29 based on RIF-DUP.NB *) composite[inverse[DUP],RIF,cross[x_,y_]] := composite[FIRST, intersection[composite[y,SECOND],composite[SWAP,x,FIRST]]] (* added 2002 October 29 based on RIF-DUP.NB *) composite[inverse[DUP],RIF,intersection[ composite[inverse[FIRST],x_], composite[inverse[SECOND],y_]]] := composite[FIRST,intersection[y,composite[SWAP,x]]] (* added 2003 July 1 based on IN-DUP.NB *) composite[inverse[DUP],RIGHT[x_]] := cart[set[x],set[x]] (* derived 2008 May 7 in 2-2-ID.NB *) composite[inverse[DUP],SECOND,id[inverse[FIRST]]] := composite[FIRST,id[DUP]] (* derived 2008 May 7 in 2-2-ID.NB *) composite[inverse[DUP],SECOND,id[inverse[SECOND]]] := composite[FIRST,id[DUP]] composite[inverse[DUP],SWAP] := inverse[DUP] (* added 1999 October 10 based on TWIST.3 *) composite[inverse[DUP],TWIST] := cross[inverse[DUP],inverse[DUP]] (* Theorem IMG-E-4 in IMG4 *) composite[x_,inverse[E]] := composite[inverse[E],IMAGE[x]] /; cond && thin[x] (* added 2003 June 6 based on ACL-UCL.NB *) composite[inverse[E],ACLOSURE,inverse[BIGCAP]] := S (* added 2001 May 10 based on UCLOS-1.NB *) composite[inverse[E],ACLOSURE,inverse[S]] := composite[inverse[E],ACLOSURE] (* corrected 2002 May 2 *) composite[inverse[E],ADJOIN[x_]] := union[cart[V,intersection[x,image[V,set[x]]]], composite[inverse[E],id[image[V,set[x]]]]] (* derived 2008 December 4 in UNCURRY.NB *) composite[inverse[E],APPLY[CURRY,binop[x_]]] := composite[SWAP,inverse[rotate[composite[binop[x],SWAP]]]] (* added 2000 December 14 based on CHECK-H8.NB *) composite[inverse[E],BIGCUP,DISJOINT] := cart[V,V] (* derived 2004 December 24 in UCL-LBUB.NB *) composite[inverse[E],BIGCUP,inverse[LB[x_]]] := composite[inverse[E],x] (* derived 2004 December 24 in UCL-LBUB.NB *) composite[inverse[E],BIGCUP,inverse[UB[x_]]] := composite[inverse[E],inverse[x]] (* derised 2008 August 11 in BC-SBV.NB *) composite[inverse[E],BIGCUP,SUBVAR,inverse[S]] := composite[inverse[E],BIGCUP,SUBVAR] (* derived 2004 December 24 in UCL-LBUB.NB *) composite[inverse[E],BIGCUP,VERTSECT[x_]] := composite[inverse[E],thinpart[x]] (* added 2000 September 12 based on CLS6-2.NB *) composite[inverse[E],CAP,cross[x_,inverse[S]]] := composite[inverse[E],CAP,cross[x,Id]] (* added 2000 September 12 based on CLS6-2.NB *) composite[inverse[E],CAP,cross[inverse[S],x_]] := composite[inverse[E],CAP,cross[Id,x]] (* added 2000 September 12 based on CLS6-2.NB *) composite[inverse[E],CAP,cross[inverse[S],inverse[S]]] := composite[inverse[E],CAP] (* derived 2008 February 16 in CAP.NB *) composite[inverse[E],CAP,cross[POWER,POWER]] := composite[inverse[S],CAP] (* derived 2004 May 12 in EQUIV.NB *) composite[inverse[E],CAP,intersection[composite[inverse[FIRST],HULL[TRV],inverse[S]], composite[inverse[SECOND],INVERSE,HULL[TRV],inverse[S]]]] := composite[inverse[E],EQUIV] (* added 2000 September 7 based on CART.NB *) composite[inverse[E],CART,cross[x_,composite[SINGLETON,y_]]] := cross[composite[inverse[E],x],y] (* added 2000 September 7 based on CART.NB *) composite[inverse[E],CART,cross[composite[SINGLETON,x_],y_]] := cross[x,composite[inverse[E],y]] (* added 2000 September 12 based on CLS6-3.NB *) composite[inverse[E],CART,cross[inverse[S],x_]] := composite[inverse[E],CART,cross[Id,x]] (* added 2000 September 12 based on CLS6-3.NB *) composite[inverse[E],CART,cross[x_,inverse[S]]] := composite[inverse[E],CART,cross[x,Id]] (* added 2000 September 12 based on CLS6-3.NB *) composite[inverse[E],CART,cross[inverse[S],inverse[S]]] := composite[inverse[E],CART] (* added 2000 September 7 based on CART.NB *) composite[inverse[E],CART,cross[x_,SINGLETON]] := cross[composite[inverse[E],x],Id] (* added 2000 September 7 based on CART.NB *) composite[inverse[E],CART,cross[SINGLETON,x_]] := cross[Id,composite[inverse[E],x]] (* derived 2007 October 14 in IMG-MAP.NB *) composite[inverse[E],CART,cross[VERTSECT[x_],VERTSECT[y_]]] := cross[thinpart[x],thinpart[y]] (* added 2000 December 14 based on CHECK-H8.NB *) composite[inverse[E],CART,DUP,complement[inverse[E]]] := cart[V,cart[V,V]] (* added 2000 December 14 based on CHECK-H8.NB *) composite[inverse[E],CART,DUP,complement[inverse[S]]] := cart[V,cart[V,V]] (* added 2000 December 14 based on MORE-PRS.NB *) composite[inverse[E],CART,DUP,Di] := cart[V,cart[V,V]] (* added 2000 December 14 based on MORE-PRS.NB *) composite[inverse[E],CART,DUP,E] := cart[V,cart[V,V]] (* added 2000 December 14 based on CHECK-H8.NB *) composite[inverse[E],CART,DUP,inverse[BIGCUP]] := composite[inverse[E],CART,DUP,POWER] (* added 2000 December 14 based on MORE-PRS.NB *) composite[inverse[E],CART,DUP,inverse[S]] := composite[inverse[E],CART,DUP] (* added 2000 December 14 based on MORE-PRS.NB *) composite[inverse[E],CART,DUP,S] := cart[V,cart[V,V]] (* derived 2004 November 10 in CART-INE.NB *) composite[inverse[E],CART,inverse[FIRST]] := composite[inverse[FIRST],inverse[E]] (* derived 2004 November 10 in CART-INE.NB *) composite[inverse[E],CART,inverse[SECOND]] := composite[inverse[SECOND],inverse[E]] (* derived 2008 November 4 in EQV.NB *) composite[inverse[E],CLIQUES,DISJOINT,CART,DUP] := DISJOINT (* derived 2008 October 4 in BIN-NORM.NB *) composite[inverse[E],CLIQUES,id[image[CART,Id]]] := composite[inverse[S],inverse[DUP],inverse[CART]] (* derived 2006 October 10 in CLIQ-INS.NB *) composite[inverse[E],CLIQUES,inverse[S]] := composite[inverse[E],CLIQUES] (* added 2003 July 4 based on COARSER.NB *) composite[inverse[E],COARSER] := composite[inverse[S],BIGCUP] (* Theorem DI-CO-E2 in DI added 1998 July 2 *) composite[inverse[E],complement[E]] := Di (* inverse of SP-E-C-E added 1999 January 19 *) composite[inverse[E],complement[inverse[E]]] := cart[V,V] composite[inverse[E],complement[inverse[S]]] := cart[V,V] (* added 1998 August 23 *) composite[inverse[E],complement[S]] := composite[inverse[SINGLETON],complement[S]] (* added 2002 November 29 based on PLUS.NB *) composite[inverse[E],COMPOSE,cross[composite[IMAGE[SWAP],PLUS],PLUS]] := EQUIDIFF (* derived 2008 October 27 in X-IN-S.NB *) composite[inverse[E],COMPOSE,cross[inverse[S],x_]] := composite[inverse[E],COMPOSE,cross[Id,x]] (* derived 2008 October 27 in X-IN-S.NB *) composite[inverse[E],COMPOSE,cross[x_,inverse[S]]] := composite[inverse[E],COMPOSE,cross[x,Id]] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],CORE[x_],complement[E]] := composite[inverse[E],id[x],complement[E]] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],CORE[x_],complement[inverse[E]]] := cart[V,U[x]] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],CORE[x_],complement[inverse[S]]] := cart[V,U[x]] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],CORE[x_],complement[S]] := composite[inverse[E],id[x],complement[S]] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],CORE[x_],Di] := cart[V,U[x]] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],CORE[x_],DISJOINT] := composite[inverse[E],id[x],DISJOINT] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],CORE[x_],E] := cart[V,U[x]] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],CORE[x_],inverse[S]] := composite[inverse[E],CORE[x]] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],CORE[x_],S] := cart[V,U[x]] (* derived 2008 October 27 in X-IN-S.NB *) composite[inverse[E],CROSS,cross[inverse[S],x_]] := composite[inverse[E],CROSS,cross[Id,x]] (* derived 2008 October 27 in X-IN-S.NB *) composite[inverse[E],CROSS,cross[x_,inverse[S]]] := composite[inverse[E],CROSS,cross[x,Id]] (* added 1999 October 5 based on CUP-SR.2 *) composite[inverse[E],CUP] := union[composite[inverse[E],FIRST],composite[inverse[E],SECOND]] (* Theorem SP-E-DI in SP3 proved 1998 November 11 *) composite[inverse[E],Di] := cart[V,V] (* added 2001 March 8 based on IMIMG.NB *) composite[inverse[E],DIF,cross[Id,complement[inverse[E]]]] := composite[inverse[E],FIRST] (* added 2001 March 8 based on IMIMG.NB *) composite[inverse[E],DIF,cross[Id,inverse[E]]] := composite[inverse[E],DIF,cross[Id,BIGCAP]] (* inverse of DJT-CO-E added 1998 August 23 *) composite[inverse[E],DISJOINT] := composite[Id,complement[inverse[E]]] (* derived 2005 May 3 in IN-E-DIV.NB *) composite[inverse[E],DIV] := cart[intersection[omega,complement[set[0]]],omega] (* Theorem E-CO-IN2 in E2 *) composite[inverse[E],E] := cart[V,V] (* derived 2007 December 23 in HULL-IVR.NB *) composite[inverse[E],HULL[invar[x_]],SINGLETON] := union[id[domain[VERTSECT[trv[x]]]],thinpart[trv[x]]] (* derived 2007 August 2 in HULL-SG.NB *) composite[inverse[E],HULL[x_],inverse[S],HULL[x_]] := composite[inverse[E],HULL[x]] (* derived 2007 August 2 in HULL-SG.NB *) composite[inverse[E],HULL[omega],SINGLETON] := composite[id[omega],inverse[S],id[omega]] (* derived 2006 October 7 in HULL-TRV.NB *) composite[inverse[E],HULL[TRV],inverse[S]] := composite[inverse[E],HULL[TRV],IMAGE[id[cart[V,V]]]] (* derived 2007 May 8 in PAIRSET.NB *) composite[inverse[E],id[chains[x_]],E] := union[inverse[rfx[x]],rfx[x]] (* derived 2006 October 11 in R-S-CORE.NB *) composite[inverse[E],id[cliques[x_]],E] := intersection[inverse[rfx[x]],rfx[x]] (* derived 2005 October 15 in OO-FIN.NB *) composite[inverse[E],id[image[IMAGE[SECOND],x_]],E] := range[U[image[CROSS,id[x]]]] (* added 2002 November 17 based on HER-Z.NB *) composite[inverse[E],id[image[inverse[S],x_]],E] := composite[inverse[E],id[x],E] (* derived 2006 October 10 in RA-SG-DJ.NB *) composite[inverse[E],id[image[SINGLETON,x_]]] := composite[id[x],inverse[SINGLETON]] (* derived 2006 October 16 in EQV-PROJ.NB *) composite[inverse[E],id[image[VERTSECT[eqv[thinpart[x_]]],fix[eqv[thinpart[x_]]]]]] := composite[id[fix[eqv[thinpart[x]]]],inverse[VERTSECT[eqv[thinpart[x]]]]] (* derived 2004 October 28 in AC2.NB *) composite[inverse[E],id[intersection[x_,complement[set[0]]]]] := composite[inverse[E],id[x]] (* added 2001 May 8 based on CORE-2.NB *) composite[inverse[E],id[x_],inverse[S]] := composite[inverse[E],CORE[x]] (* derived 2005 May 3 in INE-OM-E.NB *) composite[inverse[E],id[omega],E] := cart[omega,omega] (* derived 2007 May 23 in SU-ON.NB *) composite[inverse[E],id[OMEGA],E] := cart[OMEGA,OMEGA] (* derived 2007 May 22 in SU-OM.NB *) composite[inverse[E],id[omega],S] := cart[image[inverse[S],omega],omega] (* derived 2007 May 23 in SU-ON.NB *) composite[inverse[E],id[OMEGA],S] := cart[P[OMEGA],OMEGA] (* added 2002 June 3 based on S-ON.TXT *) composite[inverse[E],id[omega],SUCC] := composite[id[omega],inverse[S],id[omega]] (* added 2002 June 3 based on S-ON.TXT *) composite[inverse[E],id[OMEGA],SUCC] := composite[id[OMEGA],inverse[S],id[OMEGA]] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],id[P[x_]],complement[E]] := composite[id[x],Di] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],id[P[x_]],DISJOINT] := composite[id[x],complement[inverse[E]]] (* added 1999 October 17 based on STRANGE.3 *) composite[inverse[E],id[P[x_]],E] := cart[x,x] (* see IMG-E-3 in IMG4.DEM *) composite[x_,inverse[E],id[P[domain[VERTSECT[x_]]]]] := composite[inverse[E],IMAGE[x]] (* derived 2007 August 2 in HULL-SG.NB *) composite[inverse[E],id[x_],POWER] := composite[inverse[S],id[image[inverse[POWER],x]]] composite[inverse[E],id[range[SINGLETON]]] := inverse[SINGLETON] (* derived 2007 August 2 in HULL-SG.NB *) composite[inverse[E],id[x_],SINGLETON] := id[image[inverse[SINGLETON],x]] (* derived 2007 September 8 in UCH-SQ.NB *) composite[inverse[E],id[spine[S,x_]],E] := cart[U[spine[S,x]],U[spine[S,x]]] (* derived 2003 December 30 in T2.NB *) composite[inverse[E],id[Uclosure[x_]],complement[E]] := composite[inverse[E],id[x],complement[E]] (* derived 2003 December 30 in T2.NB *) composite[inverse[E],id[Uclosure[x_]],complement[S]] := composite[inverse[E],id[x],complement[S]] (* derived 2003 December 30 in T2.NB *) composite[inverse[E],id[Uclosure[x_]],DISJOINT] := composite[inverse[E],id[x],DISJOINT] (* derived 2007 August 2 in HULL-SG.NB *) composite[inverse[E],id[x_],VERTSECT[y_]] := composite[y,id[image[inverse[VERTSECT[y]],x]]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[inverse[E],id[Z]] := composite[id[cart[omega,omega]],inverse[VERTSECT[EQUIDIFF]]] (* derived 2004 September 29 in WF-REC-7.NB *) composite[inverse[E],IMAGE[funpart[w_]],VERTSECT[y_]] := composite[funpart[w],thinpart[y]] (* added 2002 November 13 based on NATMUL.NB *) composite[inverse[E],IMAGE[id[cart[x_,V]]],IMAGE[cross[composite[y_,FIRST],SECOND]], IMAGE[id[composite[inverse[FIRST],SECOND]]],CART]:= composite[inverse[E],IMAGE[id[cart[x,V]]], IMAGE[cross[y,Id]],COMPOSE,SWAP] /; cond && thin[y] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],IMAGE[id[x_]],complement[E]] := composite[id[x],Di] (* derived 2004 July 21 in TOMINMAX.NB *) composite[inverse[E],IMAGE[id[complement[x_]]],id[P[x_]]] := 0 (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],IMAGE[id[x_]],complement[inverse[E]]] := cart[V,x] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],IMAGE[id[x_]],complement[inverse[S]]] := cart[V,x] (* added 2002 June 9 based on OMEGA.NB *) composite[inverse[E],IMAGE[id[complement[set[0]]]],id[omega],SUCC] := composite[id[intersection[omega,complement[set[0]]]],inverse[S],id[omega]] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],IMAGE[id[x_]],Di] := cart[V,x] (* added 2000 December 9 based on REPLACE.NB *) composite[x_,inverse[E],IMAGE[id[domain[x_]]]] := composite[x,inverse[E]] (* added 2003 June 18 based on CUT-CORE.NB *) composite[inverse[E],IMAGE[id[x_]],E] := cart[V,x] (* derived 2007 September 19 in UCH-WF.NB *) composite[inverse[E],IMAGE[id[nat[x_]]],id[nat[x_]]] := composite[inverse[E],id[nat[x]]] (* derived 2005 February 19 in ITR-OM-E.NB *) composite[inverse[E],IMAGE[id[omega]],IMAGE[inverse[S]],id[omega]] := composite[inverse[E],id[omega]] (* derived 2004 December 24 in IMG-LBUB.NB *) composite[inverse[E],IMAGE[x_],inverse[LB[y_]]] := composite[thinpart[x],y] (* discovered 1999 December 20 in CANCEL.NB *) composite[inverse[E],IMAGE[inverse[POWER]],S] := cart[V,V] (* derived 2005 August 17 in MONOPRSQ.NB *) composite[inverse[E],IMAGE[inverse[PRIMESEQ]],PRIMESEQ] := composite[inverse[E],id[omega]] (* derived 2004 May 14 in REPLACE.NB *) composite[inverse[E],IMAGE[x_],inverse[S]] := composite[inverse[E],IMAGE[thinpart[x]]] (* derived 2006 October 16 in PAIRSET.NB *) composite[inverse[E],IMAGE[inverse[S]],IMAGE[id[x_]],POWER] := composite[inverse[S],id[x],inverse[S]] (* added 2003 November 28 based on FIN-IND.NB *) composite[inverse[E],IMAGE[inverse[S]],IMAGE[SINGLETON]] := union[cart[complement[set[0]],set[0]],composite[inverse[E],IMAGE[SINGLETON]]] (* derived 2004 December 24 in THINPART.NB *) composite[inverse[E],IMAGE[inverse[S]],VERTSECT[x_]] := composite[inverse[S],thinpart[x]] (* derived 2004 December 24 in IMG-LBUB.NB *) composite[inverse[E],IMAGE[x_],inverse[UB[y_]]] := composite[thinpart[x],inverse[y]] (* derived 2007 October 14 in IMG-MAP.NB *) composite[inverse[E],IMAGE[MAP],CART,cross[POWER,POWER]] := composite[MAP,cross[inverse[S],inverse[S]]] (* derived 2007 October 14 in IMG-MAP.NB *) composite[inverse[E],IMAGE[MAP],CART,cross[POWER,SINGLETON]] := composite[MAP,cross[inverse[S],Id]] (* derived 2007 October 14 in IMG-MAP.NB *) composite[inverse[E],IMAGE[MAP],CART,cross[SINGLETON,POWER]] := composite[MAP,cross[Id,inverse[S]]] (* derived 2007 October 14 in IMG-MAP.NB *) composite[inverse[E],IMAGE[MAP],CART,cross[VERTSECT[x_],VERTSECT[y_]]] := composite[MAP,cross[thinpart[x],thinpart[y]]] (* added 2000 December 14 based on CHECK-H8.NB *) composite[inverse[E],IMAGE[PAIRSET],CART,DUP] := composite[id[range[PAIRSET]],inverse[S]] (* added 2000 December 14 based on CHECK-H8.NB *) composite[inverse[E],IMAGE[x_],POWER] := composite[x,inverse[S],id[complement[image[S,complement[domain[VERTSECT[x]]]]]]] (* added 2000 December 14 based on CHECK-H8.NB *) composite[inverse[E],IMAGE[POWER],DISJOINT] := composite[POWER,complement[inverse[E]]] (* derived 2006 January 17 in POW-SG.NB *) composite[inverse[E],IMAGE[POWER],id[range[POWER]]] := composite[id[range[POWER]],inverse[S],id[range[POWER]]] (* derived 2006 October 24 in EVAL.NB *) composite[inverse[E],IMAGE[SECOND],IMAGE[id[cart[set[x_],V]]],FUNPART] := eval[x] (* added 2002 January 6 based on Q-TEST.NB *) composite[inverse[E],IMAGE[SWAP],id[complement[set[0]]]] := composite[inverse[E],IMAGE[SWAP]] (* derived 2006 November 12 in CURMAP-1.NB *) composite[inverse[E],IMAGE[SWAP],VERTSECT[x_]] := composite[SWAP,thinpart[x]] (* added 2001 March 15 based on H-1.NB *) composite[inverse[E],IMAGE[TC],S] := cart[V,FULL] (* derived 2004 December 24 in THINPART.NB *) composite[inverse[E],IMAGE[thinpart[x_]],VERTSECT[y_]] := composite[thinpart[x],thinpart[y]] (* derived 2007 May 11 in VS-LEAST.NB *) composite[inverse[E],IMAGE[x_],VERTSECT[y_]] := composite[x,thinpart[y]] /; thin[x] (* derived 2007 May 11 in VS-LEAST.NB *) composite[inverse[E],IMAGE[x_],VERTSECT[thinpart[y_]]] := thinpart[composite[x,thinpart[y]]] (* derived 2008 October 27 in X-IN-S.NB *) composite[inverse[E],IMG,cross[inverse[S],x_]] := composite[inverse[E],IMG,cross[Id,x]] (* derived 2008 October 27 in X-IN-S.NB *) composite[inverse[E],IMG,cross[x_,inverse[S]]] := composite[inverse[E],IMG,cross[x,Id]] (* added 1999 December 28 based on REMOVED.NB *) composite[inverse[E],IMG,cross[x_,SINGLETON]] := composite[rotate[E],cross[x,Id]] (* derived 2008 November 7 in VS-U.NB *) composite[inverse[E],IMG,id[cart[x_,y_]],inverse[SECOND]] := composite[U[x],inverse[E],id[y]] (* added 2002 January 6 based on LAMBDA42.NB *) composite[inverse[E],IMG,inverse[FIRST]] := composite[inverse[E],IMAGE[SECOND]] (* added 1999 December 28 based on REMOVED.NB *) composite[inverse[E],IMG,SWAP,cross[SINGLETON,x_]] := composite[rotate[E],SWAP,cross[Id,x]] (* added 1999 December 27 based on IMG-1.NB composite[inverse[E],IMG,SWAP,cross[SINGLETON,x_]] := composite[rotate[composite[inverse[x],E]],SWAP] *) (* added 2003 January 25 based on INVAR.NB *) composite[inverse[E],INVAR] := cart[V,V] (* added 1998 August 23 on basis of ASSOC-4.LOG *) composite[inverse[E],inverse[BIGCAP]] := S composite[inverse[E],inverse[BIGCUP]] := inverse[S] (* derived 2005 May 5 in S-DIV.NB *) composite[inverse[E],inverse[DIV]] := union[cart[set[0],omega],composite[inverse[E],id[omega]]] (* Corollary IMG-BC-7 in IMG4 proved 1998 November 21 *) composite[inverse[E],inverse[E]] := composite[inverse[E],BIGCUP] (* added 2002 November 16 based on LB-UB.NB *) composite[inverse[E],inverse[GREATEST[x_]]] := composite[inverse[x],id[fix[x]]] (* derived 2006 December 30 in ZTIMES-5.NB *) composite[inverse[E],INVERSE,INTTIMES] := inverse[rotate[INTMUL]] (* added 2002 November 16 based on LB-UB.NB *) composite[inverse[E],inverse[LB[x_]]] := composite[Id,x] (* derived 2006 December 16 in INE-TIME.NB *) composite[inverse[E],INVERSE,MIXTIMES] := inverse[rotate[composite[MIXMUL,SWAP]]] (* added 2002 November 29 based on PLUS.NB *) composite[inverse[E],INVERSE,PLUS] := inverse[rotate[NATADD]] (* discovered 1999 December 20 in CANCEL.NB *) composite[inverse[E],inverse[POWER],S] := cart[V,V] composite[inverse[E],inverse[S]] := inverse[E] (* added 2001 March 15 based on H-1.NB *) composite[inverse[E],inverse[TC]] := composite[inverse[E],id[FULL]] (* derived 2006 December 16 in INE-TIME.NB *) composite[inverse[E],INVERSE,TIMES] := inverse[rotate[NATMUL]] (* added 2002 November 16 based on LB-UB.NB *) composite[inverse[E],inverse[UB[x_]]] := inverse[x] (* Theorem K-E-IN in K proved 2000 May 25 *) composite[inverse[E],K] := cart[V,V] (* derived 2006 March 4 in KURA.NB *) composite[inverse[E],KURA] := union[PAIRSET,composite[SINGLETON,FIRST]] (* derived 2004 December 22 in UCL-COMT.NB *) composite[inverse[E],LB[LB[x_]]] := UB[x] (* derived 2004 December 22 in UCL-COMT.NB *) composite[inverse[E],LB[UB[x_]]] := LB[x] (* derived 2008 October 27 in MAP-X.NB *) composite[inverse[E],MAP,cross[inverse[S],x_]] := composite[id[FUNS],inverse[S],CART,cross[Id,x]] (* derived 2008 October 27 in MAP-X.NB *) composite[inverse[E],MAP,cross[x_,inverse[S]]] := composite[inverse[E],MAP,cross[x,Id]] (* derived 2006 November 21 in CUR-BO.NB *) composite[inverse[E],MAP,DUP,E] := composite[id[UNOPS],inverse[IMAGE[FIRST]],E] (* derived 2006 December 16 in INE-TIME.NB *) composite[inverse[E],MIXTIMES] := composite[SWAP,inverse[rotate[composite[MIXMUL,SWAP]]]] (* added 1999 October 5 based on PAIRSET.3 *) composite[inverse[E],PAIRSET] := union[FIRST,SECOND] (* added 2002 November 29 based on PLUS.NB *) composite[inverse[E],PLUS] := composite[SWAP,inverse[rotate[NATADD]]] (* Theorem POW-CO3 in POW3 *) composite[inverse[E],POWER] := inverse[S] (* added 1998 August 9 *) composite[inverse[E],PS] := cart[V,V] (* derived 2005 November 22 in Q-RULES.NB *) composite[inverse[E],Q] := cart[complement[set[0]],V] (* added 2001 February 27 based on DMORG.NB *) composite[inverse[E],RC[x_]] := composite[id[intersection[x,image[V,set[x]]]],complement[inverse[E]],id[P[x]]] (* derived 2005 January 6 in RCF.NB *) composite[inverse[E],RCF] := composite[id[DISJOINT],inverse[CUP]] (* derived 2004 August 10 in RS-3.NB *) composite[inverse[E],RESTRICT] := composite[inverse[E],IMAGE[id[cart[V,V]]]] (* Theorem SR-CO12 in SR2 *) composite[inverse[E],S] := cart[V,V] (* Theorem SG-4E in SG1 *) composite[inverse[E],SINGLETON] := Id (* derived 2004 January 22 in U-SBV-PC.NB *) composite[inverse[E],SUBVAR,inverse[S]] := composite[inverse[E],SUBVAR] (* added 2000 August 16 based on SYMDIF2.NB *) composite[inverse[E],SYMDIF] := union[composite[inverse[E],DIF],composite[inverse[E],DIF,SWAP]] (* added 2000 October 26 based on TC-4.NB *) composite[inverse[E],TC,inverse[S]] := composite[inverse[E],TC] (* derived 2004 December 29 in I-FUL-REG.NB *) composite[inverse[E],TC,SINGLETON] := union[Id,composite[inverse[E],TC]] (* added 2003 January 25 based on TC-ZN.NB *) composite[inverse[E],TC,ZN] := composite[ZN,inverse[E]] (* derived 2004 May 14 in REPLACE.NB *) composite[inverse[E],thinpart[ZN]] := composite[inverse[E],IMAGE[ZN]] (* derived 2006 October 21 in INTDIV.NB *) composite[inverse[E],TIMES] := composite[SWAP,inverse[rotate[NATMUL]]] (* derived 2008 November 7 in U-IM-VS.NB *) composite[inverse[E],U[image[VS,x_]]] := composite[Id,U[x]] (* derived 2008 July 10 in UBD-VS.NB *) composite[inverse[E],UBD,inverse[S]] := composite[inverse[E],UBD] (* derived 2007 June 25 in UCH-HULL.NB *) composite[inverse[E],UCHAINS,inverse[S]] := composite[inverse[E],UCHAINS] (* added 2003 June 6 based on ACL-UCL.NB *) composite[inverse[E],UCLOSURE,inverse[BIGCUP]] := inverse[S] (* derived 2004 December 21 in COMUTANT.NB *) composite[inverse[E],UCLOSURE,inverse[LB[COMMUTE]]] := COMMUTE (* added 2001 May 10 based on UCLOS-1.NB *) composite[inverse[E],UCLOSURE,inverse[S]] := composite[inverse[E],UCLOSURE] (* derived 2004 May 14 in REPLACE.NB *) composite[inverse[E],VERTSECT[x_]] := thinpart[x] (* added 2001 July 14 based on ZN-IMG.NB *) composite[inverse[E],ZN] := composite[ZN,inverse[E]] (* derived 2004 May 12 in EQUIV.NB *) composite[INVERSE,EQUIV] := EQUIV (* derived 2005 April 23 in FACT-S.NB *) composite[inverse[FACTORIAL],id[omega]] := inverse[FACTORIAL] composite[inverse[FIRST],id[x_]] := composite[id[cart[x,V]],inverse[FIRST]] (* added 2000 February 5 based on FUNPART.NB *) composite[x_,inverse[funpart[x_]]] := id[range[funpart[x]]] (* derived 2008 July 29 in IN-FUNP.NB *) composite[inverse[FUNPART],id[P[cart[V,V]]]] := inverse[FUNPART] (* derived 2008 July 29 in IN-FUNP.NB *) composite[inverse[FUNPART],inverse[IMAGE[id[cart[V,V]]]]] := inverse[FUNPART] (* derived 2008 July 29 in IN-FUNP.NB *) composite[inverse[FUNPART],inverse[IMAGE[SWAP]]] := composite[inverse[FUNPART],INVERSE] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[HC],inverse[S],HC] := composite[inverse[HC],inverse[S]] (* added 2001 April 1 based on HF-CONT.NB *) composite[inverse[HC],S] := composite[S,TC] (* derived 2008 February 3 in SYM-HULL.NB *) composite[INVERSE,HULL[invar[SWAP]]] := HULL[SYM] (* derived 2007 December 6 in IVR-HULL.NB *) composite[inverse[HULL[x_]],inverse[HULL[x_]]] := inverse[HULL[x]] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[HULL[x_]],inverse[S],HULL[x_]] := composite[inverse[S],HULL[x]] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[HULL[x_]],S,HULL[x_]] := composite[inverse[HULL[x]],S] (* derived 2008 February 3 in SYM-HULL.NB *) composite[INVERSE,HULL[SYM]] := HULL[SYM] (* added 2002 October 22 based on CO-ID.NB *) composite[inverse[x_],id[y_]] := inverse[x] /; y==range[x] (* derived 2008 September 29 in MAP.NB *) composite[INVERSE,id[BIJ],inverse[DORA]] := composite[id[BIJ],inverse[DORA],SWAP] composite[inverse[x_],id[complement[range[x_]]]] := 0 (* derived 2006 October 16 in ID-EQV.NB *) composite[INVERSE,id[EQV]] := id[EQV] (* derived 2008 October 4 in BIN-NORM.NB *) composite[INVERSE,id[image[CART,Id]]] := id[image[CART,Id]] (* added 2002 October 22 based on CO-ID.NB *) composite[x_,inverse[y_],id[image[y_,domain[x_]]]] := composite[x,inverse[y]] (* added 2002 October 22 based on CO-ID.NB *) composite[inverse[x_],y_,id[image[inverse[y_],range[x_]]]] := composite[inverse[x],y] (* added 2002 October 22 based on CO-ID.NB *) composite[INVERSE,id[P[cart[V,V]]]] := INVERSE (* added 1999 October 12 based on NEWRULES.1 *) composite[INVERSE,id[P[Id]]] := id[P[Id]] (* added 2002 October 22 based on CO-ID.NB *) composite[inverse[x_],id[range[x_]]] := inverse[x] (* derived 2006 October 16 in ID-EQV.NB *) composite[INVERSE,id[SYM]] := id[SYM] (* derived 2008 February 2 in RELNS.NB *) composite[inverse[x_],id[union[y_,range[x_]]]] := inverse[x] (* added 2003 August 10 based on ZADD-INV.NB *) composite[INVERSE,id[Z]] := composite[id[Z],INVERSE] (* derived 2007 June 6 in IDEMWRAP.NB *) composite[inverse[idem[x_]],inverse[idem[x_]]] := inverse[idem[x]] (* added 2000 Septermber 12 based on DOUBLINV.NB *) composite[inverse[IMAGE[BIGCUP]],inverse[BIGCUP]] := composite[inverse[BIGCUP],inverse[BIGCUP]] (* added 2001 October 5 based on IBC-TH.NB *) composite[inverse[IMAGE[BIGCUP]],inverse[S]] := composite[inverse[S],IMAGE[inverse[BIGCUP]]] (* derived 2006 September 30 in VECT-ADD.NB *) composite[INVERSE,IMAGE[cross[NATADD,NATADD]],CROSS] := composite[IMAGE[cross[NATADD,NATADD]],CROSS,cross[IMAGE[SWAP],IMAGE[SWAP]]] (* added 1999 October 9 based on TEST-LOG.1 *) composite[inverse[IMAGE[x_]],DISJOINT] := composite[DISJOINT,IMAGE[inverse[x]]] /; ONEONE[x] (* derived 2008 June 7 in LB-UB-E.NB *) composite[inverse[image[DORA,P[E]]],inverse[S]] := composite[inverse[S],BIGCUP] (* derived 2008 June 7 in LB-UB-E.NB *) composite[inverse[image[DORA,P[S]]],inverse[S]] := composite[inverse[S],IMAGE[inverse[S]]] (* added 1999 October 12 based on NEWRULES.1 *) composite[INVERSE,IMAGE[DUP]] := IMAGE[DUP] (* derived 2004 December 6 in IDP.NB *) composite[inverse[IMAGE[DUP]],CAP,cross[IMAGE[DUP],IMAGE[DUP]]] := CAP (* added 2001 May 18 based on COMMUTE4.NB *) composite[inverse[IMAGE[DUP]],COMMUTE,IMAGE[DUP]] := cart[V,V] (* derived 2006 September 17 in IDS-INCL.NB *) composite[inverse[IMAGE[DUP]],id[FUNS]] := inverse[IMAGE[DUP]] (* derived 2005 July 30 in CATORELN.NB *) composite[inverse[IMAGE[DUP]],id[P[cart[V,V]]]] := inverse[IMAGE[DUP]] (* Theorem FIX-IDP4 in FIX2 proved 1998 December 20 *) composite[inverse[IMAGE[DUP]],IMAGE[id[Id]]] := IMAGE[inverse[DUP]] (* added 2001 April 29 based on CLIQUES2.NB *) composite[inverse[IMAGE[DUP]],inverse[IMAGE[CART]],inverse[S],POWER] := composite[inverse[S],CLIQUES] (* added 2000 September 12 based on DOUBLINV.NB *) composite[inverse[IMAGE[DUP]],inverse[IMAGE[FIRST]]] := Id (* added 1998 August 23 *) composite[inverse[IMAGE[DUP]],inverse[IMAGE[id[Id]]]] := inverse[IMAGE[DUP]] composite[inverse[IMAGE[DUP]],inverse[IMAGE[inverse[DUP]]]] := Id (* added 2000 September 12 based on DOUBLINV.NB *) composite[inverse[IMAGE[DUP]],inverse[IMAGE[SECOND]]] := Id (* added 2000 September 12 based on DOUBLINV.NB *) composite[inverse[IMAGE[DUP]],inverse[IMAGE[SWAP]]] := inverse[IMAGE[DUP]] (* added 1998 August 21 for Normality of FIX~ *) composite[inverse[IMAGE[DUP]],inverse[S]] := composite[inverse[S],IMAGE[inverse[DUP]]] (* added 2003 January 30 *) composite[inverse[IMAGE[DUP]],inverse[SUBCOMMUTE]] := composite[INVAR,IMAGE[SWAP]] (* derived 2004 January 13 in RA-RCF.NB *) composite[inverse[IMAGE[DUP]],RCF] := cart[set[0],set[set[0]]] (* derived 2006 May 9 *) composite[inverse[IMAGE[DUP]],S,IMAGE[DUP]] := S (* added 2003 January 30 *) composite[inverse[IMAGE[DUP]],SUBCOMMUTE] := INVAR (* derived 2008 October 7 in BNP-WRAP.NB *) composite[INVERSE,IMAGE[FIRST],id[BINOPS]] := composite[IMAGE[FIRST],id[BINOPS]] (* derived 2006 October 24 in EVAL.NB *) composite[inverse[IMAGE[id[cart[set[x_],V]]]],inverse[IMAGE[SECOND]],SINGLETON] := inverse[eval[x]] (* added 1999 October 12 based on INVERSE.4 *) composite[INVERSE,IMAGE[id[cart[V,V]]]] := IMAGE[SWAP] (* added 2001 May 18 based on COMMUTE5.NB *) composite[inverse[IMAGE[id[cart[V,V]]]],COMMUTE] := COMMUTE (* added 2002 January 2 based on CRSRULES.NB *) composite[inverse[IMAGE[id[cart[V,V]]]],image[inverse[CROSS],x_]] := image[inverse[CROSS],x] (* added 2000 June 14 based on IMAGE-Q.NB *) composite[inverse[IMAGE[id[cart[V,V]]]],INVERSE] := inverse[IMAGE[SWAP]] (* derived 2008 July 29 in IN-FUNP.NB *) composite[inverse[IMAGE[id[cart[V,V]]]],inverse[FUNPART]] := inverse[FUNPART] (* added 1999 December 24 based on ONCEMORE.NB *) composite[inverse[IMAGE[id[cart[V,V]]]],inverse[IMAGE[SWAP]]] := inverse[IMAGE[SWAP]] (* derived 2004 August 10 in RS-3.NB *) composite[inverse[IMAGE[id[cart[V,V]]]],inverse[VERTSECT[RESTRICT]]] := inverse[VERTSECT[RESTRICT]] (* derived 2004 December 21 in COMUTANT.NB *) composite[inverse[IMAGE[id[cart[V,V]]]],LB[COMMUTE]] := LB[COMMUTE] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[inverse[IMAGE[id[cart[V,V]]]],LB[SUBCOMMUTE]] := LB[SUBCOMMUTE] (* added 2002 October 29 based on COMMUTE.NB *) composite[inverse[IMAGE[id[cart[V,V]]]],rotate[composite[COMPOSE,SWAP]]] := rotate[composite[COMPOSE,SWAP]] (* added 2003 April 30 based on SCARTDUP.NB *) composite[inverse[IMAGE[id[cart[V,V]]]],S,CART,DUP] := composite[S,CART,DUP] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[inverse[IMAGE[id[cart[V,V]]]],SUBCOMMUTE] := SUBCOMMUTE (* derived 2004 December 21 in SBCOMMUT.NB *) composite[inverse[IMAGE[id[cart[V,V]]]],UB[SUBCOMMUTE]] := UB[SUBCOMMUTE] (* derived 2005 January 3 in ZN-RANK.NB *) composite[inverse[IMAGE[id[x_]]],complement[E]] := union[cart[complement[x],V],composite[Id,complement[E]]] (* derived 2006 October 16 in PAIRSET.NB *) composite[inverse[IMAGE[id[x_]]],E,inverse[E]] := composite[E,inverse[E],IMAGE[id[x]]] (* added 1998 August 23 *) composite[inverse[IMAGE[id[Id]]],IMAGE[DUP]] := inverse[IMAGE[inverse[DUP]]] (* added 1998 August 23 *) composite[inverse[IMAGE[id[Id]]],inverse[IMAGE[inverse[DUP]]]] := inverse[IMAGE[inverse[DUP]]] (* added 2000 September 4 based on NEW.M *) composite[inverse[IMAGE[id[x_]]],id[P[y_]]] := inverse[IMAGE[id[x]]] /; subclass[x,y] composite[inverse[IMAGE[id[x_]]],inverse[IMAGE[id[y_]]]] := inverse[IMAGE[id[intersection[x,y]]]] (* added 1999 December 19 based on CUT-S.NB *) composite[inverse[IMAGE[id[x_]]],inverse[S],IMAGE[id[y_]]] := composite[id[P[union[y,complement[x]]]],inverse[IMAGE[id[x]]],inverse[S]] (* added 1999 December 23 based on IMINRULE.NB *) composite[inverse[IMAGE[id[x_]]],RC[x_],inverse[S]] := composite[S,RC[x],IMAGE[id[x]]] (* added 1999 December 19 based on CUT-S.NB *) composite[inverse[IMAGE[id[x_]]],S,IMAGE[id[y_]]] := composite[S,IMAGE[id[y]],id[P[union[x,complement[y]]]]] (* added 1999 December 19 based on RC-5.NB *) composite[inverse[IMAGE[id[x_]]],S,RC[x_]] := composite[S,RC[x]] (* derived 2006 May 9 *) composite[inverse[IMAGE[IMAGE[DUP]]],S,IMAGE[IMAGE[DUP]]] := S (* derived 2008 August 29 in LB-COMUT.NB *) composite[inverse[IMAGE[IMAGE[id[cart[V,V]]]]],LB[LB[COMMUTE]]] := LB[LB[COMMUTE]] (* added 2001 April 27 based on MAP5.NB *) composite[inverse[IMAGE[IMAGE[x_]]],inverse[S],POWER] := composite[inverse[BIGCUP],inverse[IMAGE[x]],inverse[S]] /; cond && thin[x] (* derived 2008 August 29 in LB-COMUT.NB *) composite[inverse[IMAGE[IMAGE[SWAP]]],LB[LB[COMMUTE]]] := composite[LB[LB[COMMUTE]],IMAGE[IMAGE[SWAP]]] (* derived 2006 April 27 in FU-IM.NB *) composite[inverse[IMAGE[inverse[ACLOSURE]]],S] := composite[S,IMAGE[ACLOSURE]] (* derived 2006 April 27 in FU-IM.NB *) composite[inverse[IMAGE[inverse[BIGCUP]]],S] := composite[S,IMAGE[BIGCUP]] (* added 1998 August 23 *) composite[inverse[IMAGE[inverse[DUP]]],inverse[IMAGE[DUP]]] := inverse[IMAGE[id[Id]]] (* rule FIX~ o S -> S o ID added 1998 August 21 for Normality of ID *) composite[inverse[IMAGE[inverse[DUP]]],S] := composite[S,IMAGE[DUP]] (* added 2000 January 1 based on RAIMGH-2.NB *) composite[inverse[IMAGE[h_]],inverse[IMAGE[inverse[h_]]]] := inverse[IMAGE[id[domain[h]]]] /; FUNCTION[h] && FUNCTION[inverse[h]] (* added 2002 May 18 based on FUNPART.NB *) composite[inverse[image[inverse[IMG],range[SINGLETON]]],inverse[E],IMAGE[SINGLETON]] := composite[inverse[FUNPART],inverse[IMAGE[FIRST]],E,inverse[E]] (* added 2002 May 18 based on FUNPART.NB *) composite[inverse[image[inverse[IMG],range[SINGLETON]]],SINGLETON] := composite[inverse[FUNPART],inverse[IMAGE[FIRST]],E] (* derived 2007 January 23 in IMINZADD.NB *) composite[INVERSE,image[inverse[INTADD],image[INVERSE,x_]]] := composite[image[inverse[INTADD],x],INVERSE] (* derived 2007 January 23 in IMINZADD.NB *) composite[INVERSE,image[inverse[INTADD],x_],INVERSE] := image[inverse[INTADD],image[INVERSE,x]] (* derived 2007 January 23 in IMINZADD.NB *) composite[INVERSE,image[inverse[INTADD],set[inverse[x_]]]] := composite[image[inverse[INTADD],set[composite[Id,x]]],INVERSE] (* derived 2008 September 13 in IMINTMUL.NB *) composite[INVERSE,IMAGE[inverse[INTMUL]]] := IMAGE[inverse[INTMUL]] (* added 2002 January 10 based on MORE-PRS.NB *) composite[inverse[IMAGE[inverse[PAIRSET]]], inverse[IMAGE[id[cart[V,V]]]]] := inverse[IMAGE[inverse[PAIRSET]]] (* derived 2006 April 27 in FU-IM.NB *) composite[inverse[IMAGE[inverse[POWER]]],S] := composite[S,IMAGE[POWER]] (* derived 2004 October 14 in REFINE.NB *) composite[inverse[IMAGE[inverse[S]]],COARSER, inverse[IMAGE[inverse[S]]],COARSER] := composite[inverse[IMAGE[inverse[S]]],COARSER] (* added 2000 September 12 based on DOUBLINV.NB *) composite[inverse[IMAGE[inverse[S]]],inverse[BIGCUP]] := inverse[BIGCUP] (* added 2000 September 12 based on DOUBLINV.NB *) composite[inverse[IMAGE[inverse[S]]],inverse[IMAGE[inverse[SINGLETON]]]] := inverse[BIGCUP] (* added 2003 March 9 based on CORE-HER.NB *) composite[inverse[IMAGE[inverse[S]]],inverse[S],IMAGE[inverse[S]]] := composite[inverse[S],IMAGE[inverse[S]]] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[IMAGE[inverse[S]]],S,IMAGE[inverse[S]]] := composite[inverse[IMAGE[inverse[S]]],S] (* derived 2006 April 27 in FU-IM.NB *) composite[inverse[IMAGE[inverse[SINGLETON]]],S] := composite[S,IMAGE[SINGLETON]] (* added 2000 September 28 based on SUCC.NB *) composite[inverse[IMAGE[inverse[SUCC]]],S] := composite[S,IMAGE[SUCC]] (* added 2001 August 25 based on TC.NB *) composite[inverse[IMAGE[inverse[TC]]],S] := composite[S,IMAGE[TC]] (* derived 2006 April 27 in FU-IM.NB *) composite[inverse[IMAGE[inverse[UCLOSURE]]],S] := composite[S,IMAGE[UCLOSURE]] (* derived 2004 August 11 in X2911.NB *) composite[inverse[IMAGE[LEFT[x_]]],IMAGE[LEFT[x_]]] := union[Id,cart[V,complement[image[V,set[x]]]]] (* derived 2006 May 9 *) composite[inverse[IMAGE[oopart[x_]]],S,IMAGE[oopart[x_]]] := composite[S,IMAGE[id[domain[oopart[x]]]]] (* added 2000 September 12 based on DOUBLINV.NB *) composite[inverse[IMAGE[POWER]],inverse[BIGCUP]] := inverse[IMAGE[inverse[S]]] (* derived 2006 May 9 *) composite[inverse[IMAGE[POWER]],S,IMAGE[POWER]] := S (* derived 2007 June 12 in IMPOW-SG.NB *) composite[inverse[IMAGE[POWER]],SINGLETON,POWER] := SINGLETON (* derived 2006 May 9 *) composite[inverse[IMAGE[RCF]],S,IMAGE[RCF]] := S (* derived 2004 August 11 in X2911.NB *) composite[inverse[IMAGE[RIGHT[x_]]],IMAGE[RIGHT[x_]]] := union[Id,cart[V,complement[image[V,set[x]]]]] (* added 2003 April 19 based on XSQ-RELN.NB *) composite[inverse[IMAGE[ROT]],IMAGE[ROT]] := composite[inverse[IMAGE[id[cart[cart[V,V],V]]]],IMAGE[id[cart[cart[V,V],V]]]] (* derived 2006 November 1 in LTRT-IMV.NB *) composite[inverse[image[x_,set[y_]]],id[image[V,set[y_]]]] := inverse[image[x,set[y]]] (* added 1999 December 26 based on ROT-E.NB *) composite[inverse[IMAGE[SINGLETON]],inverse[BIGCUP]] := Id (* derived 2006 May 9 *) composite[inverse[IMAGE[SINGLETON]],S,IMAGE[SINGLETON]] := S (* added 2000 September 22 based on EXPT *) composite[inverse[IMAGE[SINGLETON]],SINGLETON] := id[range[SINGLETON]] (* added 2001 March 4 based on INVERSE2.NB *) composite[INVERSE,IMAGE[SWAP]] := IMAGE[id[cart[V,V]]] (* added 2001 May 18 based on COMMUTE5.NB *) composite[inverse[IMAGE[SWAP]],COMMUTE] := composite[COMMUTE,IMAGE[SWAP]] (* added 2002 January 3 based on COMPRULE.NB *) composite[inverse[IMAGE[SWAP]],E,cross[x_,y_],inverse[E]] := composite[E,cross[y,x],inverse[E],IMAGE[SWAP]] (* added 2001 March 4 based on INVERSE2.NB *) composite[inverse[IMAGE[SWAP]],IMAGE[SWAP]] := composite[inverse[IMAGE[id[cart[V,V]]]],IMAGE[id[cart[V,V]]]] (* derived 2004 June 17 in X1366.NB *) composite[inverse[IMAGE[SWAP]],INVAR,CROSS] := composite[INVAR,CROSS,SWAP] (* added 2001 March 4 based on INVERSE2.NB *) composite[inverse[IMAGE[SWAP]],INVERSE] := inverse[IMAGE[id[cart[V,V]]]] (* added 2002 January 3 based on COMPOSE.NB *) composite[inverse[IMAGE[SWAP]],inverse[IMAGE[FIRST]]] := inverse[IMAGE[SECOND]] (* added 2002 January 3 based on COMPOSE.NB *) composite[inverse[IMAGE[SWAP]],inverse[IMAGE[id[x_]]]] := composite[inverse[IMAGE[id[inverse[x]]]],inverse[IMAGE[SWAP]]] (* added 2002 January 3 based on COMPRULE.NB *) composite[inverse[IMAGE[SWAP]],inverse[IMAGE[SECOND]]] := inverse[IMAGE[FIRST]] (* added 1999 November 30 based on IMG-SWAP.2 *) composite[inverse[IMAGE[SWAP]],inverse[IMAGE[SWAP]]] := inverse[IMAGE[id[cart[V,V]]]] (* added 2001 March 4 based on INVERSE2.NB *) composite[inverse[IMAGE[SWAP]],inverse[S],INVERSE] := composite[inverse[IMAGE[id[cart[V,V]]]],inverse[S],id[P[cart[V,V]]]] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[inverse[IMAGE[SWAP]],inverse[SUBCOMMUTE]] := composite[SUBCOMMUTE,IMAGE[SWAP]] (* added 2002 January 3 based on REPLACE.NB *) composite[inverse[IMAGE[SWAP]],LB[LB[complement[cross[x_,y_]]]]] := composite[LB[LB[complement[cross[y,x]]]],IMAGE[SWAP]] (* added 2002 January 3 based on COMPRULE.NB *) composite[inverse[IMAGE[SWAP]],LB[UB[complement[cross[x_,y_]]]]] := composite[LB[UB[complement[cross[y,x]]]],IMAGE[SWAP]] (* added 2003 April 30 based on SCARTDUP.NB *) composite[inverse[IMAGE[SWAP]],S,CART,DUP] := composite[S,CART,DUP] (* added 2002 December 27 based on SBCOMMUT.NB *) composite[inverse[IMAGE[SWAP]],SUBCOMMUTE,IMAGE[SWAP]] := inverse[SUBCOMMUTE] (* added 2001 August 25 based on TC.NB *) composite[inverse[IMAGE[TC]],DISJOINT] := composite[DISJOINT,IMAGE[inverse[TC]]] (* added 2001 March 15 based on H-2.NB *) composite[inverse[IMAGE[TC]],inverse[S]] := composite[inverse[S],IMAGE[inverse[TC]]] (* added 2003 April 19 based on XSQ-RELN.NB *) composite[inverse[IMAGE[TWIST]],IMAGE[TWIST]] := composite[inverse[IMAGE[id[cart[cart[V,V],cart[V,V]]]]], IMAGE[id[cart[cart[V,V],cart[V,V]]]]] (* added 2003 August 10 based on ZADD-INV.NB *) composite[INVERSE,INTADD] := composite[INTADD,cross[INVERSE,INVERSE]] (* derived 2007 January 23 in IMINZADD.NB *) image[inverse[INTADD],intersection[x_,P[cart[V,V]]]] := image[inverse[INTADD],x] (* derived 2006 October 21 in INTDIV.NB *) composite[INVERSE,INTDIV] := INTDIV (* derived 2006 December 21 in ZTIMES-2.NB *) composite[inverse[INTTIMES],id[FUNS]] := inverse[INTTIMES] (* added 1999 October 12 based on INVERSE.4 *) composite[INVERSE,INVERSE] := id[P[cart[V,V]]] (* derived 2008 September 29 in MAP.NB *) composite[INVERSE,inverse[DORA]] := composite[id[P[cart[V,V]]],inverse[DORA],SWAP] (* added 2002 October 22 based on CO-ID.NB *) composite[inverse[y_],inverse[x_],id[image[x_,range[y_]]]] := composite[inverse[y],inverse[x]] (* added 1999 October 12 based on INVERSE.4 *) composite[INVERSE,inverse[IMAGE[id[cart[V,V]]]]] := INVERSE (* added 2001 March 4 based on INVERSE2.NB *) composite[INVERSE,inverse[IMAGE[SWAP]]] := id[P[cart[V,V]]] (* derived 2006 December 18 in INTDIV-0.NB *) composite[INVERSE,inverse[INTDIV]] := inverse[INTDIV] (* added 2001 March 4 based on INVERSE2.NB *) composite[INVERSE,inverse[S]] := composite[inverse[S],IMAGE[SWAP]] (* added 2003 July 5 based on PLUS-ISO.NB *) composite[INVERSE,inverse[UB[rotate[NATADD]]],id[omega]] := composite[inverse[S],PLUS] (* added 2000 May 24 based on K.NB *) composite[inverse[K],Di] := cart[V,V] (* Theorem K-IN-E in K proved 2000 May 25 *) composite[inverse[K],E] := cart[V,V] (* derived 2007 August 21 in CO-K-PS.NB *) composite[inverse[K],inverse[PS]] := composite[inverse[PS],inverse[PS]] (* added 2000 May 16 based on K-SR.NB *) composite[inverse[K],inverse[S]] := inverse[PS] (* Theorem K-K-EQ proved 2000 May 27 *) composite[inverse[K],K] := union[Id,composite[K,inverse[K]]] (* added 2003 June 6 based on K-PS.NB *) composite[inverse[K],Q] := composite[Q,inverse[K]] (* added 2000 May 16 based on K-SR.NB *) composite[inverse[K],SINGLETON] := cart[V,set[0]] (* derived 2004 May 14 in REPLACE.NB *) composite[inverse[LB[x_]],id[domain[VERTSECT[x_]]]] := composite[inverse[S],VERTSECT[x]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[inverse[LEFT[0]],EQUIDIFF] := composite[rotate[NATADD],SWAP] (* added 1999 December 6 based on CURRY.NB *) composite[inverse[LEFT[x_]],id[y_]] := composite[id[image[y,set[x]]],inverse[LEFT[x]]] (* derived 2006 November 1 in LTRT-IMV.NB *) composite[inverse[LEFT[x_]],y_,id[image[V,set[x_]]]] := composite[inverse[LEFT[x]],y] (* added 2003 August 12 based on RO-ZADD.NB *) composite[inverse[LEFT[x_]],inverse[INTADD]] := composite[INVERSE,image[inverse[INTADD],set[x]]] (* added 2003 August 7 based on PLUS.NB *) composite[inverse[LEFT[x_]],inverse[NATADD]] := inverse[plus[x]] (* derived 2005 July 17 in TIMES.NB *) composite[inverse[LEFT[x_]],inverse[NATMUL]] := inverse[times[x]] (* derived 2008 November 30 in QUGP-R-L.NB *) composite[inverse[LEFT[y_]],inverse[quasigp[x_]],quasigp[x_],LEFT[y_]] := id[intersection[image[V,intersection[range[quasigp[x]],set[y]]],range[quasigp[x]]]] (* added 1999 November 20 based on CURRY.NB *) composite[inverse[LEFT[x_]],inverse[rotate[y_]]] := inverse[image[inverse[y],set[x]]] (* added 1999 December 23 based on IMINRULE.NB *) composite[inverse[LEFT[x_]],inverse[SECOND]] := id[image[V,set[x]]] (* derived 2008 November 30 in SYMDF-RL.NB *) composite[inverse[LEFT[x_]],inverse[SYMDIF]] := image[inverse[SYMDIF],set[x]] (* added 2002 May 24 based on LEFT.NB *) composite[inverse[LEFT[y_]],power[x_]] := iterate[x,set[y]] (* added 2003 January 25 based on LT-RT.NB *) composite[inverse[LEFT[x_]],RIGHT[y_]] := cart[set[x],set[y]] (* added 1999 December 6 based on CURRY.NB *) composite[inverse[LEFT[x_]],SWAP] := inverse[RIGHT[x]] (* added 2002 November 2 based on PAIR-V.NB *) composite[inverse[LeftPairV],id[cart[x_,y_]]] := 0 (* derived 2004 November 25 in MAP-SU.NB *) composite[inverse[MAP],MAP] := union[cart[cart[complement[set[0]],set[0]], cart[complement[set[0]],set[0]]],cart[cart[set[0],V],cart[set[0],V]], id[cart[complement[set[0]],complement[set[0]]]]] (* derived 2004 November 25 in MAP-SU.NB *) composite[inverse[MAP],inverse[S],MAP] := union[cart[cart[V,V],cart[complement[set[0]],set[0]]], cart[cart[set[0],V],cart[set[0],V]],cross[Id,inverse[S]]] (* derived 2004 November 25 in MAP-SU.NB *) composite[inverse[MAP],S,MAP] := union[cart[cart[complement[set[0]],set[0]],cart[V,V]], cart[cart[set[0],V],cart[set[0],V]],cross[Id,S]] (* derived 2006 December 13 in INV-MXML.NB *) composite[INVERSE,MIXDIV] := MIXDIV (* derived 2006 December 3 in MIXDIV.NB *) composite[inverse[MIXDIV],MIXDIV] := cart[omega,omega] (* derived 2006 November 1 in LTRT-IMV.NB *) composite[inverse[modulo[x_]],id[image[V,set[x_]]]] := inverse[modulo[x]] (* added 2002 September 15 based on NATADDEZ.NB *) composite[inverse[NATADD],id[intersection[omega,x_]]] := composite[inverse[NATADD],id[x]] (* added 2002 December 3 based on IMG-EQDF.NB *) composite[inverse[NATADD],rotate[inverse[power[SUCC]]]] := composite[inverse[NATADD],NATADD] (* derived 2006 November 28 in FUNPOOPT.NB *) composite[inverse[oopart[x_]],id[image[oopart[x_],y_]]] := composite[id[y],inverse[oopart[x]]] (* derived 2006 November 28 in FUNPOOPT.NB *) composite[inverse[oopart[x_]],SECOND,id[oopart[x_]]] := composite[FIRST,id[oopart[x]]] (* derived 2004 June 14 in TP-SYM.NB *) composite[INVERSE,PAIRSET] := composite[PAIRSET,cross[SWAP,SWAP]] (* added 2000 December 14 based on CHECK-H8.NB *) composite[inverse[PAIRSET],complement[E]] := composite[inverse[E],CART,DUP,complement[E]] (* added 2000 December 14 based on CHECK-H8.NB *) composite[inverse[PAIRSET],complement[S]] := composite[inverse[E],CART,DUP,complement[S]] (* added 2000 December 14 based on MORE-PRS.NB *) composite[inverse[PAIRSET],DISJOINT] := composite[inverse[E],CART,DUP,DISJOINT] (* added 2000 December 14 based on CHECK-H8.NB *) composite[inverse[PAIRSET],inverse[PS]] := composite[inverse[E],CART,DUP,inverse[PS]] (* added 1999 October 17 based on STRANGE.7 *) composite[inverse[PAIRSET],inverse[S]] := composite[inverse[E],CART,DUP] (* added 2002 January 10 based on PAIRSET.NB *) composite[inverse[PAIRSET],PAIRSET] := union[SWAP,id[cart[V,V]]] (* added 1999 October 18 based on PAIRSET.3 *) composite[inverse[PAIRSET],SINGLETON] := DUP (* derived 2006 September 4 in PLUS-CO.NB *) composite[inverse[PLUS],COMMUTE,PLUS] := cart[omega,omega] (* added 2003 August 8 based on REPLACE.NB *) composite[inverse[plus[x_]],id[image[S,set[x_]]]] := inverse[plus[x]] (* added 2003 August 8 based on REPLACE.NB *) composite[inverse[plus[x_]],y___,id[image[V,intersection[omega,set[x_]]]]] := composite[inverse[plus[x]],y] (* added 2003 August 8 based on REPLACE.NB *) composite[inverse[plus[x_]],y___,id[image[V,set[x_]]]] := composite[inverse[plus[x]],y] (* added 2003 August 8 based on REPLACE.NB *) composite[inverse[plus[x_]],id[omega]] := inverse[plus[x]] (* derived 2007 May 9 in INTLEQ.NB *) composite[inverse[PLUS],id[P[cart[V,V]]]] := inverse[PLUS] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[inverse[PLUS],id[Z]] := inverse[PLUS] (* derived 2006 September 4 in PLUS-CO.NB *) composite[inverse[PLUS],image[inverse[COMPOSE],Z],INVERSE,PLUS] := cart[omega,omega] (* derived 2006 September 4 in PLUS-CO.NB *) composite[inverse[PLUS],image[inverse[COMPOSE],Z],PLUS] := cart[omega,omega] (* added 2003 August 8 based on REPLACE.NB *) composite[inverse[plus[x_]],image[inverse[NATADD],set[y_]]] := image[inverse[NATADD],set[natsub[y,x]]] (* derived 2006 September 4 in PLUS-CO.NB *) composite[inverse[PLUS],INVERSE,COMMUTE,PLUS] := union[cart[omega,set[0]],cart[set[0],omega]] (* derived 2006 September 4 in PLUS-CO.NB *) composite[inverse[PLUS],INVERSE,image[inverse[COMPOSE],Z],INVERSE,PLUS] := cart[omega,omega] (* derived 2006 September 4 in PLUS-CO.NB *) composite[inverse[PLUS],INVERSE,image[inverse[COMPOSE],Z],PLUS] := union[cart[omega,set[0]],cart[set[0],omega]] (* derived 2007 May 9 in INTLEQ.NB *) composite[inverse[PLUS],INVERSE,INTLEQ] := composite[id[omega],inverse[S],inverse[PLUS],INVERSE] (* derived 2006 December 15 in MIXDIV.NB *) composite[inverse[PLUS],INVERSE,PLUS] := cart[set[0],set[0]] (* added 2003 August 8 based on REPLACE.NB *) composite[inverse[plus[x_]],inverse[plus[y_]]] := inverse[plus[natadd[x,y]]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[inverse[PLUS],INVERSE,VERTSECT[EQUIDIFF]] := rotate[NATADD] (* derived 2006 December 15 in MIXDIV.NB *) composite[inverse[PLUS],MIXDIV] := DIV (* derived 2006 December 16 in ZEROPROD.NB *) composite[inverse[PLUS],MIXMUL,cross[PLUS,Id]] := NATMUL (* definition of int[x] introduced 2008 November 29 in INT-WRAP.NB *) composite[inverse[plus[nat[APPLY[inverse[x_],0]]]],plus[nat[APPLY[x_,0]]]] := int[x] (* added 2002 November 29 based on PLUS.NB *) composite[inverse[PLUS],PLUS] := id[omega] (* added 2003 October 21 based on MONOPLUS.NB *) composite[inverse[plus[x_]],S,plus[x_]] := composite[id[intersection[omega,image[V,intersection[omega,set[x]]]]],S,id[omega]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[inverse[PLUS],VERTSECT[EQUIDIFF]] := composite[rotate[NATADD],SWAP] (* derived 2005 October 1 in PO-WRAP.NB *) composite[inverse[po[x_]],complement[po[x_]]] := composite[id[fix[po[x]]],complement[po[x]]] (* derived 2003 December 31 in COARSER.NB *) composite[inverse[POWER],COARSER] := BIGCUP (* added 1998 August 9 *) composite[inverse[POWER],complement[E]] := composite[Id,complement[S]] (* derived 2006 October 16 in PAIRSET.NB *) composite[inverse[POWER],DISJOINT,IMAGE[id[x_]],POWER] := composite[Id,complement[composite[S,id[x],inverse[S]]]] (* derived 2007 October 21 in SYM-RSX.NB *) composite[inverse[POWER],DISJOINT,IMAGE[PAIRSET]] := composite[inverse[E],CLIQUES,DISJOINT] (* added 2002 November 21 based on DJ-POW.NB *) composite[inverse[POWER],DISJOINT,POWER] := 0 (* Theorem POW-CO2 in POW3 *) composite[inverse[POWER],E] := S (* derived 2006 February 15 in ACYFUPOW.NB *) composite[inverse[power[x_]],id[cart[V,V]]] := inverse[power[x]] (* added 2002 January 22 based on EQ-PC.NB *) composite[inverse[POWER],id[range[SINGLETON]]] := cart[set[set[0]],set[0]] (* added 1998 August 9 *) composite[inverse[POWER],inverse[BIGCAP]] := cart[set[0],V] (* added 1998 August 9 *) composite[inverse[POWER],inverse[BIGCUP]] := Id (* derived 2007 September 3 in CLQ-PC.NB *) composite[inverse[POWER],inverse[S],CLIQUES] := composite[inverse[E],CLIQUES] (* added 2000 January 10 based on POWER-2.NB *) composite[inverse[POWER],inverse[S],POWER] := inverse[S] (* derived 2007 September 4 in SBV-PC.NB *) composite[inverse[POWER],inverse[S],SUBVAR] := composite[inverse[S],IMAGE[inverse[DUP]]] (* added 2002 September 24 based on MONOTONE.NB *) composite[inverse[POWER],inverse[UCLOSURE]] := inverse[POWER] (* added 2003 January 12 based on ITERATE.NB *) composite[inverse[power[x_]],LEFT[y_]] := inverse[iterate[x,set[y]]] (* added 2003 January 12 based on ITERATE.NB *) composite[inverse[power[x_]],RIGHT[y_]] := inverse[iterate[inverse[x],set[y]]] (* derived 2007 September 3 in CLQ-PC.NB *) composite[inverse[POWER],S,CLIQUES] := composite[S,IMAGE[inverse[DUP]]] (* derived 2008 November 2 in INS-CLIQ.NB *) composite[inverse[POWER],S,IMAGE[CART],IMAGE[DUP]] := composite[inverse[CLIQUES],S] (* added 2001 April 27 based on MAP2.NB *) composite[inverse[POWER],S,IMAGE[IMAGE[x_]]] := composite[S,IMAGE[x],BIGCUP] /; cond && thin[x] (* added 1999 December 25 based on HERED.NB *) composite[inverse[POWER],S,IMAGE[POWER]] := composite[S,IMAGE[inverse[S]]] (* derived 2004 August 23 in POW-S.NB *) composite[inverse[POWER],S,IMAGE[SINGLETON]] := S (* added 2001 March 15 based on H-1.NB *) composite[inverse[POWER],S,IMAGE[TC]] := composite[inverse[POWER],S,TC] (* derived 2008 July 9 in C-CO-C-E.NB *) composite[inverse[POWER],S,IMAGE[VERTSECT[x_]]] := composite[S,IMAGE[thinpart[x]]] (* added 2000 January 10 based on POWER-2.NB *) composite[inverse[POWER],S,POWER] := S (* added 1999 September 26 based on TEST-LOG.1 *) composite[inverse[POWER],SINGLETON] := cart[set[0],set[0]] (* added 2002 June 24 based on NATADD.NB *) composite[inverse[power[SUCC]],id[cart[omega,V]]] := composite[rotate[NATADD],SWAP] (* added 2002 November 30 based on NATSUB.NB *) composite[inverse[power[SUCC]],id[cart[V,omega]]] := composite[rotate[NATADD],SWAP] (* added 2002 November 13 based on NORM-ADD.NB *) composite[inverse[power[SUCC]],id[cart[V,V]]] := inverse[power[SUCC]] (* added 2002 September 5 based on NORMAL.NB *) composite[inverse[power[SUCC]],SWAP,id[cart[omega,V]]] := rotate[NATADD] (* added 2002 June 24 based on NATADD.NB *) composite[inverse[power[SUCC]],SWAP,id[cart[V,omega]]] := rotate[NATADD] (* derived 2008 August 13 in ALL-UB.NB *) composite[inverse[POWER],UB[union[E,complement[S]]],POWER] := UB[union[E,complement[S]]] (* added 2001 July 15 based on ZN-AGAIN.NB *) composite[inverse[POWER],VERTSECT[ZN]] := IMAGE[ZN] (* derived 2007 August 21 in CO-K-PS.NB *) composite[inverse[PS],Di] := cart[V,V] (* added 1999 September 26 based on TEST-LOG.1 *) composite[inverse[PS],E] := cart[V,V] (* derived 2007 August 21 in CO-K-PS.NB *) composite[inverse[PS],inverse[K]] := composite[inverse[PS],inverse[PS]] (* derived 2007 August 21 in CO-K-PS.NB *) composite[inverse[PS],inverse[S]] := inverse[PS] (* derived 2007 August 21 in CO-K-PS.NB *) composite[inverse[PS],PS] := cart[V,V] (* derived 2007 August 21 in CO-K-PS.NB *) composite[inverse[PS],S] := cart[V,V] (* added 1999 September 26 based on TEST-LOG.1 *) composite[inverse[PS],SINGLETON] := cart[V,set[0]] (* derived 2004 December 31 in IN-RK.NB *) composite[inverse[RANK],complement[inverse[E]]] := composite[id[REGULAR],complement[inverse[E]],IMAGE[inverse[RANK]]] (* derived 2005 January 5 in REPLACE.NB *) composite[inverse[RANK],id[P[OMEGA]]] := inverse[RANK] (* derived 2006 April 11 in IMINRANK.NB *) composite[inverse[RANK],inverse[RANK]] := inverse[RANK] (* derived 2008 August 15 in SU-H.NB *) composite[inverse[RANK],inverse[S],HC] := composite[inverse[RANK],inverse[S]] (* derived 2005 January 5 in REPLACE.NB *) composite[inverse[RANK],inverse[TC]] := inverse[RANK] (* added 2003 May 5 based on IN-E-RCF.NB *) composite[INVERSE,RCF] := RCF (* derived 2005 January 6 in RCF.NB *) composite[inverse[RCF],E] := composite[CUP,id[DISJOINT]] (* added 2003 October 20 based on MONOPLUS.NB *) composite[inverse[RCF],S,RCF] := Id (* added 2003 May 31 based on RS-CO.NB *) composite[inverse[RESTRICT],complement[inverse[S]]] := composite[inverse[IMAGE[id[cart[V,V]]]],complement[inverse[S]]] (* added 2003 May 31 based on RS-CO.NB *) composite[inverse[RESTRICT],complement[S]] := cart[complement[set[0]],V] (* added 2003 May 31 based on RS-CO.NB *) composite[inverse[RESTRICT],inverse[S]] := cart[V,V] (* derived 2004 November 17 in RS-IN-CO.NB *) composite[inverse[RESTRICT],RESTRICT] := cart[V,V] (* added 2003 May 31 based on RS-CO.NB *) composite[inverse[RESTRICT],S] := composite[inverse[IMAGE[id[cart[V,V]]]],S] (* derived 2004 December 17 in RFXTRV-C.NB *) composite[inverse[rfx[trv[x_]]],complement[rfx[trv[x_]]]] := composite[id[fix[trv[x]]],complement[rfx[trv[x]]]] (* added 2007 based on RIF-IN.NB *) composite[inverse[RIF],cross[x_,y_]] := composite[cross[cross[Id,x],cross[y,Id]],inverse[RIF]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[inverse[RIGHT[0]],EQUIDIFF] := rotate[NATADD] (* added 1999 December 6 based on CURRY.NB *) composite[inverse[RIGHT[x_]],id[y_]] := composite[id[image[inverse[y],set[x]]],inverse[RIGHT[x]]] (* derived 2006 November 1 in LTRT-IMV.NB *) composite[inverse[RIGHT[x_]],y_,id[image[V,set[x_]]]] := composite[inverse[RIGHT[x]],y] (* derived 2004 March 23 in ADJECT.NB *) composite[inverse[RIGHT[x_]],inverse[FIRST]] := id[image[V,set[x]]] (* derived 2006 December 9 in MISC.NB *) composite[inverse[RIGHT[x_]],inverse[IMG]] := composite[id[image[V,set[x]]],inverse[IMAGE[id[cart[x,V]]]],inverse[IMAGE[SECOND]]] (* added 2003 August 12 based on RO-ZADD.NB *) composite[inverse[RIGHT[x_]],inverse[INTADD]] := composite[INVERSE,image[inverse[INTADD],set[x]]] (* added 2003 August 7 based on PLUS.NB *) composite[inverse[RIGHT[x_]],inverse[NATADD]] := inverse[plus[x]] (* derived 2005 July 18 in MODULO.NB *) composite[inverse[RIGHT[x_]],inverse[NATMOD]] := inverse[modulo[x]] (* derived 2005 July 18 in REPLACE.NB *) composite[inverse[RIGHT[x_]],inverse[NATMUL]] := inverse[times[x]] (* derived 2008 November 30 in QUGP-R-L.NB *) composite[inverse[RIGHT[y_]],inverse[quasigp[x_]],quasigp[x_],RIGHT[y_]] := id[intersection[image[V,intersection[range[quasigp[x]],set[y]]],range[quasigp[x]]]] (* added 1999 November 20 based on CURRY.NB *) composite[inverse[RIGHT[x_]],inverse[rotate[y_]]] := composite[y,LEFT[x]] (* derived 2008 November 30 in SYMDF-RL.NB *) composite[inverse[RIGHT[x_]],inverse[SYMDIF]] := image[inverse[SYMDIF],set[x]] (* added 2003 January 25 based on LT-RT.NB *) composite[inverse[RIGHT[x_]],LEFT[y_]] := cart[set[x],set[y]] (* added 2002 June 13 based on NATIMIN0.NB *) composite[inverse[RIGHT[y_]],power[x_]] := iterate[inverse[x],set[y]] (* added 1999 December 6 based on CURRY.NB *) composite[inverse[RIGHT[x_]],SWAP] := inverse[LEFT[x]] (* added 2002 November 2 based on PAIR-V.NB *) composite[inverse[RightPairV],id[cart[x_,y_]]] := 0 (* derived 2004 July 27 in ROTASSOC.NB *) composite[inverse[ROT],cross[cross[x_,y_],z_],ROT] := cross[cross[y,z],x] (* derived 2008 October 9 in X-DUP-ID.NB *) composite[inverse[ROT],cross[DUP,Id]] := composite[id[FIRST],inverse[FIRST]] (* added 2002 December 27 based on TWIST.NB *) composite[inverse[ROT],cross[inverse[ROT],Id],inverse[ASSOC],cross[Id,SWAP]] := TWIST (* added 2002 June 16 based on LEFT-ROT.NB *) composite[inverse[ROT],cross[RIGHT[x_],Id]] := composite[SWAP,cross[Id,LEFT[x]]] (* modified 1999 December 15 based on PERMUTE.NB *) composite[inverse[ROT],inverse[ASSOC]] := composite[SWAP,id[cart[V,cart[V,V]]]] (* added 1999 October 12 based on ROT.5 *) composite[inverse[ROT],id[cart[V,V]]] := inverse[ROT] (* added 1999 October 12 based on ROT.2 *) composite[inverse[ROT],inverse[FIRST]] := composite[cross[inverse[FIRST],Id],SWAP] (* added 1999 October 12 based on ROT.1 *) composite[inverse[ROT],inverse[ROT]] := ROT (* added 1999 October 12 based on ROT.2 *) composite[inverse[ROT],inverse[SECOND]] := composite[inverse[FIRST],inverse[SECOND]] (* added 2002 June 16 based on LEFT-ROT.NB *) composite[inverse[ROT],LEFT[x_]] := composite[RIGHT[first[x]],LEFT[second[x]]] (* added 2002 June 16 based on LEFT-ROT.NB *) composite[inverse[ROT],RIGHT[x_]] := composite[SWAP,cross[Id,RIGHT[x]]] (* added 2002 June 13 based on NATIMIN0.NB *) composite[inverse[rotate[inverse[power[SUCC]]]],id[omega]] := inverse[NATADD] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[inverse[rotate[NATADD]],rotate[NATADD]] := composite[EQUIDIFF,id[inverse[S]]] (* added 2003 August 27 based on NATDIV.NB *) composite[inverse[rotate[NATMUL]],SUCC] := composite[intersection[composite[inverse[FIRST],NATADD], composite[inverse[SECOND],SECOND]],inverse[rotate[NATMUL]]] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[S],ACLOSURE,inverse[S],ACLOSURE] := composite[inverse[S],ACLOSURE] (* revised 1999 December 19 based on REVISED.NB *) composite[inverse[S],ADJOIN[x_]] := composite[inverse[IMAGE[id[complement[x]]]], inverse[S],id[image[V,set[x]]]] (* derived 2008 October 27 in MAP-X.NB *) composite[inverse[S],CART,cross[inverse[S],x_]] := composite[inverse[S],CART,cross[Id,x]] (* derived 2008 October 27 in MAP-X.NB *) composite[inverse[S],CART,cross[x_,inverse[S]]] := composite[inverse[S],CART,cross[x,Id]] (* added 2003 July 4 based on COARSER.NB *) composite[inverse[S],COARSER] := composite[inverse[S],POWER,BIGCUP] (* added 1998 July 31 *) composite[inverse[S],complement[E]] := composite[Id,complement[E]] (* 1999 March 25 session CO-C-NEW.LOG *) composite[inverse[S],complement[inverse[E]]] := cart[V,V] composite[inverse[S],complement[inverse[S]]] := cart[V,V] (* added 2000 May 25 based on K.NB *) composite[inverse[S],complement[K]] := cart[V,V] (* Theorem SR-C-CO4 in SR/C added 1998 July 31 *) composite[inverse[S],complement[S]] := composite[Id,complement[S]] (* inverse of PS-DI-SR added 1998 August 25 *) composite[inverse[S],Di] := cart[V,V] (* added 1998 August 23 on basis of ASSOC-4.LOG *) composite[inverse[S],DISJOINT] := DISJOINT (* derived 2007 February 22 in COINSDIV.NB *) composite[inverse[S],DIV] := union[cart[intersection[omega,complement[set[0]]], image[inverse[S],omega]],cart[set[0],set[0]]] (* Theorem SR-CO9 in SR2 *) composite[inverse[S],E] := cart[V,V] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[S],HULL[x_],inverse[S],HULL[x_]] := composite[inverse[S],HULL[x]] (* derived 2005 January 5 in REPLACE.NB *) composite[inverse[S],id[x_],complement[E]] := composite[inverse[HULL[x]],complement[E]] (* added 2003 March 9 based on REFINE.NB *) composite[inverse[S],id[fix[IMAGE[inverse[S]]]],inverse[S],IMAGE[inverse[S]]] := composite[inverse[S],IMAGE[inverse[S]]] (* derived 2007 May 22 in SU-OM.NB *) composite[inverse[S],id[omega],E] := cart[omega,image[inverse[S],omega]] (* derived 2007 May 23 in SU-ON.NB *) composite[inverse[S],id[OMEGA],E] := cart[OMEGA,P[OMEGA]] (* derived 2007 May 22 in SU-OM.NB *) composite[inverse[S],id[omega],inverse[S],id[omega]] := composite[inverse[S],id[omega]] (* derived 2007 May 23 in SU-ON.NB *) composite[inverse[S],id[OMEGA],inverse[S],id[OMEGA]] := composite[inverse[S],id[OMEGA]] (* derived 2007 May 22 in SU-OM.NB *) composite[inverse[S],id[omega],S] := cart[image[inverse[S],omega],image[inverse[S],omega]] (* derived 2007 May 23 in SU-ON.NB *) composite[inverse[S],id[OMEGA],S] := cart[P[OMEGA],P[OMEGA]] (* added 2003 May 31 based on CUT-CO.NB *) composite[inverse[S],id[P[x_]],complement[S]] := composite[id[P[x]],complement[S]] (* added 1999 December 19 based on DISJOINT.NB *) composite[inverse[S],id[P[x_]],DISJOINT] := composite[id[P[x]],DISJOINT] (* added 1999 December 19 based on CUT-S.NB *) composite[inverse[S],id[P[x_]],S] := cart[P[x],P[x]] (* added 2002 March 12 based on TRV.NB *) composite[inverse[S],id[TRV],complement[inverse[S]]] := cart[V,P[cart[V,V]]] (* added 2003 October 15 based on ACYCLIC.NB *) composite[inverse[S],id[TRV],inverse[IMAGE[inverse[DUP]]],complement[E]] := composite[inverse[HULL[TRV]],inverse[IMAGE[inverse[DUP]]],complement[E]] (* added 2002 March 12 based on TRV.NB *) composite[inverse[S],id[TRV],S] := cart[P[cart[V,V]],P[cart[V,V]]] (* added 2003 May 31 based on CUT-CO.NB *) composite[inverse[S],IMAGE[id[x_]],complement[inverse[S]]] := cart[V,P[x]] (* added 1999 December 19 based on CUT-S.NB *) composite[inverse[S],IMAGE[id[x_]],S] := cart[V,P[x]] (* added 2001 March 4 based on INVERSE2.NB *) composite[INVERSE,S,IMAGE[SWAP]] := composite[id[P[cart[V,V]]],S,IMAGE[id[cart[V,V]]]] (* derived 2004 May 14 in REPLACE.NB *) composite[inverse[S],IMAGE[ZN]] := thinpart[ZN] (* derived 2008 May 15 in IMG-IDP.NB *) composite[inverse[S],IMG,inverse[FIRST]] := composite[IMG,inverse[FIRST],inverse[S]] (* added 2003 January 25 based on INVAR.NB *) composite[inverse[S],INVAR] := cart[V,V] (* inverse of Theorem ADJ-CO3 in ADJ proved 1999 November 23 *) composite[inverse[S],inverse[ADJOIN[x_]]] := composite[inverse[S],id[image[S,set[x]]]] (* added 1998 July 30 *) composite[inverse[S],inverse[BIGCAP]] := union[cart[V,set[0]],composite[inverse[BIGCAP],S]] composite[inverse[S],inverse[BIGCUP]] := composite[inverse[S],POWER] (* added 1999 January 1 based on IMAGEDUP.LOG removed 2001 March 30 due to conflict with special rule for case of h = DUP composite[inverse[S],inverse[IMAGE[h_]]] := composite[inverse[IMAGE[h]],inverse[S],id[P[range[h]]]] /; FUNCTION[h] && FUNCTION[inverse[h]] *) (* added 1999 December 19 based on CUT-S.NB *) composite[inverse[S],inverse[IMAGE[id[x_]]],S] := cart[P[x],V] (* derived 2007 August 21 in CO-K-PS.NB *) composite[inverse[S],inverse[K]] := inverse[PS] (* added 2002 November 22 based on CHAL.NB *) composite[inverse[S],inverse[LB[x_]]] := inverse[LB[x]] (* added 1998 August 7 *) composite[inverse[S],inverse[POWER]] := composite[inverse[E],id[range[POWER]]] (* derived 2007 August 21 in CO-K-PS.NB *) composite[inverse[S],inverse[PS]] := inverse[PS] (* derived 2005 January 5 in RANK-S.NB *) composite[inverse[S],inverse[RANK]] := composite[inverse[RANK],inverse[S],id[OMEGA]] composite[inverse[S],inverse[S]] := inverse[S] (* derived 2007 April 30 in SMALLER.NB *) composite[inverse[S],inverse[SMALLER]] := inverse[SMALLER] (* derived 2004 March 9 in CO-S.NB *) composite[inverse[S],LB[x_],BIGCUP] := composite[LB[x],BIGCUP] (* derived 2004 March 9 in CO-S.NB *) composite[inverse[S],LB[composite[x_,S]]] := LB[composite[x,S]] (* derived 2004 March 9 in CO-S.NB *) composite[inverse[S],LB[LB[x_]]] := LB[LB[x]] (* derived 2004 March 9 in CO-S.NB *) composite[inverse[S],LB[UB[x_]]] := LB[UB[x]] (* discovered 1999 December 20 in CANCEL.NB *) composite[inverse[S],POWER,E] := cart[V,V] (* added 2001 February 19 based on IMINS.NB *) composite[inverse[S],POWER,inverse[S]] := composite[inverse[S],POWER] (* added 1998 August 9 *) composite[inverse[S],PS] := cart[V,V] (* added 2000 October 1 based on CANTOR.NB *) composite[inverse[S],Q] := composite[Q,inverse[S]] (* added 1999 December 19 based on RC-5.NB *) composite[inverse[S],RC[x_]] := composite[id[P[x]],DISJOINT, id[intersection[image[V,set[x]],P[x]]]] (* added 2003 May 31 based on RS-CO.NB *) composite[inverse[S],RESTRICT] := composite[inverse[S],IMAGE[id[cart[V,V]]]] (* Theorem SR-CO9 in SR2 *) composite[inverse[S],S] := cart[V,V] (* rediscovered 1999 September 24 in SESSION1.LOG *) composite[inverse[S],SINGLETON] := union[SINGLETON,cart[V,set[0]]] (* derived 2007 April 30 in SMALLER.NB *) composite[inverse[S],SMALLER] := cart[V,V] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[S],TC,inverse[S],TC] := composite[inverse[S],TC] (* derived 2004 May 14 in REPLACE.NB *) composite[inverse[S],thinpart[ZN]] := thinpart[ZN] (* derived 2004 March 9 in CO-S.NB *) composite[inverse[S],UB[x_],BIGCUP] := composite[UB[x],BIGCUP] (* derived 2004 March 9 in CO-S.NB *) composite[inverse[S],UB[composite[x_,S]]] := UB[composite[x,S]] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[S],UCLOSURE,inverse[S],UCLOSURE] := composite[inverse[S],UCLOSURE] (* derived 2008 August 28 in FUNAP.NB *) composite[inverse[S],VERTSECT[complement[composite[complement[inverse[E]],x_]]]] := composite[complement[composite[complement[inverse[S]],x]],id[domain[x]]] (* added 2001 July 14 based on ZN-IMG.NB *) composite[inverse[S],ZN] := ZN composite[inverse[SECOND],id[x_]] := composite[id[cart[V,x]],inverse[SECOND]] (* added 1999 October 17 based on CROSS.2 *) composite[INVERSE,SINGLETON] := composite[SINGLETON,SWAP] (* added 2003 October 7 based on WF-IND.NB *) composite[inverse[SINGLETON],CART] := cross[inverse[SINGLETON],inverse[SINGLETON]] (* Theorem AP-SG-C4 in AP2 added 1998 July 2 *) composite[inverse[SINGLETON],complement[E]] := Di composite[inverse[SINGLETON],complement[inverse[S]]] := composite[Id,complement[inverse[E]]] (* Theorem AP-DI-3 proved 1998 November 28 *) composite[inverse[SINGLETON],Di,SINGLETON] := Di (* added 1998 August 23 on basis of ASSOC-4.LOG *) composite[inverse[SINGLETON],DISJOINT] := composite[Id,complement[inverse[E]]] (* Theorem SG-4E-IN in SG1 *) composite[inverse[SINGLETON],E] := Id (* added 2001 October 10 based on REPLACE.NB *) composite[inverse[SINGLETON],id[x_]] := composite[id[image[inverse[SINGLETON],x]],inverse[SINGLETON]] (* derived 2006 October 24 in EVAL.NB *) composite[inverse[SINGLETON],IMAGE[FIRST],IMAGE[id[cart[V,set[x_]]]]] := composite[eval[x],IMAGE[SWAP]] (* derived 2007 July 11 in CONSTHUL.NB *) composite[inverse[SINGLETON],image[inverse[CART],range[LAMBHULL]]] := union[cart[set[0],V],inverse[POWER]] (* added 2001 November 27 based on FUNPART1.NB *) composite[inverse[SINGLETON],image[inverse[IMG],range[SINGLETON]]] := composite[inverse[E],IMAGE[FIRST],FUNPART] (* added 2002 November 29 based on PLUS.NB *) composite[inverse[SINGLETON],IMAGE[rotate[NATADD]],INVERSE,PLUS] := id[omega] (* derived 2006 October 24 in EVAL.NB *) composite[inverse[SINGLETON],IMAGE[SECOND],IMAGE[id[cart[set[x_],V]]]] := eval[x] (* added 2000 September 22 based on EXPT *) composite[inverse[SINGLETON],IMAGE[SINGLETON]] := id[range[SINGLETON]] (* derived 2008 December 4 in UNCURRY.NB *) composite[inverse[SINGLETON],IMG,cross[APPLY[CURRY,binop[x_]],SINGLETON]] := binop[x] (* derived 2006 October 31 in PLUS-ADD.NB *) composite[inverse[SINGLETON],IMG,cross[composite[INVERSE,PLUS],SINGLETON]] := composite[rotate[NATADD],SWAP] (* derived 2006 October 24 in EVAL.NB *) composite[inverse[SINGLETON],IMG,cross[FUNPART,SINGLETON]] := composite[inverse[SINGLETON],IMG,cross[Id,SINGLETON]] (* derived 2006 December 21 in INTMUL-1.NB *) composite[inverse[SINGLETON],IMG,cross[INTTIMES,SINGLETON]] := INTMUL (* derived 2006 November 24 in ROT-E.NB *) composite[inverse[SINGLETON],IMG,cross[inverse[S],SINGLETON]] := rotate[E] (* derived 2006 December 6 in MIXMUL-1.NB *) composite[inverse[SINGLETON],IMG,cross[MIXTIMES,SINGLETON]] := MIXMUL (* derived 2006 October 31 in PLUS-ADD.NB *) composite[inverse[SINGLETON],IMG,cross[PLUS,SINGLETON]] := NATADD (* derived 2006 November 1 in REIF-TRI.NB *) composite[inverse[SINGLETON],IMG,cross[TIMES,SINGLETON]] := NATMUL (* inverse of Theorem VS-IMG-3 in VS2 proved 1999 July 14 *) composite[inverse[SINGLETON],inverse[IMAGE[x_]]] := inverse[VERTSECT[x]] (* added 1998 August 9 *) composite[inverse[SINGLETON],inverse[BIGCAP]] := Id composite[inverse[SINGLETON],inverse[BIGCUP]] := Id (* added 2002 November 22 based on LB-UB-VS.NB *) composite[inverse[SINGLETON],inverse[LB[x_]]] := composite[Id,x] composite[inverse[SINGLETON],inverse[S]] := inverse[E] (* added 2002 November 22 based on LB-UB-VS.NB *) composite[inverse[SINGLETON],inverse[UB[x_]]] := inverse[x] (* added 2000 May 16 based on K-SR.NB *) composite[inverse[SINGLETON],K] := cart[set[0],V] (* derived 2006 March 4 in KURA.NB *) composite[inverse[SINGLETON],KURA] := composite[SINGLETON,inverse[DUP]] (* derived 2006 April 22 in NESTCLOS.NB *) composite[inverse[SINGLETON],LB[LB[x_]]] := UB[x] (* derived 2006 April 22 in NESTCLOS.NB *) composite[inverse[SINGLETON],LB[UB[x_]]] := LB[x] (* added 1999 October 18 based on PAIRSET.3 *) composite[inverse[SINGLETON],PAIRSET] := inverse[DUP] (* added 2002 January 22 based on EQ-PC.NB *) composite[inverse[SINGLETON],POWER] := cart[set[0],set[0]] (* added 1999 September 26 based on TEST-LOG.1 *) composite[inverse[SINGLETON],PS] := cart[set[0],V] (* added 1999 September 26 based on TEST-LOG.1 *) composite[inverse[SINGLETON],S] := union[cart[set[0],V],inverse[SINGLETON]] (* added 2000 September 9 based on FNP-2.NB *) composite[inverse[SINGLETON],VERTSECT[x_]] := funpart[x] (* derived 2007 April 30 in SMALLER.NB *) composite[inverse[SMALLER],inverse[S]] := inverse[SMALLER] (* derived 2007 April 30 in SMALLER.NB *) composite[inverse[SMALLER],Q] := inverse[SMALLER] (* derived 2007 April 30 in SMALLER.NB *) composite[inverse[SMALLER],S] := cart[V,V] (* derived 2007 April 30 in SMALLER.NB *) composite[inverse[SMALLER],SMALLER] := cart[V,V] (* added 2003 January 30 *) composite[inverse[SUBCOMMUTE],IMAGE[DUP]] := inverse[INVAR] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[inverse[SUBCOMMUTE],IMAGE[SWAP]] := composite[inverse[IMAGE[SWAP]],SUBCOMMUTE] (* added 2002 June 3 based on REPLACE.NB *) composite[inverse[SUCC],id[omega],E] := composite[id[omega],S,id[omega]] (* added 2002 June 3 based on REPLACE.NB *) composite[inverse[SUCC],id[OMEGA],E] := composite[id[OMEGA],S,id[OMEGA]] (* added 2002 May 26 based on ON-SUC-1.NB *) composite[inverse[SUCC],id[OMEGA],inverse[IMAGE[inverse[SUCC]]]] := id[OMEGA] (* added 2002 June 3 based on REPLACE.NB *) composite[inverse[SUCC],id[omega],inverse[S],id[omega]] := composite[inverse[E],id[omega]] (* added 2002 April 15 based on OM-SUCC.NB *) composite[inverse[SUCC],id[omega],SUCC] := id[omega] (* added 2002 May 26 based on SUCC-ID.NB *) composite[inverse[SUCC],id[OMEGA],SUCC] := id[OMEGA] (* added 2002 April 18 based on SUCC.NB *) composite[inverse[SUCC],id[REGULAR],SUCC] := id[REGULAR] (* derived 2006 April 13 in DBL-IND2.NB *) composite[inverse[SUCC],inverse[iterate[x_,y_]]] := composite[inverse[iterate[x,y]],inverse[x]] (* added 2002 September 16 based on SUB-SUCC.NB *) composite[inverse[SUCC],SUCC,NATADD] := NATADD (* added 2001 March 31 based on HF-AGAIN.NB *) composite[inverse[TC],inverse[S]] := composite[inverse[S],HC] (* derived 2007 December 23 in CO-IN-TC.NB *) composite[inverse[TC],inverse[TC]] := inverse[TC] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[TC],S,TC] := composite[inverse[TC],S] (* derived 2006 September 23 in CMTV-CMT.NB *) composite[inverse[TIMES],COMMUTE,TIMES] := cart[omega,omega] (* derived 2006 November 1 in LTRT-IMV.NB *) composite[inverse[times[x_]],id[image[V,set[x_]]]] := inverse[times[x]] (* derived 2005 July 17 in TIMES.NB *) composite[inverse[times[x_]],id[omega]] := inverse[times[x]] (* derived 2006 December 26 in ISOTIMES.NB *) composite[inverse[TIMES],IMAGE[cross[inverse[DUP],NATADD]],CROSS, id[cart[binhom[NATADD,NATADD],binhom[NATADD,NATADD]]]] := composite[NATADD,cross[inverse[TIMES],inverse[TIMES]]] (* derived 2006 November 23 in EVAL-TIM.NB *) composite[inverse[TIMES],inverse[eval[x_]]] := inverse[times[x]] (* derived 2006 November 23 in EVAL-TIM.NB *) composite[inverse[TIMES],inverse[FUNPART]] := inverse[TIMES] (* derived 2005 July 18 in REPLACE.NB *) composite[inverse[times[x_]],S,times[x_]] := union[cart[omega,intersection[omega,complement[image[V,x]]]], composite[id[intersection[omega,image[V,intersection[omega,set[x]]]]],S,id[omega]]] (* derived 2005 October 22 in TO-C.NB *) composite[inverse[to[x_]],intersection[Di,inverse[to[x_]]]] := intersection[Di,inverse[to[x]]] (* derived 2006 May 4 in DIRECTED.NB *) composite[inverse[to[x_]],to[x_]] := cart[fix[to[x]],fix[to[x]]] (* derived 2005 January 29 in TRV-RFX.NB *) composite[inverse[trv[rfx[x_]]],complement[trv[rfx[x_]]]] := composite[id[fix[x]],complement[trv[rfx[x]]]] (* added 2002 November 9 based on TW-I-FL.NB *) composite[inverse[twist[x_]],id[cart[V,V]]] := inverse[twist[x]] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[UCLOSURE],inverse[S],UCLOSURE] := composite[inverse[S],UCLOSURE] (* derived 2006 April 22 in NESTCLOS.NB *) composite[inverse[UCLOSURE],LB[UB[union[S,inverse[S]]]]] := LB[UB[union[S,inverse[S]]]] (* derived 2007 June 25 in HULL-TRV.NB *) composite[inverse[UCLOSURE],S,UCLOSURE] := composite[inverse[UCLOSURE],S] (* derived 2007 December 26 in COARSER.NB *) composite[inverse[VERTSECT[COARSER]],inverse[S],VERTSECT[COARSER]] := COARSER (* derived 2007 December 26 in COARSER.NB *) composite[inverse[VERTSECT[COARSER]],S,VERTSECT[COARSER]] := inverse[COARSER] (* derived 2005 October 5 in GLB-DIV.NB *) composite[inverse[VERTSECT[DIV]],HULL[image[VERTSECT[DIV],omega]]] := GLB[DIV] (* derived 2005 October 5 in GLB-DIV.NB *) composite[inverse[VERTSECT[DIV]],id[image[VERTSECT[DIV],omega]]] := composite[id[omega],inverse[VERTSECT[DIV]]] (* derived 2005 September 17 in SU-VSDIV.NB *) composite[inverse[VERTSECT[DIV]],inverse[S],VERTSECT[DIV]] := union[DIV,cart[V,complement[omega]]] (* derived 2005 September 17 in SU-VSDIV.NB *) composite[inverse[VERTSECT[DIV]],S,VERTSECT[DIV]] := union[cart[complement[omega],V],inverse[DIV]] (* derived 2005 September 17 in SU-VSDIV.NB *) composite[inverse[VERTSECT[DIV]],VERTSECT[DIV]] := union[cart[complement[omega],complement[omega]],id[omega]] (* derived 2004 May 14 in REPLACE.NB *) composite[inverse[VERTSECT[x_]],E] := inverse[thinpart[x]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[inverse[VERTSECT[EQUIDIFF]],INVERSE,PLUS] := inverse[rotate[NATADD]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[inverse[VERTSECT[EQUIDIFF]],PLUS] := composite[SWAP,inverse[rotate[NATADD]]] (* added 2002 December 16 based on EQUIDIFF.NB *) composite[inverse[VERTSECT[EQUIDIFF]],VERTSECT[EQUIDIFF]] := union[EQUIDIFF, cart[complement[cart[omega,omega]],complement[cart[omega,omega]]]] (* derived 2008 September 10 in VS-IN-BC.NB *) composite[inverse[VERTSECT[inverse[BIGCUP]]],VERTSECT[inverse[BIGCUP]]] := Id (* derived 2007 December 26 in COARSER.NB *) composite[inverse[VERTSECT[inverse[COARSER]]],S,VERTSECT[inverse[COARSER]]] := COARSER (* derived 2006 September 23 in CMTV-CMT.NB *) composite[inverse[VERTSECT[inverse[rotate[NATMUL]]]],COMMUTE, VERTSECT[inverse[rotate[NATMUL]]]] := cart[V,V] (* derived 2007 December 26 in SCHRODER.NB *) composite[x_,inverse[VERTSECT[x_]],inverse[S],VERTSECT[x_]] := thinpart[x] (* derived 2004 August 10 in RS-3.NB *) composite[inverse[VERTSECT[RESTRICT]],inverse[BIGCUP]] := inverse[IMAGE[id[cart[V,V]]]] (* derived 2004 August 10 in RS-3.NB *) composite[inverse[VERTSECT[RESTRICT]],VERTSECT[RESTRICT]] := composite[inverse[IMAGE[id[cart[V,V]]]],IMAGE[id[cart[V,V]]]] (* derived 2004 January 6 in VS-OO.NB *) composite[inverse[VS],VS] := composite[inverse[IMAGE[id[cart[V,V]]]],IMAGE[id[cart[V,V]]]] (* derived 2005 October 22 in WO-DI.NB *) composite[inverse[wo[x_]],intersection[Di,inverse[wo[x_]]]] := intersection[Di,inverse[wo[x]]] (* derived 2008 March 9 in WO.NB *) composite[inverse[wo[x_]],wo[x_]] := cart[fix[wo[x]],fix[wo[x]]] (* derived 2004 Agust 13 in X4015-56.NB *) composite[inverse[ZN],E] := composite[E,inverse[ZN]] (* derived 2005 January 5 in RANK-S.NB *) composite[inverse[ZN],inverse[ZN]] := inverse[ZN] (* added 2001 July 15 based on ZN-AGAIN.NB *) composite[inverse[ZN],S] := inverse[ZN] (* added 2001 July 15 based on ZN-AGAIN.NB *) composite[inverse[ZN],ZN] := cart[V,V] (* derived 2006 February 12 in ITER-E.NB *) composite[iterate[x_,y_],E] := composite[trv[x],iterate[x,y]] (* added 2003 August 8 based on REPLACE.NB *) composite[iterate[x_,y_],id[intersection[omega,z_]]] := composite[iterate[x,y],id[z]] (* added 2002 April 15 based on ITERATE.NB *) composite[iterate[x_,y_],id[omega]] := iterate[x,y] (* derived 2006 May 25 in ITERSTOP.NB *) composite[iterate[x_,y_],image[power[SUCC],set[z_]]] := composite[iterate[x,y],plus[z]] (* derived 2005 July 18 in REPLACE.NB *) composite[iterate[iterate[SUCC,set[x_]],set[0]],id[image[V,intersection[omega,set[x_]]]]] := times[x] (* added 2002 July 4 based on NATADD.NB *) composite[iterate[x_,set[y_]],id[image[V,set[y_]]]] := iterate[x,set[y]] (* added 2002 July 4 based on NATADD.NB *) composite[iterate[x_,set[y_]], id[intersection[w_,image[V,set[y_]]]]] := composite[iterate[x,set[y]],id[w]] (* added 2002 April 17 based on ITERATE.NB *) composite[iterate[x_,y_],SUCC] := composite[x,iterate[x,y]] (* derived 2006 February 12 in ITER-E.NB *) composite[iterate[x_,y_],trv[SUCC]] := composite[trv[x],iterate[x,y]] (* derived 2008 October 21 in JOIN.NB *) composite[JOIN,cross[Id,JOIN],ASSOC] := composite[JOIN,cross[JOIN,Id]] (* derived 2008 October 22 in JOIN-RS.NB *) composite[JOIN,id[cart[intersection[LISTS,x_],y_]]] := composite[JOIN,id[cart[x,y]]] (* derived 2008 October 22 in JOIN-RS.NB *) composite[JOIN,id[cart[x_,intersection[LISTS,y_]]]] := composite[JOIN,id[cart[x,y]]] (* derived 2008 October 22 in JOIN-RS.NB *) composite[JOIN,id[cart[LISTS,V]]] := JOIN (* derived 2008 October 22 in WORDS.NB *) composite[JOIN,id[cart[P[cart[omega,x_]],P[cart[omega,x_]]]]] := composite[id[P[cart[omega,x]]],JOIN] (* derived 2008 October 22 in JOIN-RS.NB *) composite[JOIN,id[cart[V,LISTS]]] := JOIN (* derived 2008 October 24 in SUFX-PO.NB *) composite[JOIN,id[cart[V,set[0]]],inverse[SECOND]] := cart[set[0],LISTS] (* derived 2008 October 22 in JOIN-ASS.NB *) composite[JOIN,id[cart[V,V]]] := JOIN (* derived 2008 October 23 in PREFIX.NB *) composite[JOIN,inverse[SECOND],JOIN,inverse[FIRST]] := composite[JOIN,inverse[FIRST],JOIN,inverse[SECOND]] (* derived 2008 October 21 in JOIN.NB *) composite[JOIN,LEFT[0]] := id[LISTS] (* derived 2008 October 21 in JOIN.NB *) composite[JOIN,RIGHT[0]] := id[LISTS] (* added 2003 December 9 based on ITER-K.NB *) composite[K,inverse[CARD],id[omega]] := composite[inverse[CARD],id[omega],SUCC] (* added 2003 June 6 based on K-PS.NB *) composite[K,PS] := composite[PS,PS] (* Theorem Q-K-2 in Q proved 2000 May 23 *) composite[K,Q] := composite[Q,K] (* Theorem K-SR2 in K proved 2000 May 16 *) composite[K,S] := PS (* derived 2006 March 4 in KURA.NB *) composite[KURA,DUP] := composite[SINGLETON,SINGLETON] (* added 2002 October 22 based on CO-ID.NB *) composite[KURA,id[cart[V,V]]] := KURA (* added 2003 May 10 based on LAMBHULL.NB *) composite[LAMBHULL,ACLOSURE] := LAMBHULL (* derived 2007 May 6 in CHN-ACL.NB *) composite[LAMBHULL,CHAINS] := composite[IMAGE[DUP],CHAINS] (* added 2003 May 10 based on LAMBHULL.NB *) composite[LAMBHULL,CLIQUES] := composite[IMAGE[DUP],CLIQUES] (* added 2003 October 21 based on LAMHUL-2.NB *) composite[LAMBHULL,IMAGE[inverse[S]]] := composite[IMAGE[DUP],IMAGE[inverse[S]]] (* added 2003 May 10 based on LAMBHULL.NB *) composite[LAMBHULL,POWER] := composite[IMAGE[DUP],POWER] (* added 2003 October 21 based on LAMHUL-2.NB *) composite[LAMBHULL,SINGLETON] := VERTSECT[composite[id[S],inverse[SECOND]]] (* derived 2008 July 10 in UBD-CO.NB *) composite[LAMBHULL,UBD] := composite[IMAGE[DUP],UBD] (* derived 2008 August 29 in LB-COMUT.NB *) composite[LB[COMMUTE],ADJOIN[set[0]]] := LB[COMMUTE] (* derived 2004 December 21 in COMUTANT.NB *) composite[LB[COMMUTE],IMAGE[IMAGE[id[cart[V,V]]]]] := LB[COMMUTE] (* derived 2004 December 21 in COMUTANT.NB *) composite[LB[COMMUTE],IMAGE[IMAGE[SWAP]]] := composite[inverse[IMAGE[SWAP]],LB[COMMUTE]] (* derived 2004 December 21 in COMUTANT.NB *) composite[LB[COMMUTE],inverse[BIGCUP]] := COMMUTE (* added 2000 November 10 based on UB-LB-1.LOG *) composite[LB[x_],complement[E]] := cart[V,V] (* derived 2004 January 29 in UB-LB-CO.NB *) composite[LB[x_],complement[inverse[S]]] := composite[inverse[x],complement[inverse[E]]] (* added 2000 November 10 based on UB-LB-1.LOG *) composite[LB[x_],complement[S]] := cart[complement[set[0]],V] (* added 2000 November 10 based on UB-LB-1.LOG *) composite[LB[x_],DISJOINT] := cart[V,V] (* added 2000 November 10 based on UB-LB-1.LOG *) composite[LB[x_],E] := inverse[x] (* added 2001 July 8 based on REMOVED.NB *) composite[LB[x_],id[P[y_]],E] := composite[inverse[x],id[y]] (* added 2002 November 17 based on LB-UB.NB *) composite[LB[x_],id[P[range[x_]]]] := LB[x] (* derived 2007 December 23 in LB-UB-S.NB *) composite[LB[x_],id[P[y_]],S] := composite[LB[x],id[P[y]]] (* added 2002 May 18 based on LB-FUN.NB *) composite[LB[image[inverse[IMG],range[SINGLETON]]],IMAGE[SINGLETON]] := composite[inverse[FUNPART],inverse[IMAGE[FIRST]],S] (* derived 2004 December 24 in UCL-LBUB.NB *) composite[LB[x_],inverse[BIGCUP],E] := composite[inverse[x],E] (* derived 2004 January 25 in GT-LT-CO.NB *) composite[LB[x_],inverse[GREATEST[y_]]] := composite[inverse[x],id[fix[y]]] (* derived 2004 January 29 in UB-LB-CO.NB *) composite[LB[x_],inverse[IMAGE[id[y_]]]] := composite[LB[x],id[P[y]]] (* derived 2004 January 25 in GT-LT-CO.NB *) composite[LB[x_],inverse[LEAST[y_]]] := composite[inverse[x],id[fix[y]]] (* added 2000 November 10 based on UB-LB-1.LOG *) composite[LB[x_],inverse[S]] := cart[V,V] (* derived 2008 August 29 in LB-COMUT.NB *) composite[LB[LB[COMMUTE]],ADJOIN[set[0]]] := LB[LB[COMMUTE]] (* derived 2008 August 29 in LB-COMUT.NB *) composite[LB[LB[COMMUTE]],IMAGE[IMAGE[id[cart[V,V]]]]] := LB[LB[COMMUTE]] (* added 2000 December 14 based on PAIRSET.NB *) composite[LB[x_],PAIRSET] := intersection[composite[inverse[x],FIRST],composite[inverse[x],SECOND]] (* added 2000 November 10 based on UB-LB-1.LOG *) composite[LB[x_],S] := LB[x] (* added 2000 November 10 based on UB-LB-1.LOG *) composite[LB[x_],SINGLETON] := inverse[x] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[LB[SUBCOMMUTE],IMAGE[IMAGE[id[cart[V,V]]]]] := LB[SUBCOMMUTE] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[LB[SUBCOMMUTE],IMAGE[IMAGE[SWAP]]] := composite[inverse[IMAGE[SWAP]],UB[SUBCOMMUTE]] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[LB[SUBCOMMUTE],inverse[BIGCUP]] := inverse[SUBCOMMUTE] (* derived 2006 April 22 in NESTCLOS.NB *) composite[LB[UB[union[S,inverse[S]]]],ACLOSURE] := LB[UB[union[S,inverse[S]]]] (* derived 2006 April 22 in NESTCLOS.NB *) composite[LB[UB[union[S,inverse[S]]]],UCLOSURE] := LB[UB[union[S,inverse[S]]]] (* added 2000 December 24 based on LT-CO-S *) composite[LEAST[x_],complement[E]] := composite[id[fix[x]],Di] (* derived 2004 January 25 in GT-LT-CO.NB *) composite[LEAST[x_],DISJOINT] := composite[id[fix[x]],complement[inverse[E]]] (* added 2000 December 14 based on LT-CO-E.NB *) composite[LEAST[x_],E] := composite[id[fix[x]],inverse[x]] (* added 2002 November 17 based on LB-UB.NB *) composite[LEAST[x_],id[P[range[x_]]]] := LEAST[x] (* derived 2004 January 25 in GT-LT-CO.NB *) composite[LEAST[x_],inverse[LB[y_]]] := composite[id[fix[x]],y] (* added 2000 December 24 based on LT-CO-S *) composite[LEAST[x_],inverse[S]] := composite[inverse[E],IMAGE[id[fix[x]]]] (* derived 2004 January 25 in GT-LT-CO.NB *) composite[LEAST[x_],inverse[UB[y_]]] := composite[id[fix[x]],inverse[y]] composite[LEAST[x_],PAIRSET] := union[composite[FIRST,id[composite[x,id[fix[x]]]]], composite[SECOND,id[composite[id[fix[x]],inverse[x]]]]] (* derived 2006 January 21 in LEAST-VS.NB *) composite[LEAST[po[x_]],VERTSECT[po[x_]]] := id[fix[thinpart[po[x]]]] (* added 2002 December 14 based on LT-S.NB *) composite[LEAST[x_],S] := composite[id[fix[x]],LB[x]] (* added 2000 November 19 based on GT-CO-SG.NB *) composite[LEAST[x_],SINGLETON] := id[fix[x]] (* derived 2005 October 6 in GLB-VS.NB *) composite[LEAST[x_],VERTSECT[composite[id[range[x_]],UB[x_]]]] := composite[LUB[x],id[domain[VERTSECT[composite[id[range[x]],UB[x]]]]]] (* derived 2004 March 9 in IDEMLTGT.NB *) composite[LEAST[x_],VERTSECT[LEAST[x_]]] := LEAST[x] (* derived 2006 January 19 in VS-LUB.NB *) composite[LEAST[x_],VERTSECT[UB[x_]]] := composite[LUB[x],id[domain[VERTSECT[UB[x]]]]] (* added 2003 September 11 based on ID-IMV.NB *) composite[LEFT[x_],y___,id[image[V,set[x_]]]] := composite[LEFT[x],y] (* added 2003 July 15 based on L-R-PAIR.NB *) composite[LEFT[x_],id[image[V,set[first[x_]]]]] := LEFT[PAIR[first[x],second[x]]] (* added 2002 August 28 based on RIGHT.NB *) composite[LEFT[x_],id[intersection[y_,image[V,set[x_]]]]] := composite[LEFT[x],id[y]] (* derived 2008 October 21 in LISTS.NB *) composite[list[x_],id[omega]] := list[x] (* derived 2005 October 2 in POLUBGLB.NB *) composite[LUB[x_],SINGLETON] := composite[Id,intersection[x,complement[composite[complement[inverse[x]],x]]]] (* derived 2007 February 20 in GCD-MULT.NB *) composite[LUB[DIV],VERTSECT[inverse[DIV]]] := union[cart[complement[omega],set[set[0]]],id[omega]] (* derived 2006 June 20 in MAP-RASG.NB *) composite[MAP,cross[Id,SINGLETON]] := composite[SINGLETON,CART,cross[Id,SINGLETON]] (* derived 2006 July 6 in MAP-SS.NB *) composite[MAP,cross[SINGLETON,Id]] := composite[IMAGE[SINGLETON],CART,cross[SINGLETON,Id]] (* derived 2008 August 17 in OPS-1.NB *) composite[MAP,DUP,SINGLETON] := composite[SINGLETON,SINGLETON,DUP] (* added 2001 April 27 based on MAP2.NB *) composite[MAP,id[cart[V,V]]] := MAP (* derived 2007 October 16 in MAP-0.NB *) composite[MAP,LEFT[0]] := cart[V,set[set[0]]] (* derived 2007 October 16 in MAP-0.NB *) composite[MAP,RIGHT[0]] := union[cart[complement[set[0]],set[0]],cart[set[0],set[set[0]]]] (* added 2002 October 22 based on CO-ID.NB *) composite[MAXIMAL[x_],id[complement[subvar[intersection[Di,inverse[x_]]]]]] := MAXIMAL[x] (* derived 2007 November 3 in MAX-U.NB *) composite[MAXIMAL[S],id[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]]] := composite[BIGCUP,id[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]]] (* derived 2007 November 3 in MAX-S.NB *) composite[MAXIMAL[S],POWER] := Id (* derived 2007 November 3 in MAX-S.NB *) composite[MAXIMAL[S],VERTSECT[inverse[K]]] := inverse[K] (* derived 2007 November 3 in MAX-S.NB *) composite[MAXIMAL[S],VERTSECT[inverse[PS]]] := inverse[K] (* derived 2007 November 3 in MAX-S.NB *) composite[MAXIMAL[x_],SINGLETON] := Id (* derived 2007 June 9 in VS-LT-GT.NB *) composite[MAXIMAL[x_],VERTSECT[MAXIMAL[x_]]] := MAXIMAL[x] (* added 2002 October 22 based on CO-ID.NB *) composite[MINIMAL[x_],id[complement[subvar[intersection[Di,x_]]]]] := MINIMAL[x] (* derived 2007 June 9 in VS-LT-GT.NB *) composite[MINIMAL[x_],VERTSECT[MINIMAL[x_]]] := MINIMAL[x] (* derived 2006 December 3 in MIXDIV.NB *) composite[MIXDIV,DIV] := MIXDIV (* derived 2006 December 3 in MIXDIV.NB *) composite[MIXDIV,inverse[MIXDIV]] := cart[Z,Z] (* derived 2006 December 13 in INV-MXML.NB *) composite[MIXMUL,cross[composite[id[Z],x_],y_]] := composite[MIXMUL,cross[x,y]] (* derived 2007 January 10 in MIXMUL.NB *) composite[MIXMUL,cross[composite[INVERSE,x_],y_]] := composite[INVERSE,MIXMUL,cross[x,y]] (* derived 2006 December 14 in MIXMUL-3.NB *) composite[MIXMUL,cross[Id,NATMUL],ASSOC] := composite[MIXMUL,cross[MIXMUL,Id]] (* derived 2007 January 10 in MIXMUL.NB *) composite[MIXMUL,cross[INVERSE,x_]] := composite[INVERSE,MIXMUL,cross[Id,x]] (* derived 2007 January 9 in MIXMUL.NB *) composite[MIXMUL,cross[PLUS,Id]] := composite[PLUS,NATMUL] (* derived 2006 December 15 in MIXDIV.NB *) composite[MIXMUL,id[cart[image[INVERSE,range[PLUS]],V]],inverse[SECOND]] := composite[INVERSE,PLUS,DIV] (* derived 2006 December 13 in INV-MXML.NB *) composite[MIXMUL,id[cart[P[cart[V,V]],V]]] := MIXMUL (* derived 2006 December 15 in MIXDIV.NB *) composite[MIXMUL,id[cart[range[PLUS],V]],inverse[SECOND]] := composite[PLUS,DIV] (* derived 2006 December 6 in MIXMUL-1.NB *) composite[MIXMUL,id[cart[V,V]]] := MIXMUL (* derived 2006 December 13 in INV-MXML.NB *) composite[MIXMUL,id[cart[Z,V]]] := MIXMUL (* derived 2006 December 6 in MIXMUL-1.NB *) composite[MIXMUL,inverse[SECOND]] := MIXDIV (* derived 2006 December 13 in BHPOSNEG.NB *) composite[MIXMUL,LEFT[composite[id[omega],SUCC]]] := PLUS (* derived 2006 December 13 in BHPOSNEG.NB *) composite[MIXMUL,LEFT[composite[inverse[SUCC],id[omega]]]] := composite[INVERSE,PLUS] (* derived 2006 December 9 in SIMPLIFY.NB *) composite[MIXMUL,LEFT[x_],id[image[V,intersection[Z,set[x_]]]]] := composite[MIXMUL,LEFT[x]] (* derived 2006 December 11 in ITER-MIX.NB *) composite[MIXMUL,LEFT[id[omega]]] := cart[omega,set[id[omega]]] (* derived 2006 December 9 in EXTRA.NB *) composite[MIXMUL,LEFT[x_],id[omega]] := composite[MIXMUL,LEFT[x]] (* derived 2006 December 14 in POS-NEG.NB *) composite[MIXMUL,LEFT[inverse[plus[x_]]]] := composite[INVERSE,PLUS,times[x]] (* derived 2006 December 11 in MIXDISTR.NB *) composite[MIXMUL,LEFT[x_],NATADD] := composite[INTADD,cross[composite[MIXMUL,LEFT[x]],composite[MIXMUL,LEFT[x]]]] (* derived 2006 December 14 in MIXMUL-3.NB *) composite[MIXMUL,LEFT[x_],NATMUL] := composite[MIXMUL,cross[composite[MIXMUL,LEFT[x]],Id]] (* derived 2006 December 14 in POS-NEG.NB *) composite[MIXMUL,LEFT[plus[x_]]] := composite[PLUS,times[x]] (* derived 2008 July 17 in MIXMUL.NB *) composite[MIXMUL,LEFT[x_],times[y_]] := composite[MIXMUL,LEFT[intmul[x,plus[y]]]] (* derived 2006 December 11 in ITER-MIX.NB *) composite[MIXMUL,RIGHT[0]] := cart[Z,set[id[omega]]] (* derived 2006 December 9 in SIMPLIFY.NB *) composite[MIXMUL,RIGHT[x_],id[image[V,intersection[omega,set[x_]]]]] := composite[MIXMUL,RIGHT[x]] (* derived 2006 December 9 in EXTRA.NB *) composite[MIXMUL,RIGHT[x_],id[Z]] := composite[MIXMUL,RIGHT[x]] (* derived 2006 December 6 in MIXMUL-1.NB *) composite[MIXMUL,RIGHT[set[0]]] := id[Z] (* derived 2007 January 9 in MIXMUL.NB *) composite[MIXMUL,SWAP] := composite[INTMUL,cross[PLUS,Id]] (* derived 2006 October 28 in NATMOD.NB *) composite[modulo[x_],id[image[V,set[x_]]]] := modulo[x] (* derived 2005 July 18 in MODULO.NB *) composite[modulo[x_],id[omega]] := modulo[x] (* derived 2005 July 18 in MODULO.NB *) composite[modulo[x_],modulo[x_]] := modulo[x] (* derived 2005 July 18 in MODULO.NB *) composite[modulo[nat[x_]],id[nat[x_]]] := id[nat[x]] (* derived 2005 July 20 in Q10.NB *) composite[modulo[nat[x_]],times[nat[x_]]] := cart[omega,set[0]] (* derived 2005 July 22 in MOD-ASS.NB *) composite[modulo[x_],NATADD,cross[composite[modulo[x_],NATADD],Id]] := composite[modulo[x],NATADD,cross[NATADD,Id]] (* derived 2005 July 22 in MOD-ASS.NB *) composite[modulo[x_],NATADD,cross[Id,composite[modulo[x_],NATADD]],ASSOC] := composite[modulo[x],NATADD,cross[NATADD,Id]] (* derived 2005 July 20 in Q10.NB *) composite[modulo[x_],NATADD,cross[Id,modulo[x_]]] := composite[modulo[x],NATADD] (* derived 2005 July 20 in Q10.NB *) composite[modulo[x_],NATADD,cross[Id,times[x_]]] := composite[modulo[x],FIRST,id[cart[V,omega]]] (* derived 2005 July 20 in Q10.NB *) composite[modulo[x_],NATADD,cross[modulo[x_],Id]] := composite[modulo[x],NATADD] (* derived 2005 July 20 in Q10.NB *) composite[modulo[x_],NATADD,cross[modulo[x_],modulo[x_]]] := composite[modulo[x],NATADD] (* derived 2005 July 22 in MOD-ASS.NB *) composite[modulo[x_],NATMUL,cross[composite[modulo[x_],NATMUL],Id]] := composite[modulo[x],NATMUL,cross[NATMUL,Id]] (* derived 2005 July 22 in MOD-ASS.NB *) composite[modulo[x_],NATMUL,cross[Id,composite[modulo[x_],NATMUL]],ASSOC] := composite[modulo[x],NATMUL,cross[NATMUL,Id]] (* derived 2005 July 21 in Q15.NB *) composite[modulo[x_],NATMUL,cross[Id,modulo[x_]]] := composite[modulo[x],NATMUL] (* derived 2005 July 21 in Q15.NB *) composite[modulo[x_],NATMUL,cross[modulo[x_],Id]] := composite[modulo[x],NATMUL] (* derived 2005 July 21 in Q15.NB *) composite[modulo[x_],NATMUL,cross[modulo[x_],modulo[x_]]] := composite[modulo[x],NATMUL] (* derived 2005 August 5 in MODADD.NB *) composite[modulo[x_],plus[x_]] := modulo[x] (* derived 2005 July 20 in Q10.NB *) composite[modulo[x_],plus[y_],modulo[x_]] := composite[modulo[x],plus[y]] (* derived 2005 August 5 in MODADD.NB *) composite[modulo[y_],plus[natmod[x_,y_]]] := composite[modulo[y],plus[x]] (* derived 2005 July 20 in Q10.NB *) composite[modulo[y_],plus[x_],times[y_]] := cart[omega,set[natmod[x,y]]] (* derived 2006 July 13 in CLOCK.NB *) composite[modulo[x_],SUCC,id[x_]] := clock[x] (* derived 2006 July 23 in ITERCLOK.NB *) composite[modulo[x_],SUCC,modulo[x_]] := composite[modulo[x],SUCC] (* derived 2005 July 21 in Q15.NB *) composite[modulo[x_],times[y_],modulo[x_]] := composite[modulo[x],times[y]] (* added 2002 June 21 based on NATASS.NB *) composite[NATADD,cross[x_,composite[id[omega],y_]]] := composite[NATADD,cross[x,y]] (* added 2002 June 21 based on NATASS.NB *) composite[NATADD,cross[composite[id[omega],x_],y_]] := composite[NATADD,cross[x,y]] (* added 2002 September 24 based on ADD-X-S.NB *) composite[NATADD,cross[composite[S,id[omega]],Id]] := composite[id[omega],S,NATADD] (* added 2002 June 16 based on LEFT-ROT.NB *) composite[NATADD,cross[Id,composite[id[omega],SUCC]]] := composite[NATADD,cross[Id,SUCC]] (* added 2001 June 18 based on COMMUTE.NB *) composite[NATADD,cross[Id,composite[S,id[omega]]]] := composite[id[omega],S,NATADD] (* derived 2006 September 5 in RA-PLUS.NB *) composite[NATADD,cross[Id,inverse[plus[x_]]],inverse[NATADD]] := inverse[plus[x]] (* added 2002 June 13 based on ASSOC.NB *) composite[NATADD,cross[Id,NATADD],ASSOC] := composite[NATADD,cross[NATADD,Id]] (* derived 2006 September 5 in RA-PLUS.NB *) composite[NATADD,cross[Id,plus[x_]],inverse[NATADD]] := plus[x] (* added 2002 October 31 based on ADD-SUB.NB *) composite[NATADD,cross[Id,rotate[NATADD]]] := composite[rotate[NATADD],cross[NATADD,Id],id[composite[inverse[S],SECOND]],inverse[ASSOC]] (* added 2002 June 16 based on ADD-SUCC.NB *) composite[NATADD,cross[Id,SUCC]] := composite[SUCC,NATADD] (* added 2002 June 21 based on NATASS.NB *) composite[NATADD,cross[NATADD,Id],inverse[ASSOC]] := composite[NATADD,cross[Id,NATADD]] (* added 2002 June 21 based on NATASS.NB *) composite[NATADD,cross[NATADD,Id],inverse[ROT]] := composite[NATADD,cross[NATADD,Id]] (* added 2002 June 13 based on ASSOC.NB *) composite[NATADD,cross[NATADD,Id],ROT] := composite[NATADD,cross[NATADD,Id]] (* derived 2006 August 16 in EVOD-ADD.NB *) composite[NATADD,cross[NATADD,NATADD],TWIST] := composite[NATADD,cross[NATADD,NATADD]] (* derived 2005 March 26 in DIVDSTRB.NB *) composite[NATADD,cross[NATMUL,NATMUL],TWIST,cross[DUP,Id]] := composite[NATMUL,cross[Id,NATADD]] (* added 2002 August 29 based on BINHOM.NB *) composite[NATADD,cross[NATMUL,NATMUL],TWIST,cross[Id,DUP]] := composite[NATMUL,cross[NATADD,Id]] (* derived 2006 September 30 in VECT-ADD.NB *) composite[NATADD,cross[plus[x_],inverse[plus[y_]]],inverse[NATADD]] := composite[plus[x],inverse[plus[y]]] (* derived 2006 September 30 in VECT-ADD.NB *) composite[NATADD,cross[plus[x_],plus[y_]],inverse[NATADD]] := plus[natadd[x,y]] (* added 2002 October 31 based on ADD-SUB.NB *) composite[NATADD,cross[rotate[NATADD],Id]] := composite[rotate[NATADD],cross[NATADD,Id],id[composite[inverse[S],SECOND]],ROT] (* added 2002 June 16 based on ADD-SUCC.NB *) composite[NATADD,cross[SUCC,Id]] := composite[SUCC,NATADD] (* added 2002 October 22 based on CO-ID.NB *) composite[NATADD,id[cart[omega,omega]]] := NATADD (* added 2002 June 20 based on ITERNORM.NB *) composite[NATADD,id[cart[omega,V]]] := NATADD (* derived 2006 January 29 in WF-Z.NB *) composite[NATADD,id[cart[V,complement[set[0]]]],inverse[FIRST]] := composite[id[omega],E] (* added 2002 June 16 based on ADD-1ST.NB *) composite[NATADD,id[cart[V,omega]]] := NATADD (* added 2002 June 12 based on NATADD.NB *) composite[NATADD,id[cart[V,V]]] := NATADD (* added 2002 November 3 based on SIMPLIFY.NB *) composite[NATADD,id[complement[cart[omega,omega]]]] := 0 (* added 200 October 6 based on CANCEL.NB *) composite[NATADD,id[image[inverse[NATADD],set[x_]]],inverse[FIRST]] := cart[succ[x],intersection[omega,set[x]]] (* added 200 October 6 based on CANCEL.NB *) composite[NATADD,id[image[inverse[NATADD],set[x_]]],inverse[SECOND]] := cart[succ[x],intersection[omega,set[x]]] (* derived 2005 July 17 in TIMES.NB *) composite[NATADD,id[x_],inverse[SECOND]] := composite[NATADD,id[inverse[x]],inverse[FIRST]] (* added 2002 September 5 based on NORMAL.NB *) composite[NATADD,id[union[cart[V,complement[omega]],cart[complement[omega],V]]]] := 0 (* derived 2005 July 16 in DBLCOUNT.NB *) composite[NATADD,intersection[composite[inverse[FIRST],CARD,CAP],composite[inverse[SECOND],CARD,CUP]]] := composite[NATADD,cross[CARD,CARD]] (* derived 2005 March 26 in DIVDSTRB.NB *) composite[NATADD,intersection[composite[inverse[FIRST],DIV],composite[inverse[SECOND],DIV]]] := DIV (* derived 2005 July 17 in TIMES.NB *) composite[NATADD,intersection[composite[inverse[FIRST],times[x_]],composite[inverse[SECOND],times[y_]]]] := times[natadd[x,y]] (* added 2002 June 16 based on ADD-1ST.NB *) composite[NATADD,inverse[FIRST]] := composite[id[omega],S,id[omega]] (* added 2002 June 21 based on NATADD.NB *) composite[NATADD,inverse[SECOND]] := composite[id[omega],S,id[omega]] (* added 2003 August 7 based on PLUS.NB *) composite[NATADD,LEFT[x_]] := plus[x] (* added 2003 August 7 based on PLUS.NB *) composite[NATADD,RIGHT[x_]] := plus[x] (* added 2002 June 12 based on NATADD.NB *) composite[NATADD,SWAP] := NATADD (* derived 2006 June 29 in NATEXP-3.NB *) composite[NATEXP,cross[Id,NATMUL],ASSOC] := composite[NATEXP,cross[NATEXP,Id]] (* derived 2006 November 30 in EXP-INEQ.NB *) composite[NATEXP,id[cart[omega,V]]] := NATEXP (* derived 2006 November 30 in EXP-INEQ.NB *) composite[NATEXP,id[cart[V,omega]]] := NATEXP (* derived 2006 June 27 in NATEXP-1.NB *) composite[NATEXP,id[cart[V,V]]] := NATEXP (* derived 2006 October 31 in EXP-MEMB.NB *) composite[NATEXP,id[union[cart[V,complement[omega]],cart[complement[omega],V]]]] := 0 (* derived 2006 June 27 in NATEXP-1.NB *) composite[NATEXP,LEFT[0]] := union[cart[intersection[omega,complement[set[0]]],set[0]],cart[set[0],set[set[0]]]] (* derived 2006 June 28 in NATEXP-2.NB *) composite[NATEXP,LEFT[x_],id[omega]] := composite[NATEXP,LEFT[x]] (* derived 2006 June 27 in NATEXP-1.NB *) composite[NATEXP,LEFT[nat[x_]],SUCC] := composite[times[nat[x]],NATEXP,LEFT[nat[x]]] (* derived 2006 June 29 in NATEXP-3.NB *) composite[NATEXP,LEFT[x_],NATADD] := composite[NATMUL,cross[composite[NATEXP,LEFT[x]],composite[NATEXP,LEFT[x]]]] (* derived 2006 June 29 in NATEXP-3.NB *) composite[NATEXP,LEFT[x_],NATMUL] := composite[NATEXP,cross[composite[NATEXP,LEFT[x]],Id]] (* derived 2006 June 27 in NATEXP-1.NB *) composite[NATEXP,LEFT[set[0]]] := cart[omega,set[set[0]]] (* derived 2006 June 27 in NATEXP-1.NB *) composite[NATEXP,RIGHT[0]] := cart[omega,set[set[0]]] (* derived 2006 June 29 in NATEXP-3.NB *) composite[NATEXP,RIGHT[x_],id[omega]] := composite[NATEXP,RIGHT[x]] (* derived 2006 June 29 in NATEXP-3.NB *) composite[NATEXP,RIGHT[x_],NATEXP] := composite[NATEXP,cross[Id,times[x]]] (* derived 2006 June 29 in NATEXP-3.NB *) composite[NATEXP,RIGHT[x_],NATMUL] := composite[NATMUL,cross[composite[NATEXP,RIGHT[x]],composite[NATEXP,RIGHT[x]]]] (* derived 2006 June 27 in NATEXP-1.NB *) composite[NATEXP,RIGHT[set[0]]] := id[omega] (* derived 2006 July 18 in BINHOM-2.NB *) composite[NATEXP,RIGHT[succ[set[0]]]] := composite[NATMUL,DUP] (* derived 2005 June 30 in MOD-DSTB.NB *) composite[NATMOD,cross[NATMUL,NATMUL],TWIST,cross[DUP,Id]] := composite[NATMUL,cross[Id,NATMOD]] (* derived 2005 July 17 in TIMES.NB *) composite[NATMOD,cross[times[x_],times[x_]]] := composite[times[x],NATMOD] (* derived 2005 May 21 in MOD-DUP.NB *) composite[NATMOD,DUP] := cart[omega,set[0]] (* derived 2005 May 17 based on NATMOD.NB *) composite[NATMOD,id[cart[V,V]]] := NATMOD (* derived 2005 July 18 in MODULO.NB *) composite[NATMOD,id[composite[id[omega],E]]] := composite[FIRST,id[composite[id[omega],E]]] (* derived 2005 May 21 in MOD-DUP.NB *) composite[NATMOD,id[inverse[DIV]],inverse[SECOND]] := cart[omega,set[0]] (* derived 2005 June 24 in MOD-FIX.NB *) composite[NATMOD,intersection[composite[inverse[FIRST],NATMOD],composite[inverse[SECOND],SECOND]]] := NATMOD (* derived 2005 May 21 in MOD-DUP.NB *) composite[NATMOD,intersection[composite[inverse[FIRST],NATMUL],composite[inverse[SECOND],FIRST]]] := cart[cart[omega,omega],set[0]] (* derived 2005 May 21 in MOD-DUP.NB *) composite[NATMOD,inverse[rotate[NATMUL]]] := cart[omega,set[0]] (* derived 2005 June 24 in MOD-FIX.NB *) composite[NATMOD,inverse[SECOND]] := union[cart[set[0],omega],composite[inverse[E],id[omega]]] (* derived 2005 May 17 based on NATMOD.NB *) composite[NATMOD,LEFT[0]] := cart[omega,set[0]] (* derived 2005 July 18 in MODULO.NB *) composite[NATMOD,RIGHT[x_]] := modulo[x] (* added 2002 August 29 based on MULASSOC.NB *) composite[NATMUL,cross[Id,NATMUL],ASSOC] := composite[NATMUL,cross[NATMUL,Id]] (* derived 2006 June 29 in NATEXP-3.NB *) composite[NATMUL,cross[NATEXP,NATEXP],TWIST,cross[DUP,Id]] := composite[NATEXP,cross[Id,NATADD]] (* derived 2006 June 29 in NATEXP-3.NB *) composite[NATMUL,cross[NATEXP,NATEXP],TWIST,cross[Id,DUP]] := composite[NATEXP,cross[NATMUL,Id]] (* derived 2006 August 16 in EVOD-ADD.NB *) composite[NATMUL,cross[NATMUL,NATMUL],TWIST] := composite[NATMUL,cross[NATMUL,NATMUL]] (* derived 2005 February 18 in MUL-NORM.NB *) composite[NATMUL,id[cart[x_,complement[omega]]]] := 0 (* added 2002 October 22 based on CO-ID.NB *) composite[NATMUL,id[cart[omega,omega]]] := NATMUL (* added 2002 June 30 based on MUL-DO.NB *) composite[NATMUL,id[cart[omega,V]]] := NATMUL (* added 2002 June 30 based on MUL-DO.NB *) composite[NATMUL,id[cart[V,omega]]] := NATMUL (* added 2002 June 30 based on NATMUL.NB *) composite[NATMUL,id[cart[V,V]]] := NATMUL (* derived 2005 February 18 in MUL-NORM.NB *) composite[NATMUL,id[union[cart[V,complement[omega]],cart[complement[omega],V]]]] := 0 (* derived 2006 June 29 in NATEXP-3.NB *) composite[NATMUL,intersection[composite[inverse[FIRST],NATEXP,LEFT[x_]], composite[inverse[SECOND],NATEXP,LEFT[y_]]]] := composite[NATEXP,LEFT[natmul[x,y]]] (* derived 2006 June 29 in NATEXP-3.NB *) composite[NATMUL,intersection[composite[inverse[FIRST],NATEXP,RIGHT[x_]], composite[inverse[SECOND],NATEXP,RIGHT[y_]]]] := composite[NATEXP,RIGHT[natadd[x,y]]] (* added 2002 August 30 based on DIVIDES.NB *) composite[NATMUL,inverse[FIRST]] := DIV (* added 2002 August 30 based on DIVIDES.NB *) composite[NATMUL,inverse[SECOND]] := DIV (* derived 2005 July 17 in TIMES.NB *) composite[NATMUL,LEFT[x_]] := times[x] (* derived 2005 July 18 in REPLACE.NB *) composite[NATMUL,RIGHT[x_]] := times[x] (* added 2002 August 28 based on MUL-SWAP.NB *) composite[NATMUL,SWAP] := NATMUL (* added 1998 May 24 *) composite[omega,x_] := 0 composite[x_,omega] := 0 (* added 1998 May 24 *) composite[OMEGA,x_] := 0 composite[x_,OMEGA] := 0 (* derived 2006 March 30 in REG-FUNP.NB *) composite[OOPART,id[BIJ]] := id[BIJ] (* derived 2006 November 28 in FUNPOOPT.NB *) composite[oopart[x_],id[image[inverse[oopart[x_]],y_]]] := composite[id[y],oopart[x]] (* derived 2006 October 29 in OOPART.NB *) composite[OOPART,IMAGE[DUP]] := IMAGE[DUP] (* derived 2004 May 9 in OOPART.NB *) composite[OOPART,IMAGE[id[cart[V,V]]]] := OOPART (* derived 2006 October 31 in REPLACE.NB *) composite[OOPART,IMAGE[SWAP]] := composite[INVERSE,OOPART] (* derived 2004 May 9 in OOPART.NB *) composite[OOPART,OOPART] := OOPART (* derived 2006 October 29 in OOPART.NB *) composite[OOPART,PLUS] := PLUS (* derived 2006 October 29 in OOPART.NB *) composite[OOPART,RCF] := RCF (* derived 2006 November 28 in FUNPOOPT.NB *) composite[oopart[x_],SECOND,id[inverse[oopart[x_]]]] := composite[FIRST,id[inverse[oopart[x]]]] (* derived 2006 March 7 in ORDLIST.NB *) composite[ordlist[x_],id[omega]] := ordlist[x] (* derived 2006 March 7 in ORDLIST.NB *) composite[ordlist[x_],SUCC] := composite[HULL[intersection[OMEGA,x]],SUCC,ordlist[x]] (* derived 2004 June 15 in X1235.NB *) composite[set[x_,y_]] := union[cart[set[first[x]],set[second[x]]],cart[set[first[y]],set[second[y]]]] (* Theorem PRS-DUP proved 2000 August 15 *) composite[PAIRSET,DUP] := SINGLETON (* added 1999 October 2 based on PAIRSET.5 *) composite[PAIRSET,id[cart[V,V]]] := PAIRSET (* added 1999 December 2 based on PAIRSET.1 *) composite[PAIRSET,id[Id]] := composite[SINGLETON,inverse[DUP]] (* added 2001 August 23 based on PAIRSET.NB *) composite[PAIRSET,id[SINGLETON],inverse[FIRST]] := composite[SUCC,SINGLETON] (* added 2002 January 11 based on KURA.NB *) composite[PAIRSET,intersection[composite[inverse[FIRST],PAIRSET], composite[inverse[SECOND],SINGLETON,FIRST]]] := KURA (* added 2002 January 11 based on KURA.NB *) composite[PAIRSET,intersection[composite[inverse[SECOND],PAIRSET], composite[inverse[FIRST],SINGLETON,FIRST]]] := KURA (* added 2001 March 29 based on PAIRSET.NB *) composite[PAIRSET,LEFT[x_]] := composite[ADJOIN[set[x]],SINGLETON,id[image[V,set[x]]]] (* added 2001 March 29 based on PAIRSET.NB *) composite[PAIRSET,RIGHT[x_]] := composite[ADJOIN[set[x]],SINGLETON,id[image[V,set[x]]]] (* Theorem PRS-SW proved 2000 August 15 *) composite[PAIRSET,SWAP] := PAIRSET (* added 2003 August 8 based on REPLACE.NB *) composite[plus[x_],y___,id[image[V,intersection[omega,set[x_]]]]] := composite[plus[x],y] (* added 2003 August 8 based on REPLACE.NB *) composite[plus[x_],y___,id[image[V,set[x_]]]] := composite[plus[x],y] (* added 2003 August 8 based on REPLACE.NB *) composite[plus[x_],id[intersection[y_,image[V,set[x_]]]]] := composite[plus[x],id[y]] (* added 2002 December 19 based on PLUSNORM.NB *) composite[PLUS,id[omega]] := PLUS (* added 2003 August 8 based on REPLACE.NB *) composite[plus[x_],id[omega]] := plus[x] (* derived 2007 May 9 in INTLEQ.NB *) composite[PLUS,inverse[S],inverse[PLUS]] := composite[id[range[PLUS]],INVERSE,INTLEQ,INVERSE] (* added 2003 July 5 based on PLUS-ISO.NB *) composite[PLUS,NATADD] := composite[COMPOSE,cross[PLUS,PLUS]] (* added 2003 August 8 based on REPLACE.NB *) composite[plus[x_],NATADD] := composite[NATADD,cross[Id,plus[x]]] (* added 2003 August 8 based on REPLACE.NB *) composite[plus[x_],plus[y_]] := plus[natadd[x,y]] (* added 2003 August 8 based on REPLACE.NB *) composite[plus[x_],S,id[omega]] := composite[id[omega],S,plus[x]] (* derived 2007 May 9 in INTLEQ.NB *) composite[PLUS,S,inverse[PLUS]] := composite[INTLEQ,id[range[PLUS]]] (* added 2003 October 20 based on MONOPLUS.NB *) composite[plus[x_],S,inverse[plus[x_]]] := composite[id[omega],S,id[intersection[omega,image[S,set[x]], image[V,intersection[omega,set[x]]]]]] (* added 2003 August 8 based on REPLACE.NB *) composite[plus[x_],SUCC] := composite[SUCC,plus[x]] (* derived 2005 October 1 in PO-WRAP.NB *) composite[po[x_],complement[inverse[po[x_]]]] := composite[id[fix[po[x]]],complement[inverse[po[x]]]] (* derived 2005 October 22 in CO-PO-DI.NB *) composite[po[x_],intersection[Di,po[x_]]] := intersection[Di,po[x]] (* derived 2005 October 1 in PO-WRAP.NB *) composite[po[x_],po[x_]] := po[x] (* added 1999 October 9 based on CAP-LOG.2 *) composite[POWER,CAP] := composite[CAP,cross[POWER,POWER]] (* 1999 March 26 session POW-E-SR.LOG *) composite[POWER,complement[S]] := composite[id[range[POWER]],complement[E]] (* derived 2006 February 12 in ITER-E.NB *) composite[power[x_],E] := composite[cross[Id,trv[x]],power[x]] (* added 2002 May 21 based on POWER.NB *) composite[power[x_],id[omega]] := power[x] (* added 2001 July 14 based on ZN-IMG.NB *) composite[POWER,IMAGE[ZN]] := VERTSECT[ZN] (* derived 2006 January 17 in POW-SG.NB *) composite[POWER,inverse[S]] := composite[id[range[POWER]],inverse[S],POWER] (* added 2000 October 3 based on POWER-PS.NB *) composite[POWER,PS] := composite[id[range[POWER]],PS,POWER] (* added 2002 June 12 based on NATADD.NB *) composite[power[x_],rotate[inverse[power[SUCC]]]] := composite[power[x],NATADD] (* added 2000 January 10 based on POWER-2.NB replacement for Theorem POW-CO4 in POW3 *) composite[POWER,S] := composite[id[range[POWER]],S,POWER] (* derived 2005 January 9 in PC-CARD2.NB *) composite[POWER,SINGLETON] := composite[ADJOIN[set[0]],SINGLETON,SINGLETON] (* added 2002 May 21 based on POWER.NB *) composite[power[x_],SUCC] := composite[cross[Id,x],power[x]] (* derived 2006 February 12 in ITER-E.NB *) composite[power[x_],trv[SUCC]] := composite[cross[Id,trv[x]],power[x]] (* derived 2005 August 17 in PRIMESEQ.NB *) composite[PRIMESEQ,id[omega]] := PRIMESEQ (* derived 2005 August 17 in PRIMESEQ.NB *) composite[PRIMESEQ,SUCC] := composite[HULL[PRIMES],SUCC,PRIMESEQ] (* added 1998 August 9 *) composite[PS,complement[E]] := cart[V,complement[set[0]]] (* added 1998 August 9 *) composite[PS,complement[S]] := cart[complement[set[0]],complement[set[0]]] (* see PS-LOG.1 added 1998 September 5 *) composite[PS,DISJOINT] := cart[V,complement[set[0]]] (* Theorem PS-CO-SG in PS1 proved 1998 September 5 *) composite[PS,E] := composite[PS,SINGLETON] (* added 1999 November 23 based on ADJ-B3.NB *) composite[PS,id[image[S,set[x_]]],S] := composite[PS,ADJOIN[x]] (* derived 2007 August 21 in CO-K-PS.NB *) composite[PS,inverse[PS]] := cart[complement[set[0]],complement[set[0]]] (* added 1998 August 9 *) composite[PS,inverse[S]] := cart[V,complement[set[0]]] (* added 2003 June 6 based on K-PS.NB *) composite[PS,K] := composite[PS,PS] (* Theorem Q-PS-CO in Q proved 2000 June 2 *) composite[PS,Q] := composite[Q,PS] (* Theorem PS-CO-1 in PS added 1998 August 9 *) composite[PS,S] := PS (* added 2001 December 17 based on Q-HAT.NB *) composite[Q,CARD] := composite[inverse[CARD],CARD] (* Theorem Q-C-E in Q proved 2000 May 9 *) composite[Q,complement[E]] := cart[V,V] (* derived 2005 November 22 in Q-RULES.NB *) composite[Q,complement[inverse[S]]] := cart[V,complement[set[0]]] (* Theorem Q-C-CO-1 in Q proved 2000 May 7 *) composite[Q,complement[Q]] := composite[Id,complement[Q]] (* added 2000 May 9 based on Q-C-E.NB *) composite[Q,complement[S]] := cart[complement[set[0]],V] (* added 2001 July 15 based on FUNPART.NB *) composite[Q,Di] := union[cart[V,complement[set[0]]], cart[complement[set[0]],V]] (* Theorem Q-DJ-1 in Q proved 2000 May 12 *) composite[Q,DISJOINT] := cart[V,V] (* added 2002 August 2 based on Q-E.NB *) composite[Q,E] := cart[V,complement[set[0]]] (* added 2003 December 9 based on ITER-K.NB *) composite[Q,id[FINITE]] := composite[inverse[CARD],id[omega],CARD] (* added 2001 December 17 based on Q-HAT.NB *) composite[Q,id[fix[CARD]]] := inverse[CARD] (* added 2001 December 17 based on Q-HAT.NB *) composite[Q,id[image[Q,OMEGA]]] := composite[inverse[CARD],CARD] (* added 2002 May 28 based on FINITE.NB *) composite[Q,id[omega]] := composite[inverse[CARD],id[omega]] (* discovered 2000 May 7 in Q-CO.NB *) composite[Q,id[range[SINGLETON]]] := cart[range[SINGLETON],range[SINGLETON]] (* derived 2004 July 26 in DORAFUNS.NB *) composite[Q,image[DORA,FUNS]] := image[DORA,FUNS] (* added 2001 December 17 based on Q-HAT.NB *) composite[Q,inverse[CARD]] := inverse[CARD] (* derived 2007 April 30 in SMALLER.NB *) composite[Q,inverse[SMALLER]] := inverse[SMALLER] (* Theorem Q-6B in Q proved 2000 April 25 *) composite[Q,Q] := Q (* Theorem Q-CO-SG in Q proved 2000 May 7 *) composite[Q,SINGLETON] := cart[V,range[SINGLETON]] (* derived 2004 April 6 in SMALLER.NB *) composite[Q,SMALLER] := SMALLER (* derived 2008 October 9 in QUASIGP.NB *) composite[quasigp[x_],id[cart[V,V]]] := quasigp[x] (* derived 2008 October 18 in QG-ROT.NB *) composite[quasigp[x_],intersection[composite[inverse[FIRST],rotate[composite[quasigp[x_],SWAP]]], composite[inverse[SECOND],SECOND]]] := composite[FIRST,id[domain[quasigp[x]]]] (* derived 2008 October 15 in QG-L-R.NB *) composite[quasigp[x_],intersection[composite[inverse[FIRST],SECOND], composite[inverse[SECOND],rotate[quasigp[x_]]]]] := composite[FIRST,id[domain[quasigp[x]]]] (* derived 2008 October 9 in QUASIGP.NB *) composite[quasigp[x_],inverse[FIRST]] := domain[quasigp[x]] (* derived 2008 October 9 in QUASIGP.NB *) composite[quasigp[x_],inverse[SECOND]] := domain[quasigp[x]] (* derived 2006 May 18 in RK-ACL.NB *) composite[RANK,ACLOSURE] := RANK (* derived 2006 May 21 in RK-SC.NB *) composite[RANK,BIGCUP] := composite[BIGCUP,RANK] (* derived 2004 December 24 in CARD.NB *) composite[RANK,CARD] := CARD (* added 2001 August 5 based on RK-U.NB *) composite[RANK,CUP] := composite[CUP,cross[RANK,RANK]] (* added 2001 August 13 based on RANK-SR.NB *) composite[RANK,id[complement[REGULAR]]] := 0 (* derived 2007 December 8 in RANK-ORD.NB *) composite[RANK,id[nat[x_]]] := id[nat[x]] (* derived 2005 November 19 in REGULAR.NB *) composite[RANK,id[omega]] := id[omega] (* added 2001 August 1 based on RK-TC.NB *) composite[RANK,id[OMEGA]] := id[OMEGA] (* derived 2007 December 8 in RANK-ORD.NB *) composite[RANK,id[ord[x_]]] := id[ord[x]] (* added 2002 October 22 based on CO-ID.NB *) composite[RANK,id[REGULAR]] := RANK (* added 2001 August 4 based on RK-IMS.NB *) composite[RANK,IMAGE[inverse[S]]] := RANK (* added 2001 August 12 based on RANK-1.NB *) composite[RANK,IMAGE[RANK]] := composite[RANK,IMAGE[id[REGULAR]]] (* added 2001 July 31 based on RK-ZN-IM.NB *) composite[RANK,IMAGE[ZN]] := RANK (* added 2001 August 5 based on RK-U.NB *) composite[RANK,PAIRSET] := composite[CUP, cross[composite[SUCC,RANK],composite[SUCC,RANK]]] (* added 2001 August 4 based on RK-PC.NB *) composite[RANK,POWER] := composite[SUCC,RANK] (* Theorem RK-RK-2 in RANK2 proved 2001 July 25 *) composite[RANK,RANK] := RANK (* derived 2007 August 6 in RK-RA-OL.NB *) composite[RANK,RC[omega],id[omega]] := cart[omega,set[omega]] (* derived 2005 January 5 in RANK-S.NB *) composite[RANK,S] := composite[id[OMEGA],S,RANK] (* added 2001 August 4 based on RK-IMS.NB *) composite[RANK,SINGLETON] := composite[SUCC,RANK] (* added 2001 August 5 based on RK-U.NB *) composite[RANK,SUCC] := composite[SUCC,RANK] (* added 2001 August 1 based on RK-TC.NB *) composite[RANK,TC] := RANK (* derived 2006 May 21 in RK-UCL.NB *) composite[RANK,UCLOSURE] := composite[SUCC,BIGCUP,RANK] (* derived 2004 August 14 in ZN-RULES.NB *) composite[RANK,VERTSECT[ZN]] := composite[SUCC,RANK] (* derived 2003 December 25 in RC-CUP.NB *) composite[RC[x_],CUP] := composite[CAP,cross[RC[x],RC[x]]] (* derived 2008 August 7 in TARSKI.NB *) composite[RC[x_],Di,RC[x_]] := composite[id[intersection[image[V,set[x]],P[x]]],Di,id[P[x]]] (* added 1999 December 19 based on RC-5.NB *) composite[RC[x_],DISJOINT] := composite[id[P[x]],S,IMAGE[id[x]],id[image[V,set[x]]]] (* added 2003 September 11 based on ID-IMV.NB *) composite[RC[x_],y___,id[image[V,set[x_]]]] := composite[RC[x],y] (* derived 2004 April 26 in ANTITONE.NB *) composite[RC[x_],y___,id[intersection[z_,image[V,set[x_]]]]] := composite[RC[x],y,id[z]] (* added 2002 October 22 based on CO-ID.NB *) composite[RC[x_],id[intersection[y_,P[x_]]]] := composite[RC[x],id[y]] (* added 1999 October 29 based on 1999 October 28 session RC-LOG.1 *) composite[RC[x_],id[P[x_]]] := RC[x] (* added 1999 December 24 based on SYMDIF-2.NB *) composite[RC[x_],image[inverse[SYMDIF],set[x_]]] := id[intersection[image[V,set[x]],P[x]]] (* added 1999 November 6 based on CO-4.LOG *) composite[RC[x_],inverse[IMAGE[id[x_]]]] := RC[x] (* derived 2008 August 7 in TARSKI.NB *) composite[RC[x_],inverse[PS],id[P[x_]]] := composite[id[P[x]],PS,RC[x]] (* added 1999 December 19 based on RC-5.NB *) composite[RC[x_],inverse[S],id[P[x_]]] := composite[id[P[x]],S,RC[x]] (* added 1999 December 19 based on RC-5.NB *) composite[RC[x_],inverse[S],IMAGE[id[x_]]] := composite[RC[x],inverse[S]] (* added 1999 October 31 based on DIF-LEFT.NB *) composite[RC[x_],RC[x_]] := id[intersection[image[V,set[x]],P[x]]] (* added 1999 December 19 based on RC-5.NB *) composite[RC[x_],S] := composite[id[P[x]],DISJOINT, id[intersection[image[V,set[x]],P[x]]]] (* added 2003 September 11 based on ID-IMV.NB *) composite[RC[U[x_]],y___,id[image[V,set[x_]]]] := composite[RC[U[x]],y] (* Theorem REG-CO2 in REG2 proved 1999 March 15 *) composite[REGULAR,x_] := cart[image[inverse[x],REGULAR],REGULAR] (* Theorem REG-CO1 in REG2 proved 1999 March 15 *) composite[x_,REGULAR] := cart[REGULAR,image[x,REGULAR]] (* added 2003 May 31 based on RS-CO.NB *) composite[RESTRICT,complement[S]] := composite[id[P[cart[V,V]]],complement[S]] (* derived 2005 November 9 in RESTRICT.NB *) composite[RESTRICT,COMPOSE] := composite[COMPOSE,cross[Id,RESTRICT]] (* derived 2005 November 9 in RESTRICT.NB *) composite[RESTRICT,FUNPART] := composite[inverse[S],FUNPART] (* derived 2006 October 29 in OOPART.NB *) composite[RESTRICT,id[FUNS]] := composite[inverse[S],id[FUNS]] (* derived 2008 May 6 in RS-DO.NB *) composite[RESTRICT,IMAGE[DUP]] := composite[inverse[S],IMAGE[DUP]] (* added 2003 May 30 based on RESTRICT.NB *) composite[RESTRICT,IMAGE[id[cart[V,V]]]] := RESTRICT (* added 2003 May 31 based on RS-CO.NB *) composite[RESTRICT,inverse[S]] := composite[inverse[S],IMAGE[id[cart[V,V]]]] (* added 2003 May 30 based on RESTRICT.NB *) composite[RESTRICT,RESTRICT] := RESTRICT (* derived 2005 November 9 in RESTRICT.NB *) composite[RESTRICT,VS] := composite[inverse[S],VS] (* derived 2004 December 19 in QO-IDEM.NB *) composite[rfx[thinpart[trv[x_]]],rfx[thinpart[trv[x_]]]] := rfx[thinpart[trv[x]]] (* derived 2004 December 17 in RFXTRV-C.NB *) composite[rfx[trv[x_]],complement[inverse[rfx[trv[x_]]]]] := composite[id[fix[trv[x]]],complement[inverse[rfx[trv[x]]]]] (* derived 2004 December 19 in QO-IDEM.NB *) composite[rfx[trv[x_]],rfx[trv[x_]]] := rfx[trv[x]] (* added 2002 December 28 based on REPLACE.NB *) composite[RIF,cross[composite[id[cart[V,V]],x_],y_]] := composite[RIF,cross[x,y]] (* added 2002 December 28 based on REPLACE.NB *) composite[RIF,cross[x_,composite[id[cart[V,V]],y_]]] := composite[RIF,cross[x,y]] (* added 2002 November 2 based on TWIST-IM.NB *) composite[RIF,cross[x_,composite[id[inverse[SECOND]],inverse[SECOND],inverse[FIRST]]]] := twist[rotate[composite[inverse[x],SWAP]]] (* added 2002 December 28 based on REPLACE.NB *) composite[RIF,cross[composite[SWAP,inverse[rotate[NATADD]]], composite[SWAP,inverse[rotate[NATADD]]]]] := composite[inverse[rotate[NATADD]],NATADD] (* derived 2006 December 14 in MIXMUL-3.NB *) composite[RIF,cross[composite[SWAP,inverse[rotate[x_]]],SWAP]] := composite[cross[composite[x,SWAP],Id],inverse[ASSOC]] (* added 2002 December 28 based on REPLACE.NB *) composite[RIF,cross[composite[SWAP,power[x_]],composite[SWAP,power[x_]]]] := composite[power[x],NATADD] (* added 2002 December 28 based on REPLACE.NB *) composite[RIF,cross[x_,composite[SWAP,RIF]],ASSOC] := composite[RIF,cross[composite[SWAP,RIF,cross[x,Id]],Id]] (* added 2002 December 27 based on RIF-ASS.NB *) composite[RIF,cross[x_,composite[SWAP,RIF,cross[y_,z_]]],ASSOC] := composite[RIF,cross[composite[SWAP,RIF,cross[x,y]],z]] (* added 2002 June 7 based on RIF-SWAP.NB *) composite[RIF,cross[cross[u_,v_],cross[x_,y_]],inverse[RIF]] := cross[v,composite[x,id[image[V,fix[composite[inverse[u],y]]]]]] (* added 2002 December 28 based on REPLACE.NB *) composite[RIF,cross[id[cart[V,V]],x_]] := composite[RIF,cross[Id,x]] (* added 2002 December 28 based on REPLACE.NB *) composite[RIF,cross[x_,id[cart[V,V]]]] := composite[RIF,cross[x,Id]] (* added 2001 January 20 based on TWIST-4.NB *) composite[RIF,cross[x_,inverse[FIRST]]] := cross[composite[SECOND,x],Id] (* added 2002 June 7 based on RIF.NB *) composite[RIF,cross[inverse[FIRST],x_]] := composite[inverse[SECOND],rotate[composite[inverse[x],SWAP]],SWAP] (* added 2002 December 28 based on REPLACE.NB *) composite[RIF,cross[x_,y_],inverse[ROT]] := composite[SWAP,RIF,cross[composite[SWAP,y],composite[SWAP,x]],ASSOC] (* added 2002 November 29 based on PLUS.NB *) composite[RIF,cross[inverse[rotate[NATADD]], composite[SWAP,inverse[rotate[NATADD]]]]] := composite[SWAP,EQUIDIFF] (* added 2002 December 23 based on RIF-TW.NB *) composite[RIF,cross[inverse[rotate[NATADD]],inverse[NATADD]]] := composite[inverse[NATADD],rotate[NATADD],SWAP] (* added 2002 December 23 based on RIF-TW.NB *) composite[RIF,cross[inverse[rotate[NATADD]],inverse[rotate[NATADD]]]] := composite[SWAP,inverse[rotate[NATADD]],NATADD] (* added 2001 January 20 based on TWIST-4.NB *) composite[RIF,cross[inverse[SECOND],x_]] := cross[Id,composite[FIRST,x]] (* added 2002 June 7 based on RIF.NB *) composite[RIF,cross[x_,inverse[SECOND]]] := composite[inverse[FIRST],rotate[inverse[x]]] (* added 2002 June 12 based on NATADD.NB *) composite[RIF,cross[power[x_],power[x_]]] := composite[SWAP,power[x],NATADD] (* derived 2008 June 22 in PO-ISO-S.NB *) composite[RIF,cross[SWAP,cross[Id,S]],inverse[E],CART,DUP,VS,id[PO]] := composite[id[cart[V,V]],inverse[E],id[PO]] (* added 2002 July 9 based on RIFASSOC.NB *) composite[RIF,cross[SWAP,inverse[rotate[x_]]]] := composite[cross[Id,x],ASSOC] (* added 2002 December 28 based on REPLACE.NB *) composite[RIF,cross[SWAP,SWAP],inverse[RIF]] := cart[Id,Id] (* added 2002 January 2 based on ASSOC2.NB *) composite[RIF,DUP] := id[Id] (* added 2007 based on RIF-IN.NB *) composite[RIF,id[cart[x_,cart[V,V]]]] := composite[RIF,id[cart[x,V]]] (* added 2007 based on RIF-IN.NB *) composite[RIF,id[cart[cart[V,V],x_]]] := composite[RIF,id[cart[V,x]]] (* added 2002 April 5 based on REIFY.NB *) composite[RIF,id[cart[x_,y_]],inverse[FIRST]] := composite[SWAP,cross[inverse[y],Id],id[x]] (* added 2002 April 5 based on REIFY.NB *) composite[RIF,id[cart[x_,y_]],inverse[SECOND]] := composite[SWAP,cross[Id,x],id[y]] (* added 2002 April 6 based on SUBST.NB *) composite[RIF,id[cart[V,cart[V,V]]]] := RIF (* added 2001 January 20 based on RIF-2.NB *) composite[RIF,id[cart[V,V]]] := RIF (* added 2002 December 19 based on IDX-RIF.NB *) composite[RIF,id[composite[id[y_],inverse[SECOND],FIRST,id[x_]]]] := composite[RIF,id[cart[x,y]]] (* added 2002 October 22 based on CO-ID.NB *) composite[RIF,id[composite[inverse[SECOND],FIRST]]] := RIF (* derived 2004 January 7 in VSLAMBDA.NB *) composite[RIF,intersection[composite[inverse[FIRST],x_], composite[inverse[SECOND],DUP,y_]]] := composite[SWAP,intersection[x,composite[inverse[FIRST],y]]] (* derived 2004 January 7 in VSLAMBDA.NB *) composite[RIF,intersection[composite[inverse[FIRST],x_], composite[inverse[SECOND],inverse[E],IMAGE[DUP]]]] := composite[SWAP,intersection[x,composite[inverse[FIRST],inverse[E]]]] (* derived 2008 August 20 in RIF-WF.NB *) composite[RIF,intersection[composite[inverse[SECOND],x_],composite[inverse[FIRST],DUP,y_]]] := composite[SWAP,intersection[x,composite[inverse[SECOND],y]]] (* added 2001 February 1 based on RIF-1.NB *) composite[RIF,inverse[FIRST]] := composite[inverse[FIRST],SECOND] (* added 2001 February 1 based on RIF-1.NB *) composite[RIF,inverse[SECOND]] := composite[inverse[SECOND],FIRST] (* added 2002 August 31 based on RIF.NB *) composite[RIF,LEFT[x_]] := composite[LEFT[second[x]],inverse[RIGHT[first[x]]]] (* added 2002 August 31 based on RIF.NB *) composite[RIF,RIGHT[x_]] := composite[RIGHT[first[x]],inverse[LEFT[second[x]]]] (* added 2002 December 28 based on REPLACE.NB *) composite[RIF,SWAP] := composite[SWAP,RIF,cross[SWAP,SWAP]] (* added 2001 January 20 based on RIF-2.NB *) composite[RIF,TWIST] := composite[SWAP,RIF] (* added 2003 September 11 based on ID-IMV.NB *) composite[RIGHT[x_],y___,id[image[V,set[x_]]]] := composite[RIGHT[x],y] (* added 2003 July 15 based on L-R-PAIR.NB *) composite[RIGHT[x_],id[image[V,set[first[x_]]]]] := RIGHT[PAIR[first[x],second[x]]] (* added 2002 August 28 based on RIGHT.NB *) composite[RIGHT[x_],id[intersection[y_,image[V,set[x_]]]]] := composite[RIGHT[x],id[y]] (* added 2002 December 28 based on ROT-TW.NB *) composite[ROT,cross[composite[SWAP,ROT],Id],ROT] := composite[TWIST,cross[SWAP,SWAP]] (* derived 2004 July 27 in ROTASSOC.NB *) composite[ROT,cross[cross[x_,y_],z_],inverse[ROT]] := cross[cross[z,x],y] (* added 2002 June 16 based on LEFT-ROT.NB *) composite[ROT,cross[LEFT[x_],Id]] := composite[SWAP,cross[Id,RIGHT[x]]] (* added 2002 October 22 based on CO-ID.NB *) composite[ROT,id[cart[cart[V,V],V]]] := ROT (* added 1999 August 3 *) composite[ROT,id[cart[V,V]]] := ROT (* added 1999 October 31 based on ASSOC.1 *) composite[ROT,inverse[ASSOC]] := composite[inverse[ROT],SWAP] (* added 1999 October 12 based on ROT.1 *) composite[ROT,inverse[FIRST]] := cross[inverse[SECOND],Id] (* added 1999 October 12 based on ROT.1 *) composite[ROT,inverse[SECOND]] := composite[inverse[FIRST],inverse[FIRST]] (* added 2002 June 16 based on LEFT-ROT.NB *) composite[ROT,LEFT[x_]] := composite[RIGHT[second[x]],RIGHT[first[x]]] (* added 1999 November 4 based on 1999/NOV/03/WORK/FLIP-ROT.1 *) composite[ROT,RIGHT[x_]] := cross[LEFT[x],Id] (* added 1999 September 3 based on ROTATE.3 *) composite[ROT,ROT] := inverse[ROT] (* added 1999 October 13 based on ASSOC.1 *) composite[ROT,SWAP] := inverse[ASSOC] (* derived 2005 July 30 in RO-ASSOC.NB *) composite[rotate[composite[x_,ASSOC]],ASSOC] := rotate[inverse[rotate[x]]] (* added 2002 October 27 based on NATMUL.NB *) composite[rotate[composite[complement[composite[complement[ composite[FIRST,intersection[ composite[inverse[SECOND],SECOND,SECOND,SECOND], composite[power[SUCC],SECOND,SECOND,FIRST]], id[cross[composite[id[omega],SUCC], composite[inverse[FIRST],FIRST]]],cross[inverse[E],Id]]], id[composite[inverse[E],IMAGE[id[complement[cart[set[0],Id]]]]]], inverse[FIRST]]],inverse[IMAGE[cross[Id,inverse[LEFT[0]]]]],E]], id[cart[omega,V]]] := NATMUL (* added 2002 October 27 based on NATMUL.NB *) composite[rotate[composite[complement[composite[complement[ composite[rotate[composite[inverse[power[SUCC]],SWAP]], RIF,cross[SECOND,composite[SWAP,SECOND]], id[composite[id[cart[omega,V]],inverse[FIRST],SUCC, FIRST]],cross[inverse[E],Id]]], id[composite[inverse[E],IMAGE[id[complement[cart[set[0],Id]]]]]], inverse[FIRST]]],inverse[IMAGE[cross[Id,inverse[LEFT[0]]]]],E]], id[cart[omega,V]]] := NATMUL (* added 2003 January 23 based on REIF-MUL.NB *) composite[rotate[composite[complement[composite[complement[composite[ rotate[NATADD],SWAP,RIF,cross[SECOND,composite[SWAP,SECOND]], id[composite[id[cart[omega,V]],inverse[FIRST],SUCC,FIRST]], cross[inverse[E],Id]]],id[composite[inverse[E], IMAGE[id[complement[cart[set[0],Id]]]]]],inverse[FIRST]]], inverse[IMAGE[cross[Id,inverse[LEFT[0]]]]],E]], id[cart[omega,V]]] := NATMUL (* derived 2008 July 29 in FUNAPPLY.NB *) composite[rotate[composite[IMG,SWAP]],cross[SINGLETON,SINGLETON]] := composite[inverse[FUNPART],INVERSE,E] (* added 2002 November 14 based on POW-SUC.NB *) composite[rotate[composite[inverse[power[SUCC]],SWAP]],id[cart[V,omega]]] := composite[rotate[NATADD],SWAP] (* derived 2005 January 29 in NATSUB.NB *) composite[rotate[composite[inverse[power[SUCC]],SWAP]],SWAP,id[cart[omega,omega]]] := rotate[NATADD] (* added 2002 November 30 based on NATSUB.NB *) composite[rotate[composite[inverse[power[SUCC]],SWAP]],SWAP,id[cart[omega,V]]] := rotate[NATADD] (* derived 2005 January 29 in NATSUB.NB *) composite[rotate[composite[inverse[power[SUCC]],SWAP]],SWAP,id[composite[id[omega],x_,id[omega]]]] := composite[rotate[NATADD],id[x]] (* derived 2008 July 29 in FUNAPPLY.NB *) composite[rotate[composite[inverse[SINGLETON],IMG,SWAP]],cross[Id,SINGLETON]] := composite[inverse[FUNPART],INVERSE,E] (* derived 2008 July 29 in FUNAPPLY.NB *) composite[rotate[composite[inverse[SINGLETON],rotate[IMG]]],cross[Id,SINGLETON]] := composite[inverse[FUNPART],E] (* derived 2008 June 7 in IMG-DORA.NB *) composite[rotate[composite[S,inverse[DORA]]],cross[Id,inverse[S]]] := composite[inverse[S],IMG] (* revised 2002 June 19 based on ROT-DUP.NB *) composite[rotate[x_],DUP] := fix[composite[inverse[FIRST],x]] (* derived 2006 November 16 in CURMAP-2.NB *) composite[rotate[E],cross[composite[FUNPART,w_],Id]] := composite[inverse[SINGLETON],IMG,cross[w,SINGLETON]] (* derived 2006 October 31 in PLUS-ADD.NB *) composite[rotate[E],cross[composite[INVERSE,PLUS],Id]] := composite[rotate[NATADD],SWAP] (* added 2003 May 12 based on APPLY.NB *) composite[rotate[E],cross[FUNPART,Id]] := composite[inverse[SINGLETON],IMG,cross[Id,SINGLETON]] (* added 2002 October 24 based on ROT-E.NB *) composite[rotate[E],cross[Id,inverse[E]]] := composite[inverse[E],IMG] (* added 1999 December 28 based on REMOVED.NB *) composite[rotate[E],cross[IMAGE[id[cart[V,V]]],Id]] := rotate[E] (* derived 2006 December 21 in INTMUL-1.NB *) composite[rotate[E],cross[INTTIMES,Id]] := INTMUL (* derived 2006 December 6 in MIXMUL-1.NB *) composite[rotate[E],cross[MIXTIMES,Id]] := MIXMUL (* derived 2006 October 31 in PLUS-ADD.NB *) composite[rotate[E],cross[PLUS,Id]] := NATADD (* derived 2006 November 1 in REIF-TRI.NB *) composite[rotate[E],cross[TIMES,Id]] := NATMUL composite[rotate[x_],id[cart[V,V]]] := rotate[x] (* added 1999 December 22 based on IMINROT2.NB *) composite[rotate[x_],id[cart[y_,V]],inverse[SECOND]] := composite[Id,image[inverse[x],y]] (* added 2002 October 22 based on CO-ID.NB *) composite[rotate[x_],id[composite[FIRST,inverse[x_]]]] := rotate[x] (* added 2001 March 8 based on FUNRULE2.NB *) composite[rotate[x_],id[y_],inverse[FIRST]] := composite[SECOND, intersection[composite[inverse[FIRST],y],inverse[x]]] (* added 2001 March 8 based on FUNRULE2.NB *) composite[rotate[x_],id[y_],inverse[SECOND]] := fix[composite[inverse[FIRST],y,x]] (* derived 2008 October 12 in ROTATE.NB *) composite[rotate[x_],intersection[composite[inverse[FIRST],y_],composite[inverse[SECOND],z_]]] := composite[SECOND,intersection[composite[inverse[FIRST],z],composite[inverse[x],y]]] (* added 1999 September 3 based on ROTATE.4 *) composite[rotate[x_],inverse[FIRST]] := composite[SECOND,inverse[x]] (* derived 2005 January 25 *) composite[rotate[inverse[x_]],id[cart[domain[VERTSECT[x_]],V]]] := rotate[inverse[thinpart[x]]] (* added 2002 June 24 based on NATADD.NB *) composite[rotate[inverse[power[SUCC]]],id[cart[V,omega]]] := NATADD (* added 2002 June 24 based on NATADD.NB *) composite[rotate[inverse[power[SUCC]]],SWAP,id[cart[omega,V]]] := NATADD (* derived 2005 July 30 in RO-ASSOC.NB *) composite[rotate[inverse[rotate[x_]]],id[cart[cart[V,V],V]]] := rotate[inverse[rotate[x]]] (* added 1999 September 3 based on ROTATE.4 *) composite[rotate[x_],inverse[SECOND]] := composite[Id,domain[x]] (* added 1999 November 20 based on CURRY.NB *) composite[rotate[x_],LEFT[y_]] := composite[Id,image[inverse[x],set[y]]] (* added 2002 October 29 based on ASSOC.NB *) composite[rotate[NATADD],cross[Id,rotate[NATADD]],ASSOC,cross[DUP,Id]] := composite[SECOND,id[composite[id[omega],inverse[S],id[omega]]]] (* added 2002 September 24 based on ADD-S.NB *) composite[rotate[NATADD],cross[Id,composite[S,id[omega]]]] := composite[id[omega],inverse[S],rotate[NATADD]] (* added 2002 September 17 based on SUBRECUR.NB *) composite[rotate[NATADD],cross[Id,NATADD],ASSOC] := composite[rotate[NATADD],cross[rotate[NATADD],Id]] (* added 2002 September 21 based on ROT-ADD.NB *) composite[rotate[NATADD],cross[image[inverse[NATADD],set[x_]],Id]] := composite[image[inverse[NATADD],set[x]],NATADD] (* derived 2006 February 16 in PO-PLUS.NB *) composite[rotate[NATADD],cross[inverse[plus[x_]],Id]] := composite[inverse[plus[x]],rotate[NATADD]] (* added 2003 August 8 based on REPLACE.NB *) composite[rotate[NATADD],cross[plus[x_],plus[x_]]] := composite[id[image[V,intersection[omega,set[x]]]],rotate[NATADD]] (* added 2002 September 16 based on SUB-SUCC.NB *) composite[rotate[NATADD],cross[SUCC,SUCC]] := rotate[NATADD] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[rotate[NATADD],EQUIDIFF] := rotate[NATADD] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[rotate[NATADD],id[cart[omega,omega]]] := rotate[NATADD] (* added 2002 November 10 based on ADD-RO.NB *) composite[rotate[NATADD],id[cart[omega,V]]] := rotate[NATADD] (* derived 2005 January 29 in NATSUB.NB *) composite[rotate[NATADD],id[composite[id[omega],E]]] := 0 (* added 2002 November 30 based on NATSUB.NB *) composite[rotate[NATADD],id[composite[id[omega],inverse[S],id[omega]]]] := rotate[NATADD] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[rotate[NATADD],id[inverse[S]]] := rotate[NATADD] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[rotate[NATADD],inverse[VERTSECT[EQUIDIFF]]] := composite[inverse[PLUS],INVERSE] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[rotate[NATADD],SWAP,EQUIDIFF] := composite[rotate[NATADD],SWAP] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[rotate[NATADD],SWAP,id[cart[omega,omega]]] := composite[rotate[NATADD],SWAP] (* added 2002 November 30 based on NATSUB.NB *) composite[rotate[NATADD],SWAP,id[composite[id[omega],S,id[omega]]]] := composite[rotate[NATADD],SWAP] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[rotate[NATADD],SWAP,id[S]] := composite[rotate[NATADD],SWAP] (* added 2002 June 21 based on NATSUB.NB *) composite[rotate[NATADD],SWAP,inverse[rotate[NATADD]]] := cart[set[0],set[0]] (* derived 2005 May 21 in MOD-DUP.NB *) composite[rotate[NATMUL],inverse[NATMOD]] := cart[set[0],omega] (* added 1999 November 20 based on CURRY.NB *) composite[rotate[x_],RIGHT[y_]] := composite[inverse[LEFT[y]],inverse[x]] (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,ACLOSURE,S] := composite[S,ACLOSURE] (* Theorem ADJ-CO2 in ADJ proved 1999 March 13 *) composite[S,ADJOIN[x_]] := composite[id[image[S,set[x]]],S] (* Theorem POW-BC6 in POW4 proved 1998 December 20 *) composite[S,BIGCUP] := composite[inverse[POWER],S] (* added 2003 July 4 based on COARSER.NB *) composite[S,COARSER] := S (* added 2003 October 21 based on COMMUTE.NB *) composite[S,COMMUTE] := cart[V,V] (* Theorem SR-CO10 in SR2 added 1998 July 31 *) composite[S,complement[E]] := cart[V,V] (* added 1998 August 23 *) composite[S,complement[inverse[E]]] := composite[inverse[POWER],complement[inverse[S]]] (* Theorem SR-C-CO5 in SR/C *) composite[S,complement[inverse[S]]] := composite[Id,complement[inverse[S]]] (* Theorem SR-CO11 in SR2 added 1998 July 31 *) composite[S,complement[S]] := cart[complement[set[0]],V] (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,CORE[x_],S] := composite[S,CORE[x]] (* derived 2007 September 23 in CAP-ID-K.NB *) composite[S,CUP,id[K]] := composite[S,SECOND,id[K]] (* added 1998 September 24 based on session SR-CO-DI.LOG *) composite[S,Di] := union[cart[V,complement[set[0]]],cart[complement[set[0]],V]] (* Theorem DJT-CO-S in DJT *) composite[S,DISJOINT] := cart[V,V] (* derived 2005 May 5 in S-DIV.NB *) composite[S,DIV] := cart[omega,V] (* Theorem SR-CO5 in SR2 *) composite[S,E] := E (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,HC,S] := composite[S,HC] (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,HULL[x_],S] := composite[S,HULL[x]] (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,id[BIJ],S] := composite[S,id[BIJ]] (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,id[chains[x_]],S] := composite[S,id[chains[x]]] (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,id[cliques[x_]],S] := composite[S,id[cliques[x]]] (* added 2001 May 8 based on CORE-2.NB *) composite[S,id[x_],E] := composite[inverse[CORE[x]],E] (* derived 2005 November 2 in S-RS.NB *) composite[S,id[FINITE],S] := composite[S,id[FINITE]] (* added 2001 April 2 based on HF-X.NB *) composite[S,id[FULL],S] := composite[S,TC] (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,id[FUNS],S] := composite[S,id[FUNS]] (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,id[image[inverse[S],x_]],S] := composite[S,id[image[inverse[S],x]]] (* derived 2006 October 16 in PAIRSET.NB *) composite[S,id[image[PAIRSET,x_]],inverse[S]] := composite[Id,complement[image[inverse[CAP],cliques[complement[x]]]]] (* added 2001 May 2 based on ADJOIN.NB *) composite[S,id[image[S,set[x_]]],S] := composite[id[image[S,set[x]]],S] (* derived 2005 May 17 in S-OM-C-E.NB *) composite[S,id[omega],complement[E]] := cart[V,V] (* derived 2005 November 2 in S-RS.NB *) composite[S,id[omega],S,id[omega]] := composite[S,id[omega]] (* direction needed for Normality of IMAGE[id[x]] *) composite[S,id[P[x_]]] := composite[inverse[IMAGE[id[x]]],S] (* derived 2006 October 16 in PAIRSET.NB *) composite[S,id[range[PAIRSET]],inverse[S]] := composite[E,inverse[E]] composite[S,id[range[SINGLETON]]] := composite[inverse[IMAGE[SINGLETON]],E] (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,id[REGULAR],S] := composite[S,id[REGULAR]] (* derived 2008 October 27 in S-ID-S.NB *) composite[S,id[x_],S] := composite[S,id[x]] /; equal[image[inverse[S],x],x] (* derived 2004 July 26 in DORAFUNS.NB *) composite[S,image[DORA,FUNS]] := union[cart[V,complement[set[0]]],cart[set[0],V]] (* derived 2008 June 7 in LB-UB-E.NB *) composite[S,image[DORA,P[E]]] := composite[inverse[BIGCUP],S] (* derived 2008 June 7 in LB-UB-E.NB *) composite[S,image[DORA,P[S]]] := composite[inverse[IMAGE[inverse[S]]],S] (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,IMAGE[x_],S] := composite[S,IMAGE[x]] (* added 2000 September 19 based on NEWRULE1.LOG *) composite[S,intersection[composite[DISJOINT,DIF], composite[complement[inverse[S]],SECOND]]] := composite[complement[inverse[S]],CUP] (* added 2003 January 25 based on INVAR.NB *) composite[S,INVAR] := cart[V,V] (* added 2001 March 4 based on INVERSE2.NB *) composite[S,INVERSE] := composite[inverse[IMAGE[SWAP]],S] (* added 2003 June 6 based on ACL-UCL.NB *) composite[S,inverse[BIGCAP]] := composite[inverse[ACLOSURE],E] (* added 2002 September 24 based on MONOTONE.NB *) composite[S,inverse[BIGCUP]] := composite[inverse[UCLOSURE],E] (* added 2000 December 24 based on LT-CO-S *) composite[S,inverse[GREATEST[x_]]] := composite[inverse[IMAGE[id[fix[x]]]],E] (* derived 2008 June 7 in LB-UB-E.NB *) composite[S,inverse[image[DORA,P[thinpart[x_]]]]] := composite[inverse[IMAGE[thinpart[x]]],S] (* derived 2008 June 7 in LB-UB-E.NB *) composite[S,inverse[image[DORA,P[ZN]]]] := inverse[ZN] (* inverse of IMG-SR-4 in IMG3 *) composite[S,inverse[IMAGE[f_]]] := composite[inverse[IMAGE[f]],S] /; FUNCTION[f] composite[S,inverse[IMAGE[id[x_]]]] := composite[inverse[IMAGE[id[x]]],S] (* added 2000 November 22 based on VS-MEMB.NB *) composite[S,inverse[LB[x_]]] := cart[V,V] (* added 2000 December 24 based on LT-CO-S *) composite[S,inverse[LEAST[x_]]] := composite[inverse[IMAGE[id[fix[x]]]],E] (* derived 2007 August 21 in CO-K-PS.NB *) composite[S,inverse[PS]] := cart[complement[set[0]],V] (* added 2003 May 31 based on RS-CO.NB *) composite[S,inverse[RESTRICT]] := composite[inverse[IMAGE[id[cart[V,V]]]],S] (* Theorem SR-CO7 in SR2 *) composite[S,inverse[S]] := cart[V,V] (* derived 2007 April 30 in SMALLER.NB *) composite[S,inverse[SMALLER]] := cart[complement[set[0]],V] (* derived 2005 February 4 in X3943.NB *) composite[S,inverse[TC],E] := composite[inverse[TC],E] (* added 2001 July 15 based on ZN-AGAIN.NB *) composite[S,inverse[ZN]] := inverse[ZN] (* Theorem K-SR1 in K proved 2000 May 16 *) composite[S,K] := PS (* added 2000 December 23 based on CO-S-LB.NB *) composite[S,LB[LB[x_]]] := cart[V,V] (* added 2000 December 23 based on CO-S-LB.NB *) composite[S,LB[UB[x_]]] := cart[V,V] (* added 2002 April 28 based on CLIQUES.NB *) composite[S,PAIRSET,complement[inverse[E]]] := composite[complement[inverse[E]],CLIQUES] (* Theorem PS-CO-2 in PS added 1998 August 9 *) composite[S,PS] := PS (* Theorem Q-SR-CO in Q proved 2000 June 2 *) composite[S,Q] := composite[Q,S] (* added 2003 May 31 based on RS-CO.NB *) composite[S,RESTRICT] := cart[V,V] (* Theorem SR-CO6 in SR2 *) composite[S,S] := S (* Theorem SG-SR2 in SG1 proved 1998 September 4 *) composite[S,SINGLETON] := E (* derived 2004 April 6 in SMALLER.NB *) composite[S,SMALLER] := SMALLER (* derived 2004 December 21 in SBCOMMUT.NB *) composite[S,SUBCOMMUTE] := cart[V,V] (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,SUBVAR,S] := composite[S,SUBVAR] (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,UCHAINS,S] := composite[S,UCHAINS] (* derived 2007 October 23 in SBCMT-S.NB *) composite[S,UCLOSURE,S] := composite[S,UCLOSURE] (* added 2001 July 14 based on ZN-IMG.NB *) composite[S,ZN] := cart[V,V] (* added 1999 November 4 based on ASSOC.NB *) composite[SECOND,ASSOC] := cross[SECOND,Id] (* derived 2005 July 30 in CATORELN.NB *) composite[SECOND,CATORELN] := composite[SECOND,FIRST,id[composite[id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]], inverse[SECOND],IMAGE[FIRST],FIRST,id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]]]]] (* derived 2008 July 10 in UBD-VS.NB *) composite[SECOND,complement[composite[cross[Id,E],complement[inverse[E]]]]] := composite[inverse[E],UBD,IMAGE[SWAP]] (* added 2000 August 9 based on DOROTEST.NB *) composite[SECOND,complement[inverse[E]]] := cart[V,V] (* Theorem X-2ND-CO in X1 proved 2000 August 1 *) composite[SECOND,cross[x_,y_]] := composite[y,SECOND,id[cart[domain[x],V]]] (* added 1999 August 31 based on 12-CO-DI *) composite[SECOND,Di] := cart[V,V] (* added 2001 December 23 based on DORA-2.NB *) composite[SECOND,DORA] := IMAGE[SECOND] (* Theorem DUP2ND-1 in DUP1 proved 1998 November 29 *) composite[SECOND,DUP] := Id (* added 2003 July 20 based on EQUIDIFF.NB *) composite[SECOND,EQUIDIFF] := composite[rotate[composite[inverse[S],NATADD]], SWAP,id[cart[V,omega]]] (* added 2002 October 22 based on CO-ID.NB *) composite[SECOND,FIRST,id[cart[cart[V,V],V]]] := composite[SECOND,FIRST] (* derived 2005 July 30 in RO-ASSOC.NB *) composite[SECOND,FIRST,id[inverse[DUP]]] := composite[SECOND,id[inverse[DUP]]] (* added 2007 based on RIF-IN.NB *) composite[SECOND,id[cart[x_,y_]],inverse[RIF]] := composite[SWAP,id[inverse[y]],cross[inverse[x],Id]] (* added 2003 January 12 based on ITERATE.NB *) composite[SECOND,id[cart[x_,y_]],power[z_]] := composite[id[y],iterate[z,x]] (* derived 2008 July 10 in UBD-VS.NB *) composite[SECOND,id[cart[range[SINGLETON],V]],inverse[CART],inverse[S]] := composite[inverse[E],UBD,IMAGE[SWAP]] (* Inverse of Normalization Rule for LEFT[x] added 1999 August 16 *) composite[SECOND,id[cart[set[x_],y_]]] := composite[id[y],inverse[LEFT[x]]] (* derived 2007 January 21 in ZADDSWAP.NB *) composite[SECOND,id[cart[x_,V]],inverse[INTADD]] := composite[INVERSE,image[inverse[INTADD],x]] (* added 1999 December 22 based on IMINROT2.NB *) composite[SECOND,id[cart[x_,V]],inverse[rotate[y_]]] := inverse[image[inverse[y],x]] composite[SECOND,id[cart[V,V]]] := SECOND composite[SECOND,id[complement[cart[V,V]]]] := 0 composite[SECOND,id[composite[Id,x_]]] := composite[SECOND,id[x]] (* added 1999 October 13 based on SESSION.3 *) composite[SECOND,id[x_],cross[y_,z_]] := intersection[composite[z,SECOND],composite[x,y,FIRST]] (* derived 2008 August 27 in UNOPS.NB *) composite[SECOND,id[x_],DORA] := composite[IMAGE[SECOND],id[image[inverse[DORA],x]]] (* Theorem DUP2ND-2 in DUP1 proved 1998 November 29 *) composite[SECOND,id[Id]] := inverse[DUP] composite[SECOND,id[id[x_]]] := composite[id[x],inverse[DUP]] composite[SECOND,id[x_],intersection[composite[inverse[FIRST],y_], composite[inverse[SECOND],z_]]] := intersection[z,composite[x,y]] (* added 2002 October 29 based on REIF-NAT.NB *) composite[SECOND,id[x_],intersection[composite[y_,SECOND], composite[inverse[FIRST],FIRST]]] := composite[intersection[composite[x,SECOND],rotate[inverse[y]]],SWAP] (* Theorem X-2ND1ST in X2 proved 1999 August 25 *) composite[SECOND,id[x_],inverse[FIRST]] := composite[Id,x] (* added 2002 May 16 based on ROTATE.NB *) composite[SECOND,id[x_],inverse[rotate[z_]]] := inverse[fix[composite[inverse[FIRST],x,z]]] (* Theorem 2ND-CO4 in 2ND proved 1999 August 25 *) composite[SECOND,id[x_],inverse[SECOND]] := id[range[x]] (* added 2003 May 30 based on FIX-ROT.NB *) composite[SECOND,intersection[composite[cross[Id,inverse[SECOND]],SECOND], composite[SWAP,cross[inverse[FIRST],Id],FIRST]]] := composite[RIF,cross[SWAP,SWAP]] (* revised 1999 October 13 based on SESSION.1 *) composite[SECOND,intersection[composite[x_,FIRST], composite[inverse[FIRST],SECOND]]] := rotate[inverse[x]] (* added 1999 December 2 based on 1999/DEC/01/WORK/PAIRSET.4 *) composite[SECOND,intersection[composite[inverse[CUP],x_], composite[inverse[FIRST],y_]]] := composite[FIRST,intersection[composite[inverse[CUP],x], composite[inverse[SECOND],y]]] (* added 1999 November 14 based on IMG1.NB *) composite[SECOND,intersection[composite[inverse[E],FIRST], composite[inverse[FIRST],inverse[E],SECOND]]] := composite[inverse[E],IMG] (* added 1999 December 1 based on TRI-E.NB *) composite[SECOND,intersection[composite[inverse[E],IMAGE[SWAP],x_],composite[inverse[FIRST],y_]]] := composite[FIRST,intersection[composite[inverse[E],x],composite[inverse[SECOND],y]]] (* derived 2007 March 2 in LD-1.NB *) composite[SECOND,intersection[composite[inverse[FIRST],DIV],composite[inverse[NATADD],DIV]]] := DIV (* added 2002 June 20 based on ITERNORM.NB *) composite[SECOND,intersection[composite[inverse[FIRST],x_,FIRST], composite[inverse[E],id[intersection[P[cart[omega,V]], subvar[union[cross[SUCC,SUCC],id[cart[set[0],V]]]]]], complement[composite[intersection[E, composite[inverse[IMAGE[cross[SUCC,SUCC]]],complement[E]]], inverse[SECOND],Di]],SECOND]]] := composite[rotate[inverse[power[SUCC]]],cross[x,Id]] (* added 2000 September 21 based on CROSS.NB *) composite[SECOND,intersection[composite[inverse[FIRST],x_,FIRST], composite[inverse[rotate[y_]],SECOND]]] := rotate[composite[inverse[x],y,SWAP]] (* corrected 2000 September 9 based on CORRECT.LOG *) composite[SECOND,intersection[composite[inverse[FIRST],FIRST], composite[x_,SECOND]]] := composite[rotate[inverse[x]],SWAP] (* added 2000 September 21 based on LAMBRULE.NB *) composite[SECOND,intersection[ composite[inverse[FIRST],IMAGE[SWAP],FIRST], composite[inverse[rotate[E]],inverse[E],SECOND]]] := composite[inverse[E],IMG] (* derived 2005 May 17 based on NATMOD.NB *) composite[SECOND,intersection[composite[inverse[NATADD],FIRST],composite[inverse[FIRST],x_,SECOND]]] := composite[rotate[NATADD],cross[Id,x]] (* added 2002 October 29 based on RO-I.NB *) composite[SECOND,intersection[inverse[rotate[x_]],inverse[rotate[y_]]]] := inverse[fix[composite[inverse[x],y]]] (* added 1999 November 4 based on ASSOC.NB *) composite[SECOND,inverse[ASSOC]] := composite[SECOND,SECOND] (* added 2000 July 24 based on CAPCUP.NB *) composite[SECOND,inverse[CAP]] := S (* added 2000 July 24 based on CAPCUP.NB *) composite[SECOND,inverse[CUP]] := inverse[S] (* added 2001 March 8 based on DISJOINT.NB *) composite[SECOND,inverse[DIF]] := DISJOINT (* Theorem 2ND-CO1 in 2ND proved 1998 November 5 *) composite[SECOND,inverse[FIRST]] := cart[V,V] (* added 2003 August 11 based on DOROZADD.NB *) composite[SECOND,inverse[INTADD]] := cart[Z,Z] (* added 2002 June 21 based on NATADD.NB *) composite[SECOND,inverse[NATADD]] := composite[id[omega],inverse[S],id[omega]] (* derived 2008 October 9 in QUASIGP.NB *) composite[SECOND,inverse[quasigp[x_]]] := domain[quasigp[x]] (* added 2001 February 1 based on RIF-1.NB *) composite[SECOND,inverse[RIF]] := composite[inverse[FIRST],SECOND] (* added 1999 September 12 based on 1999\SEP\07\ROTATE.8 *) composite[SECOND,inverse[ROT]] := composite[FIRST,FIRST] (* added 1999 October 17 based on 1999\OCT\15\WORK\SESSION.1 *) composite[SECOND,inverse[rotate[x_]]] := inverse[domain[x]] (* added 1999 August 16 based on session NORMAL.5 *) composite[SECOND,LEFT[x_]] := id[image[V,set[x]]] (* added 2001 January 20 based on RIF-2.NB *) composite[SECOND,RIF] := composite[FIRST,SECOND, id[composite[inverse[SECOND],FIRST]]] (* Theorem RT-2ND in RIGHT proved 2000 July 21 *) composite[SECOND,RIGHT[x_]] := cart[V,set[x]] (* added 1999 September 12 based on 1999\SEP\07\ROTATE.8 *) composite[SECOND,ROT] := composite[SECOND,FIRST] (* added 2002 October 22 based on CO-ID.NB *) composite[SECOND,SECOND,id[cart[V,cart[V,V]]]] := composite[SECOND,SECOND] (* derived 2005 July 30 in RO-ASSOC.NB *) composite[SECOND,SECOND,id[DUP]] := composite[FIRST,id[DUP]] (* derived 2008 May 7 in 2-2-ID.NB *) composite[SECOND,SECOND,id[inverse[SECOND]]] := composite[FIRST,id[inverse[SECOND]]] (* Theorem 2ND-SW-2 in 2ND proved 1998 November 3 *) composite[SECOND,SWAP] := FIRST (* added 1999 October 11 based on 1999\OCT\10\ASSOC.2 *) composite[SECOND,TWIST] := cross[SECOND,SECOND] (* added 2003 July 20 based on DIRECT12.NB *) composite[SECOND,twist[x_]] := rotate[composite[FIRST,inverse[x]]] (* derived 2008 October 19 in SEMIGP.NB *) composite[semigp[x_],cross[Id,semigp[x_]],ASSOC] := composite[semigp[x],cross[semigp[x],Id]] (* derived 2008 December 6 in SGP-ASS.NB *) composite[semigp[x_],cross[semigp[x_],Id],inverse[ASSOC]] := composite[semigp[x],cross[Id,semigp[x]]] (* derived 2008 October 19 in SEMIGP.NB *) composite[semigp[x_],id[cart[V,V]]] := semigp[x] (* derived 2008 October 22 in ASS-TRV.NB *) composite[semigp[x_],inverse[SECOND],semigp[x_],inverse[FIRST]] := composite[semigp[x],inverse[FIRST],semigp[x],inverse[SECOND]] (* derived 2008 December 6 in SGP-ASS.NB *) composite[semigp[x_],LEFT[y_],semigp[x_],LEFT[z_]] := composite[semigp[x],LEFT[APPLY[semigp[x],PAIR[y,z]]]] (* derived 2008 December 6 in SGP-ASS.NB *) composite[semigp[x_],RIGHT[z_],semigp[x_],RIGHT[y_]] := composite[semigp[x],RIGHT[APPLY[semigp[x],PAIR[y,z]]]] (* added 2001 November 29 based on CO-SS.NB *) composite[x_,set[y_]] := cart[set[first[y]],image[x,set[second[y]]]] (* added 2001 November 29 based on CO-SS.NB *) composite[set[x_],y_] := cart[image[inverse[y],set[first[x]]],set[second[x]]] composite[SINGLETON,complement[inverse[E]]] := composite[id[range[SINGLETON]],complement[inverse[S]]] (* added 2001 November 27 based on IN-SS.NB *) composite[x_,set[pair[y_,z_]]] := cart[set[y],image[x,set[z]]] (* added 2001 November 27 based on IN-SS.NB *) composite[set[pair[x_,y_]],z_] := cart[image[inverse[z],set[x]],set[y]] (* derived 2007 April 30 in SMALLER.NB *) composite[SMALLER,inverse[S]] := cart[V,complement[set[0]]] (* derived 2007 April 30 in SMALLER.NB *) composite[SMALLER,inverse[SMALLER]] := cart[complement[set[0]],complement[set[0]]] (* derived 2004 April 6 in SMALLER.NB *) composite[SMALLER,Q] := SMALLER (* derived 2004 April 6 in SMALLER.NB *) composite[SMALLER,S] := SMALLER (* added 2003 January 30 *) composite[SUBCOMMUTE,complement[E]] := cart[V,V] (* added 2003 January 30 *) composite[SUBCOMMUTE,complement[S]] := cart[complement[set[0]],V] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[SUBCOMMUTE,DISJOINT] := cart[V,V] (* added 2003 January 30 *) composite[SUBCOMMUTE,IMAGE[DUP]] := composite[inverse[IMAGE[SWAP]],inverse[INVAR]] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[SUBCOMMUTE,IMAGE[id[cart[V,V]]]] := SUBCOMMUTE (* derived 2004 December 21 in SBCOMMUT.NB *) composite[SUBCOMMUTE,inverse[S]] := cart[V,V] (* added 2003 January 30 *) composite[SUBCOMMUTE,inverse[SUBCOMMUTE]] := cart[V,V] (* added 2003 January 30 *) composite[SUBCOMMUTE,SUBCOMMUTE] := cart[V,V] (* derived 2004 January 19 in SUBVAR.NB *) composite[SUBVAR,CART,DUP] := POWER (* derived 2006 October 12 in REIF-SBV.NB *) composite[SUBVAR,CORE[RFX]] := composite[POWER,IMAGE[inverse[DUP]]] (* derived 2006 October 12 in REIF-SBV.NB *) composite[SUBVAR,id[EQV]] := composite[POWER,IMAGE[inverse[DUP]],id[EQV]] (* derived 2006 October 12 in REIF-SBV.NB *) composite[SUBVAR,id[PO]] := composite[POWER,IMAGE[inverse[DUP]],id[PO]] (* derived 2007 October 30 in PROJ-SBV.NB *) composite[SUBVAR,id[PROJ]] := composite[POWER,IMAGE[inverse[DUP]],id[PROJ]] (* derived 2006 October 12 in REIF-SBV.NB *) composite[SUBVAR,id[RFX]] := composite[POWER,IMAGE[inverse[DUP]],id[RFX]] (* derived 2006 October 12 in REIF-SBV.NB *) composite[SUBVAR,id[WF]] := cart[WF,set[set[0]]] (* added 2000 February 15 based on SUBVAR4.NB *) composite[SUBVAR,IMAGE[DUP]] := POWER (* added 2000 February 15 based on SUBVAR4.NB *) composite[SUBVAR,IMAGE[id[cart[V,x_]]]] := composite[IMAGE[id[P[x]]],SUBVAR] (* derived 2004 January 19 in SUBVAR.NB *) composite[SUBVAR,LAMBHULL] := composite[POWER,ACLOSURE] (* derived 2005 February 16 in BC-OM.NB *) composite[SUCC,BIGCUP,id[omega]] := composite[ADJOIN[set[0]],id[omega]] (* Theorem OM-SUC12 in OM3 *) composite[SUCC,id[omega]] := composite[id[omega],SUCC] (* added 2002 May 25 based on SUCC-ID.NB *) composite[SUCC,id[OMEGA]] := composite[id[OMEGA],SUCC] (* added 2002 April 18 based on SUCC.NB *) composite[SUCC,id[REGULAR]] := composite[id[REGULAR],SUCC] (* derived 2005 February 17 in X3741-49.NB *) composite[SUCC,id[U[nat[x_]]]] := composite[id[nat[x]],SUCC] (* derived 2006 March 14 in ORDRULES.NB *) composite[SUCC,id[U[ord[x_]]]] := composite[id[ord[x]],SUCC] (* added 1999 October 13 based on SESSION.1 *) composite[SWAP,ASSOC] := inverse[ROT] (* added 2002 December 1 based on TW-RIF.NB *) composite[SWAP,cross[x_,y_],ASSOC] := composite[cross[y,x],inverse[ROT]] (* added 2002 December 28 based on REPLACE.NB *) composite[SWAP,cross[x_,y_],inverse[RIF]] := composite[cross[composite[y,SWAP],composite[x,SWAP]],inverse[RIF],SWAP] (* added 2002 December 1 based on TW-RIF.NB *) composite[SWAP,cross[x_,y_],inverse[ROT]] := composite[cross[y,x],ASSOC] (* added 2002 April 6 based on FUNP-ROT.NB *) composite[SWAP,cross[Id,inverse[SINGLETON]], inverse[rotate[composite[inverse[SINGLETON],IMG,SWAP]]]] := composite[inverse[E],FUNPART] (* derived 2007 January 21 in ZADDSWAP.NB *) composite[SWAP,cross[x_,y_],inverse[INTADD]] := composite[cross[y,x],inverse[INTADD]] (* derived 2006 September 30 in VECT-ADD.NB *) composite[SWAP,cross[NATADD,NATADD],TWIST] := composite[cross[NATADD,NATADD],TWIST,cross[SWAP,SWAP]] (* added 1998 July 2 *) composite[SWAP,Di,id[cart[V,V]]] := composite[id[cart[V,V]],Di,SWAP] (* Theorem DUP-SW2 in DUP proved 1998 November 21 *) composite[SWAP,DUP] := DUP (* derived 2004 May 8 in GT-C-X.NB *) composite[SWAP,GREATEST[complement[cross[x_,y_]]]] := composite[GREATEST[complement[cross[y,x]]],IMAGE[SWAP]] (* added 2002 October 22 based on CO-ID.NB *) composite[SWAP,id[cart[V,V]]] := SWAP (* added 1999 November 30 based on IMG-SWAP.3 *) composite[SWAP,id[complement[cart[V,V]]]] := 0 (* added 2002 October 22 based on CO-ID.NB *) composite[SWAP,id[composite[Id,domain[x_]]],inverse[x_]] := composite[SWAP,inverse[x]] (* added 1999 December 15 based on REMOVEC3.LOG *) composite[SWAP,id[Id]] := id[Id] (* added 1999 December 15 based on REMOVEC3.LOG *) composite[SWAP,id[id[x_]]] := id[id[x]] (* added 2001 January 21 based on TWIST-1.NB *) composite[SWAP,id[x_],inverse[FIRST]] := composite[id[inverse[x]],inverse[SECOND]] (* added 2002 October 22 based on CO-ID.NB *) composite[x_,SWAP,id[inverse[domain[x_]]]] := composite[x,SWAP] (* added 2001 January 21 based on TWIST-1.NB *) composite[SWAP,id[x_],inverse[SECOND]] := composite[id[inverse[x]],inverse[FIRST]] (* added 1999 December 9 based on FLIP-DIF.NB *) composite[SWAP,intersection[composite[inverse[FIRST],x_],composite[inverse[SECOND],y_]]] := intersection[composite[inverse[FIRST],y],composite[inverse[SECOND],x]] (* added 1999 October 8 based on CAP-LOG.2 *) composite[SWAP,inverse[CAP]] := inverse[CAP] (* inverse of Theorem CUP-SW in CUP proved 1999 September 23 *) composite[SWAP,inverse[CUP]] := inverse[CUP] composite[SWAP,inverse[FIRST]] := inverse[SECOND] (* added 2002 October 22 based on CO-ID.NB *) composite[SWAP,inverse[x_],id[image[x_,cart[V,V]]]] := composite[SWAP,inverse[x]] (* derived 2008 September 14 in INTARITH.NB *) composite[SWAP,inverse[INTADD]] := inverse[INTADD] (* derived 2008 September 13 in IMINTMUL.NB *) composite[SWAP,inverse[INTMUL]] := inverse[INTMUL] (* added 2002 July 30 based on ADD-INV.NB *) composite[SWAP,inverse[NATADD]] := inverse[NATADD] (* derived 2005 February 18 in MUL-NORM.NB *) composite[SWAP,inverse[NATMUL]] := inverse[NATMUL] (* added 2002 January 10 based on PAIRSET.NB *) composite[SWAP,inverse[PAIRSET]] := inverse[PAIRSET] (* added 2002 December 28 based on REPLACE.NB *) composite[SWAP,inverse[RIF]] := composite[cross[SWAP,SWAP],inverse[RIF],SWAP] (* added 1999 October 13 based on ASSOC.1 *) composite[SWAP,inverse[ROT]] := ASSOC composite[SWAP,inverse[SECOND]] := inverse[FIRST] (* added 2002 May 20 based on ITER-X.NB *) composite[SWAP,iterate[cross[x_,y_],z_]] := iterate[cross[y,x],inverse[z]] (* added 1999 September 23 based on RL-SWAP.LOG *) composite[SWAP,LEFT[x_]] := RIGHT[x] (* derived 2009 January 11 in CAT-SPEC.NB *) composite[SWAP,RIF,id[cart[cart[set[0],set[0]],cart[set[0],set[0]]]]] := cart[cart[cart[set[0],set[0]],cart[set[0],set[0]]],cart[set[0],set[0]]] (* derived 2009 January 11 in CAT-SPEC.NB *) composite[SWAP,RIF,id[cart[id[x_],id[x_]]]] := composite[id[id[x]],inverse[DUP]] (* added 1999 September 23 based on RL-SWAP.LOG *) composite[SWAP,RIGHT[x_]] := LEFT[x] (* Theorem SW-CO-3 in SW3 *) composite[SWAP,SWAP] := id[cart[V,V]] (* added 1999 October 10 based on TWIST.3 *) composite[SWAP,TWIST] := composite[TWIST,cross[SWAP,SWAP]] (* added 2002 June 25 based on SYMDIF.NB *) composite[SYMDIF,cross[Id,SYMDIF],ASSOC] := composite[SYMDIF,cross[SYMDIF,Id]] (* added 2002 June 25 based on SYMDIF.NB *) composite[SYMDIF,cross[SYMDIF,Id],inverse[ASSOC]] := composite[SYMDIF,cross[Id,SYMDIF]] (* added 2002 June 25 based on SYMDIF.NB *) composite[SYMDIF,cross[SYMDIF,Id],inverse[ROT]] := composite[SYMDIF,cross[SYMDIF,Id]] (* added 2002 June 25 based on SYMDIF.NB *) composite[SYMDIF,cross[SYMDIF,Id],ROT] := composite[SYMDIF,cross[SYMDIF,Id]] (* added 1999 December 2 based on SYMDIF-4.NB *) composite[SYMDIF,DUP] := cart[V,set[0]] (* added 1999 December 2 based on SYMDIF-2.NB *) composite[SYMDIF,id[cart[V,V]]] := SYMDIF (* added 2001 September 3 based in RC-DEF.NB *) composite[SYMDIF,id[DISJOINT]] := composite[CUP,id[DISJOINT]] (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],CUP]]] := SYMDIF (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],DIF]]] := FIRST (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],FIRST]]] := DIF (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],SECOND]]] := composite[DIF,SWAP] (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],CAP], composite[inverse[SECOND],SYMDIF]]] := CUP (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],CUP]]] := SECOND (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],DIF,SWAP]]] := SYMDIF (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],FIRST]]] := CAP (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],SECOND]]] := CUP (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],DIF], composite[inverse[SECOND],SYMDIF]]] := composite[DIF,SWAP] (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],CUP]]] := composite[DIF,SWAP] (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],DIF]]] := CAP (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],SYMDIF]]] := SECOND (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],SECOND], composite[inverse[SECOND],DIF]]] := CUP (* added 1999 December 9 based on BUILD.TXT *) composite[SYMDIF,intersection[composite[inverse[FIRST],SYMDIF], composite[inverse[SECOND],DIF]]] := composite[DIF,SWAP] (* added 2002 May 28 based on DISJOINT.NB *) composite[SYMDIF,inverse[CAP]] := DISJOINT (* added 2002 June 25 based on SYMDIF.NB *) composite[SYMDIF,inverse[FIRST]] := cart[V,V] (* added 1999 December 24 based on SYMDIF-2.NB *) composite[SYMDIF,inverse[SECOND]] := cart[V,V] (* added 1999 December 4 based on 1999/DEC/03/CURRY-SD.NB *) composite[SYMDIF,LEFT[x_]] := image[inverse[SYMDIF],set[x]] (* added 1999 December 4 based on 1999/DEC/03/CURRY-SD.NB *) composite[SYMDIF,RIGHT[x_]] := image[inverse[SYMDIF],set[x]] (* added 1999 December 2 based on SYMDIF-4.NB *) composite[SYMDIF,SWAP] := SYMDIF (* Theorem TC-CO-BC in TC3 proved 2001 January 4 *) composite[TC,BIGCUP] := composite[BIGCUP,TC] (* derived 2004 December 24 in CARD.NB *) composite[TC,CARD] := CARD (* added 2001 January 1 based on TC-1.NB *) composite[TC,complement[inverse[S]]] := composite[id[FULL],complement[inverse[S]]] (* derived 2005 January 5 in CORE-ON.NB *) composite[TC,CORE[OMEGA]] := CORE[OMEGA] (* added 2000 October 26 based on TC-6.NB *) composite[TC,CUP] := composite[CUP,cross[TC,TC]] (* added 2001 January 1 based on TC-1.NB *) composite[TC,E] := composite[id[FULL],E] (* added 2001 March 31 based on HF.NB *) composite[TC,HC] := HC (* derived 2005 July 24 in TC-HULL.NB *) composite[TC,HULL[omega]] := HULL[omega] (* added 2000 January 8 based on TC-TC.NB *) composite[TC,id[FULL]] := id[FULL] (* added 2003 January 18 based on HC-TC-OM.NB *) composite[TC,id[omega]] := id[omega] (* added 2001 December 4 based on TC-ON.NB *) composite[TC,id[OMEGA]] := id[OMEGA] (* derived 2005 December 1 in ORD-UNIQ.NB *) composite[TC,id[ord[x_]]] := id[ord[x]] (* derived 2007 August 2 in HULL-SG.NB *) composite[TC,id[P[omega]],SINGLETON] := composite[id[omega],SUCC] (* derived 2007 August 2 in HULL-SG.NB *) composite[TC,id[P[OMEGA]],SINGLETON] := composite[id[OMEGA],SUCC] (* derived 2007 December 8 in RANK-ORD.NB *) composite[TC,IMAGE[id[OMEGA]]] := composite[RANK,IMAGE[id[OMEGA]]] (* derived 2007 December 8 in RANK-ORD.NB *) composite[TC,IMAGE[id[ord[x_]]]] := composite[RANK,IMAGE[id[ord[x]]]] (* derived 2007 December 4 in HER-H.NB *) composite[TC,IMAGE[inverse[S]],HC] := composite[IMAGE[inverse[S]],HC] (* derived 2007 December 4 in HER-H.NB *) composite[TC,IMAGE[inverse[S]],TC] := composite[IMAGE[inverse[S]],TC] (* Theorem RK-IMG-1 in RANK7 proved 2001 October 12 *) composite[TC,IMAGE[RANK]] := composite[RANK,IMAGE[id[REGULAR]]] (* added 2002 May 17 based on ZN.NB *) composite[TC,IMAGE[ZN]] := IMAGE[ZN] (* added 2001 August 1 based on RK-TC.NB *) composite[TC,RANK] := RANK (* added 2000 January 8 based on TC-SR.NB *) composite[TC,S] := composite[id[FULL],S] (* derived 2004 September 29 in WF-REC-7.NB *) composite[TC,SINGLETON,id[omega]] := composite[id[omega],SUCC] (* derived 2004 September 29 in WF-REC-7.NB *) composite[TC,SINGLETON,inverse[SUCC],id[omega]] := id[intersection[omega,complement[set[0]]]] (* added 2000 January 8 based on TC-TC.NB *) composite[TC,TC] := TC (* derived 2004 September 29 in WF-REC-7.NB *) composite[TC,VERTSECT[inverse[SUCC]],id[omega]] := id[omega] (* added 2002 May 17 based on TC-REDO.NB *) composite[TC,VERTSECT[ZN]] := VERTSECT[ZN] (* derived 2004 December 16 in VS-EQV.NB *) composite[thinpart[eqv[x_]],id[fix[eqv[x_]]]] := thinpart[eqv[x]] (* derived 2004 August 28 in FUNPTHIN.NB *) composite[thinpart[x_],id[domain[x_]]] := thinpart[x] (* derived 2004 May 14 in THINPART.NB *) composite[thinpart[x_],id[domain[VERTSECT[x_]]]] := thinpart[x] (* derived 2008 November 21 in ASSOCFUN.NB *) composite[thinpart[x_],id[image[V,assoc[thinpart[x_]]]]] := assoc[thinpart[x]] (* derived 2006 January 21 in LEAST-VS.NB *) composite[thinpart[x_],id[intersection[y_,domain[VERTSECT[x_]]]]] := composite[thinpart[x],id[y]] (* derived 2006 January 24 in THPT-PO.NB *) composite[thinpart[po[x_]],id[fix[po[x_]]]] := thinpart[po[x]] (* derived 2006 January 24 in THPT-PO.NB *) composite[thinpart[po[x_]],inverse[VERTSECT[po[x_]]]] := composite[po[x],inverse[VERTSECT[po[x]]]] (* derived 2004 December 17 in RFXTRV-C.NB *) composite[thinpart[rfx[trv[x_]]],id[fix[trv[x_]]]] := thinpart[rfx[trv[x]]] (* derived 2004 December 19 in QO-IDEM.NB *) composite[thinpart[rfx[trv[x_]]],thinpart[rfx[trv[x_]]]] := thinpart[rfx[trv[x]]] (* derived 2005 October 15 in TO-THIN.NB *) composite[thinpart[to[x_]],thinpart[to[x_]]] := thinpart[to[x]] (* derived 2006 March 14 in ZN-ON.NB *) composite[thinpart[ZN],id[OMEGA]] := composite[inverse[RANK],inverse[S],id[OMEGA]] (* derived 2006 March 14 in ZN-ON.NB *) composite[thinpart[ZN],id[REGULAR]] := composite[ZN,id[REGULAR]] (* derived 2004 May 14 in REPLACE.NB *) composite[thinpart[ZN],IMAGE[ZN]] := thinpart[ZN] (* derived 2004 August 14 in ZN-RULES.NB *) composite[thinpart[ZN],TC] := thinpart[ZN] (* derived 2005 July 17 in TIMES.NB *) composite[times[x_],DIV] := composite[DIV,times[x]] (* derived 2006 December 26 in ISOTIMES.NB *) composite[times[x_],id[image[V,intersection[omega,set[x_]]]]] := times[x] (* derived 2006 November 1 in LTRT-IMV.NB *) composite[times[x_],id[image[V,set[x_]]]] := times[x] (* derived 2006 November 21 in TIMES.NB *) composite[times[x_],id[intersection[omega,y_]]] := composite[times[x],id[y]] (* derived 2005 July 17 in TIMES.NB *) composite[times[x_],id[omega]] := times[x] (* derived 2005 July 17 in TIMES.NB *) composite[times[x_],NATADD] := composite[NATADD,cross[times[x],times[x]]] (* derived 2006 June 28 in NATEXP-2.NB *) composite[times[natexp[x_,y_]],NATEXP,LEFT[x_]] := composite[NATEXP,LEFT[x],plus[y]] (* derived 2006 September 23 in TIMES.NB *) composite[TIMES,NATMUL] := composite[COMPOSE,cross[TIMES,TIMES]] (* derived 2005 July 17 in TIMES.NB *) composite[times[x_],NATMUL] := composite[NATMUL,cross[Id,times[x]]] (* derived 2005 July 17 in TIMES.NB *) composite[times[x_],rotate[NATADD]] := composite[rotate[NATADD],cross[times[x],times[x]],id[inverse[S]]] (* derived 2005 July 17 in TIMES.NB *) composite[times[x_],SUCC] := composite[plus[x],times[x]] (* derived 2005 July 17 in TIMES.NB *) composite[times[x_],times[y_]] := times[natmul[x,y]] (* derived 2005 October 22 in TO-C.NB *) composite[to[x_],intersection[Di,to[x_]]] := intersection[Di,to[x]] (* derived 2006 May 4 in DIRECTED.NB *) composite[to[x_],inverse[to[x_]]] := cart[fix[to[x]],fix[to[x]]] (* derived 2005 October 8 in TO-WRAP.NB *) composite[to[x_],to[x_]] := to[x] (* added 2002 March 27 based on TRV.NB *) composite[trv[x_],x_] := composite[trv[x],trv[x]] (* added 2002 March 27 based on TRV.NB *) composite[x_,trv[x_]] := composite[trv[x],trv[x]] (* derived 2003 December 18 in RA-ITER.NB *) composite[trv[SUCC],id[omega]] := composite[id[omega],E] (* derived 2005 January 29 in TRV-RFX.NB *) composite[trv[rfx[x_]],complement[inverse[trv[rfx[x_]]]]] := composite[id[fix[x]],complement[inverse[trv[rfx[x]]]]] (* derived 2005 January 29 in TRV-RFX.NB *) composite[trv[rfx[x_]],trv[rfx[x_]]] := trv[rfx[x]] (* added 2002 December 30 based on 9-TWIST.NB *) composite[TWIST,cross[cross[u_,v_],cross[x_,y_]],TWIST] := cross[cross[u,x],cross[v,y]] (* added 2001 December 28 based on TW-DUP.NB *) composite[TWIST,cross[DUP,DUP]] := composite[DUP,id[cart[V,V]]] (* added 2003 July 17 based on DIR-PROD.NB *) composite[TWIST,cross[x_,id[cart[V,V]]]] := composite[TWIST,cross[x,Id]] (* added 2003 July 17 based on DIR-PROD.NB *) composite[TWIST,cross[id[cart[V,V]],x_]] := composite[TWIST,cross[Id,x]] (* added 1999 October 10 based on TWIST.3 *) composite[TWIST,DUP] := cross[DUP,DUP] (* derived 2004 February 19 in REPLACE2.NB *) composite[TWIST,id[x_]] := TWIST /; subclass[cart[cart[V,V],cart[V,V]],x] (* added 1999 October 10 based on TWIST.2 *) composite[TWIST,id[cart[V,V]]] := TWIST (* added 2001 January 20 based on TWIST-2.NB *) composite[twist[x_],id[cart[V,V]]] := twist[x] (* added 2002 October 22 based on CO-ID.NB *) composite[twist[x_],id[composite[FIRST,x_,inverse[FIRST]]]] := twist[x] (* derived 2006 September 12 in DIRECT.NB *) composite[TWIST,id[composite[id[cart[V,V]],x_]]] := composite[TWIST,id[x]] (* derived 2006 September 12 in DIRECT.NB *) composite[TWIST,id[composite[x_,id[cart[V,V]]]]] := composite[TWIST,id[x]] (* derived 2005 March 26 in DIVDSTRB.NB *) composite[TWIST,inverse[FIRST]] := cross[inverse[FIRST],inverse[FIRST]] (* added 2003 July 20 based on DIRECT12.NB *) composite[twist[x_],inverse[FIRST]] := composite[SWAP,inverse[rotate[composite[SECOND,x,SWAP]]]] (* added 2002 June 7 based on RIF.NB *) composite[TWIST,inverse[RIF]] := composite[inverse[RIF],SWAP] (* derived 2005 March 26 in DIVDSTRB.NB *) composite[TWIST,inverse[SECOND]] := cross[inverse[SECOND],inverse[SECOND]] (* added 2003 July 20 based on DIRECT12.NB *) composite[twist[x_],inverse[SECOND]] := inverse[rotate[composite[SECOND,inverse[x],SWAP]]] (* added 2003 July 17 based on DIR-PROD.NB *) composite[TWIST,LEFT[x_]] := cross[LEFT[first[x]],LEFT[second[x]]] (* added 2003 July 14 based on TW-LEFT.NB *) composite[TWIST,LEFT[PAIR[x_,y_]]] := cross[LEFT[x],LEFT[y]] (* added 2003 July 17 based on DIR-PROD.NB *) composite[TWIST,RIGHT[x_]] := cross[RIGHT[first[x]],RIGHT[second[x]]] (* added 2002 August 29 based on BINHOM.NB *) composite[TWIST,RIGHT[PAIR[x_,y_]]] := cross[RIGHT[x],RIGHT[y]] (* added 1999 October 10 based on TWIST.3 *) composite[TWIST,SWAP] := composite[cross[SWAP,SWAP],TWIST] (* Theorem TW-TW-CO in TWIST proved 2000 August 5 *) composite[TWIST,TWIST] := id[cart[cart[V,V],cart[V,V]]] (* added 2000 November 10 based on UB-LB-1.LOG *) composite[UB[x_],complement[E]] := cart[V,V] (* derived 2004 January 29 in UB-LB-CO.NB *) composite[UB[x_],complement[inverse[S]]] := composite[x,complement[inverse[E]]] (* added 2000 November 10 based on UB-LB-1.LOG *) composite[UB[x_],complement[S]] := cart[complement[set[0]],V] (* added 2000 December 14 based on PAIRSET.NB *) composite[UB[x_],CUP] := intersection[composite[UB[x],FIRST],composite[UB[x],SECOND]] (* added 2000 November 10 based on UB-LB-1.LOG *) composite[UB[x_],DISJOINT] := cart[V,V] (* added 2000 November 5 based on UB-2.NB *) composite[UB[x_],E] := composite[Id,x] (* added 2002 November 17 based on LB-UB.NB *) composite[UB[x_],id[P[domain[x_]]]] := UB[x] (* added 2001 July 8 based on REMOVED.NB *) composite[UB[x_],id[P[y_]],E] := composite[x,id[y]] (* derived 2007 December 23 in LB-UB-S.NB *) composite[UB[x_],id[P[y_]],S] := composite[UB[x],id[P[y]]] (* added 2002 April 10 based on INVAR.NB *) composite[UB[INVAR],IMAGE[SINGLETON]] := INVAR (* derived 2004 December 24 in UCL-LBUB.NB *) composite[UB[x_],inverse[BIGCUP],E] := composite[x,E] (* derived 2004 January 25 in GT-LT-CO.NB *) composite[UB[x_],inverse[GREATEST[y_]]] := composite[x,id[fix[y]]] (* derived 2004 January 29 in UB-LB-CO.NB *) composite[UB[x_],inverse[IMAGE[id[y_]]]] := composite[UB[x],id[P[y]]] (* derived 2004 January 25 in GT-LT-CO.NB *) composite[UB[x_],inverse[LEAST[y_]]] := composite[x,id[fix[y]]] (* added 2000 November 10 based on UB-LB-1.LOG *) composite[UB[x_],inverse[S]] := cart[V,V] (* added 2000 December 14 based on PAIRSET.NB *) composite[UB[x_],PAIRSET] := intersection[composite[x,FIRST],composite[x,SECOND]] (* added 2002 October 29 based on COMMUTE.NB *) composite[UB[rotate[x_]],id[P[cart[V,V]]]] := UB[rotate[x]] (* Theorem UB-CO-SR proved 2000 November 5 *) composite[UB[x_],S] := UB[x] (* added 2000 November 10 based on UB-LB-1.LOG *) composite[UB[x_],SINGLETON] := composite[Id,x] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[UB[SUBCOMMUTE],IMAGE[IMAGE[id[cart[V,V]]]]] := UB[SUBCOMMUTE] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[UB[SUBCOMMUTE],IMAGE[IMAGE[SWAP]]] := composite[inverse[IMAGE[SWAP]],LB[SUBCOMMUTE]] (* derived 2004 December 21 in SBCOMMUT.NB *) composite[UB[SUBCOMMUTE],inverse[BIGCUP]] := SUBCOMMUTE (* derived 2007 November 3 in MAX-S.NB *) composite[UB[union[composite[x_,FIRST],composite[y_,SECOND]]],IMAGE[DUP]] := UB[union[x,y]] (* derived 2007 November 3 in MAX-S.NB *) composite[UB[union[FIRST,composite[x_,SECOND]]],IMAGE[DUP]] := UB[union[Id,x]] (* derived 2007 November 3 in MAX-S.NB *) composite[UB[union[SECOND,composite[x_,FIRST]]],IMAGE[DUP]] := UB[union[Id,x]] (* derived 2006 April 22 in NESTCLOS.NB *) composite[UB[union[S,inverse[S]]],ACLOSURE] := UB[union[S,inverse[S]]] (* derived 2006 April 22 in NESTCLOS.NB *) composite[UB[union[S,inverse[S]]],UCLOSURE] := UB[union[S,inverse[S]]] (* derived 2008 July 10 in UBD-CO.NB *) composite[UBD,IMAGE[DUP]] := composite[ADJOIN[set[0]],IMAGE[SINGLETON]] (* derived 2008 July 10 in UBD-CO.NB *) composite[UBD,IMAGE[id[cart[V,V]]]] := UBD (* derived 2007 June 25 in UCH-HULL.NB *) composite[UCHAINS,ADJOIN[set[0]]] := UCHAINS (* derived 2007 June 25 in UCH-HULL.NB *) composite[UCHAINS,CHAINS] := CHAINS (* derived 2007 June 25 in UCH-HULL.NB *) composite[UCHAINS,CLIQUES] := CLIQUES (* derived 2007 June 25 in UCH-HULL.NB *) composite[UCHAINS,HULL[fix[UCHAINS]]] := HULL[fix[UCHAINS]] (* derived 2007 September 28 in UCH-RS.NB *) composite[UCHAINS,HULL[TOPS]] := HULL[TOPS] (* derived 2007 September 26 in UCH-ORD.NB *) composite[UCHAINS,id[chains[S]]] := composite[UCLOSURE,id[chains[S]]] (* derived 2008 January 16 in UCHN-FIN.NB *) composite[UCHAINS,id[FINITE]] := composite[ADJOIN[set[0]],id[FINITE]] (* derived 2007 November 10 in ALL-MAX.NB *) composite[UCHAINS,id[fix[composite[DISJOINT,IMAGE[inverse[PS]]]]]] := composite[ADJOIN[set[0]],id[fix[composite[DISJOINT,IMAGE[inverse[PS]]]]]] (* derived 2007 September 28 in UCH-RS.NB *) composite[UCHAINS,id[omega]] := composite[ADJOIN[set[0]],id[omega]] (* derived 2007 September 26 in UCH-ORD.NB *) composite[UCHAINS,id[OMEGA]] := composite[SUCC,BIGCUP,id[OMEGA]] (* derived 2007 September 8 in UCH-SQ.NB *) composite[UCHAINS,IMAGE[CART],IMAGE[DUP],CLIQUES] := composite[IMAGE[CART],IMAGE[DUP],CLIQUES] (* derived 2007 September 8 in UCH-SQ.NB *) composite[UCHAINS,IMAGE[CART],IMAGE[DUP],POWER] := composite[IMAGE[CART],IMAGE[DUP],POWER] (* derived 2007 November 16 in UCH-I-PC.NB *) composite[UCHAINS,IMAGE[id[P[x_]]]] := composite[IMAGE[id[P[x]]],UCHAINS] (* derived 2007 November 10 in ALL-MAX.NB *) composite[UCHAINS,MAP] := composite[ADJOIN[set[0]],MAP] (* derived 2007 June 25 in UCH-HULL.NB *) composite[UCHAINS,POWER] := POWER (* derived 2007 November 10 in ALL-MAX.NB *) composite[UCHAINS,SINGLETON] := composite[ADJOIN[set[0]],SINGLETON] (* derived 2007 June 25 in UCH-HULL.NB *) composite[UCHAINS,SUBVAR] := SUBVAR (* derived 2007 June 25 in UCH-HULL.NB *) composite[UCHAINS,UCLOSURE] := UCLOSURE (* derived 2007 September 28 in UCH-RS.NB *) composite[UCHAINS,VERTSECT[RESTRICT]] := VERTSECT[RESTRICT] (* derived 2007 November 10 in ALL-MAX.NB *) composite[UCHAINS,XS] := composite[ADJOIN[set[0]],XS] (* added 2002 November 20 based on UCL-U.NB *) composite[UCLOSURE,ADJOIN[set[0]]] := UCLOSURE (* derived 2004 December 23 in UCLA-SBV.NB *) composite[UCLOSURE,BIGCAP,IMAGE[SUBVAR]] := composite[BIGCAP,IMAGE[SUBVAR]] (* derived 2004 December 21 in UCL-A.NB *) composite[UCLOSURE,BIGCAP,IMAGE[UCLOSURE]] := composite[BIGCAP,IMAGE[UCLOSURE]] (* derived 2007 May 6 in CHN-UCL.NB *) composite[UCLOSURE,CHAINS] := composite[POWER,IMAGE[inverse[DUP]]] (* added 2001 October 18 based on UCL-IMS.NB *) composite[UCLOSURE,CLIQUES] := composite[POWER,IMAGE[inverse[DUP]]] (* derived 2004 October 2 in UCL-U-PC.NB *) composite[UCLOSURE,CUP,cross[POWER,POWER]] := composite[POWER,CUP] (* added 2003 November 6 based on HULLTOPS.NB *) composite[UCLOSURE,HULL[binclosed[CAP]]] := HULL[TOPS] (* derived 2005 October 25 in TOP-WRAP.NB *) composite[UCLOSURE,HULL[TOPS]] := HULL[TOPS] (* derived 2005 February 16 in BC-OM.NB *) composite[UCLOSURE,id[omega]] := composite[ADJOIN[set[0]],id[omega]] (* derived 2003 December 24 in UCL-ON.NB *) composite[UCLOSURE,id[OMEGA]] := composite[SUCC,BIGCUP,id[OMEGA]] (* derived 2004 October 2 in UCL-0.NB *) composite[UCLOSURE,IMAGE[id[complement[set[0]]]]] := UCLOSURE (* added 2001 October 29 based on UCL.NB *) composite[UCLOSURE,IMAGE[id[P[x_]]]] := composite[IMAGE[id[P[x]]],UCLOSURE] (* derived 2006 April 16 in UCL-IREG.NB *) composite[UCLOSURE,IMAGE[id[REGULAR]]] := composite[IMAGE[id[REGULAR]],UCLOSURE] (* derived 2007 December 20 in UCL-DO.NB *) composite[UCLOSURE,IMAGE[inverse[IMAGE[thinpart[x_]]]],UCLOSURE] := composite[IMAGE[inverse[IMAGE[thinpart[x]]]],UCLOSURE] (* added 2002 April 8 based on UCL-ACL.NB *) composite[UCLOSURE,IMAGE[inverse[S]]] := composite[POWER,BIGCUP] (* added 2002 April 8 based on UCL-ACL.NB *) composite[UCLOSURE,IMAGE[SINGLETON]] := POWER (* added 2001 May 10 based on UCLOS-1.NB *) composite[UCLOSURE,POWER] := POWER (* added 2001 October 23 based on TOPS.NB *) composite[UCLOSURE,SINGLETON] := composite[ADJOIN[set[0]],SINGLETON] (* added 2001 September 30 based on ACL-3.NB *) composite[UCLOSURE,SUBVAR] := SUBVAR (* derived 2008 July 10 in UBD-CO.NB *) composite[UCLOSURE,UBD] := composite[POWER,IMAGE[FIRST]] (* derived 2007 June 25 in UCH-HULL.NB *) composite[UCLOSURE,UCHAINS] := UCLOSURE (* added 2001 May 10 based on UCLOS-1.NB *) composite[UCLOSURE,UCLOSURE] := UCLOSURE (* derived 2004 August 10 in RS-3.NB *) composite[UCLOSURE,VERTSECT[RESTRICT]] := VERTSECT[RESTRICT] (* introduced 1996 March 7 in COMPOSIT.M based on Theorem CO-U2 in CO1 *) composite[x_,union[y_,z_]] := union[composite[x,y],composite[x,z]] (* introduced 1996 March 7 in COMPOSIT.M based on Theorem CO-U1 in CO1 *) composite[union[x_,y_],z_] := union[composite[x,z],composite[y,z]] (* Theorem CO-RA4 in CO2 *) composite[x_,V] := cart[V,range[x]] (* Theorem CO-DO4 in CO2 *) composite[V,x_] := cart[domain[x],V] (* added 2002 January 29 based on FUNPART.NB *) composite[VERTSECT[complement[composite[complement[inverse[E]],x_]]], id[domain[funpart[x_]]]] := funpart[x] (* derived 2004 February 25 in HULLUBLB.NB *) composite[VERTSECT[complement[composite[complement[x_],LB[x_]]]], VERTSECT[complement[composite[complement[x_],LB[x_]]]]] := VERTSECT[complement[composite[complement[x],LB[x]]]] (* derived 2004 November 23 in A8-AXCH.NB *) composite[VERTSECT[composite[z_,x_]],id[domain[VERTSECT[x_]]]] := composite[IMAGE[z],VERTSECT[x]] (* derived 2008 May 9 in PRIMESEQ.NB *) composite[VERTSECT[composite[id[omega],complement[composite[complement[inverse[E]],id[PRIMES], complement[inverse[E]]]]]],IMAGE[PRIMESEQ],id[omega]] := PRIMESEQ (* added 2003 February 4 based on PLUS-Q.NB *) composite[VERTSECT[composite[id[omega],S]],id[omega]] := composite[RC[omega],id[omega]] (* derived 2007 August 1 in TO-CHN-S.NB *) composite[VERTSECT[composite[id[OMEGA],S]],id[OMEGA]] := 0 (* derived 2006 January 19 in VS-LUB.NB *) composite[VERTSECT[composite[id[range[x_]],UB[x_]]],id[complement[set[0]]]] := VERTSECT[UB[x]] (* Definitin DEF-CART in CART added 1999 August 12 *) composite[VERTSECT[cross[inverse[E],inverse[E]]],id[cart[V,V]]] := CART (* derived 2005 October 5 in GLB-DIV.NB *) composite[VERTSECT[DIV],GLB[DIV]] := HULL[image[VERTSECT[DIV],omega]] (* added 2003 August 9 based on ASS-ADDZ.NB *) composite[VERTSECT[EQUIDIFF],cross[NATADD,NATADD],TWIST] := composite[INTADD,cross[VERTSECT[EQUIDIFF],VERTSECT[EQUIDIFF]]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[VERTSECT[EQUIDIFF],EQUIDIFF] := composite[VERTSECT[EQUIDIFF],id[cart[omega,omega]]] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[VERTSECT[EQUIDIFF],inverse[rotate[NATADD]]] := composite[INVERSE,PLUS] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[VERTSECT[EQUIDIFF],LEFT[0],id[omega]] := PLUS (* added 2003 August 17 based on EQDF-SUB.NB *) composite[VERTSECT[EQUIDIFF],RIGHT[0],id[omega]] := composite[INVERSE,PLUS] (* added 2003 August 17 based on EQDF-SUB.NB *) composite[VERTSECT[EQUIDIFF],SWAP] := composite[INVERSE,VERTSECT[EQUIDIFF],id[cart[V,V]]] (* derived 2007 June 10 in SPINE.NB *) composite[VERTSECT[GREATEST[union[S,inverse[S]]]],id[ord[x_]]] := id[ord[x]] (* derived 2007 September 4 in U-CHAINS.NB *) composite[VERTSECT[GREATEST[union[S,inverse[S]]]],SINGLETON] := SINGLETON (* derived 2004 March 9 in IDEMLTGT.NB *) composite[VERTSECT[GREATEST[x_]],VERTSECT[GREATEST[x_]]] := VERTSECT[GREATEST[x]] (* added 1999 October 16 based on 1999\OCT\15\VERTSECT.4 *) composite[VERTSECT[x_],id[complement[domain[x_]]]] := cart[complement[domain[x]],set[0]] (* derived 2005 October 17 in VS-RS-DO.NB *) composite[VERTSECT[x_],id[domain[thinpart[x_]]]] := composite[VERTSECT[x],id[domain[x]]] (* derived 2007 December 26 in COARSER.NB *) composite[VERTSECT[inverse[COARSER]],COARSER] := composite[id[range[VERTSECT[inverse[COARSER]]]],S,VERTSECT[inverse[COARSER]]] (* derived 2008 June 26 in PO-ISO-S.NB *) composite[VERTSECT[inverse[po[x_]]],inverse[po[x_]],inverse[VERTSECT[inverse[po[x_]]]]] := composite[id[image[VERTSECT[inverse[po[x]]],fix[po[x]]]],inverse[S], id[image[VERTSECT[inverse[po[x]]],fix[po[x]]]]] (* derived 2008 June 26 in PO-ISO-S.NB *) composite[VERTSECT[inverse[po[x_]]],po[x_],inverse[VERTSECT[inverse[po[x_]]]]] := composite[id[image[VERTSECT[inverse[po[x]]],fix[po[x]]]],S, id[image[VERTSECT[inverse[po[x]]],fix[po[x]]]]] (* derived 2008 December 4 in UNCURRY.NB *) composite[VERTSECT[inverse[rotate[binop[x_]]]],id[fix[domain[binop[x_]]]]] := composite[IMAGE[SWAP],APPLY[CURRY,composite[binop[x],SWAP]]] (* derived 2008 December 4 in UNCURRY.NB *) composite[VERTSECT[inverse[rotate[composite[binop[x_],SWAP]]]],id[fix[domain[binop[x_]]]]] := composite[IMAGE[SWAP],APPLY[CURRY,binop[x]]] (* derived 2006 January 24 in VS-MEMB.NB *) composite[VERTSECT[x_],inverse[thinpart[x_]]] := composite[VERTSECT[x],inverse[x]] (* added 2000 November 22 based on VS-MEMB.NB *) composite[VERTSECT[x_],LB[x_]] := composite[id[range[VERTSECT[x]]],S] (* derived 2004 March 9 in IDEMLTGT.NB *) composite[VERTSECT[LEAST[x_]],VERTSECT[LEAST[x_]]] := VERTSECT[LEAST[x]] (* derived 2007 June 9 in VS-LT-GT.NB *) composite[VERTSECT[MAXIMAL[x_]],VERTSECT[MAXIMAL[x_]]] := VERTSECT[MAXIMAL[x]] (* derived 2007 June 9 in VS-LT-GT.NB *) composite[VERTSECT[MINIMAL[x_]],VERTSECT[MINIMAL[x_]]] := VERTSECT[MINIMAL[x]] (* derived 2006 January 21 in LEAST-VS.NB *) composite[VERTSECT[po[x_]],id[fix[thinpart[po[x_]]]]] := composite[VERTSECT[po[x]],id[fix[po[x]]]] (* derived 2008 June 26 in PO-ISO-S.NB *) composite[VERTSECT[po[x_]],inverse[po[x_]],inverse[VERTSECT[po[x_]]]] := composite[id[image[VERTSECT[po[x]],fix[po[x]]]],S,id[image[VERTSECT[po[x]],fix[po[x]]]]] (* derived 2006 January 24 in PO-NATUR.NB *) composite[VERTSECT[po[x_]],po[x_],inverse[VERTSECT[po[x_]]]] := composite[id[image[VERTSECT[po[x]],fix[po[x]]]],inverse[S],id[image[VERTSECT[po[x]],fix[po[x]]]]] (* derived 2004 August 10 in RS-3.NB *) composite[VERTSECT[RESTRICT],FUNPART] := composite[POWER,FUNPART] (* derived 2006 October 29 in OOPART.NB *) composite[VERTSECT[RESTRICT],id[FUNS]] := composite[POWER,id[FUNS]] (* derived 2004 August 10 in RS-3.NB *) composite[VERTSECT[RESTRICT],IMAGE[id[cart[V,V]]]] := VERTSECT[RESTRICT] (* derived 2005 October 17 in VS-RS-DO.NB *) composite[VERTSECT[thinpart[x_]],id[domain[thinpart[x_]]]] := composite[VERTSECT[x],id[domain[x]]] (* derived 2004 May 14 in SIMPLIFY.NB *) composite[VERTSECT[thinpart[x_]],id[domain[VERTSECT[x_]]]] := VERTSECT[x] (* derived 2007 August 1 in TO-CHN-S.NB *) composite[VERTSECT[to[x_]],to[x_],inverse[VERTSECT[to[x_]]]] := composite[id[image[VERTSECT[to[x]],fix[to[x]]]],inverse[S],id[image[VERTSECT[to[x]],fix[to[x]]]]] (* derived 2005 December 31 in VS-UB.NB *) composite[VERTSECT[UB[x_]],id[complement[set[0]]]] := VERTSECT[UB[x]] (* derived 2005 December 31 in VS-UB.NB *) composite[VERTSECT[UB[x_]],SINGLETON] := VERTSECT[x] (* derived 2006 March 14 in ZN-ON.NB *) composite[VERTSECT[ZN],id[OMEGA]] := composite[POWER,IMAGE[inverse[RANK]],id[OMEGA]] (* added 2001 July 17 based on ZN-IMG4.NB *) composite[VERTSECT[ZN],IMAGE[ZN]] := VERTSECT[ZN] (* added 2001 July 15 based on ZN-AGAIN.NB *) composite[VERTSECT[ZN],POWER] := composite[POWER,VERTSECT[ZN]] (* derived 2004 August 14 in ZN-RULES.NB *) composite[VERTSECT[ZN],SUCC] := composite[POWER,VERTSECT[ZN]] (* added 2002 May 17 based on TC-REDO.NB *) composite[VERTSECT[ZN],TC] := VERTSECT[ZN] (* derived 2006 November 24 in CO-VS.NB *) composite[VS,CURRY] := composite[IMAGE[cross[Id,SINGLETON]],CURRY] (* derived 2006 October 29 in OOPART.NB *) composite[VS,FUNPART] := composite[IMAGE[cross[Id,SINGLETON]],FUNPART] (* derived 2006 November 11 in REPLACE.NB *) composite[VS,IMAGE[ASSOC]] := composite[CURRY,IMAGE[id[cart[cart[V,V],V]]]] (* derived 2004 August 28 in FUNP-VS.NB *) composite[VS,IMAGE[composite[id[x_],inverse[FIRST]]]] := composite[IMAGE[composite[id[composite[VERTSECT[x],id[domain[x]]]],inverse[FIRST]]],id[P[domain[VERTSECT[x]]]]] (* derived 2004 August 21 in VS-RS.NB *) composite[VS,IMAGE[DUP]] := IMAGE[composite[id[SINGLETON],inverse[FIRST]]] (* derived 2004 January 6 in VS-OO.NB *) composite[VS,IMAGE[id[cart[V,V]]]] := VS (* derived 2006 November 24 in CO-VS.NB *) composite[VS,inverse[S],FUNPART] := composite[inverse[S],IMAGE[cross[Id,SINGLETON]],FUNPART] (* derived 2006 November 24 in CO-VS.NB *) composite[VS,LAMBHULL] := composite[IMAGE[cross[Id,SINGLETON]],LAMBHULL] (* derived 2006 November 24 in CO-VS.NB *) composite[VS,OOPART] := composite[IMAGE[cross[Id,SINGLETON]],OOPART] (* derived 2006 November 24 in CO-VS.NB *) composite[VS,PLUS] := composite[IMAGE[cross[Id,SINGLETON]],PLUS] (* derived 2006 November 24 in CO-VS.NB *) composite[VS,RCF] := composite[IMAGE[cross[Id,SINGLETON]],RCF] (* derived 2004 August 21 in VS-RS.NB *) composite[VS,RESTRICT] := composite[inverse[S],VS] (* derived 2006 November 24 in CO-VS.NB *) composite[VS,SINGLETON] := union[cart[complement[cart[V,V]],set[0]], composite[SINGLETON,cross[Id,SINGLETON]]] (* derived 2006 November 24 in CO-VS.NB *) composite[VS,TIMES] := composite[IMAGE[cross[Id,SINGLETON]],TIMES] (* derived 2006 November 24 in CO-VS.NB *) composite[VS,VS] := composite[IMAGE[cross[Id,SINGLETON]],VS] (* derived 2004 September 25 in LAMB-WF.NB *) composite[WFPART,id[WF]] := id[WF] (* derived 2004 September 25 in LAMB-WF.NB *) composite[WFPART,IMAGE[DUP]] := cart[V,set[0]] (* derived 2004 September 25 in LAMB-WF.NB *) composite[WFPART,IMAGE[id[cart[V,V]]]] := WFPART (* derived 2004 September 25 in LAMB-WF.NB *) composite[WFPART,WFPART] := WFPART (* derived 2005 October 22 in WO-C.NB *) composite[wo[x_],intersection[Di,wo[x_]]] := intersection[Di,wo[x]] (* derived 2008 March 9 in WO.NB *) composite[wo[x_],inverse[wo[x_]]] := cart[fix[wo[x]],fix[wo[x]]] (* derived 2005 October 16 in WO-WRAP.NB *) composite[wo[x_],wo[x_]] := wo[x] (* derived 2004 November 16 in XS.NB *) composite[XS,FUNPART] := composite[SINGLETON,FUNPART] (* derived 2004 November 16 in XS.NB *) composite[XS,IMAGE[DUP]] := composite[SINGLETON,IMAGE[DUP]] (* derived 2004 November 16 in XS.NB *) composite[XS,IMAGE[id[cart[V,V]]]] := XS (* derived 2006 October 29 in OOPART.NB *) composite[XS,OOPART] := composite[SINGLETON,OOPART] (* added 2001 July 14 based on ZN-IMG.NB *) composite[ZN,complement[inverse[E]]] := cart[V,V] (* added 2001 July 14 based on ZN-IMG.NB *) composite[ZN,complement[inverse[S]]] := cart[V,V] (* added 2001 July 14 based on ZN-IMG.NB *) composite[ZN,Di] := cart[V,V] (* added 2001 July 14 based on ZN-IMG.NB *) composite[ZN,E] := cart[V,V] (* derived 2006 April 11 in ZN-OM.NB *) composite[ZN,id[omega]] := composite[inverse[RANK],inverse[S],id[omega]] (* derived 2005 January 5 in RANK-S.NB *) composite[ZN,id[OMEGA]] := composite[inverse[RANK],inverse[S],id[OMEGA]] (* derived 2004 May 14 in REPLACE.NB *) composite[ZN,IMAGE[ZN]] := thinpart[ZN] (* added 2001 July 21 based on LB-ZN.NB *) composite[ZN,inverse[BIGCUP]] := composite[ZN,POWER] (* added 2003 January 25 based on TC-ZN.NB *) composite[ZN,inverse[E],TC] := composite[ZN,inverse[E]] (* added 2001 July 14 based on ZN-IMG.NB *) composite[ZN,inverse[S]] := ZN (* added 2001 July 15 based on ZN-AGAIN.NB *) composite[ZN,inverse[ZN]] := cart[V,V] (* added 2001 July 14 based on ZN-IMG.NB *) composite[ZN,S] := cart[V,V] (* added 2003 January 25 based on TC-ZN.NB *) composite[ZN,TC] := ZN (* derived 2004 May 14 in REPLACE.NB *) composite[ZN,thinpart[ZN]] := thinpart[ZN] (* Theorem ZN-IDEM in ZN3 proved 2001 July 9 *) composite[ZN,ZN] := ZN (* introduced 2006 January 5 in MAPINVAR.NB *) conduct[x_,y_,z_] := subclass[image[x,y],z] (* derived 2006 November 3 in EVAL-IM.NB *) core[x_,y_] := U[x] /; subclass[U[x],y] (* added 2001 May 2 based on COREHULL.NB *) CORE[0] := cart[V,set[0]] (* added 2004 April 17 based on CORE.NB *) core[0,x_] := 0 (* added 2004 April 17 based on CORE.NB *) core[x_,0] := 0 (* added 2003 October 15 based on ACYCLIC.NB *) CORE[ACYCLIC] := IMAGE[id[Di]] (* derived 2004 April 18 in REPLACE.NB *) core[ACYCLIC,x_] := intersection[Di,x] (* added 2002 June 4 based on CORE.NB *) CORE[ANTISYM] := IMAGE[id[cart[V,V]]] (* derived 2004 April 18 in REPLACE.NB *) core[ANTISYM,x_] := composite[Id,x] (* added 2001 October 18 based on CORE-BIJ.NB *) CORE[BIJ] := IMAGE[id[cart[V,V]]] (* derived 2004 April 18 in REPLACE.NB *) core[BIJ,x_] := composite[Id,x] (* added 2003 May 23 based on CORE-BCL.NB *) CORE[binclosed[CAP]] := Id (* derived 2004 April 18 in REPLACE.NB *) core[binclosed[CAP],x_] := x (* added 2003 May 23 based on CORE-BCL.NB *) CORE[binclosed[CUP]] := Id (* derived 2004 April 18 in REPLACE.NB *) core[binclosed[CUP],x_] := x (* derived 2007 May 6 in CHN-UCL.NB *) CORE[chains[x_]] := IMAGE[id[fix[x]]] (* derived 2007 May 6 in CHN-UCL.NB *) core[chains[x_],y_] := intersection[y,fix[x]] (* derived 2006 February 5 in CORE-CL.NB *) CORE[CL] := CORE[RFX] (* derived 2006 February 5 in CORE-CL.NB *) core[CL,x_] := rfx[x] (* added 2002 June 4 based on CORE.NB *) CORE[cliques[x_]] := IMAGE[id[fix[x]]] (* derived 2004 April 18 in REPLACE.NB *) core[cliques[x_],y_] := intersection[y,fix[x]] (* derived 2006 February 5 in CORE-SEL.NB *) CORE[COMPACT] := Id (* derived 2008 January 22 in SU-IM-I.NB *) core[complement[set[0]],x_] := x (* added 2002 November 19 based on CORE.NB *) CORE[complement[set[0]]] := Id (* derived 2007 June 9 in CONST.NB *) CORE[CONST] := IMAGE[id[cart[V,V]]] (* added 2004 April 17 based on CORE.NB *) core[x_,core[x_,y_]] := core[x,y] (* added 2004 April 17 based on CORE.NB *) core[x_,core[intersection[x_,y_],z_]] := core[intersection[x,y],z] (* added 2001 October 19 based on CORE.NB *) CORE[DEDEKIND] := Id (* derived 2004 April 18 in REPLACE.NB *) core[DEDEKIND,x_] := x (* derived 2007 December 12 in COREDESC.NB *) core[DESCENDING,OMEGA] := 0 (* derived 2004 September 24 in COREDESC.NB *) core[DESCENDING,REGULAR] := 0 (* derived 2004 October 4 in CORE-EQV.NB *) CORE[EQV] := CORE[intersection[RFX,SYM]] (* added 2001 October 19 based on CORE.NB *) CORE[FINITE] := Id (* derived 2004 April 18 in REPLACE.NB *) core[FINITE,x_] := x (* added 2003 May 23 based on CORE-BCL.NB *) CORE[fix[ACLOSURE]] := Id (* derived 2004 April 18 in REPLACE.NB *) core[fix[ACLOSURE],x_] := x (* derived 2008 February 9 in ASYM.NB *) CORE[fix[composite[DISJOINT,INVERSE]]] := IMAGE[id[Di]] (* derived 2008 February 9 in ASYM.NB *) core[fix[composite[DISJOINT,INVERSE]],x_] := intersection[Di,x] (* derived 2007 December 10 in CORE-IMS.NB *) core[fix[IMAGE[inverse[S]]],x_] := complement[image[S,complement[x]]] (* derived 2004 April 18 in REPLACE.NB *) core[fix[UCLOSURE],P[x_]] := P[x] (* added 2001 May 2 based on COREHULL.NB *) CORE[FULL] := HC (* added 2004 April 17 based on CORE.NB *) core[FULL,x_] := H[x] (* derived 2007 December 12 in COREDESC.NB *) core[FUND,complement[REGULAR]] := intersection[RUSSELL,complement[REGULAR]] (* added 2001 October 18 based on UCL-I-PC *) CORE[FUNS] := IMAGE[id[cart[V,V]]] (* derived 2004 April 18 in REPLACE.NB *) core[FUNS,x_] := composite[Id,x] (* added 2002 January 22 based on CORE-UCL.NB *) CORE[H[FULL]] := composite[HC,IMAGE[id[FULL]]] (* derived 2008 July 15 in H-RUS.NB *) CORE[H[RUSSELL]] := IMAGE[id[H[RUSSELL]]] (* derived 2005 October 25 in KURA14.NB *) core[x_,hull[y_,core[x_,hull[y_,z_]]]] := core[x,hull[y,z]] (* derived 2004 October 4 in CORE-EQV.NB *) CORE[image[CART,Id]] := CORE[intersection[RFX,SYM]] (* derived 2006 September 26 in CORECART.NB *) core[image[CART,Id],x_] := intersection[inverse[rfx[x]],rfx[x]] (* derived 2008 August 23 in IMBCFUNS.NB *) CORE[image[inverse[BIGCUP],FUNS]] := IMAGE[id[FUNS]] (* derived 2008 August 23 in IMBCFUNS.NB *) core[image[inverse[BIGCUP],FUNS],x_] := intersection[FUNS,x] (* derived 2006 February 18 in DORA-DJ.NB *) core[image[inverse[DORA],DISJOINT],cart[V,V]] := Di (* added 2002 June 4 based on CORE.NB *) CORE[image[inverse[S],x_]] := IMAGE[id[U[x]]] (* derived 2004 May 11 in EQV-GEN.NB *) core[image[HULL[TRV],P[x_]],cart[V,V]] := trv[x] (* derived 2004 April 18 in REPLACE.NB *) core[image[inverse[S],x_],y_] := intersection[y,U[x]] (* derived 2004 May 4 in CORE-IMS.NB *) CORE[image[S,set[x_]]] := union[cart[complement[image[S,set[x]]],set[0]],id[image[S,set[x]]]] (* derived 2004 August 8 in COREIMSG.NB *) CORE[image[SINGLETON,x_]] := IMAGE[id[x]] (* derived 2004 August 8 in COREIMSG.NB *) core[image[SINGLETON,x_],y_] := intersection[x,y] (* derived 2008 January 22 in SU-IM-I.NB *) core[intersection[x_,complement[set[0]]],y_] := core[x,y] (* derived 2008 January 22 in SU-IM-I.NB *) CORE[intersection[x_,complement[set[0]]]] := CORE[x] (* derived 2004 April 25 in IMS-UCL.NB *) CORE[intersection[image[S,x_],Uclosure[x_]]] := CORE[x] (* added 2001 October 28 based on CORE.NB *) CORE[intersection[x_,P[y_]]] := composite[CORE[x],IMAGE[id[y]]] (* derived 2004 May 11 in EQV-GEN.NB *) core[intersection[x_,P[y_]],z_] := core[x,intersection[y,z]] (* derived 2006 October 11 in R-S-CORE.NB *) core[intersection[RFX,SYM],x_] := intersection[inverse[rfx[x]],rfx[x]] (* derived 2004 August 7 in RS-1.NB *) core[invar[composite[id[x_],inverse[FIRST],FIRST]],composite[Id,x_]] := thinpart[x] (* derived 2004 August 7 in RS-1.NB *) core[invar[composite[id[x_],inverse[FIRST],FIRST]],thinpart[x_]] := thinpart[x] (* derived 2007 May 17 in CORE-ON.NB *) core[invar[SUCC],OMEGA] := OMEGA (* derived 2006 February 4 in INVOL.NB *) CORE[INVOL] := CORE[SYM] (* derived 2006 February 4 in INVOL.NB *) core[INVOL,x_] := intersection[x,inverse[x]] (* derived 2008 October 22 in WORDS.NB *) core[LISTS,cart[omega,x_]] := cart[omega,x] (* derived 2005 January 5 in REPLACE.NB *) core[OMEGA,FULL] := OMEGA (* derived 2005 December 2 in NAT-CORE.NB *) core[omega,nat[x_]] := nat[x] (* derived 2005 December 2 in NAT-CORE.NB *) core[omega,omega] := omega (* derived 2005 January 5 in REPLACE.NB *) core[OMEGA,omega] := omega (* derived 2005 January 5 in REPLACE.NB *) core[OMEGA,OMEGA] := OMEGA (* derived 2005 December 2 in ORD-CORE.NB *) core[OMEGA,ord[x_]] := ord[x] (* derived 2005 January 5 in REPLACE.NB *) core[OMEGA,RUSSELL] := OMEGA (* added 2001 May 2 based on COREHULL.NB *) CORE[P[x_]] := IMAGE[id[x]] (* added 2004 April 17 based on CORE.NB *) core[P[x_],y_] := intersection[x,y] (* added 2003 September 24 based on PO-FACTS.NB *) CORE[PO] := CORE[RFX] (* derived 2004 April 18 in REPLACE.NB *) core[PO,x_] := composite[id[fix[x]],x,id[fix[x]]] (* derived 2005 August 18 *) core[PRIMES,omega] := omega (* derived 2006 February 7 in UCL-PROJ.NB *) core[PROJ,x_] := composite[id[fix[x]],x] (* derived 2006 October 11 in RA-CLIQ.NB *) CORE[range[CLIQUES]] := CORE[fix[IMAGE[inverse[S]]]] (* derived 2006 October 16 in PAIRSET.NB *) CORE[range[PAIRSET]] := Id (* derived 2004 July 22 in X22--.NB *) CORE[range[POWER]] := CORE[fix[IMAGE[inverse[S]]]] (* derived 2007 December 10 in CORE-IMS.NB *) core[range[POWER],x_] := complement[image[S,complement[x]]] (* added 2001 May 2 based on ADJOIN.NB *) CORE[range[SINGLETON]] := Id (* derived 2004 August 8 in COREIMSG.NB *) core[range[SINGLETON],x_] := x (* added 2001 May 2 based on COREHULL.NB *) CORE[REGULAR] := IMAGE[id[REGULAR]] (* derived 2004 May 2 in REGULAR.NB *) core[REGULAR,x_] := intersection[REGULAR,x] (* derived 2005 January 5 in REPLACE.NB *) core[x_,REGULAR] := U[intersection[REGULAR,x]] (* derived 2004 December 16 in RFX-CORE.NB *) core[RFX,x_] := rfx[x] (* derived 2006 February 5 in CORE-SEL.NB *) CORE[SELECT] := Id (* added 2001 October 27 based on CORE-UCL.NB *) CORE[set[0]] := cart[V,set[0]] (* derived 2004 December 31 in IN-RK.NB *) core[subcommutant[inverse[E]],cart[V,V]] := ZN (* derived 2007 May 9 in ON-IN-S.NB *) core[subvar[inverse[E]],OMEGA] := OMEGA (* derived 2008 August 8 in FIN-PP2.NB *) core[subvar[PS],FINITE] := 0 (* derived 2008 August 8 in FIN-PP2.NB *) core[subvar[PS],OMEGA] := 0 (* derived 2004 April 18 in REPLACE.NB *) core[subvar[union[cart[cart[set[0],set[y_]], cart[set[0],set[y_]]],cross[SUCC,x_]]],cart[omega,V]] := iterate[x,set[y]] (* derived 2004 April 18 in REPLACE.NB *) core[subvar[union[cross[SUCC,cross[Id,x_]], id[cart[set[0],union[Id,complement[cart[V,V]]]]]]],cart[omega,cart[V,V]]] := power[x] (* derived 2004 April 18 in REPLACE.NB *) core[subvar[union[cross[SUCC,x_],id[cart[set[0],y_]]]],cart[omega,V]] := iterate[x,y] (* added 2002 January 22 based on CORE-UCL.NB *) CORE[succ[omega]] := composite[HC,IMAGE[id[omega]]] (* added 2004 April 17 based on CORE.NB *) core[SYM,x_] := intersection[x,inverse[x]] (* derived 2004 April 18 in REPLACE.NB *) core[T1,P[x_]] := P[x] (* derived 2006 February 5 in CORE-TO.NB *) CORE[TO] := CORE[RFX] (* derived 2006 February 5 in CORE-TO.NB *) core[TO,x_] := rfx[x] (* added 2002 February 12 based on CORE-TRV.NB *) CORE[TRV] := IMAGE[id[cart[V,V]]] (* added 2004 April 17 based on CORE.NB *) core[TRV,x_] := composite[Id,x] (* derived 2004 May 4 in REPLACE.NB *) core[x_,U[x_]] := U[x] (* added 2002 May 3 based on CORE-UCL.NB *) CORE[Uclosure[x_]] := CORE[x] (* added 2004 April 17 based on CORE.NB *) core[Uclosure[x_],y_] := core[x,y] (* added 2004 April 17 based on CORE.NB *) core[union[x_,y_],z_] := union[core[x,z],core[y,z]] (* added 2003 September 4 based on IDEMCORE.NB *) CORE[union[P[x_],P[y_]]] := IMAGE[id[union[x,y]]] (* derived 2004 May 4 in CORE-IMS.NB *) CORE[union[x_,set[0]]] := CORE[x] (* added 2001 May 2 based on COREHULL.NB *) CORE[V] := Id (* added 2004 April 17 based on CORE.NB *) core[V,x_] := x (* added 2004 April 17 based on CORE.NB *) core[x_,V] := U[x] (* added 2003 September 29 based on WF.NB *) CORE[WF] := IMAGE[id[Di]] (* derived 2004 April 18 in REPLACE.NB *) core[WF,x_] := intersection[Di,x] (* derived 2006 February 5 in CORE-WO.NB *) CORE[WO] := CORE[RFX] (* derived 2006 February 5 in CORE-WO.NB *) core[WO,x_] := rfx[x] (* abbreviation added 2005 January 7 *) COUNTABLE = image[Q,succ[omega]] (* Theorem X-0-B in X1 *) cross[0,x_] := 0 (* Theorem X-0-A in X1 *) cross[x_,0] := 0 cross[x_,cart[y_,z_]] := composite[id[cart[V,z]],inverse[FIRST],x, FIRST,id[cart[V,y]]] cross[cart[x_,y_],z_] := composite[id[cart[y,V]],inverse[SECOND],z, SECOND,id[cart[x,V]]] (* added 2001 December 31 based on X-C-CP.NB *) cross[complement[cart[x_,y_]],z_] := cross[union[cart[V,complement[y]],cart[complement[x],V]],z] (* added 2001 December 31 based on X-C-CP.NB *) cross[x_,complement[cart[y_,z_]]] := cross[x,union[cart[V,complement[z]],cart[complement[y],V]]] cross[composite[Id,x_],y_] := cross[x,y] cross[x_,composite[Id,y_]] := cross[x,y] (* added 2000 September 7 based on CART.NB *) cross[composite[inverse[E],x_],composite[inverse[E],y_]] := composite[inverse[E],CART,cross[x,y]] (* added 2000 September 7 based on CART.NB *) cross[composite[inverse[E],x_],inverse[E]] := composite[inverse[E],CART,cross[x,Id]] (* added 1999 October 21 based on CARTINVS.NB *) cross[E,E] := composite[inverse[CART],E] (* Theorem X-ID-4 in X2 *) cross[Id,Id] := id[cart[V,V]] (* Theorem X-IDX-3 in X2 proved 1998 December 3 *) cross[Id,id[y_]] := id[cart[V,y]] (* Theorem X-IDX-4 in X2 proved 1998 December 3 *) cross[id[x_],Id] := id[cart[x,V]] (* Theorem X-IDX-2 in X2 proved 1998 December 3 *) cross[id[x_],id[y_]] := id[cart[x,y]] (* added 2000 September 7 based on CART.NB *) cross[inverse[E],composite[inverse[E],x_]] := composite[inverse[E],CART,cross[Id,x]] (* added 1999 October 5 based on CART.1 flipped 1999 October 12 *) cross[inverse[E],inverse[E]] := composite[inverse[E],CART] (* added 2001 November 27 based on FUNPART3.NB *) cross[inverse[E],inverse[SINGLETON]] := composite[inverse[E],CART,id[cart[V,range[SINGLETON]]]] (* added 2001 November 27 based on FUNPART3.NB *) cross[inverse[SINGLETON],inverse[E]] := composite[inverse[E],CART,id[cart[range[SINGLETON],V]]] cross[REGULAR,REGULAR] := cart[cart[REGULAR,REGULAR],cart[REGULAR,REGULAR]] (* added 2001 December 31 based on X-C-CP.NB *) cross[union[w_,complement[cart[x_,y_]]],z_] := cross[union[w,cart[V,complement[y]],cart[complement[x],V]],z] (* added 2001 December 31 based on X-C-CP.NB *) cross[w_,union[x_,complement[cart[y_,z_]]]] := cross[w,union[x,cart[V,complement[z]],cart[complement[y],V]]] cross[x_,V] := composite[inverse[FIRST],x,FIRST] cross[V,y_] := composite[inverse[SECOND],y,SECOND] (* revised 2003 May23 based on DEF-CLOS.NB *) CUPclosed := binclosed[CUP] (* abbreviation added 2005 January 7 *) DENUMERABLE = image[Q,set[omega]] (* derived 2004 December 30 in AXREG.NB *) DESCENDING := set[0] /; AxReg (* Quaife's diagonalization functor *) diag[x_] := complement[fix[x]] (* added 2000 September 19 *) dif[x_,y_] := intersection[x,complement[y]] (* revised 2003 May23 based on DEF-CLOS.NB *) DIFclosed := binclosed[DIF] (* introduced 2005 August 1 in CATOFUNS.NB *) direct[x_,y_] := composite[cross[x,y],TWIST] (* added 2002 September 7 based on REPLACE.NB *) disjoint[x_,y_] := equal[0,intersection[x,y]] (* derived 2008 December 26 in EXAMPLES.NB *) dom[0] := 0 (* derived 2008 December 26 in EXAMPLES.NB *) dom[binop[x_]] := cart[fix[domain[binop[x]]],ids[binop[x]]] (* derived 2008 December 26 in EXAMPLES.NB *) dom[CAP] := 0 (* derived 2008 December 26 in EXAMPLES.NB *) dom[CATOFUNS] := composite[id[inverse[IMAGE[DUP]]],inverse[SECOND],IMAGE[FIRST],FIRST, id[composite[S,IMAGE[SECOND],id[FUNS]]]] (* derived 2008 December 26 in EXAMPLES.NB *) dom[CATORELN] := composite[id[inverse[IMAGE[DUP]]],inverse[SECOND],IMAGE[FIRST],FIRST, id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]]] (* derived 2008 December 26 in EXAMPLES.NB *) dom[COMPOSE] := 0 (* derived 2008 December 26 in EXAMPLES.NB *) dom[composite[cross[x_,y_],TWIST]] := cross[dom[x],dom[y]] (* derived 2008 December 25 in COD-DOM.NB *) dom[composite[x_,id[cart[V,V]]]] := dom[x] (* derived 2009 January 11 in CAT-SPEC.NB *) dom[composite[id[x_],inverse[DUP]]] := id[x] (* derived 2008 December 25 in COD-DOM.NB *) dom[composite[x_,SWAP]] := cod[x] (* derived 2008 December 26 in EXAMPLES.NB *) dom[composite[SWAP,RIF]] := composite[DUP,FIRST] (* derived 2009 January 11 in CAT-SPEC.NB *) dom[composite[SWAP,RIF,id[cart[x_,x_]]]] := composite[DUP,FIRST,id[composite[x,id[fix[x]]]]] (* derived 2008 December 26 in EXAMPLES.NB *) dom[CUP] := cart[V,set[0]] (* derived 2008 December 26 in EXAMPLES.NB *) dom[FIRST] := 0 (* derived 2008 December 26 in EXAMPLES.NB *) dom[INTADD] := cart[Z,set[id[omega]]] (* derived 2008 December 30 in CAT-WRAP.NB *) dom[intersection[x_,complement[image[V,t_]]]] := intersection[complement[image[V,t]],dom[x]] (* derived 2008 December 26 in EXAMPLES.NB *) dom[INTMUL] := cart[Z,set[composite[id[omega],SUCC]]] (* derived 2008 December 26 in EXAMPLES.NB *) dom[inverse[DUP]] := Id (* derived 2008 December 26 in EXAMPLES.NB *) dom[JOIN] := cart[LISTS,set[0]] (* derived 2008 December 26 in EXAMPLES.NB *) dom[NATADD] := cart[omega,set[0]] (* derived 2008 December 26 in EXAMPLES.NB *) dom[NATMUL] := cart[omega,set[set[0]]] (* derived 2008 December 26 in EXAMPLES.NB *) dom[SECOND] := 0 (* derived 2008 December 26 in EXAMPLES.NB *) dom[SYMDIF] := cart[V,set[0]] (* derived 2008 December 26 in EXAMPLES.NB *) dom[union[inverse[LEFT[0]],inverse[RIGHT[0]]]] := cart[V,set[0]] (* Theorem DO-2A in DO1 *) domain[0] := 0 (* added 2001 May 10 based on ACLOSURE.NB *) domain[ACLOSURE] := V (* Theorem ADJ-DO in ADJ proved 1999 March 13 *) domain[ADJOIN[x_]] := image[V,set[x]] (* derived 2006 November 9 in DOAP-CUR.NB *) domain[APPLY[CURRY,x_]] := union[complement[image[V,set[x]]],domain[domain[x]], image[V,intersection[x,complement[cart[cart[V,V],V]]]]] (* derived 2008 October 21 in JOIN.NB *) domain[APPLY[JOIN,PAIR[list[x_],list[y_]]]] := natadd[domain[list[x]],domain[list[y]]] (* added 1999 October 13 based on ASSOC.1 *) domain[ASSOC] := cart[cart[V,V],V] (* Theorem BA-DO in BIGCAP/BA1 added 1998 July 30 *) domain[BIGCAP] := complement[set[0]] (* Theorem BC-DO in BIGCUP/BC *) domain[BIGCUP] := V (* sum class of a set is a set *) (* Theorem CAP-DO in CAP proved 1999 August 12 *) domain[CAP] := cart[V,V] (* added 2001 December 2 based on CARD-FUN.NB *) domain[CARD] := image[Q,OMEGA] (* Theorem CART-DO in CART proved 1999 July 26 *) domain[CART] := cart[V,V] (* derived 2008 October 8 in DORA-SQR.NB *) domain[cart[x_,x_]] := x (* added 1996 June 29 Theorem IM-CP-DO in IM3 *) domain[cart[x_,y_]] := intersection[x,image[V,y]] (* derived 2005 August 1 in CATOFUNS.NB *) domain[CATOFUNS] := composite[id[composite[S,IMAGE[SECOND],id[FUNS]]],inverse[SECOND], IMAGE[FIRST],FIRST,id[composite[S,IMAGE[SECOND],id[FUNS]]]] (* derived 2005 July 30 in CATORELN.NB *) domain[CATORELN] := composite[id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]], inverse[SECOND],IMAGE[FIRST],FIRST,id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]]] (* derived 2007 May 6 in CHN-FU.NB *) domain[CHAINS] := V (* derived 2006 August 22 in CHAR.NB *) domain[CHAR[x_]] := intersection[image[V,set[x]],P[x]] (* Axiom of Choice AX-CH-3 *) domain[CHOICE] := complement[set[0]] /; AxCh (* added 2001 April 29 based on CLIQUES2.NB *) domain[CLIQUES] := V (* derived 2006 July 13 in CLOCK.NB *) domain[clock[x_]] := nat[x] (* added 2003 July 4 based on COARSER.NB *) domain[COARSER] := V (* derived 2008 December 30 in CAT-WRAP.NB *) domain[cod[cat[x_]]] := range[cat[x]] (* added 2001 May 18 based on COMMUTE2.NB *) domain[COMMUTE] := V (* derived 2004 February 20 in REPLACE1.NB *) domain[complement[x_]] := complement[lb[x,V]] (* Theorem CPS-DO in COMPOSE-CPS proved 2001 January 16 *) domain[COMPOSE] := cart[V,V] (* Theorem CO-DO5 in CO3 *) domain[composite[x_,y_]] := image[inverse[y],domain[x]] (* added 2001 May 2 based on COREHULL.NB *) domain[CORE[x_]] := V (* Theorem CRS-DO in CROSS proved 2000 August 6 *) domain[CROSS] := cart[V,V] (* Theorem X-DO-3 in X2 *) domain[cross[x_,y_]] := cart[domain[x],domain[y]] (* Theorem CUP-DO in CUP1 proved 1999 July 22 *) domain[CUP] := cart[V,V] (* derived 2006 November 5 in CURRY.NB *) domain[CURRY] := P[cart[cart[V,V],V]] (* Theorem DI-DO in DI added 1998 July 2 *) domain[Di] := V (* added 1999 October 26 based on DIF2.NB *) domain[DIF] := cart[V,V] (* Theorem DJT-DO in DJT *) domain[DISJOINT] := V (* added 2002 August 30 based on DIVIDES.NB *) domain[DIV] := omega (* derived 2008 December 30 in CAT-WRAP.NB *) domain[dom[cat[x_]]] := range[cat[x]] (* derived 2008 October 7 in BNP-WRAP.NB *) domain[domain[binop[x_]]] := fix[domain[binop[x]]] (* derived 2008 December 30 in CAT-WRAP.NB *) domain[domain[cat[x_]]] := range[cat[x]] (* derived 2009 January 21 in HOM.NB *) domain[domain[hom[x_]]] := ids[x] (* derived 2008 October 9 in QUASIGP.NB *) domain[domain[quasigp[x_]]] := range[quasigp[x]] (* derived 2008 October 19 in SEMIGP.NB *) domain[domain[semigp[x_]]] := fix[domain[semigp[x]]] (* added 2001 December 18 based on DORA.NB *) domain[DORA] := V (* Theorem DUP-DO in DUP *) domain[DUP] := V (* Theorem E-DO in E1 *) domain[E] := V (* added 2002 November 3 based on EQUIDIFF.NB *) domain[EQUIDIFF] := cart[omega,omega] (* derived 2004 May 12 in EQUIV.NB *) domain[EQUIV] := V (* derived 2004 May 12 in EQV-GEN.NB *) domain[eqv[x_]] := fix[eqv[x]] (* derived 2005 April 16 in FACTRL.NB *) domain[FACTORIAL] := omega (* Theorem FIN-DO2 proved 2000 April 22 *) domain[FINITE] := V (* Theorem 1ST-DO-3 *) domain[FIRST] := cart[V,V] (* added 2001 January 28 based on PAIRSET.NB *) domain[fix[composite[complement[inverse[rotate[x_]]],y_]]] := fix[composite[complement[x],SWAP,inverse[rotate[composite[y,SWAP]]]]] (* derived 2008 October 28 in FIX-DUP.NB *) domain[fix[composite[DUP,x_]]] := fix[composite[x,DUP]] (* added 1996 July 15 in SIMPLIFY.2 *) domain[fix[composite[x_,FIRST]]] := fix[composite[FIRST,x]] (* added 1996 July 15 in SIMPLIFY.2 *) domain[fix[composite[inverse[FIRST],x_]]] := fix[composite[x,inverse[FIRST]]] (* derived 2006 September 12 in DIRECT.NB *) domain[fix[composite[inverse[SECOND],w_,cross[x_,y_],TWIST]]] := composite[rotate[composite[y,SWAP]],twist[w],inverse[rotate[composite[x,SWAP]]]] (* derived 2005 August 5 in IMG-X.NB *) domain[fix[composite[inverse[SECOND],Di,ASSOC]]] := cart[V,V] (* derived 2005 August 5 in IMG-X.NB *) domain[fix[composite[inverse[SECOND],Di,CART]]] := V (* derived 2009 January 13 in CAT-IDS.NB *) domain[fix[composite[inverse[SECOND],Di,cat[x_]]]] := intersection[complement[ids[cat[x]]],range[cat[x]]] (* derived 2006 September 17 in CATR-IDS.NB *) domain[fix[composite[inverse[SECOND],Di,CATORELN]]] := composite[intersection[complement[inverse[IMAGE[DUP]]], composite[S,IMAGE[SECOND]]],id[P[cart[V,V]]]] (* derived 2005 August 5 in IMG-X.NB *) domain[fix[composite[inverse[SECOND],Di,COMPOSE]]] := V (* derived 2005 August 5 in IMG-X.NB *) domain[fix[composite[inverse[SECOND],Di,IMAGE[DUP]]]] := V (* derived 2005 August 5 in IMG-X.NB *) domain[fix[composite[inverse[SECOND],Di,IMG]]] := V (* derived 2005 August 5 in IMG-X.NB *) domain[fix[composite[inverse[SECOND],Di,PAIRSET]]] := V (* derived 2005 August 5 in IMG-X.NB *) domain[fix[composite[inverse[SECOND],Di,RIF]]] := cart[V,V] (* derived 2005 August 5 in IMG-X.NB *) domain[fix[composite[inverse[SECOND],Di,SINGLETON]]] := V (* added 2000 September 8 based on FUNPART.LOG *) domain[FUNPART] := V (* derived 2008 June 21 in FUNP-RFX.NB *) domain[funpart[eqv[x_]]] := fix[funpart[eqv[x]]] (* derived 2008 June 21 in FP-FUNP.NB *) domain[funpart[po[x_]]] := fix[funpart[po[x]]] (* derived 2008 June 21 in FUNP-RFX.NB *) domain[funpart[rfx[x_]]] := fix[funpart[rfx[x]]] (* derived 2008 August 18 in CL-S.NB *) domain[GLB[composite[id[P[x_]],S,id[image[S,set[y_]]]]]] := union[ intersection[image[inverse[BIGCAP],intersection[image[S,set[y]],P[x]]],P[P[x]]], intersection[complement[image[V,intersection[y,complement[x]]]],image[V,set[x]],set[0]]] (* derived 2008 August 19 in RS-S-CL.NB *) domain[GLB[composite[id[x_],S]]] := union[intersection[image[V,intersection[x,set[U[x]]]],set[0]], intersection[image[inverse[BIGCAP],fix[composite[S,id[x],S,IMAGE[id[U[x]]]]]],P[x]]] (* derived 2005 October 5 in GLB-DIV.NB *) domain[GLB[DIV]] := P[omega] (* added 2000 December 5 based on DO-GT.NB *) domain[GREATEST[complement[x_]]] := complement[subvar[x]] (* added 2002 November 26 based on LT-GT-DI.NB *) domain[GREATEST[composite[Di,x_]]] := intersection[complement[subvar[x]],P[domain[x]]] /; FUNCTION[x] (* added 2002 November 26 based on IVR-SBV.NB *) domain[GREATEST[composite[x_,Di]]] := complement[invar[inverse[x]]] /; INVFUN[x] (* derived 2007 June 12 in DO-GT-LT.NB *) domain[GREATEST[composite[inverse[funpart[x_]],y_,funpart[x_]]]] := intersection[image[inverse[IMAGE[funpart[x]]],domain[GREATEST[y]]],P[domain[funpart[x]]]] (* Theorem HC-DO in HC proved 2001 April 6 *) domain[HC] := V (* derived 2008 May 8 in AP-HIST.NB *) domain[history[funpart[x_],thinpart[y_]]] := V (* derived 2009 January 21 in HOM.NB *) domain[hom[composite[cross[x_,y_],TWIST]]] := cross[domain[hom[x]],domain[hom[y]]] (* added 2001 May 2 based on IMG-PC.NB *) domain[HULL[x_]] := image[inverse[S],x] (* derived 2007 March 1 in TRV-RFX.NB *) domain[hull[RFX,x_]] := fix[hull[RFX,x]] (* Theorem ID-5A in ID2 *) domain[Id] := V (* Theorem IDX-DO in IDX2 *) domain[id[x_]] := x (* added 2001 December 23 based on DORA-1.NB *) domain[image[DORA,x_]] := image[IMAGE[FIRST],x] (* added 2001 March 31 based on BIN-FU.NB *) domain[image[inverse[CAP],x_]] := image[S,x] (* added 2001 March 31 based on BIN-FU.NB *) domain[image[inverse[CUP],x_]] := image[inverse[S],x] (* added 2001 December 30 based on IMINDIF.NB *) domain[image[inverse[DIF],x_]] := image[S,x] (* derived 2008 September 13 in INTADD.NB *) domain[image[inverse[INTADD],x_]] := intersection[Z,image[V,intersection[x,Z]]] (* derived 2006 August 15 in NAT-SUCC.NB *) domain[image[inverse[NATADD],set[x_]]] := nat[succ[x]] (* added 2002 September 2 based on IMAGEDIV.NB *) domain[image[inverse[NATMUL],x_]] := image[inverse[DIV],x] (* derived 2008 October 18 in QG-RL.NB *) domain[image[inverse[quasigp[x_]],set[y_]]] := intersection[image[V,intersection[range[quasigp[x]],set[y]]],range[quasigp[x]]] (* added 1999 December 24 based on SYMDIF-2.NB *) domain[image[inverse[SYMDIF],set[x_]]] := image[V,set[x]] (* Theorem IM-V-DO in IM2 *) domain[image[V,x_]] := image[V,x] (* Theorem VS-DO-9 in VS2 proved 1999 July 13 *) domain[IMAGE[x_]] := P[domain[VERTSECT[x]]] (* derived 2008 September 13 in IMINTMUL.NB *) domain[image[inverse[INTMUL],x_]] := image[inverse[INTDIV],x] (* Theorem MG-DO in MG proved 2000 August 25 *) domain[IMG] := cart[V,V] (* added 2003 July 25 based on INTADD.NB *) domain[INTADD] := cart[Z,Z] (* derived 2006 October 21 in INTDIV.NB *) domain[INTDIV] := Z (* Theorem FP-CO3 in FP2 *) domain[intersection[x_,y_]] := fix[composite[inverse[x],y]] (* derived 2006 September 24 in INTLEQ.NB *) domain[INTLEQ] := Z (* derived 2006 December 21 in INTMUL-1.NB *) domain[INTMUL] := cart[Z,Z] (* derived 2006 December 19 in ZTIMES-1.NB *) domain[INTTIMES] := Z (* derived 2008 September 15 in INTTIMES.NB *) domain[inttimes[x_]] := intersection[Z,image[V,intersection[Z,set[x]]]] (* added 2002 April 10 based on INVAR.NB *) domain[INVAR] := V (* added 1999 October 12 based on INVERSE.4 *) domain[INVERSE] := P[cart[V,V]] (* Definition DF-RA in AX-B *) domain[inverse[z_]] := range[z] (* added 2002 June 30 based on DOITSUCC.NB *) domain[iterate[SUCC,x_]] := intersection[omega,image[V,x]] (* derived 2008 October 21 in JOIN.NB *) domain[JOIN] := cart[LISTS,LISTS] (* Theorem K-DO in K proved 2000 May 16 *) domain[K] := V (* added 2002 January 11 based on KURA.NB *) domain[KURA] := cart[V,V] (* added 2003 May 10 based on LAMBHULL.NB *) domain[LAMBHULL] := V (* derived 2008 August 29 in LB-COMUT.NB *) domain[LB[COMMUTE]] := V (* added 2001 December 30 based on DISCOVER.NB *) domain[LB[complement[cross[x_,y_]]]] := V (* derived 2004 June 27 in X1691.NB *) domain[LB[eqv[x_]]] := cliques[eqv[x]] (* derived 2004 January 22 in INVAR.NB *) domain[LB[INVAR]] := V (* added 2000 December 23 based on LB-LB.NB *) domain[LB[LB[x_]]] := V (* added 2000 December 23 based on LB-LB.NB *) domain[LB[UB[x_]]] := V (* added 2000 December 5 based on DO-GT.NB *) domain[LEAST[complement[x_]]] := complement[subvar[inverse[x]]] (* added 2002 November 26 based on IVR-SBV.NB *) domain[LEAST[composite[Di,x_]]] := complement[invar[x]] /; FUNCTION[x] (* added 2002 November 26 based on LT-GT-DI.NB *) domain[LEAST[composite[x_,Di]]] := intersection[complement[subvar[inverse[x]]],P[range[x]]] /; INVFUN[x] (* derived 2007 June 12 in DO-GT-LT.NB *) domain[LEAST[composite[inverse[funpart[x_]],y_,funpart[x_]]]] := intersection[image[inverse[IMAGE[funpart[x]]],domain[LEAST[y]]],P[domain[funpart[x]]]] (* derived 2008 March 9 in WO.NB *) domain[LEAST[to[fin[x_]]]] := intersection[complement[set[0]],P[fix[to[fin[x]]]]] (* added 2002 November 26 based on LT-GT-CP.NB *) domain[LEAST[union[cart[x_,y_],composite[Di,SUCC]]]] := union[complement[invar[SUCC]],complement[invar[composite[SUCC,id[x]]]], complement[P[union[complement[x],complement[image[inverse[SUCC],y]]]]]] (* derived 2005 October 16 in WO-WRAP.NB *) domain[LEAST[wo[x_]]] := intersection[complement[set[0]],P[fix[wo[x]]]] (* added 1999 August 16 based on session NORMAL.4 *) domain[LEFT[x_]] := image[V,set[x]] (* rules added 1998 January 22 *) domain[LeftPairV] := V (* derived 2005 October 5 in GLB-DIV.NB *) domain[LUB[DIV]] := P[omega] (* added 2001 April 27 based on MAP3.NB *) domain[MAP] := cart[V,V] (* added 2000 November 21 based on MAX-DO.NB *) domain[MAXIMAL[x_]] := complement[subvar[intersection[Di,inverse[x]]]] (* added 2000 November 20 based on GT-DO.LOG *) domain[MINIMAL[x_]] := complement[subvar[intersection[Di,x]]] (* derived 2006 December 3 in MIXDIV.NB *) domain[MIXDIV] := omega (* derived 2006 December 6 in MIXMUL-1.NB *) domain[MIXMUL] := cart[Z,omega] (* derived 2006 December 5 in MIXTIMES.NB *) domain[MIXTIMES] := Z (* derived 2005 July 18 in MODULO.NB *) domain[modulo[x_]] := intersection[omega,image[V,intersection[omega,set[x]]]] (* added 2002 June 12 based on NATADD.NB *) domain[NATADD] := cart[omega,omega] (* derived 2006 June 27 in NATEXP-1.NB *) domain[NATEXP] := cart[omega,omega] (* derived 2005 May 17 based on NATMOD.NB *) domain[NATMOD] := cart[omega,omega] (* added 2002 July 1 based on MUL-DO.NB *) domain[NATMUL] := cart[omega,omega] (* added 1998 May 24 *) domain[omega] := 0 (* Theorem ON-1-DO in ON1 added 1998 May 24 *) domain[OMEGA] := 0 (* derived 2004 May 9 in OOPART.NB *) domain[OOPART] := V (* added 1999 October 2 based on PAIRSET.7 *) domain[PAIRSET] := cart[V,V] (* added 2002 November 29 based on PLUS.NB *) domain[PLUS] := omega (* added 2003 August 7 based on PLUS.NB *) domain[plus[x_]] := intersection[omega,image[V,intersection[omega,set[x]]]] (* derived 2005 October 1 in PO-WRAP.NB *) domain[po[x_]] := fix[po[x]] (* Theorem POW-DO in POW2 added 1998 July 18 *) domain[POWER] := V (* derived 2005 August 17 in PRIMESEQ.NB *) domain[PRIMESEQ] := omega (* Theorem PS-DO in PS added 1998 August 9 *) domain[PS] := V (* Theorem Q-DO in Q proved 2000 April 25 *) domain[Q] := V (* rules added 1998 January 22 *) domain[range[LeftPairV]] := 0 domain[range[RightPairV]] := 0 (* Theorem RK-DO6 in RANK6 proved 2001 August 11 *) domain[RANK] := REGULAR (* added 1999 October 31 based on DIF-LEFT.NB *) domain[RC[x_]] :=intersection[image[V,set[x]],P[x]] (* added 2002 February 3 based on RCF.NB *) domain[RCF] := V (* Theorem REG-30 *) domain[REGULAR] := REGULAR (* added 2003 May 30 based on RESTRICT.NB *) domain[RESTRICT] := V (* derived 2004 December 16 in RFX-CORE.NB *) domain[rfx[x_]] := fix[x] (* added 2001 January 20 based on RIF-2.NB *) domain[RIF] := composite[inverse[SECOND],FIRST] (* added 1999 August 16 based on session NORMAL.4 *) domain[RIGHT[x_]] := image[V,set[x]] (* rules added 1998 January 22 *) domain[RightPairV] := V (* added 1999 August 2 *) domain[ROT] := cart[cart[V,V],V] (* added 1999 September 3 based on ROTATE.1 *) domain[rotate[x_]] := composite[FIRST,inverse[x]] (* Theorem SR-DO in SR1 *) domain[S] := V (* Theorem 2ND-DO *) domain[SECOND] := cart[V,V] (* Theorem DG-DO in SG2 *) domain[SINGLETON] := V (* added 2001 November 13 based on 1ST-2ND.NB *) domain[set[x_]] := set[first[x]] (* derived 2004 April 6 in SMALLER.NB *) domain[SMALLER] := V (* added 2002 December 27 based on SBCOMMUT.NB *) domain[SUBCOMMUTE] := V (* added 2000 February 15 *) domain[SUBVAR] := V (* Theorem SUC-DO in SUC-RELATION *) domain[SUCC] := V (* Theorem SW-DO in SW3 *) domain[SWAP] := cart[V,V] (* added 1999 December 2 based on SYMDIF-2.NB *) domain[SYMDIF] := cart[V,V] (* revised 2000 October 24 *) domain[TC] := V (* derived 2006 October 16 in EQV-PROJ.NB *) domain[thinpart[eqv[x_]]] := fix[thinpart[eqv[x]]] (* derived 2006 January 21 in LEAST-VS.NB *) domain[thinpart[po[x_]]] := fix[thinpart[po[x]]] (* derived 2005 October 15 in TO-THIN.NB *) domain[thinpart[to[x_]]] := fix[thinpart[to[x]]] (* derived 2006 September 23 in TIMES.NB *) domain[TIMES] := omega (* derived 2005 July 17 in TIMES.NB *) domain[times[x_]] := intersection[omega,image[V,intersection[omega,set[x]]]] (* derived 2005 October 8 in TO-WRAP.NB *) domain[to[x_]] := fix[to[x]] (* added 2003 January 27 *) domain[trv[x_]] := domain[x] (* added 2001 January 18 based on ROT-CPS.NB *) domain[twist[x_]] := composite[FIRST,x,inverse[FIRST]] (* Theorem TW-2 in TWIST proved 1999 July 30 *) domain[TWIST] := cart[cart[V,V],cart[V,V]] (* derived 2008 November 7 in DO-UIMVS.NB *) domain[U[image[VS,x_]]] := domain[U[x]] (* derived 2004 June 24 in SBCOMTNT.NB *) domain[U[subcommutant[thinpart[x_]]]] := V (* added 2001 December 30 based on DISCOVER.NB *) domain[UB[complement[cross[x_,y_]]]] := V (* derived 2007 April 23 in LBUBDIV0.NB *) domain[UB[DIV]] := P[omega] (* added 2002 November 16 based on FACTEQDF.NB *) domain[UB[EQUIDIFF]] := cliques[EQUIDIFF] (* derived 2004 June 27 in X1691.NB *) domain[UB[eqv[x_]]] := cliques[eqv[x]] (* added 2000 December 18 based on LB-LB.NB *) domain[UB[Q]] := cliques[Q] (* derived 2008 August 13 in ALL-UB.NB *) domain[UB[union[E,x_]]] := V (* derived 2008 July 5 in UBD-DEFN.NB *) domain[UBD] := V (* derived 2007 June 25 in UCH-HULL.NB *) domain[UCHAINS] := V (* added 2001 May 10 based on UCLOS-1.NB *) domain[UCLOSURE] := V (* Theorem DO-3 in DO1 *) domain[union[x_,y_]] := union[domain[x],domain[y]] (* Theorem DO-2B in DO1 *) domain[V] := V (* corollary of Theorem IMG-RP in IMG2 follows from axiom of replacement *) domain[VERTSECT[x_]] := V /; FUNCTION[x] (* corollary of Theorem IM-DO-V in IMG2 added 1998 August 15 *) domain[VERTSECT[x_]] := V /; member[x,V] (* derived 2008 May 9 in THINNESS.NB *) domain[VERTSECT[x_]] := V /; member[range[x],V] (* derived 2008 November 21 in ASSOCFUN.NB *) domain[VERTSECT[assoc[thinpart[x]]]] := V (* derived 2003 December 31 in COARSER.NB *) domain[VERTSECT[COARSER]] := V (* added 2001 July 4 based on VS-1.NB *) domain[VERTSECT[complement[composite[complement[inverse[E]],x_]]]] := domain[x] (* added 2001 July 4 based on VS-1.NB *) domain[VERTSECT[complement[composite[complement[inverse[S]],x_]]]] := domain[x] (* derived 2004 February 25 in HULLUBLB.NB *) domain[VERTSECT[complement[composite[complement[x_],LB[x_]]]]] := image[inverse[S],fix[VERTSECT[complement[composite[complement[x],LB[x]]]]]] (* derived 2008 September 30 in LAMB-BIJ.NB *) domain[VERTSECT[composite[id[BIJ],inverse[DORA]]]] := V (* added 1999 October 16 based on 1999\OCT\15\VERTSECT.1 *) domain[VERTSECT[composite[id[cart[V,V]],x_]]] := intersection[ domain[VERTSECT[composite[FIRST,x]]],domain[VERTSECT[composite[SECOND,x]]]] (* derived 2004 June 19 in X14--.NB *) domain[VERTSECT[composite[id[x_],Di]]] := image[V,set[x]] (* derived 2004 June 25 in X2500-19.NB *) domain[VERTSECT[composite[id[x_],inverse[FIRST]]]] := domain[VERTSECT[x]] (* derived 2004 June 25 in X2500-19.NB *) domain[VERTSECT[composite[id[x_],inverse[SECOND]]]] := domain[VERTSECT[inverse[x]]] (* added 2001 December 24 based on THINDORA.NB *) domain[VERTSECT[composite[id[P[cart[V,V]]],inverse[DORA]]]] := V (* derived 2004 November 18 in XS-IN-AC.NB *) domain[VERTSECT[composite[id[P[cart[V,V]]],inverse[RESTRICT]]]] := complement[P[cart[V,V]]] (* derived 2006 November 8 in THIN.NB *) domain[VERTSECT[composite[x_,inverse[FIRST]]]] := V /; member[x,V] (* added 2002 June 24 based on THIN-TRV.NB *) domain[VERTSECT[composite[inverse[power[x_]],inverse[FIRST]]]] := V (* derived 2006 November 8 in THIN.NB *) domain[VERTSECT[composite[x_,inverse[SECOND]]]] := V /; member[x,V] (* derived 2007 April 26 in THIN-Q.NB *) domain[VERTSECT[composite[Q,S]]] := 0 (* derived 2006 October 28 in THINNESS.NB *) domain[VERTSECT[composite[SWAP,x_]]] := intersection[domain[VERTSECT[composite[FIRST,x]]],domain[VERTSECT[composite[SECOND,x]]]] (* revised 2001 November 25 based on VS-X.NB *) domain[VERTSECT[cross[x_,y_]]] := intersection[ complement[cart[complement[domain[VERTSECT[x]]],domain[y]]], complement[cart[domain[x],complement[domain[VERTSECT[y]]]]]] (* derived 2004 September 30 in EQV-THNP.NB *) domain[VERTSECT[eqv[thinpart[x_]]]] := V (* added 2002 April 8 based on DVS-1ST.NB *) domain[VERTSECT[first[x_]]] := image[V,set[first[x]]] (* derived 2008 September 4 in IN-2-SBV.NB *) domain[VERTSECT[fix[composite[inverse[SECOND],IMG]]]] := V (* added 2000 December 22 based on LEAST.NB *) domain[VERTSECT[GREATEST[x_]]] := V (* added 1999 October 22 based on Theorem VS-DO-SU in VS1 *) domain[VERTSECT[intersection[x_,y_]]] := V /; cond && thin[x] (* derived 2005 April 16 in VS-I-DI.NB *) domain[VERTSECT[intersection[Di,x_]]] := domain[VERTSECT[x]] (* added 2002 February 2 based on THINNESS.NB *) domain[VERTSECT[inverse[ACLOSURE]]] := V (* added 2003 June 29 based on ADJOIN.NB *) domain[VERTSECT[inverse[ADJOIN[x_]]]] := V (* added 2001 October 2 based on ACL-UCL.NB *) domain[VERTSECT[inverse[BIGCUP]]] := V (* added 2003 July 4 based on COARSER.NB *) domain[VERTSECT[inverse[COARSER]]] := V (* added 2002 February 2 based on THINNESS.NB *) domain[VERTSECT[inverse[CUP]]] := V (* derived 2007 January 21 in THIN-1-2.NB *) domain[VERTSECT[inverse[first[x_]]]] := image[V,set[first[x]]] (* added 2001 October 2 based on ACL-UCL.NB *) domain[VERTSECT[inverse[IMAGE[POWER]]]] := V (* added 2002 February 2 based on THINNESS.NB *) domain[VERTSECT[inverse[K]]] := V (* added 1999 October 17 based on STRANGE.7 *) domain[VERTSECT[inverse[PAIRSET]]] := V (* added 2000 November 14 based on MAX.NB *) domain[VERTSECT[inverse[PS]]] := V (* derived 2004 December 31 in IN-RK.NB *) domain[VERTSECT[inverse[RANK]]] := V (* derived 2004 November 17 in INTERVAL.NB *) domain[VERTSECT[inverse[RESTRICT]]] := complement[P[cart[V,V]]] (* added 1999 October 17 based on 1999\OCT\15\WORK\SESSION.1 *) domain[VERTSECT[inverse[rotate[x_]]]] := intersection[domain[VERTSECT[composite[x,inverse[SECOND]]]], domain[VERTSECT[inverse[domain[x]]]]] (* derived 2007 January 21 in THIN-1-2.NB *) domain[VERTSECT[inverse[second[x_]]]] := image[V,set[first[x]]] (* Corollary of Theorem SUC-IN7 in SUC-RELATION added 1998 August 7 *) domain[VERTSECT[inverse[SUCC]]] := V (* added 2001 March 15 based on H-2.NB *) domain[VERTSECT[inverse[TC]]] := V (* derived 2004 June 6 in REPLACE.NB *) domain[VERTSECT[inverse[trv[SUCC]]]] := V (* added 2002 February 2 based on THINNESS.NB *) domain[VERTSECT[inverse[UCLOSURE]]] := V (* added 2000 December 22 based on LEAST.NB *) domain[VERTSECT[LEAST[x_]]] := V (* added 1999 August 17 based on session INTRIGUE.2 *) domain[VERTSECT[LEFT[x_]]] := V (* derived 2004 August 1 in THINNESS.NB *) domain[VERTSECT[MAXIMAL[x_]]] := V (* derived 2004 August 1 in THINNESS.NB *) domain[VERTSECT[MINIMAL[x_]]] := V (* derived 2007 June 12 in FIN-PO.NB *) domain[VERTSECT[po[fin[x_]]]] := V (* derived 2005 October 1 in PO-THIN.NB *) domain[VERTSECT[po[thinpart[x_]]]] := V (* added 2003 May 30 based on RESTRICT.NB *) domain[VERTSECT[RESTRICT]] := V (* derived 2004 December 17 in RFX.NB *) domain[VERTSECT[rfx[thinpart[x_]]]] := V (* derived 2005 January 29 in RFXTRVTH.NB *) domain[VERTSECT[rfx[trv[thinpart[x_]]]]] := V (* added 1999 August 17 based on session INTRIGUE.2 *) domain[VERTSECT[RIGHT[x_]]] := V (* derived 2004 September 30 in RO-IN-TH.NB *) domain[VERTSECT[rotate[x_]]] := V /; cond && thin[inverse[x]] (* added 1999 October 12 based on CHALRULE.LOG *) domain[VERTSECT[rotate[E]]] := V (* derived 2004 May 14 based on SPECIAL.NB *) domain[VERTSECT[rotate[inverse[thinpart[x_]]]]] := V (* added 2002 April 8 based on DVS-1ST.NB *) domain[VERTSECT[second[x_]]] := image[V,set[first[x]]] (* derived 2004 May 14 in THINPART.NB *) domain[VERTSECT[thinpart[x_]]] := V (* derived 2005 October 15 in TO-THIN.NB *) domain[VERTSECT[to[thinpart[x_]]]] := V (* added 2002 June 24 based on THIN-TRV.NB *) domain[VERTSECT[trv[x_]]] := V /; cond && thin[x] (* derived 2004 August 1 in THINNESS.NB *) domain[VERTSECT[trv[thinpart[x_]]]] := V (* derived 2005 December 30 in UB-THIN.NB *) domain[VERTSECT[UB[setpart[x_]]]] := complement[set[0]] (* derived 2005 December 30 in UB-THIN.NB *) domain[VERTSECT[UB[thinpart[x_]]]] := complement[set[0]] (* Corollary of Theorem IMG-U in IMG3 proved 1998 March 25 *) domain[VERTSECT[union[x_,y_]]] := intersection[domain[VERTSECT[x]],domain[VERTSECT[y]]] (* derived 2004 December 30 in AXREG.NB *) domain[VERTSECT[ZN]] := V /; AxReg (* added 2003 June 11 based on VS.NB *) domain[VS] := V (* derived 2004 September 25 in LAMB-WF.NB *) domain[WFPART] := V (* derived 2005 October 16 in WO-WRAP.NB *) domain[wo[x_]] := fix[wo[x]] (* derived 2004 November 16 in XS.NB *) domain[XS] := V (* added 2001 July 12 based on ZN-2.NB *) domain[ZN] := V (* derived 2008 December 28 in E.NB *) e[0] := V (* derived 2008 December 28 in E.NB *) e[CAP] := V (* derived 2008 December 28 in E.NB *) e[COMPOSE] := V (* derived 2008 December 29 in MONOIDS.NB *) e[composite[cross[binop[x_],binop[y_]],TWIST]] := PAIR[e[binop[x]],e[binop[y]]] (* derived 2008 December 31 in CAT-MON.NB *) e[composite[x_,SWAP]] := e[x] (* derived 2008 December 28 in E.NB *) e[CUP] := 0 (* derived 2008 December 28 in E.NB *) e[FIRST] := V (* derived 2008 December 28 in E.NB *) e[INTADD] := id[omega] (* derived 2008 December 28 in E.NB *) e[INTMUL] := composite[id[omega],SUCC] (* derived 2008 December 28 in E.NB *) e[JOIN] := 0 (* derived 2008 December 28 in E.NB *) e[NATADD] := 0 (* derived 2008 December 28 in E.NB *) e[NATMUL] := set[0] (* derived 2008 December 28 in E.NB *) e[SECOND] := V (* derived 2008 December 28 in E.NB *) e[SYMDIF] := 0 (* definition of empty *) empty[x_] := equal[0,x] equal[x_,x_] := True (* derived 2006 February 2 in EQ-0.NB *) equal[0,ACLOSURE] := False (* added 2001 December 8 based on EMPTY-1.NB *) equal[0,Aclosure[x_]] := equal[0,x] (* derived 2006 February 2 in EQ-0.NB *) equal[0,ACYCLIC] := False (* added 2001 December 8 based on EMPTY-1.NB *) equal[0,ADJOIN[x_]] := not[member[x,V]] (* added 2002 January 26 based on IMV.NB *) equal[0,ANTISYM] := False (* derived 2006 November 9 in DOAP-CUR.NB *) equal[0,APPLY[CURRY,x_]] := equal[0,x] (* derived 2005 April 21 in AP-FACT.NB *) equal[0,APPLY[FACTORIAL,x_]] := False (* derived 2006 November 21 in CUR-0.NB *) equal[0,APPLY[inverse[CURRY],x_]] := equal[0,x] (* derived 2008 October 24 in JOIN-FP.NB *) equal[0,APPLY[JOIN,PAIR[list[x_],list[y_]]]] := and[equal[0,list[x]],equal[0,list[y]]] (* derived 2006 December 9 in SIMPLIFY.NB *) equal[0,APPLY[MIXMUL,x_]] := False (* added 2000 October 4 based on NONEMPTY.LOG *) equal[0,ASSOC] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,ASSOCIATIVE] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,BIGCAP] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,BIGCUP] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,BIJ] := False (* derived 2008 September 30 in BIJ-Q.NB *) equal[0,bij[x_,y_]] := not[member[pair[x,y],Q]] (* added 2003 May 23 based on BINCLOSE.NB *) equal[0,binclosed[x_]] := False (* derived 2006 December 20 in ENDZ-DO.NB *) equal[0,binhom[INTADD,INTADD]] := False (* derived 2006 December 3 in MIXDIV.NB *) equal[0,binhom[NATADD,INTADD]] := False (* derived 2007 January 10 in BHNATADD.NB *) equal[0,binhom[NATADD,NATADD]] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,BINOPS] := False (* added 2000 October 4 based on NONEMPTY.LOG *) equal[0,CAP] := False (* added 2001 December 8 based on EMPTY-1.NB *) equal[0,CARD] := False (* added 2001 December 8 based on EMPTY-2.NB *) equal[0,card[x_]] := equal[0,x] (* added 2000 October 4 based on NONEMPTY.LOG *) equal[0,CART] := False (* added 1998 August 23 *) equal[0,cart[x_,y_]] := or[equal[0,x],equal[0,y]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,CATOFUNS] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,CATORELN] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,CHAINS] := False (* derived 2007 May 6 in CHNBASIC.NB *) equal[0,chains[x_]] := False (* derived 2006 August 22 in CHAR.NB *) equal[0,CHAR[x_]] := not[member[x,V]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,CL] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,CLIQUES] := False (* added 2001 November 22 based on CLIQUES.NB *) equal[0,cliques[x_]] := False (* derived 2003 December 22 in EMPTY.NB *) equal[0,COARSER] := False (* derived 2006 January 2 in EQ0UNARY.NB *) equal[0,commutant[x_]] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,COMMUTATIVE] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,COMMUTE] := False (* derived 2006 January 2 in EQ0NAMED.NB *) equal[0,COMPACT] := False (* added 2001 December 8 based on EQUAL-C.NB *) equal[0,complement[x_]] := equal[V,x] (* derived 2006 February 2 in EQ-0.NB *) equal[0,COMPOSE] := False (* added 1998 August 23 *) equal[0,composite[x_,y_]] := subclass[domain[x],complement[range[y]]] (* derived 2008 August 24 in EMPTY.NB *) equal[0,CONST] := False (* derived 2006 January 2 in EQ0UNARY.NB *) equal[0,CORE[x_]] := False (* derived 2004 April 17 in REPLACE.NB *) equal[0,core[x_,y_]] := subclass[intersection[x,P[y]],set[0]] (* added 2000 October 4 based on NONEMPTY.LOG *) equal[0,CROSS] := False (* proposed 1998 September 13 *) equal[0,cross[x_,y_]] := or[equal[0,domain[x]],equal[0,domain[y]]] (* added 2000 October 4 based on NONEMPTY.LOG *) equal[0,CUP] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,CURRY] := False (* derived 2006 January 2 in EQ0NAMED.NB *) equal[0,DEDEKIND] := False (* derived 2003 December 22 in EMPTY.NB *) equal[0,DESCENDING] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,Di] := False (* added 2000 October 4 based on NONEMPTY.LOG *) equal[0,DIF] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,DISJOINT] := False (* derived 2003 December 22 in EMPTY.NB *) equal[0,DIV] := False (* derived 2008 October 8 in BINOP-0.NB *) equal[0,domain[binop[x_]]] := equal[0,binop[x]] (* derived 2008 July 29 in EVAL-DO.NB *) equal[0,domain[eval[x_]]] := not[member[x,V]] (* derived 2008 October 6 in DO-FP-0.NB *) equal[0,domain[fix[x_]]] := equal[0,fix[x]] /; subclass[domain[x],cart[V,V]] (* derived 2008 October 6 in DO-FP-0.NB *) equal[0,domain[fix[x_]]] := equal[0,fix[x]] /; subclass[range[x],cart[V,V]] (* added 2002 October 25 based on ROTATE.NB *) equal[0,domain[fix[composite[x_,complement[y_]]]]] := subclass[composite[inverse[x],id[cart[V,V]]],y] (* added 2002 October 25 based on ROTATE.NB *) equal[0,domain[fix[composite[complement[x_],y_]]]] := subclass[composite[id[cart[V,V]],inverse[y]],x] (* derived 2008 October 6 in ROT-FU.NB *) equal[0,domain[fix[composite[cross[x_,y_],z_]]]] := equal[0,fix[composite[cross[x,y],z]]] (* derived 2008 October 6 in ROT-FU.NB *) equal[0,domain[fix[composite[w_,cross[x_,y_]]]]] := equal[0,fix[composite[w,cross[x,y]]]] (* added 2002 June 13 based on FUN-ADD.NB *) equal[0,domain[fix[composite[inverse[x_],Di,x_]]]] := FUNCTION[composite[x,id[cart[V,V]]]] (* added 2003 July 23 based on NATADD.NB *) equal[0,domain[fix[composite[x_,SWAP]]]] := equal[0,fix[composite[x,SWAP]]] (* derived 2006 March 12 in OLIST-OO.NB *) equal[0,domain[funpart[x_]]] := equal[0,funpart[x]] (* added 2001 December 30 based on DISCOVER.NB *) equal[0,domain[GREATEST[x_]]] := equal[0,fix[x]] (* derived 2007 May 19 in DO-ITER.NB *) equal[0,domain[iterate[x_,y_]]] := equal[0,y] (* derived 2008 July 5 in UBD-DEFN.NB *) equal[0,domain[LB[x_]]] := False (* added 2001 December 30 based on DISCOVER.NB *) equal[0,domain[LEAST[x_]]] := equal[0,fix[x]] (* derived 2008 October 23 in DOLIST-0.NB *) equal[0,domain[list[x_]]] := equal[0,list[x]] (* derived 2008 October 23 in DOLIST-0.NB *) equal[0,domain[oopart[x_]]] := equal[0,oopart[x]] (* derived 2006 March 12 in OLIST-OO.NB *) equal[0,domain[ordlist[x_]]] := equal[0,intersection[OMEGA,x]] (* derived 2008 October 9 in QUASIGP.NB *) equal[0,domain[quasigp[x_]]] := equal[0,quasigp[x]] (* derived 2008 October 19 in SEMIGP.NB *) equal[0,domain[semigp[x_]]] := equal[0,semigp[x]] (* derived 2004 November 18 in XS-IN-AC.NB *) equal[0,domain[U[complement[SELECT]]]] := axch (* derived 2004 September 21 in WF-X.NB *) equal[0,domain[U[subvar[cross[x_,y_]]]]] := WELLFOUNDED[cross[x,y]] (* derived 2008 July 5 in UBD-DEFN.NB *) equal[0,domain[UB[x_]]] := False (* derived 2008 October 23 in DOLIST-0.NB *) equal[0,domain[VERTSECT[x_]]] := equal[0,VERTSECT[x]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,DORA] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,DUP] := False (* derived 2006 January 3 in E.NB *) equal[0,E] := False (* derived 2003 December 22 in EMPTY.NB *) equal[0,EQUIDIFF] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,EQUIV] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,EQV] := False (* derived 2006 October 24 in EVAL.NB *) equal[0,eval[x_]] := not[member[x,V]] (* derived 2006 August 16 in EVOD-MUL.NB *) equal[0,even] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,FACTORIAL] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,FINCHAR] := False (* derived 2004 December 13 in DORA-FIN.NB *) equal[0,FINITE] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,FIRST] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,fix[ACLOSURE]] := False (* derived 2003 December 22 in EMPTY.NB *) equal[0,fix[CARD]] := False (* added 2000 November 27 based on FIX-C.NB *) equal[0,fix[composite[complement[x_],y_]]] := subclass[inverse[y],x] (* added 1998 September 10 *) equal[0,fix[composite[x_,complement[y_]]]] := subclass[inverse[x],y] (* added 1998 September 10 *) equal[0,fix[composite[x_,complement[y_],z_]]] := subclass[composite[z,x],inverse[y]] (* derived 2008 October 6 in ROT-FU.NB *) equal[0,fix[composite[cross[Di,Id],inverse[x_],x_]]] := FUNCTION[rotate[composite[x,SWAP]]] (* derived 2008 October 6 in ROT-FU.NB *) equal[0,fix[composite[cross[Di,Id],x_,inverse[x_]]]] := FUNCTION[rotate[composite[inverse[x],SWAP]]] (* derived 2006 February 15 in ACYFUPOW.NB *) equal[0,fix[composite[x_,cross[Di,Id],inverse[x_]]]] := FUNCTION[rotate[composite[x,SWAP]]] (* derived 2006 October 24 in FUFAMILY.NB *) equal[0,fix[composite[cross[Id,Di],inverse[x_],x_]]] := FUNCTION[rotate[x]] (* derived 2006 October 24 in FUFAMILY.NB *) equal[0,fix[composite[cross[Id,Di],x_,inverse[x_]]]] := FUNCTION[rotate[inverse[x]]] (* added 2002 June 15 based on REPLACE.NB *) equal[0,fix[composite[x_,cross[Id,Di],inverse[x_]]]] := FUNCTION[rotate[x]] (* added 2003 October 15 based on FUNRULES.NB *) equal[0,fix[composite[Di,x_]]] := subclass[composite[Id,x],Id] (* added 2003 October 15 based on FUNRULES.NB *) equal[0,fix[composite[x_,Di]]] := subclass[composite[Id,x],Id] (* added 2003 October 15 based on FUNRULES.NB *) equal[0,fix[composite[x_,Di,y_]]] := subclass[composite[y,x],Id] (* added 2002 November 16 based on LB-UB.NB *) equal[0,fix[composite[E,x_,LB[y_]]]] := equal[0,fix[composite[x,inverse[y]]]] (* added 2002 November 16 based on LB-UB.NB *) equal[0,fix[composite[E,x_,UB[y_]]]] := equal[0,intersection[x,inverse[y]]] (* added 2002 October 6 based on DIVISION.NB *) equal[0,fix[composite[FIRST,intersection[composite[inverse[x_],FIRST], composite[inverse[SECOND],Di,SECOND]], inverse[rotate[composite[x_,SWAP]]]]]] := FUNCTION[rotate[x]] (* added 2002 October 25 based on EQ-0-FIX.NB *) equal[0,fix[composite[x_,id[y_],z_]]] := equal[0,intersection[y,fix[composite[z,x]]]] (* derived 2008 April 17 in FP-DI.NB *) equal[0,fix[composite[x_,intersection[Di,y_]]]] := subclass[intersection[y,inverse[x]],Id] (* derived 2008 April 17 in FP-DI.NB *) equal[0,fix[composite[x_,intersection[Di,y_],z_]]] := subclass[intersection[composite[z,x],inverse[y]],Id] (* derived 2008 October 6 in ROT-FU.NB *) equal[0,fix[composite[inverse[x_],x_,cross[Di,Id]]]] := FUNCTION[rotate[composite[x,SWAP]]] (* derived 2008 October 6 in ROT-FU.NB *) equal[0,fix[composite[x_,inverse[x_],cross[Di,Id]]]] := FUNCTION[rotate[composite[inverse[x],SWAP]]] (* derived 2006 February 15 in ACYFUPOW.NB *) equal[0,fix[composite[inverse[x_],cross[Di,Id],x_]]] := FUNCTION[rotate[composite[inverse[x],SWAP]]] (* derived 2006 October 24 in FUFAMILY.NB *) equal[0,fix[composite[inverse[x_],x_,cross[Id,Di]]]] := FUNCTION[rotate[x]] (* derived 2006 October 24 in FUFAMILY.NB *) equal[0,fix[composite[x_,inverse[x_],cross[Id,Di]]]] := FUNCTION[rotate[inverse[x]]] (* added 2002 June 15 based on REPLACE.NB *) equal[0,fix[composite[inverse[x_],cross[Id,Di],x_]]] := FUNCTION[rotate[inverse[x]]] (* derived 2004 May 14 in SIMPLIFY.NB *) equal[0,fix[composite[inverse[IMAGE[id[x_]]],y_,IMAGE[id[composite[Id,x_]]]]]] := equal[0,intersection[fix[composite[y,IMAGE[id[cart[V,V]]]]],P[x]]] (* derived 2007 November 15 in ZORN-LEM.NB *) equal[0,fix[composite[inverse[IMAGE[inverse[PS]]],S,UCHAINS]]] := axch (* added 2002 June 28 based on BIN-FUN.NB *) equal[0,fix[composite[rotate[x_],inverse[rotate[composite[Di,x_]]]]]] := FUNCTION[composite[x,id[cart[V,V]]]] (* added 2002 October 6 based on DIVISION.NB *) equal[0,fix[composite[SECOND,intersection[composite[inverse[x_],FIRST], composite[inverse[FIRST],Di,SECOND]],inverse[rotate[x_]]]]] := FUNCTION[rotate[composite[x,SWAP]]] (* derived 2008 February 9 in ASYM-TRV.NB *) equal[0,fix[composite[trv[x_],trv[x_]]]] := equal[0,fix[trv[x]]] (* derived 2008 October 8 in BINOP-0.NB *) equal[0,fix[domain[binop[x_]]]] := equal[0,binop[x]] (* derived 2008 November 26 in SEMIGP.NB *) equal[0,fix[domain[semigp[x_]]]] := equal[0,semigp[x]] (* derived 2008 July 13 in TRV-WF.NB *) equal[0,fix[eqv[x_]]] := equal[0,eqv[x]] (* derived 2008 June 22 in FUNP-0.NB *) equal[0,fix[funpart[po[x_]]]] := equal[0,funpart[po[x]]] (* added 2003 September 7 based on FIX-HULL.NB *) equal[0,fix[HULL[x_]]] := equal[0,x] (* derived 2004 March 29 based on HULL.NB *) equal[0,fix[hull[TRV,x_]]] := and[equal[0,fix[trv[x]]],member[x,V],subclass[x,cart[V,V]]] (* derived 2008 September 23 in FIXIMAGE.NB *) equal[0,fix[IMAGE[x_]]] := False (* derived 2005 October 17 in 0-RFX.NB *) equal[0,fix[po[x_]]] := equal[0,po[x]] (* derived 2005 October 17 in 0-RFX.NB *) equal[0,fix[to[x_]]] := equal[0,to[x]] (* derived 2006 January 30 in I-Z.NB *) equal[0,fix[trv[plus[x_]]]] := not[equal[0,x]] (* derived 2008 August 24 in EMPTY.NB *) equal[0,fix[UCLOSURE]] := False (* derived 2005 October 17 in 0-RFX.NB *) equal[0,fix[wo[x_]]] := equal[0,wo[x]] (* derived 2006 January 2 in EQ0NAMED.NB *) equal[0,FULL] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,FUND] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,FUNPART] := False (* derived 2008 July 3 in MAX-FUNP.NB *) equal[0,funpart[composite[VERTSECT[inverse[po[setpart[x_]]]],po[setpart[x_]]]]] := equal[0,funpart[po[setpart[x]]]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,FUNS] := False (* derived 2006 January 3 in 0-LUB.NB *) equal[0,GLB[po[x_]]] := equal[0,po[x]] (* added 2001 December 30 based on LEAST.NB *) equal[0,GREATEST[x_]] := equal[0,fix[x]] (* derived 2008 August 24 in EMPTY.NB *) equal[0,HARTOGS] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,HC] := False (* added 2001 December 8 based on EMPTY-1.NB *) equal[0,HULL[x_]] := equal[0,x] (* derived 2005 October 5 in GLB-DIV.NB *) equal[0,hull[x_,y_]] := and[equal[0,y],equal[0,A[x]]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,Id] := False (* added 1998 August 23 *) equal[0,id[x_]] := equal[0,x] (* derived 2006 February 2 in EQ-0.NB *) equal[0,IDEM] := False (* added 2000 September 5 based on RC.NB *) equal[0,IMAGE[x_]] := False (* added 1998 August 23 *) equal[0,image[x_,y_]] := subclass[y,complement[domain[x]]] (* added 1998 August 23 *) equal[0,image[S,x_]] := equal[0,x] equal[0,image[V,x_]] := equal[0,x] (* derived 2006 February 2 in EQ-0.NB *) equal[0,IMG] := False (* derived 2003 December 22 in EMPTY.NB *) equal[0,INTADD] := False (* added 2003 August 9 based on REIFZADD.NB *) equal[0,intadd[x_,y_]] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,INTDIV] := False (* derived 2007 September 6 in SU-A-ON.NB *) equal[0,intersection[x_,A[intersection[OMEGA,x_]]]] := or[equal[0,x],not[equal[0,intersection[OMEGA,x]]]] (* derived 2004 January 16 in ADJ-UIDK.NB *) equal[0,intersection[ADJOIN[x_],composite[PS,PS]]] := or[equal[0,x],member[x,range[SINGLETON]],not[member[x,V]]] (* derived 2008 January 12 in HAUS-MAX.NB *) equal[0,intersection[chains[x_],P[y_]]] := False (* added 2002 September 7 based on REPLACE.NB *) equal[0,intersection[x_,complement[y_]]] := subclass[x,y] (* added 2002 November 15 based on SCHRODER.NB *) equal[0,intersection[x_,composite[y_,complement[z_]]]] := subclass[composite[inverse[y],x],z] (* added 2002 November 15 based on SCHRODER.NB *) equal[0,intersection[x_,composite[complement[y_],z_]]] := subclass[composite[x,inverse[z]],y] (* added 2002 September 7 based on REPLACE.NB *) equal[0,intersection[x_,composite[Di,x_]]] := FUNCTION[composite[Id,x]] (* added 2002 September 7 based on REPLACE.NB *) equal[0,intersection[x_,composite[x_,Di]]] := FUNCTION[inverse[x]] (* derived 2008 April 17 in FP-DI.NB *) equal[0,intersection[x_,composite[y_,intersection[Di,z_]]]] := subclass[intersection[z,composite[inverse[y],x]],Id] (* derived 2006 October 24 in FUFAMILY.NB *) equal[0,intersection[composite[inverse[x_],x_],cross[Id,Di]]] := FUNCTION[rotate[x]] (* derived 2006 October 24 in FUFAMILY.NB *) equal[0,intersection[composite[x_,inverse[x_]],cross[Id,Di]]] := FUNCTION[rotate[inverse[x]]] (* added 2002 September 10 based on DJ-DI.NB *) equal[0,intersection[Di,x_]] := subclass[composite[Id,x],Id] (* derived 2008 July 3 in MAX-FUNP.NB *) equal[0,intersection[domain[funpart[composite[VERTSECT[inverse[po[setpart[x_]]]], po[setpart[x_]]]]],fix[po[setpart[x_]]]]] := equal[0,funpart[po[setpart[x]]]] (* derived 2004 January 24 in FIN-DJ3.NB *) equal[0,intersection[FINITE,image[S,x_]]] := equal[0,intersection[FINITE,x]] (* derived 2003 December 25 in RC-CUP.NB *) equal[0,intersection[FINITE,P[x_]]] := False (* added 2002 September 8 based on REPLACE.NB *) equal[0,intersection[x_,fix[composite[y_,complement[z_]]]]] := subclass[composite[inverse[y],id[x]],z] (* added 2002 September 8 based on REPLACE.NB *) equal[0,intersection[x_,fix[composite[complement[y_],z_]]]] := subclass[composite[id[x],inverse[z]],y] (* derived 2008 April 17 in FP-DI.NB *) equal[0,intersection[x_,fix[composite[y_,Di]]]] := subclass[composite[id[x],y],Id] (* derived 2008 April 17 in FP-DI.NB *) equal[0,intersection[x_,fix[composite[Di,y_]]]] := subclass[composite[y,id[x]],Id] (* derived 2004 June 26 in X1509.NB *) equal[0,intersection[y_,fix[composite[x_,Di,inverse[x_]]]]] := FUNCTION[composite[inverse[x],id[y]]] (* derived 2005 January 25 *) equal[0,intersection[y_,fix[composite[inverse[x_],cross[Id,Di],x_]]]] := FUNCTION[composite[rotate[inverse[x]],id[cart[y,V]]]] (* added 2002 September 8 based on REPLACE.NB *) equal[0,intersection[y_,fix[composite[inverse[x_],Di,x_]]]] := FUNCTION[composite[x,id[y]]] (* added 2002 September 7 based on REPLACE.NB *) equal[0,intersection[x_,fix[E]]] := subclass[x,RUSSELL] (* derived 2007 November 13 in AC-IN-K.NB *) equal[0,intersection[fix[UCHAINS],subvar[inverse[K]]]] := axch (* derived 2007 November 15 in ZORN-LEM.NB *) equal[0,intersection[fix[UCHAINS],subvar[inverse[PS]]]] := axch (* added 2002 September 10 based on DJ-CP.NB *) equal[0,intersection[x_,image[y_,complement[z_]]]] := subclass[image[inverse[y],x],z] (* added 2002 September 9 based on CP-SU-ID.NB *) equal[0,intersection[x_,image[Di,y_]]] := or[and[equal[x,y], member[y,range[SINGLETON]]],equal[0,x],equal[0,y]] (* derived 2008 January 13 in MAX-FUNS.NB *) equal[0,intersection[image[IMAGE[id[FUNS]],range[POWER]],subvar[inverse[PS]]]] := axch (* derived 2008 February 12 in REFLEXIV.NB *) equal[0,intersection[w_,image[x_,intersection[y_,complement[z_]]]]] := subclass[intersection[y,image[inverse[x],w]],z] (* added 2002 September 7 based on REPLACE.NB *) equal[0,intersection[x_,image[inverse[y_],z_]]] := equal[0,intersection[z,image[y,x]]] (* added 2002 October 19 based on E-RULES.NB *) equal[0,intersection[x_,image[y_,set[z_]]]] := not[member[z,image[inverse[y],x]]] (* derived 2004 June 12 in X1103.NB *) equal[0,intersection[x_,inverse[y_]]] := equal[0,fix[composite[x,y]]] (* derived 2008 January 22 in HART-FU.NB *) equal[0,intersection[OMEGA,image[Q,P[x_]]]] := False (* derived 2007 July 5 in PC-TOWER.NB *) equal[0,intersection[omega,P[x_]]] := False (* added 2002 September 8 based on REPLACE.NB *) equal[0,intersection[x_,P[complement[set[y_]]]]] := or[and[equal[0,x],not[member[y,V]]],member[y,A[x]]] (* added 2003 July 16 based on FINITE.NB *) equal[0,intersection[P[x_],subvar[y_]]] := False (* derived 2006 January 26 in Z-TRV.NB *) equal[0,intersection[plus[nat[x_]],plus[nat[y_]]]] := not[equal[nat[x],nat[y]]] (* derived 2007 November 25 in MAX-CLIQ.NB *) equal[0,intersection[range[CLIQUES],subvar[inverse[PS]]]] := axch (* derived 2004 March 4 in PAIRSET.NB *) equal[0,intersection[x_,set[y_,z_]]] := and[not[member[y,x]],not[member[z,x]]] (* added 2002 September 7 based on REPLACE.NB *) equal[0,intersection[x_,set[y_]]] := not[member[y,x]] (* derived 2008 August 24 in EMPTY.NB *) equal[0,INTLEQ] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,INTMUL] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,INTTIMES] := False (* derived 2008 September 15 in INTTIMES.NB *) equal[0,inttimes[x_]] := not[member[x,Z]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,INVAR] := False (* added 1999 October 28 based on TEST-LOG.1 *) equal[0,invar[x_]] := False (* added 2000 October 4 based on NONEMPTY.LOG *) equal[0,INVERSE] := False (* proposed 1998 September 13 *) equal[0,inverse[x_]] := equal[0,domain[x]] (* derived 2006 February 4 in INVOL.NB *) equal[0,INVOL] := False (* added 2002 May 20 based on ITER-EQ.NB *) equal[0,iterate[x_,y_]] := equal[0,y] (* derived 2006 February 2 in EQ-0.NB *) equal[0,K] := False (* added 2002 January 26 based on IMV.NB *) equal[0,KURA] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,LAMBHULL] := False (* derived 2006 January 2 in EQ0UNARY.NB *) equal[0,LB[x_]] := False (* derived 2007 April 23 in LBUBDIV0.NB *) equal[0,lb[DIV,x_]] := not[subclass[x,omega]] (* derived 2004 February 21 in LB-SS.NB *) equal[0,lb[x_,set[y_]]] := and[member[y,V],not[member[y,range[x]]]] (* derived 2007 March 2 in LD-1.NB *) equal[0,ld[x_,y_]] := or[not[member[x,omega]],not[member[y,omega]]] (* added 2001 December 30 based on LEAST.NB *) equal[0,LEAST[x_]] := equal[0,fix[x]] (* added 2000 September 4 based on LEFTPAIR.NB *) equal[0,LEFT[x_]] := not[member[x,V]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,LeftPairV] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,LISTS] := False (* derived 2006 January 3 in 0-LUB.NB *) equal[0,LUB[po[x_]]] := equal[0,po[x]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,MAP] := False (* added 2003 May 8 based on MAP-0.NB *) equal[0,map[x_,y_]] := or[and[equal[0,y],not[equal[0,x]]],not[member[x,V]]] (* derived 2006 January 2 in EQ0UNARY.NB *) equal[0,MAXIMAL[x_]] := False (* derived 2006 January 2 in EQ0UNARY.NB *) equal[0,MINIMAL[x_]] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,MIXDIV] := False (* derived 2006 December 9 in SIMPLIFY.NB *) equal[0,MIXMUL] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,MIXTIMES] := False (* derived 2005 July 18 in MODULO.NB *) equal[0,modulo[x_]] := not[member[x,omega]] (* derived 2006 October 31 in SUCC-NAT.NB *) equal[0,nat[succ[x_]]] := not[member[x,omega]] (* derived 2003 December 22 in EMPTY.NB *) equal[0,NATADD] := False (* added 2002 July 30 based on IMIN-ADD.NB *) equal[0,natadd[x_,y_]] := and[equal[0,x],equal[0,y]] (* derived 2008 August 24 in EMPTY.NB *) equal[0,NATEXP] := False (* derived 2006 November 28 in NATEXP-5.NB *) equal[0,natexp[x_,y_]] := and[equal[0,x],member[y,omega],not[equal[0,y]]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,NATMOD] := False (* derived 2006 August 15 in EVEN-ODD.NB *) equal[0,natmod[x_,succ[set[0]]]] := member[x,even] (* derived 2003 December 22 in EMPTY.NB *) equal[0,NATMUL] := False (* added 2002 October 4 based on ZERO-MUL.NB *) equal[0,natmul[x_,y_]] := or[and[equal[0,x],member[y,omega]], and[equal[0,y],member[x,omega]]] (* added 2002 September 17 based on EQUAL.NB *) equal[0,natsub[x_,y_]] := and[equal[x,y],member[x,omega]] (* derived 2006 August 16 in EVOD-MUL.NB *) equal[0,odd] := False (* added 2000 October 4 based on NONEMPTY.LOG *) equal[0,omega] := False (* derived 2006 January 2 in EQ0NAMED.NB *) equal[0,OMEGA] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,OOPART] := False (* derived 2006 March 12 in OLIST-OO.NB *) equal[0,ordlist[x_]] := equal[0,intersection[OMEGA,x]] (* added 1998 August 23 *) equal[0,P[x_]] := False equal[0,pair[x_,y_]] := False (* added 9/17/96 at 9:20 pm *) (* added 2002 January 1 based on PAIR-MEM.NB *) equal[0,PAIR[x_,y_]] := False (* added 2000 October 4 based on NONEMPTY.LOG *) equal[0,PAIRSET] := False (* derived 2008 May 3 in PARTREC.NB *) equal[0,partrec[x_,y_]] := False (* derived 2003 December 22 in EMPTY.NB *) equal[0,PLUS] := False (* added 2003 August 8 based on REPLACE.NB *) equal[0,plus[x_]] := not[member[x,omega]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,PO] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,PointClosed] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,POWER] := False (* derived 2006 January 2 in EQ0UNARY.NB *) equal[0,power[x_]] := False (* derived 2005 February 22 in PRIMEDIV.NB *) equal[0,PRIMES] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,PRIMESEQ] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,PROJ] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,PS] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,Q] := False (* added 1998 August 23 *) equal[0,range[x_]] := equal[0,domain[x]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,RANK] := False (* derived 2003 December 21 in LOW-RANK.NB *) equal[0,rank[x_]] := equal[0,x] (* added 2000 September 5 based on RC.NB *) equal[0,RC[x_]] := not[member[x,V]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,RCF] := False (* derived 2006 January 2 in EQ0NAMED.NB *) equal[0,REGULAR] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,RESTRICT] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,RIF] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,RightPairV] := False (* added 2001 December 8 based on EMPTY-1.NB *) equal[0,RFX] := False (* derived 2005 October 17 in 0-RFX.NB *) equal[0,rfx[x_]] := equal[0,fix[x]] (* added 2000 September 4 based on LEFTPAIR.NB *) equal[0,RIGHT[x_]] := not[member[x,V]] (* added 2000 October 4 based on NONEMPTY.LOG *) equal[0,ROT] := False (* added 2001 December 8 based on EMPTY-1.NB *) equal[0,rotate[x_]] := equal[0,domain[domain[x]]] (* derived 2004 August 7 in RS-1.NB *) equal[0,RS[x_]] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,RUSSELL] := False (* derived 2006 January 3 in S.NB *) equal[0,S] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,SECOND] := False (* derived 2006 January 2 in EQ0NAMED.NB *) equal[0,SELECT] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,SEMIGPS] := False (* derived 2005 January 11 in SET-0.NB *) equal[0,set[x_,y___]] := and[equal[0,set[y]],not[member[x,V]]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,SINGLETON] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,SMALLER] := False (* derived 2007 August 14 in FP-UCH.NB *) equal[0,spine[S,Uchains[x_]]] := False (* derived 2003 December 22 in EMPTY.NB *) equal[0,subcommutant[x_]] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,SUBCOMMUTE] := False (* added 2000 October 4 based on NONEMPTY.LOG *) equal[0,SUBVAR] := False (* added 1999 October 28 based on TEST-LOG.2 *) equal[0,subvar[x_]] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,SUCC] := False (* added 2001 November 6 based on CP-SU.NB *) equal[0,succ[x_]] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,SWAP] := False (* added 2001 December 8 based on EMPTY-1.NB *) equal[0,SYM] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,SYMDIF] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,T1] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,T2] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,TC] := False (* added 2001 December 8 based on EMPTY-2.NB *) equal[0,tc[x_]] := equal[0,x] (* derived 2004 May 14 in THINPART.NB *) equal[0,thinpart[x_]] := equal[0,intersection[domain[x],domain[VERTSECT[x]]]] (* derived 2008 August 24 in EMPTY.NB *) equal[0,TIMES] := False (* derived 2005 July 17 in TIMES.NB *) equal[0,times[x_]] := not[member[x,omega]] (* derived 2003 December 22 in EMPTY.NB *) equal[0,TO] := False (* derived 2005 October 25 in TOP-WRAP.NB *) equal[0,top[x_]] := False (* added 2001 December 8 based on EMPTY-1.NB *) equal[0,TOPS] := False (* derived 2007 June 15 in TRANSVAR.NB *) equal[0,transvar[x_,y_]] := False (* added 2001 December 8 based on EMPTY-1.NB *) equal[0,TRV] := False (* derived 2003 December 22 in EMPTY.NB *) equal[0,trv[x_]] := equal[0,domain[x]] (* added 2000 October 4 based on NONEMPTY.LOG *) equal[0,TWIST] := False (* derived 2003 December 22 in EMPTY.NB *) equal[0,twist[x_]] := equal[0,domain[image[x,cart[V,V]]]] (* added 1998 August 23 *) equal[0,U[x_]] := subclass[x,set[0]] (* derived 2006 January 2 in EQ0UNARY.NB *) equal[0,UB[x_]] := False (* derived 2007 April 23 in LBUBDIV0.NB *) equal[0,ub[DIV,x_]] := not[subclass[x,omega]] (* derived 2008 August 24 in EMPTY.NB *) equal[0,UBD] := False (* derived 2008 August 24 in EMPTY.NB *) equal[0,UCHAINS] := False (* derived 2007 June 23 in UCHAINS.NB *) equal[0,Uchains[x_]] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,UCLOSURE] := False (* added 2001 December 8 based on EMPTY-2.NB *) equal[0,Uclosure[x_]] := False equal[0,union[x_,y_]] := and[equal[0,x],equal[0,y]] (* derived 2008 August 24 in EMPTY.NB *) equal[0,UNOPS] := False equal[0,V] := False (* derived 2003 December 22 in EMPTY.NB *) equal[0,VS] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,WF] := False (* derived 2004 September 18 in WF-WRAP.NB *) equal[0,wf[x_]] := subclass[range[x],U[subvar[x]]] (* derived 2006 February 2 in EQ-0.NB *) equal[0,WFPART] := False (* derived 2003 December 22 in EMPTY.NB *) equal[0,WO] := False (* derived 2004 November 2 in SELECT.NB *) equal[0,X[cart[x_,y_]]] := and[not[equal[0,y]],not[member[x,V]]] (* derived 2008 January 3 in COVERFIN.NB *) equal[0,X[composite[id[x_],inverse[IMAGE[id[fin[t_]]]],E]]] := False (* derived 2008 January 15 in X-WOB-RA.NB *) equal[0,X[composite[inverse[E],id[fin[x_]]]]] := False (* derived 2008 January 15 in X-WOB-RA.NB *) equal[0,X[composite[inverse[E],id[P[fin[x_]]]]]] := False (* derived 2008 January 15 in X-WOB-RA.NB *) equal[0,X[composite[inverse[E],id[P[wob[x_]]]]]] := False (* derived 2005 November 2 in FIN.NB *) equal[0,X[fin[x_]]] := False (* derived 2005 November 5 in FIN-RELN.NB *) equal[0,X[inverse[fin[x_]]]] := False (* derived 2005 November 2 in FIN.NB *) equal[0,X[nat[x_]]] := False (* derived 2005 January 11 in FIN-SET.NB *) equal[0,X[set[x__]]] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,XS] := False (* added 2002 November 17 based on HER-Z.NB *) equal[0,Z] := False (* derived 2006 February 2 in EQ-0.NB *) equal[0,ZN] := False (* added 2002 May 10 based on U-A.NB *) equal[A[x_],U[x_]] := member[x,range[SINGLETON]] (* added 2001 December 21 based on ADJOIN.NB *) equal[ADJOIN[x_],ADJOIN[y_]] := equal[set[x],set[y]] (* derived 2004 March 23 in ADJECT.NB *) equal[ADJOIN[x_],composite[CUP,id[cart[V,y_]],inverse[FIRST]]] := equal[y,set[x]] (* derived 2008 August 26 in FIX-FACT.NB *) equal[x_,APPLY[FACTORIAL,x_]] := or[equal[V,x],equal[x,set[0]],equal[x,succ[set[0]]]] (* derived 2007 May 13 in PAIRFACT.NB *) equal[APPLY[FACTORIAL,succ[x_]],natadd[APPLY[FACTORIAL,x_],natmul[x_,APPLY[FACTORIAL,x_]]]] := True (* derived 2008 October 24 in JN-NEUT.NB *) equal[APPLY[JOIN,PAIR[list[x_],list[y_]]],list[x_]] := equal[0,list[y]] (* derived 2008 October 24 in JN-NEUT.NB *) equal[APPLY[JOIN,PAIR[list[x_],list[y_]]],list[y_]] := equal[0,list[x]] (* derived 2007 May 19 in OLDO-ORD.NB *) equal[APPLY[ordlist[x_],y_],U[intersection[OMEGA,x_]]] := and[equal[y,U[domain[ordlist[x]]]], member[intersection[OMEGA,x],FINITE],not[equal[0,intersection[OMEGA,x]]]] (* derived 2008 November 17 in ASS-WRAP.NB *) equal[x_,assoc[x_]] := associative[x] (* derived 2008 November 21 in ASSOCFUN.NB *) equal[x_,assoc[funpart[x_]]] := and[associative[x],FUNCTION[x]] (* derived 2009 January 22 in ASS-SETP.NB *) equal[x_,assoc[setpart[x_]]] := and[associative[x],member[x,V]] (* derived 2008 November 21 in ASSOCFUN.NB *) equal[x_,assoc[thinpart[x_]]] := and[associative[x],equal[V,domain[VERTSECT[x]]]] (* derived 2008 October 7 in BNP-WRAP.NB *) equal[x_,binop[x_]] := member[x,BINOPS] (* derived 2006 July 6 in CARDCART.NB *) equal[card[cart[x_,y_]],card[cart[y_,x_]]] := True (* derived 2006 March 15 in CARD-OO.NB *) equal[card[image[oopart[x_],y_]],card[intersection[y_,domain[oopart[x_]]]]] := True (* derived 2008 June 3 in CARD-ORD.NB *) equal[x_,card[ord[x_]]] := and[equal[x,card[x]],member[x,V]] (* derived 2003 December 22 in LOW-CARD.NB *) equal[card[x_],set[0]] := member[x,range[SINGLETON]] (* derived 2003 December 22 in LOW-CARD.NB *) equal[card[x_],succ[set[0]]] := member[x,image[PAIRSET,Di]] (* added 2003 April 19 based on XSQ.NB *) equal[cart[x_,x_],cart[y_,y_]] := equal[x,y] (* added 2001 December 8 based on EQ-BIN.NB *) equal[cart[x_,y_],cart[x_,z_]] := or[equal[0,x],equal[y,z]] (* added 2001 December 8 based on EQ-BIN.NB *) equal[cart[x_,y_],cart[z_,y_]] := or[equal[0,y],equal[x,z]] (* derived 2004 June 20 in X1604-56.NB *) equal[cart[x_,y_],cart[y_,x_]] := or[equal[0,x],equal[0,y],equal[x,y]] (* derived 2008 August 17 in CLQ-CMT.NB *) equal[cart[x_,y_],composite[id[y_],z_,id[x_]]] := subclass[cart[x,y],z] (* derived 2003 December 21 in RECT.NB *) equal[cart[x_,x_],id[x_]] := or[equal[0,x],member[x,range[SINGLETON]]] (* derived 2004 January 2 in CUT-EQNS.NB *) equal[cart[x_,y_],IMAGE[id[z_]]] := and[equal[0,z],equal[V,x],equal[y,set[0]]] (* derived 2003 December 21 in RECT.NB *) equal[cart[x_,y_],inverse[z_]] := equal[cart[y,x],composite[Id,z]] (* derived 2006 February 14 in ITERATE.NB *) equal[cart[set[0],z_],iterate[x_,y_]] := and[equal[0,intersection[y,domain[x]]],equal[y,z]] (* derived 2005 November 6 in IMG-THIN.NB *) equal[cart[set[0],set[0]],IMAGE[x_]] := equal[0,domain[VERTSECT[x]]] (* added 2001 November 30 based on FLIP-SS.NB *) equal[cart[x_,y_],set[z_]] := or[and[equal[0,x],not[member[z,V]]],and[equal[0,y],not[member[z,V]]], and[equal[set[first[z]],x],equal[set[second[z]],y],member[first[z],V]]] (* derived 2007 September 8 in UCH-SQ.NB *) equal[cart[union[x_,y_],union[x_,y_]],union[cart[x_,x_],cart[y_,y_]]] := or[subclass[x,y],subclass[y,x]] (* derived 2008 December 30 in CAT-WRAP.NB *) equal[x_,cat[x_]] := category[x] (* derived 2007 May 8 in POWER.TXT *) equal[chains[x_],P[y_]] := and[subclass[cart[y,y],union[x,inverse[x]]],subclass[fix[x],y]] (* derived 2007 September 25 in UCH-CL.NB *) equal[CL,Uchains[CL]] := False (* derived 2006 October 11 in RA-CLIQ.NB *) equal[cliques[x_],image[inverse[S],omega]] := False (* derived 2007 May 8 in POWER.TXT *) equal[cliques[x_],P[y_]] := and[subclass[cart[y,y],x],subclass[fix[x],y]] (* derived 2007 June 2 in COARSER.NB *) equal[COARSER,Id] := False (* derived 2004 October 12 in CMPCT-OM.NB *) equal[COMPACT,FINITE] := False (* derived 2004 October 12 in CMPCT-OM.NB *) equal[COMPACT,image[COARSER,FINITE]] := False (* derived 2007 September 26 in UCH-TOPS.NB *) equal[COMPACT,Uchains[COMPACT]] := False (* added 2001 December 8 based on EQUAL-C.NB *) equal[complement[x_],complement[y_]] := equal[x,y] (* added 2002 October 25 based on SU-IM-CP.NB *) equal[complement[x_],image[Di,x_]] := member[x,range[SINGLETON]] (* added 2002 October 25 based on SU-IM-CP.NB *) equal[x_,complement[image[Di,x_]]] := member[x,range[SINGLETON]] (* derived 2004 June 12 in X928.NB *) equal[x_,complement[image[inverse[S],complement[x_]]]] := equal[x,image[S,x]] (* derived 2004 June 12 in X928.NB *) equal[complement[x_],image[inverse[S],complement[x_]]] := equal[x,image[S,x]] (* derived 2004 June 12 in X928.NB *) equal[x_,complement[image[S,complement[x_]]]] := equal[x,image[inverse[S],x]] (* derived 2004 June 12 in X928.NB *) equal[complement[x_],image[S,complement[x_]]] := equal[x,image[inverse[S],x]] (* added 2002 October 14 based on IMAGEV.NB *) equal[x_,complement[image[V,y_]]] := or[and[equal[0,x],not[equal[0,y]]],and[equal[0,y],equal[V,x]]] (* derived 2007 November 23 in C-RA-SG.NB *) equal[complement[range[SINGLETON]],P[x_]] := False (* derived 2008 November 22 in ASS-CMT.NB *) equal[composite[assoc[x_],inverse[FIRST],assoc[x_],inverse[SECOND]], composite[assoc[x_],inverse[SECOND],assoc[x_],inverse[FIRST]]] := True (* derived 2008 November 17 in ASS-WRAP.NB *) equal[composite[assoc[x_],LEFT[y_],assoc[x_],RIGHT[z_]], composite[assoc[x_],RIGHT[z_],assoc[x_],LEFT[y_]]] := True (* derived 2004 July 15 in X2310-57.NB *) equal[x_,composite[BIGCAP,VERTSECT[x_]]] := FUNCTION[x] (* derived 2008 August 22 in CANCEL.NB *) equal[composite[BIGCUP,IMAGE[funpart[x_]],id[P[domain[funpart[x_]]]]], composite[BIGCUP,IMAGE[funpart[y_]],id[P[domain[funpart[y_]]]]]] := equal[funpart[x],funpart[y]] (* derived 2004 October 7 in BC-IM-PC.NB *) equal[x_,composite[BIGCUP,IMAGE[x_],POWER]] := and[equal[V,domain[x]],FUNCTION[x],subclass[composite[x,inverse[S]],composite[inverse[S],x]]] (* derived 2005 November 24 in TOTALFUN.NB *) equal[x_,composite[BIGCUP,VERTSECT[x_]]] := and[equal[V,domain[x]],FUNCTION[x]] (* derived 2006 January 14 in VS-FU.NB *) equal[x_,composite[BIGCUP,VERTSECT[x_],id[domain[x_]]]] := FUNCTION[x] (* derived 2005 November 24 in TOTALFUN.NB *) equal[x_,composite[BIGCUP,VERTSECT[thinpart[x_]]]] := and[equal[V,domain[x]],FUNCTION[x]] (* derived 2004 November 18 in XS-IN-AC.NB *) equal[composite[BIGCUP,XS],IMAGE[id[cart[V,V]]]] := axch (* added 2003 August 28 based on IMIN-FUI.NB *) equal[composite[CAP,cross[IMAGE[x_],IMAGE[x_]]],composite[IMAGE[x_],CAP]] := and[equal[V,domain[VERTSECT[x]]],FUNCTION[inverse[x]]] (* derived 2008 August 22 in CANCEL.NB *) equal[composite[complement[E],funpart[x_]],composite[complement[E],funpart[y_]]] := equal[funpart[x],funpart[y]] (* derived 2008 August 22 in CANCEL.NB *) equal[composite[complement[inverse[E]],funpart[x_]], composite[complement[inverse[E]],funpart[y_]]] := equal[funpart[x],funpart[y]] (* derived 2008 August 22 in CANCEL.NB *) equal[composite[complement[inverse[S]],funpart[x_]], composite[complement[inverse[S]],funpart[y_]]] := equal[funpart[x],funpart[y]] (* derived 2006 July 18 in BINHOM-2.NB *) equal[composite[COMPOSE,cross[PLUS,PLUS]],composite[INTADD,cross[PLUS,PLUS]]] := True (* derived 2004 September 13 in LOOPTEST.NB *) equal[composite[w__,x_,z___],composite[w__,y_,z___]] := True /; equal[x,y] (* derived 2004 September 13 in LOOPTEST.NB *) equal[composite[w___,x_,z__],composite[w___,y_,z__]] := True /; equal[x,y] (* added 2003 September 6 based on CUP-HULL.NB *) equal[composite[CUP,cross[ADJOIN[x_],ADJOIN[y_]]], composite[ADJOIN[union[x_,y_]],CUP]] := True (* added 2003 September 6 based on CUP-HULL.NB *) equal[composite[CUP,id[cart[FINITE,FINITE]]],composite[id[FINITE],CUP]] := True (* added 2003 September 6 based on CUP-HULL.NB *) equal[composite[CUP,id[cart[REGULAR,REGULAR]]],composite[id[REGULAR],CUP]] := True (* derived 2004 March 23 in ADJECT.NB *) equal[composite[CUP,id[cart[V,x_]],inverse[FIRST]], composite[CUP,id[cart[V,y_]],inverse[FIRST]]] := equal[x,y] (* derived 2008 August 22 in CANCEL.NB *) equal[composite[Di,funpart[x_]],composite[Di,funpart[y_]]] := equal[funpart[x],funpart[y]] (* derived 2008 August 22 in CANCEL.NB *) equal[composite[DISJOINT,funpart[x_]],composite[DISJOINT,funpart[y_]]] := equal[funpart[x],funpart[y]] (* added 2001 December 29 based on X-FU-FP.NB *) equal[composite[DUP,x_],intersection[composite[inverse[FIRST],x_], composite[inverse[SECOND],x_]]] := FUNCTION[composite[Id,x]] (* derived 2004 March 30 in CO-ES-ID.NB *) equal[composite[E,x_],composite[E,y_]] := equal[composite[Id,x],composite[Id,y]] (* derived 2006 November 14 in FUN-CHAR.NB *) equal[x_,composite[FUNPART,x_]] := subclass[x,cart[V,FUNS]] (* derived 2006 November 14 in FUN-CHAR.NB *) equal[x_,composite[FUNPART,funpart[x_]]] := and[FUNCTION[x],subclass[range[x],FUNS]] (* derived 2006 November 11 in FUNPWRAP.NB *) equal[x_,composite[funpart[x_],id[y_]]] := and[FUNCTION[x],subclass[domain[x],y]] (* derived 2004 July 27 in FUNP-RS.NB *) equal[x_,composite[funpart[y_],id[domain[x_]]]] := subclass[x,funpart[y]] (* derived 2008 November 13 in FIX-FUN.NB *) equal[composite[funpart[x_],id[fix[composite[inverse[funpart[y_]],funpart[x_]]]]], composite[funpart[y_],id[fix[composite[inverse[funpart[y_]],funpart[x_]]]]]] := True (* derived 2006 November 11 in FUNPWRAP.NB *) equal[x_,composite[funpart[setpart[x_]],id[y_]]] := and[FUNCTION[x],member[x,V],subclass[domain[x],y]] (* derived 2008 April 24 in ITERPRIM.NB *) equal[composite[HULL[PRIMES],SINGLETON],composite[HULL[PRIMES],SUCC]] := True (* added 2001 March 4 based on SU-IN.NB *) equal[composite[Id,x_],x_] := subclass[x,cart[V,V]] (* added 2002 June 30 based on ITER-RS.NB *) equal[x_,composite[id[w_],x_]] := subclass[x,cart[V,w]] (* added 2002 June 30 based on MUL-DO.NB *) equal[x_,composite[x_,id[y_]]] := subclass[x,cart[y,V]] (* added 2002 June 29 based on IDX-IMV.NB *) equal[composite[u___,x_,id[complement[image[V,y_]]],v___], composite[u___,id[complement[image[V,y_]]],x_,v___]] := True (* derived 2004 June 17 in X1337-65.NB *) equal[composite[Id,x_],composite[x_,id[y_]]] := subclass[domain[x],y] (* derived 2004 June 17 in X1337-65.NB *) equal[composite[Id,x_],composite[id[y_],x_]] := subclass[range[x],y] (* derived 2004 June 4 in X-DUP-SU.NB *) equal[composite[Id,x_],composite[Id,intersection[x_,y_]]] := subclass[composite[Id,x],y] (* derived 2004 September 5 in WF-REC-4.NB *) equal[composite[id[composite[IMAGE[composite[id[x_],inverse[FIRST]]],VERTSECT[y_]]],inverse[FIRST]],history[x_,y_]] := True (* added 2001 December 28 based on FUNPART.NB *) equal[composite[Id,x_],funpart[x_]] := FUNCTION[composite[Id,x]] (* derived 2006 December 9 in MISC.NB *) equal[x_,composite[id[y_],funpart[x_]]] := and[FUNCTION[x],subclass[range[x],y]] (* Theorem RS-SU derived 2004 June 10 in X369.NB *) equal[x_,composite[id[z_],x_,id[y_]]] := subclass[x,cart[y,z]] (* added 2002 June 29 based on IDX-IMV.NB *) equal[composite[u___,x_,id[image[V,y_]],v___],composite[u___,id[image[V,y_]],x_,v___]] := True (* derived 2007 May 9 in IVR-SWAP.NB *) equal[composite[Id,x_],inverse[x_]] := subclass[inverse[x],x] (* derived 2004 June 26 in X1457.NB *) equal[composite[id[x_],inverse[FIRST],FIRST,id[x_]],id[x_]] := FUNCTION[x] (* derived 2004 June 18 in X13-FUNP.NB *) equal[composite[Id,x_],inverse[funpart[inverse[x_]]]] := FUNCTION[inverse[x]] (* derived 2004 June 26 in X1457.NB *) equal[composite[id[x_],inverse[SECOND],SECOND,id[x_]],id[x_]] := and[FUNCTION[inverse[x]],subclass[x,cart[V,V]]] (* added 2003 July 25 based on HULL-Z.NB *) equal[composite[id[omega],SUCC],id[omega]] := False (* derived 2004 November 18 in XS-IN-AC.NB *) equal[composite[id[P[cart[V,V]]],inverse[XS],XS,id[P[cart[V,V]]]],id[P[cart[V,V]]]] := axch (* derived 2005 October 1 in PO-WRAP.NB *) equal[composite[Id,x_],po[x_]] := PARTIALORDER[composite[Id,x]] (* derived 2005 November 12 in SU-IN-FU.NB *) equal[x_,composite[id[range[x_]],inverse[funpart[y_]]]] := subclass[x,inverse[funpart[y]]] (* derived 2006 May 28 in OOPART.NB *) equal[composite[id[range[oopart[x_]]],Di,oopart[x_]],composite[oopart[x_],Di,id[domain[oopart[x_]]]]] := True (* derived 2006 January 24 in VS-MEMB.NB *) equal[composite[id[range[VERTSECT[x_]]],E],composite[VERTSECT[x_],inverse[x_]]] := True (* derived 2005 October 1 in RFX-RS.NB *) equal[composite[Id,x_],rfx[x_]] := REFLEXIVE[composite[Id,x]] (* derived 2007 November 10 in ALL-MAX.NB *) equal[composite[id[x_],S,id[x_]],id[x_]] := equal[0,intersection[x,image[PS,x]]] (* derived 2007 June 10 in HULL-RFX.NB *) equal[x_,composite[Id,setpart[x_]]] := and[member[x,V],subclass[x,cart[V,V]]] (* derived 2004 May 14 in THINPART.NB *) equal[composite[Id,x_],thinpart[x_]] := equal[V,domain[VERTSECT[x]]] (* derived 2008 May 4 in WFINTHIN.NB *) equal[composite[Id,x_],thinpart[inverse[wf[inverse[x_]]]]] := and[equal[V,domain[VERTSECT[x]]],WELLFOUNDED[inverse[x]]] (* derived 2005 October 8 in TO-WRAP.NB *) equal[composite[Id,x_],to[x_]] := TOTALORDER[composite[Id,x]] (* derived 2004 March 21 in TRV-WRAP.NB *) equal[composite[Id,x_],trv[x_]] := TRANSITIVE[composite[Id,x]] (* derived 2008 May 4 in APORDREC.NB *) equal[composite[id[union[cart[complement[OMEGA],set[0]], composite[IMAGE[composite[id[x_],inverse[FIRST]]],id[OMEGA]]]],inverse[FIRST]], history[x_,composite[inverse[E],id[OMEGA]]]] := True (* derived 2005 October 16 in WO-WRAP.NB *) equal[composite[Id,x_],wo[x_]] := WELLORDER[composite[Id,x]] (* added 2002 February 3 based on RCF.NB *) equal[composite[IMAGE[cross[Id,inverse[S]]],RCF], composite[IMAGE[cross[inverse[S],Id]],RCF]] := True (* derived 2005 November 15 in IMG-IDX.NB *) equal[x_,composite[IMAGE[y_],id[domain[x_]]]] := subclass[x,IMAGE[y]] (* derived 2005 August 18 in IMG-ID.NB *) equal[composite[IMAGE[id[x_]],id[y_]],id[y_]] := subclass[U[y],x] (* added 2002 June 5 based on RIFPOWER.NB *) equal[composite[image[power[x_],y_],image[power[x_],z_]], composite[image[power[x_],z_],image[power[x_],y_]]] := True (* derived 2004 March 31 in EQV-DEFN.NB *) equal[x_,composite[x_,inverse[x_]]] := EQUIVALENCE[x] (* derived 2004 March 31 in EQV-DEFN.NB *) equal[x_,composite[inverse[x_],x_]] := EQUIVALENCE[x] (* derived 2004 March 30 in CO-ES-ID.NB *) equal[composite[x_,inverse[E]],composite[y_,inverse[E]]] := equal[composite[Id,x],composite[Id,y]] (* added 2002 February 8 based on IDEMPOT.NB *) equal[composite[x_,inverse[x_]],id[y_]] :=and[equal[y,range[x]],FUNCTION[composite[Id,x]]] (* derived 2008 August 29 in IN-FU.NB *) equal[composite[inverse[x_],x_],id[y_]] := and[equal[y,domain[x]],FUNCTION[inverse[x]]] (* derived 2008 October 22 in IN-COMUT.NB *) equal[composite[inverse[x_],inverse[y_]],composite[inverse[y_],inverse[x_]]] := equal[composite[x,y],composite[y,x]] (* derived 2007 December 6 in IMG-IDEM.NB *) equal[composite[inverse[x_],inverse[x_]],inverse[x_]] := equal[composite[Id,x],composite[x,x]] (* derived 2006 September 4 in PLUS-CO.NB *) equal[composite[inverse[plus[y_]],plus[x_]],composite[plus[x_],inverse[plus[y_]]]] := or[equal[0,x],equal[0,y],not[member[x,omega]],not[member[y,omega]]] (* derived 2008 August 22 in CANCEL.NB *) equal[composite[inverse[S],funpart[x_]],composite[inverse[S],funpart[y_]]] := equal[funpart[x],funpart[y]] (* derived 2006 December 9 in BH-FIX.NB *) equal[x_,composite[MIXMUL,LEFT[APPLY[x_,set[0]]]]] := or[equal[0,x],member[x,binhom[NATADD,INTADD]]] (* derived 2006 December 11 in ITER-MIX.NB *) equal[composite[MIXMUL,LEFT[x_]], iterate[composite[image[inverse[INTADD],set[x_]],INVERSE],set[id[omega]]]] := member[x,Z] (* derived 2006 September 5 in RA-PLUS.NB *) equal[composite[NATADD,cross[x_,y_],inverse[NATADD]],composite[NATADD,cross[y_,x_],inverse[NATADD]]] := True (* derived 2005 December 1 in VSZNUNIQ.NB *) equal[x_,composite[POWER,BIGCUP,IMAGE[x_],id[REGULAR]]] := equal[x,composite[VERTSECT[ZN],id[REGULAR]]] (* derived 2005 November 9 in RESTRICT.NB *) equal[composite[RESTRICT,IMAGE[SWAP],RESTRICT,IMAGE[SWAP]], composite[IMAGE[SWAP],RESTRICT,IMAGE[SWAP],RESTRICT]] := True (* derived 2004 July 27 in X2695.NB *) equal[composite[rotate[x_],cross[y_,z_]],rotate[w_]] := equal[composite[w,id[cart[V,V]]],composite[inverse[y],x,cross[z,Id]]] (* derived 2007 October 23 in SBCMT-S.NB *) equal[composite[S,x_],composite[S,x_,S]] := subclass[composite[x,S],composite[S,x]] (* derived 2008 August 22 in CANCEL.NB *) equal[composite[S,funpart[x_]],composite[S,funpart[y_]]] := equal[funpart[x],funpart[y]] (* added 2001 December 16 based on COMMUTE.NB *) equal[composite[S,id[x_]],composite[id[x_],S]] := or[equal[0,x],equal[V,x]] (* derived 2008 October 19 in SEMIGP.NB *) equal[composite[semigp[x_],LEFT[y_],semigp[x_],RIGHT[z_]], composite[semigp[x_],RIGHT[z_],semigp[x_],LEFT[y_]]] := True (* added 2002 October 25 based on ROTATE.NB *) equal[composite[x_,SWAP],composite[y_,SWAP]] := equal[composite[x,id[cart[V,V]]],composite[y,id[cart[V,V]]]] (* derived 2005 July 24 in TC-HULL.NB *) equal[composite[TC,id[P[x_]]],HULL[intersection[FULL,P[x_]]]] := subclass[U[x],x] (* derived 2005 December 1 in ORD-UNIQ.NB *) equal[x_,composite[TC,IMAGE[x_],id[omega]]] := equal[x,id[omega]] (* derived 2005 December 1 in ORD-UNIQ.NB *) equal[x_,composite[TC,IMAGE[x_],id[OMEGA]]] := equal[x,id[OMEGA]] (* derived 2005 December 1 in ORD-UNIQ.NB *) equal[x_,composite[TC,IMAGE[x_],id[ord[y_]]]] := equal[x,id[ord[y]]] (* derived 2005 December 1 in RANKUNIQ.NB *) equal[x_,composite[TC,IMAGE[x_],id[REGULAR]]] := equal[RANK,x] (* derived 2005 October 1 in PO-THIN.NB *) equal[composite[thinpart[po[x_]],thinpart[po[x_]]],thinpart[po[x_]]] := True (* derived 2008 July 20 in TRV-IND.NB *) equal[composite[x_,trv[composite[y_,x_]]],composite[trv[composite[x_,y_]],x_]] := True (* derived 2005 December 1 in RANKUNIQ.NB *) equal[w_,composite[VERTSECT[thinpart[x_]],id[composite[IMAGE[composite[id[w_],inverse[FIRST]]], VERTSECT[thinpart[inverse[wf[inverse[y_]]]]]]],inverse[FIRST]]] := equal[w,rec[composite[VERTSECT[thinpart[x]],id[cart[V,V]]],thinpart[inverse[wf[inverse[y]]]]]] (* added 2003 May 9 based on CUT-EQ.NB *) equal[CORE[x_],CORE[y_]] := equal[Uclosure[x],Uclosure[y]] (* derived 2007 May 31 in CORE-ID.NB *) equal[CORE[x_],id[y_]] := and[equal[V,y],equal[V,Uclosure[x]]] (* derived 2005 December 2 in NAT-CORE.NB *) equal[x_,core[omega,x_]] := or[equal[omega,x],member[x,omega]] (* derived 2005 December 2 in ORD-CORE.NB *) equal[x_,core[OMEGA,x_]] := or[equal[OMEGA,x],member[x,OMEGA]] (* derived 2005 October 27 in TOP-THMS.NB *) equal[x_,core[top[y_],x_]] := member[x,top[y]] (* added 2003 April 19 based on XSQ.NB *) equal[cross[x_,x_],cross[y_,y_]] := equal[composite[Id,x],composite[Id,y]] (* derived 2007 September 26 in UCH-TOPS.NB *) equal[DEDEKIND,Uchains[DEDEKIND]] := False (* derived 2008 January 6 in SUBVAR.NB *) equal[DESCENDING,P[complement[REGULAR]]] := AxReg (* derived 2004 December 30 in REPLACE.NB *) equal[DESCENDING,set[0]] := AxReg (* derived 2007 May 17 in FP-FU-V.NB *) equal[Di,Id] := False (* added 2002 May 18 based on FUNPART.NB *) equal[domain[x_],domain[funpart[x_]]] := FUNCTION[composite[Id,x]] (* derived 2005 January 25 in THINPART.NB *) equal[domain[x_],domain[thinpart[x_]]] := equal[V,domain[VERTSECT[x]]] (* derived 2008 November 13 in FIX-FUN.NB *) equal[domain[x_],fix[composite[inverse[x_],y_]]] := subclass[x,y] /; FUNCTION[x] (* derived 2008 November 13 in FIX-FUN.NB *) equal[domain[x_],fix[composite[inverse[y_],x_]]] := subclass[x,y] /; FUNCTION[x] (* derived 2006 September 15 in ID-CHAR.NB *) equal[domain[x_],fix[funpart[x_]]] := subclass[composite[Id,x],Id] (* derived 2008 November 13 in FIX-FUN.NB *) equal[domain[funpart[x_]],fix[composite[inverse[funpart[x_]],y_]]] := subclass[funpart[x],y] (* derived 2008 November 13 in FIX-FUN.NB *) equal[domain[funpart[x_]],fix[composite[inverse[y_],funpart[x_]]]] := subclass[funpart[x],y] (* derived 2006 September 15 in ID-CHAR.NB *) equal[domain[funpart[x_]],fix[funpart[x_]]] := subclass[funpart[x],Id] (* derived 2007 May 15 in OL-U-RA.NB *) equal[domain[ordlist[x_]],U[domain[ordlist[x_]]]] := or[equal[0,intersection[OMEGA,x]],not[member[intersection[OMEGA,x],FINITE]]] (* added 2002 May 21 based on NILPOT.NB *) equal[domain[power[x_]],set[0]] := equal[0,domain[x]] (* derived 2006 January 3 in E.NB *) equal[E,cart[x_,y_]] := False (* derived 2004 October 17 in ID-IMG.NB *) equal[E,Id] := False (* derived 2006 January 3 in E.NB *) equal[E,inverse[E]] := False (* derived 2004 May 11 in EQV-GEN.NB *) equal[x_,eqv[x_]] := EQUIVALENCE[x] (* derived 2004 June 6 in EQV-TRV.NB *) equal[eqv[x_],hull[TRV,eqv[x_]]] := member[eqv[x],V] (* derived 2006 October 16 in EQV-SETP.NB *) equal[x_,eqv[setpart[x_]]] := and[EQUIVALENCE[x],member[x,V]] (* derived 2004 September 30 in EQV-THNP.NB *) equal[x_,eqv[thinpart[x_]]] := and[equal[V,domain[VERTSECT[x]]],EQUIVALENCE[x]] (* derived 2007 July 27 in TOPS.NB *) equal[even,omega] := False (* derived 2005 October 17 in TO-FIN.NB *) equal[x_,fin[x_]] := member[x,FINITE] (* derived 2005 November 4 in FIN-FUNP.NB *) equal[x_,fin[funpart[x_]]] := and[FUNCTION[x],member[x,FINITE]] (* derived 2006 April 4 in SUB-FIN.NB *) equal[x_,fin[intersection[x_,y_]]] := and[member[x,FINITE],subclass[x,y]] (* derived 2007 June 12 in FIN-PO.NB *) equal[x_,fin[po[x_]]] := and[member[x,FINITE],PARTIALORDER[x]] (* derived 2006 March 30 in FIN-REG.NB *) equal[x_,fin[reg[x_]]] := and[member[x,FINITE],member[x,REGULAR]] (* derived 2005 December 28 in FIN-TO.NB *) equal[x_,fin[to[x_]]] := and[member[x,FINITE],TOTALORDER[x]] (* derived 2007 September 26 in UCH-TOPS.NB *) equal[FINITE,Uchains[FINITE]] := False (* derived 2007 February 10 in COMPOS-2.NB *) equal[fix[composite[inverse[E],IMAGE[NATMUL],CART,DUP]], image[NATMUL,cart[complement[succ[set[0]]],complement[succ[set[0]]]]]] := True (* added 2003 September 7 based on FIX-HULL.NB *) equal[fix[HULL[x_]],fix[HULL[y_]]] := equal[HULL[x],HULL[y]] (* derived 2006 October 11 in RA-CLIQ.NB *) equal[fix[IMAGE[inverse[S]]],range[CLIQUES]] := False (* derived 2008 February 5 in TOT-RELN.NB *) equal[fix[x_],union[domain[x_],range[x_]]] := REFLEXIVE[composite[Id,x]] (* derived 2007 December 10 in FUND.NB *) equal[FUND,REGULAR] := AxReg (* derived 2007 December 10 in FUND.NB *) equal[FUND,RUSSELL] := AxReg (* derived 2007 December 10 in FUND.NB *) equal[FUND,V] := AxReg (* added 2001 November 20 based on FUNPART.NB *) equal[funpart[x_],x_] := FUNCTION[x] (* derived 2005 November 4 in FIN-FUNP.NB *) equal[x_,funpart[fin[x_]]] := and[FUNCTION[x],member[x,FINITE]] (* derived 2006 April 3 in SUB-FUNP.NB *) equal[x_,funpart[intersection[x_,y_]]] := and[FUNCTION[x],subclass[x,y]] (* derived 2004 November 12 in SETPFUNP.NB *) equal[x_,funpart[setpart[x_]]] := and[FUNCTION[x],member[x,V]] (* derived 2004 November 21 in FUNP-DO.NB *) equal[funpart[x_],thinpart[x_]] := FUNCTION[thinpart[x]] (* derived 2004 August 11 in X2911.NB *) equal[Id,composite[x_,inverse[x_]]] := and[equal[V,range[x]],FUNCTION[composite[Id,x]]] (* added 2003 July 5 based on TRANSTIV.NB *) equal[x_,id[fix[x_]]] := subclass[x,Id] (* added 2002 March 23 based on TC.NB *) equal[x_,H[x_]] := subclass[U[x],x] (* derived 2007 May 31 in HULL-ID.NB *) equal[HULL[x_],id[y_]] := and[subclass[y,fix[HULL[x]]],subclass[image[inverse[S],x],y]] (* derived 2007 May 30 in NEXT-LIM.NB *) equal[hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x_]]],ord[x_]] := False (* derived 2005 August 8 in NEXTPRIM.NB *) equal[hull[PRIMES,x_],set[0]] := False (* derived 2004 March 29 based on HULL.NB *) equal[hull[TRV,x_],trv[x_]] := and[member[x,V],subclass[x,cart[V,V]]] (* derived 2007 January 20 in HULL-Z.NB *) equal[x_,hull[Z,x_]] := or[equal[0,x],equal[V,x],member[x,Z]] (* derived 2004 January 2 in COAR-ADJ.NB *) equal[Id,ADJOIN[x_]] := equal[0,x] (* derived 2004 April 8 in SU-ID.NB *) equal[Id,cart[x_,y_]] := False (* derived 2004 August 19 in X2901-93.NB *) equal[Id,composite[IMAGE[FIRST],IMAGE[RIGHT[x_]]]] := member[x,V] (* derived 2004 August 19 in X2901-93.NB *) equal[Id,composite[IMAGE[SECOND],IMAGE[LEFT[x_]]]] := member[x,V] (* derived 2007 May 31 in CORE-ID.NB *) equal[Id,CORE[x_]] := equal[V,Uclosure[x]] (* derived 2005 August 5 in X-ID.NB *) equal[Id,cross[x_,y_]] := False (* derived 2004 April 8 in SU-ID.NB *) equal[x_,id[domain[x_]]] := subclass[x,Id] (* derived 2004 June 15 in X12--.NB *) equal[id[fix[x_]],intersection[x_,inverse[x_]]] := subclass[intersection[x,inverse[x]],Id] (* derived 2007 May 31 in HULL-ID.NB *) equal[Id,HULL[x_]] := equal[V,fix[HULL[x]]] (* added 2003 June 17 based on THINRULE.NB *) equal[Id,id[x_]] := equal[V,x] (* added 2001 December 20 based on SUBST-1.NB *) equal[id[x_],id[y_]] := equal[x,y] (* derived 2004 October 17 in ID-IMG.NB *) equal[Id,IMAGE[x_]] := equal[Id,composite[Id,x]] (* derived 2004 January 2 in CUT-EQNS.NB *) equal[id[x_],IMAGE[id[y_]]] := and[equal[V,x],equal[V,y]] (* derived 2004 October 17 in ID-IMG.NB *) equal[Id,inverse[x_]] := equal[Id,composite[Id,x]] (* derived 2006 July 29 in Z-ADD-EQ.NB *) equal[id[omega],intadd[x_,y_]] := and[equal[y,inverse[x]],member[x,Z]] (* derived 2007 January 9 in ZEROPROD.NB *) equal[id[omega],intmul[x_,y_]] := or[and[equal[x,id[omega]],member[y,Z]],and[equal[y,id[omega]],member[x,Z]]] (* derived 2006 September 9 in PLUS-EQ.NB *) equal[id[omega],plus[x_]] := equal[0,x] (* derived 2006 September 8 in TIMES.NB *) equal[id[omega],times[x_]] := equal[x,set[0]] (* derived 2004 April 9 in SU-ID.NB *) equal[x_,id[range[x_]]] := subclass[x,Id] (* derived 2004 October 17 in ID-IMG.NB *) equal[Id,S] := False (* derived 2008 September 16 in INTM-ID.NB *) equal[id[Z],inttimes[x_]] := equal[x,composite[id[omega],SUCC]] (* derived 2007 June 6 in IDEMWRAP.NB *) equal[x_,idem[x_]] := equal[x,composite[x,x]] (* derived 2007 December 6 in IDEMFUNP.NB *) equal[x_,idem[funpart[x_]]] := and[equal[x,composite[x,x]],FUNCTION[x]] (* derived 2008 January 10 in REPLACE.NB *) equal[x_,image[BIGCUP,intersection[FINITE,P[x_]]]] := and[member[0,x],subclass[image[CUP,cart[x,x]],x]] (* derived 2005 February 6 in IVR-SBV.NB *) equal[image[CAP,cart[x_,y_]],image[CAP,cart[y_,x_]]] := True (* derived 2005 October 18 in SQUARE.NB *) equal[image[CART,id[x_]],image[CART,id[y_]]] := equal[x,y] (* derived 2008 August 8 in FIN-PP2.NB *) equal[image[CORE[subvar[x_]],P[y_]],set[0]] := WELLFOUNDED[composite[id[y],x]] (* derived 2007 June 10 in ADD-ID.NB *) equal[image[CUP,cart[x_,y_]],image[CUP,cart[y_,x_]]] := True (* derived 2007 April 19 in GCD-PI.NB *) equal[x_,image[DIV,set[APPLY[GLB[DIV],x_]]]] := member[x,image[VERTSECT[DIV],omega]] (* derived 2007 April 19 in GCD-PI.NB *) equal[image[DIV,set[nat[x_]]],image[DIV,set[nat[y_]]]] := equal[nat[x],nat[y]] (* added 2003 May 9 based on CUT-EQ.NB *) equal[IMAGE[id[x_]],IMAGE[id[y_]]] := equal[x,y] (* derived 2004 October 26 in AXCH-AC1.NB *) equal[image[IMAGE[FIRST],intersection[FUNS,P[inverse[E]]]],P[complement[set[0]]]] := axch (* derived 2005 October 6 in CL.NB *) equal[x_,image[IMAGE[id[y_]],x_]] := subclass[U[x],y] (* derived 2007 January 21 in ZADDSWAP.NB *) equal[image[INTADD,cart[x_,y_]],image[INTADD,cart[y_,x_]]] := True (* derived 2005 February 22 in PRIMES.NB *) equal[image[inverse[DIV],set[x_]],set[x_,set[0]]] := or[equal[x,set[0]],member[x,PRIMES]] (* derived 2007 October 30 in IMIN-PS.NB *) equal[image[inverse[PS],x_],image[inverse[S],x_]] := subclass[x,image[inverse[PS],x]] (* derived 2005 November 9 in POWCHAIN.NB *) equal[image[inverse[S],omega],P[omega]] := False (* derived 2007 September 3 in IMS-P-U.NB *) equal[image[inverse[S],ord[x_]],P[U[ord[x_]]]] := not[equal[ord[x],U[ord[x]]]] (* derived 2007 September 3 in IMS-P-U.NB *) equal[image[inverse[S],setpart[x_]],P[U[setpart[x_]]]] := member[U[setpart[x]],setpart[x]] (* derived 2008 January 6 in SUBVAR.NB *) equal[image[inverse[S],subvar[x_]],subvar[x_]] := equal[P[fix[x]],subvar[x]] (* derived 2008 June 13 in WF-DO-RA.NB *) equal[image[inverse[wf[x_]],set[y_]],set[y_]] := not[member[y,V]] (* added 2002 July 4 based on NATADD.NB *) equal[image[NATADD,cart[x_,y_]],image[NATADD,cart[y_,x_]]] := True (* added 2007 February 20 in TWISTADD.NB *) equal[image[NATADD,cart[image[NATADD,cart[w_,x_]],image[NATADD,cart[y_,z_]]]], image[NATADD,cart[image[NATADD,cart[w_,y_]],image[NATADD,cart[x_,z_]]]]] := True (* derived 2008 September 18 in IM-RC-OM.NB *) equal[image[RC[omega],omega],P[omega]] := False (* added 2001 December 21 based on ADJOIN.NB *) equal[image[S,set[x_]],image[S,set[y_]]] := equal[set[x],set[y]] (* derived 2007 April 26 in THIN-Q.NB *) equal[image[S,set[x_]],set[0]] := False (* derived 2004 June 18 in X1403.NB *) equal[image[SINGLETON,x_],set[x_]] := member[x,range[SINGLETON]] (* added 2002 October 14 based on IMAGEV.NB *) equal[x_,image[V,y_]] := or[and[equal[0,x],equal[0,y]],and[equal[V,x],not[equal[0,y]]]] (* derived 2008 June 13 in WF-DO-RA.NB *) equal[image[wf[x_],set[y_]],set[y_]] := not[member[y,V]] (* derived 2008 November 29 in INT-WRAP.NB *) equal[x_,int[x_]] := member[x,Z] (* derived 2008 November 29 in INT-WRAP.NB *) equal[int[x_],intmul[int[x_],int[y_]]] := or[equal[composite[id[omega],SUCC],int[y]],equal[id[omega],int[x]]] (* derived 2006 July 29 in Z-ADD-EQ.NB *) equal[x_,intadd[x_,y_]] := or[and[equal[y,id[omega]],member[x,Z]],equal[V,x]] (* derived 2007 January 21 in IN-ZADD.NB *) equal[intadd[inverse[x_],inverse[y_]],inverse[intadd[x_,y_]]] := and[member[x,Z],member[y,Z]] (* added 2003 August 9 based on INTADDXY.NB *) equal[intadd[plus[x_],plus[y_]],plus[natadd[x_,y_]]] := and[member[x,omega],member[y,omega]] (* added 2000 October 3 based on KMINIMAL.NB *) equal[intersection[x_,y_],x_] := subclass[x,y] (* derived 2007 November 10 in ALL-MAX.NB *) equal[intersection[chains[S],P[x_]],union[image[SINGLETON,x_],set[0]]] := equal[0,intersection[x,image[PS,x]]] (* derived 2004 July 25 in CANTOR.NB *) equal[x_,intersection[y_,complement[x_]]] := and[equal[0,x],equal[0,y]] (* derived 2005 January 21 in SS-A.NB *) equal[y_,intersection[x_,complement[image[Di,x_]]]] := or[and[equal[0,y],not[member[x,range[SINGLETON]]]],and[equal[x,y],member[x,range[SINGLETON]]]] equal[intersection[x_,complement[image[V,y_]]],z_] := or[and[equal[0,x],equal[0,z]],and[equal[0,y],equal[x,z]], and[equal[0,z],not[equal[0,y]]]] equal[x_,intersection[y_,complement[image[V,z_]]]] := or[and[equal[0,x],equal[0,y]],and[equal[0,x],not[equal[0,z]]], and[equal[0,z],equal[x,y]]] (* derived 2004 September 24 in COREDESC.NB *) equal[intersection[DESCENDING,P[x_]],set[0]] := WELLFOUNDED[composite[id[x],E]] equal[intersection[x_,image[V,y_]],z_] := or[and[equal[0,x],equal[0,z]],and[equal[0,y],equal[0,z]], and[equal[x,z],not[equal[0,y]]]] equal[x_,intersection[y_,image[V,z_]]] := or[and[equal[0,x],equal[0,y]],and[equal[0,x],equal[0,z]], and[equal[x,y],not[equal[0,z]]]] (* derived 2005 July 9 in MM10-12.NB *) equal[intersection[x_,y_],intersection[x_,succ[y_]]] := or[member[y,y],not[member[y,x]]] (* derived 2008 October 31 in RFX.NB *) equal[x_,intersection[inverse[rfx[x_]],rfx[x_]]] := and[equal[x,inverse[x]],REFLEXIVE[x]] (* derived 2005 July 9 in MM10-12.NB *) equal[intersection[nat[x_],succ[nat[y_]]],succ[intersection[nat[x_],nat[y_]]]] := member[nat[y],nat[x]] (* derived 2008 March 20 in IVR-SBV.NB *) equal[x_,intersection[omega,image[S,x_]]] := or[and[member[intersection[omega,complement[x]],omega],subclass[x,omega]],equal[0,x]] (* derived 2005 February 12 in X3673-76.NB *) equal[x_,intersection[OMEGA,P[x_]]] := equal[OMEGA,x] (* derived 2005 February 12 in X3673-76.NB *) equal[intersection[OMEGA,P[x_]],succ[x_]] := or[equal[OMEGA,x],member[x,OMEGA]] (* derived 2007 January 5 based on INTMUL-5.NB *) equal[intmul[x_,y_],intmul[y_,x_]] := True (* derived 2007 January 5 based on INTMUL-5.NB *) equal[intmul[x_,intmul[y_,z_]],intmul[intmul[x_,y_],z_]] := True (* derived 2008 September 15 in INTTIMES.NB *) equal[x_,inttimes[APPLY[x_,composite[id[omega],SUCC]]]] := or[equal[0,x],member[x,binhom[INTADD,INTADD]]] (* derived 2007 May 17 in FP-FU-V.NB *) equal[invar[funpart[x_]],P[fix[funpart[x_]]]] := equal[Id,funpart[x]] (* added 2001 December 20 based on SUBST-2.NB *) equal[inverse[x_],inverse[y_]] := equal[composite[Id,x],composite[Id,y]] (* derived 2006 October 20 in SETPART.NB *) equal[inverse[setpart[x_]],setpart[x_]] := or[equal[x,inverse[x]],not[member[x,V]]] (* derived 2008 May 4 in WFINTHIN.NB *) equal[x_,inverse[thinpart[inverse[wf[x_]]]]] := and[equal[V,domain[VERTSECT[inverse[x]]]],WELLFOUNDED[x]] (* added 2003 August 8 based on REPLACE.NB *) equal[iterate[SUCC,set[x_]],plus[x_]] := or[member[x,omega],not[member[x,V]]] (* added 2001 December 20 based on SUBST-2.NB *) equal[LB[x_],LB[y_]] := equal[composite[Id,x],composite[Id,y]] (* added 2001 December 20 based on SUBST-2.NB *) equal[LEFT[x_],LEFT[y_]] := equal[set[x],set[y]] (* derived 2008 October 20 in LIST.NB *) equal[x_,list[x_]] := and[FUNCTION[x],member[domain[x],omega]] (* derived 2008 October 21 in LISTS.NB *) equal[LISTS,V] := False (* derived 2007 January 16 in EXP-MONO.NB *) equal[map[x_,y_],map[x_,z_]] := or[equal[0,x],equal[y,z],not[member[x,V]]] (* derived 2004 November 25 in MAP-SS-0.NB *) equal[map[x_,y_],set[0]] := equal[0,x] (* derived 2004 November 26 in XS-CP.NB *) equal[map[x_,y_],X[cart[x_,y_]]] := or[equal[0,x],not[equal[0,y]]] (* derived 2005 February 13 in NAT.NB *) equal[x_,nat[x_]] := member[x,omega] (* derived 2007 March 25 in Q19.NB *) equal[nat[x_],natadd[nat[y_],natmul[nat[z_],nat[natsub[ natdiv[natsub[nat[x_],natmod[nat[x_],nat[z_]]],nat[z_]], natdiv[natsub[nat[y_],natmod[nat[y_],nat[z_]]],nat[z_]]]]]]] := or[and[equal[natmod[nat[x],nat[z]],natmod[nat[y],nat[z]]], member[natadd[nat[y],natmod[nat[x],nat[z]]],natadd[nat[x],natmod[nat[y],nat[z]]]]], equal[nat[x],nat[y]]] (* derived 2007 March 21 in EQ-MONUS.NB *) equal[x_,nat[natsub[y_,z_]]] := or[and[equal[0,x],not[member[y,omega]]],and[equal[0,x], not[member[z,y]]],and[equal[y,natadd[x,z]],member[x,omega],member[z,omega],not[equal[0,x]]]] (* derived 2008 September 13 in NAT-SUCC.NB *) equal[nat[succ[x_]],succ[nat[x_]]] := member[x,omega] (* derived 2005 February 13 in NAT.NB *) equal[nat[x_],U[nat[x_]]] := equal[0,nat[x]] (* added 2002 October 12 based on O-17.NB *) equal[x_,natadd[x_,y_]] := or[and[equal[0,y],member[x,omega]],equal[V,x]] (* derived 2007 April 5 in EVEN-ODD.NB *) equal[natadd[nat[x_],natmod[nat[x_],succ[set[0]]]],succ[nat[x_]]] := member[nat[x],odd] (* derived 2005 June 3 in A4.NB *) equal[natadd[x_,z_],natadd[y_,z_]] := or[and[not[member[x,omega]],not[member[y,omega]]], and[equal[x,y],member[x,omega],member[y,omega]],not[member[z,omega]]] (* derived 2008 January 26 in SUM-EQ-1.NB *) equal[natadd[x_,y_],set[0]] := or[and[equal[0,x],equal[y,set[0]]],and[equal[0,y],equal[x,set[0]]]] (* derived 2007 March 11 in DIV-EQ.NB *) equal[x_,natdiv[y_,z_]] := or[and[equal[V,x],not[member[pair[z,y],DIV]]], and[equal[0,x],equal[0,y],equal[0,z]],and[equal[0,x],equal[0,y],member[z,omega]], and[equal[y,natmul[x,z]],member[x,omega],member[z,omega],not[equal[0,z]]]] (* derived 2006 November 30 in EXPIDEMP.NB *) equal[x_,natexp[x_,x_]] := or[equal[V,x],equal[x,set[0]]] (* derived 2007 February 8 in EX-2-COR.NB *) equal[natexp[nat[x_],nat[z_]],natmul[natexp[nat[x_],nat[y_]], natexp[nat[x_],natsub[nat[z_],nat[y_]]]]] := not[member[nat[z],nat[y]]] (* derived 2006 November 30 in EXPIDEMP.NB *) equal[natexp[x_,y_],set[0]] := or[and[equal[0,y],member[x,omega]], and[equal[x,set[0]],member[y,omega]]] (* derived 2005 June 24 in MOD-FIX.NB *) equal[x_,natmod[x_,y_]] := or[and[equal[0,y],member[x,omega]], and[member[x,y],member[y,omega]],equal[V,x]] (* derived 2007 March 18 in MOD-SU.NB *) equal[y_,natmod[x_,y_]] := or[and[equal[0,x],equal[0,y]],equal[V,y]] (* derived 2005 May 17 based on NATMOD.NB *) equal[natmod[set[0],nat[x_]],set[0]] := not[equal[nat[x],set[0]]] (* derived 2006 August 15 in EVEN-ODD.NB *) equal[natmod[x_,succ[set[0]]],set[0]] := member[x,odd] (* added 2002 October 14 based on M8-COR.NB *) equal[x_,natmul[x_,y_]] := or[and[equal[0,x],member[y,omega]], and[equal[y,set[0]],member[x,omega]],equal[V,x]] (* derived 2006 August 24 in NAT-SQR.NB *) equal[natmul[nat[x_],nat[x_]],natmul[nat[y_],nat[y_]]] := equal[nat[x],nat[y]] (* derived 2007 February 4 in NATDIV-1.NB *) equal[x_,natmul[y_,natdiv[x_,y_]]] := or[equal[V,x],member[pair[y,x],DIV]] (* added 2002 October 13 based on THM-M8.NB *) equal[natmul[x_,y_],natmul[x_,z_]] := or[and[not[member[y,omega]],not[member[z,omega]]], and[equal[0,x],member[y,omega],member[z,omega]],equal[y,z],not[member[x,omega]]] (* added 2002 September 3 based on DIV-ONE.NB *) equal[natmul[x_,y_],set[0]] := and[equal[x,set[0]],equal[y,set[0]]] (* derived 2006 September 4 in PLUS-CO.NB *) equal[x_,natsub[x_,y_]] := or[and[equal[0,y],member[x,omega]],equal[V,x]] (* derived 2007 March 13 in SUB-EQ.NB *) equal[z_,natsub[x_,y_]] := or[and[equal[V,z],member[x,y]], and[equal[V,z],not[member[x,omega]]],and[equal[V,z],not[member[y,omega]]], and[equal[x,natadd[y,z]],member[y,omega],member[z,omega]]] (* added 2003 April 26 based on SUCC-SUB.NB *) equal[natsub[x_,y_],set[0]] := and[equal[x,succ[y]],member[x,omega]] (* derived 2006 October 26 in CARDARTH.NB *) equal[omega,card[image[DIV,set[x_]]]] := and[member[x,omega],not[equal[0,x]]] (* derived 2007 January 30 in FIN-DIV.NB *) equal[omega,card[image[inverse[DIV],x_]]] := or[member[0,x],not[member[intersection[omega,x],FINITE]]] (* derived 2005 December 2 in NAT-CORE.NB *) equal[omega,core[omega,x_]] := subclass[omega,x] (* derived 2005 December 2 in ORD-CORE.NB *) equal[OMEGA,core[OMEGA,x_]] := subclass[OMEGA,x] (* derived 2006 March 18 in OL-DO.NB *) equal[omega,domain[ordlist[x_]]] := not[member[intersection[OMEGA,x],FINITE]] (* derived 2005 January 7 in CARD-OM.NB *) equal[OMEGA,fix[CARD]] := False (* derived 2007 January 27 in IM-DIV.NB *) equal[omega,image[DIV,x_]] := member[set[0],x] (* derived 2005 April 19 in LBUB-DIV.NB *) equal[omega,image[inverse[DIV],set[x_]]] := equal[0,x] (* derived 2003 January 3 in OO-SUC-OM.NB *) equal[omega,set[0]] := False (* added 2003 January 9 based on OM-SUC.NB *) equal[omega,succ[x_]] := False (* derived 2004 May 7 in OOPART.NB *) equal[x_,oopart[x_]] := and[FUNCTION[x],FUNCTION[inverse[x]]] (* derived 2006 July 4 in MAP-Q.NB *) equal[x_,oopart[setpart[x_]]] := and[FUNCTION[x],FUNCTION[inverse[x]],member[x,V]] (* derived 2005 October 19 in ORD-WRAP.NB *) equal[x_,ord[x_]] := member[x,OMEGA] (* derived 2005 December 7 in SUCC-ORD.NB *) equal[ord[x_],succ[U[ord[x_]]]] := not[equal[ord[x],U[ord[x]]]] (* added 2001 November 17 based on EQ.NB *) equal[P[x_],P[y_]] := equal[x,y] (* derived 2004 August 8 in UP-PC.NB *) equal[P[x_],set[0,x_]] := or[equal[0,x],member[x,range[SINGLETON]]] (* derived 2007 May 17 in CORE-ON.NB *) equal[P[x_],succ[set[0]]] := equal[x,set[0]] (* derived 2007 July 8 in IMS-ENS.NB *) equal[P[succ[set[0]]],succ[succ[set[0]]]] := False (* derived 2007 July 17 in RA-SBV.NB *) equal[P[succ[set[0]]],succ[succ[succ[set[0]]]]] := False (* derived 2004 August 9 in RS-2.NB *) equal[P[x_],RS[x_]] := FUNCTION[x] (* added 2002 January 22 based on EQ-PC.NB *) equal[P[x_],set[y_]] := and[equal[0,x],equal[0,y]] (* derived 2005 November 9 in POWCHAIN.NB *) equal[P[succ[set[0]]],union[set[0],succ[set[set[0]]]]] := False equal[pair[x_,y_],0] := False (* derived 2005 December 25 in APCPSCRS.NB *) equal[x_,PAIR[first[x_],second[x_]]] := or[equal[V,x],member[first[x],V]] (* equality of pairs *) equal[pair[u_,v_],pair[x_,y_]] := and[equal[set[u],set[x]],equal[set[v],set[y]]] (* replaced 2002 January 1 based on EQUAL.NB *) equal[pair[u_,v_],PAIR[x_,y_]] := and[equal[u,x],equal[v,y],member[x,V],member[y,V]] (* derived 2008 August 31 in EQ-PAIR.NB *) equal[PAIR[u_,v_],PAIR[x_,y_]] := equal[cart[set[u],set[v]],cart[set[x],set[y]]] (* derived 2006 September 13 in UN-PAIR.NB *) equal[x_,pair[setpart[first[x_]],setpart[second[x_]]]] := member[first[x],V] (* derived 2006 September 13 in UN-PAIR.NB *) equal[x_,PAIR[setpart[first[x_]],setpart[second[x_]]]] := member[first[x],V] equal[pair[x_,y_],V] := False (* derived 2006 September 5 in RA-PLUS.NB *) equal[x_,plus[APPLY[x_,0]]] := or[equal[0,x],member[x,range[PLUS]]] (* derived 2006 September 30 in ZADDPLUS.NB *) equal[x_,plus[nat[APPLY[x_,0]]]] := member[x,range[PLUS]] (* derived 2006 September 9 in PLUS-EQ.NB *) equal[plus[x_],plus[y_]] := or[and[not[member[x,omega]],not[member[y,omega]]], and[equal[x,y],member[x,omega],member[y,omega]]] (* derived 2005 October 1 in PO-WRAP.NB *) equal[x_,po[x_]] := PARTIALORDER[x] (* derived 2007 June 12 in FIN-PO.NB *) equal[x_,po[fin[x_]]] := and[member[x,FINITE],PARTIALORDER[x]] (* derived 2005 October 1 in PO-SETPT.NB *) equal[x_,po[setpart[x_]]] := and[member[x,V],PARTIALORDER[x]] (* derived 2005 October 1 in PO-THIN.NB *) equal[x_,po[thinpart[x_]]] := and[equal[V,domain[VERTSECT[x]]],PARTIALORDER[x]] (* added 2003 May 5 based on POWER-EQ.NB *) equal[power[x_],power[y_]] := equal[composite[Id,x],composite[Id,y]] (* derived 2008 October 9 in QUASIGP.NB *) equal[x_,quasigp[x_]] := member[x,QUASIGPS] (* derived 2006 October 11 in RA-CLIQ.NB *) equal[range[CLIQUES],range[POWER]] := False (* added 2003 June 25 based on RANK.NB *) equal[x_,rank[x_]] := or[equal[V,x],member[x,OMEGA]] (* derived 2003 December 21 in LOW-RANK.NB *) equal[rank[x_],set[0]] := equal[x,set[0]] (* derived 2005 December 7 in LOW-RANK.NB *) equal[rank[x_],succ[set[0]]] := or[equal[x,set[set[0]]],equal[x,succ[set[0]]]] (* added 2001 December 20 based on SUBST-2.NB *) equal[RC[x_],RC[y_]] := equal[set[x],set[y]] (* derived 2005 December 8 in REG.NB *) equal[x_,reg[x_]] := member[x,REGULAR] (* derived 2006 April 4 in SUB-REG.NB *) equal[x_,reg[intersection[x_,y_]]] := and[member[x,REGULAR],subclass[x,y]] (* derived 2008 July 13 in CHN-C-E.NB *) equal[REGULAR,chains[complement[E]]] := AxReg (* derived 2007 April 26 in AXREG.NB *) equal[REGULAR,P[x_]] := equal[REGULAR,x] (* derived 2007 April 26 in AXREG.NB *) equal[REGULAR,RUSSELL] := AxReg (* derived 2004 December 30 in AXREG.NB *) equal[REGULAR,V] := AxReg (* derived 2004 December 16 in RFX-CORE.NB *) equal[x_,rfx[x_]] := REFLEXIVE[x] (* derived 2004 December 16 in RFX-CORE.NB *) equal[x_,rfx[setpart[x_]]] := and[member[x,V],REFLEXIVE[x]] (* derived 2004 December 17 in RFX.NB *) equal[x_,rfx[thinpart[x_]]] := and[equal[V,domain[VERTSECT[x]]],REFLEXIVE[x]] (* derived 2004 December 17 in RFXTRV-C.NB *) equal[x_,rfx[thinpart[trv[x_]]]] := and[equal[V,domain[VERTSECT[x]]],REFLEXIVE[x],TRANSITIVE[x]] (* derived 2004 December 16 in RFX-CORE.NB *) equal[x_,rfx[trv[x_]]] := and[REFLEXIVE[x],TRANSITIVE[x]] (* derived 2004 December 16 in RFX-CORE.NB *) equal[x_,rfx[trv[setpart[x_]]]] := and[member[x,V],REFLEXIVE[x],TRANSITIVE[x]] (* derived 2005 January 29 in RFXTRVTH.NB *) equal[x_,rfx[trv[thinpart[x_]]]] := and[equal[V,domain[VERTSECT[x]]],REFLEXIVE[x],TRANSITIVE[x]] (* added 2001 December 20 based on SUBST-2.NB *) equal[RIGHT[x_],RIGHT[y_]] := equal[set[x],set[y]] (* added 2002 October 25 based on ROTATE.NB *) equal[rotate[x_],rotate[y_]] := equal[composite[x,id[cart[V,V]]],composite[y,id[cart[V,V]]]] (* derived 2004 August 7 in RS-1.NB *) equal[RS[x_],set[0]] := equal[0,domain[thinpart[x]]] (* derived 2006 January 3 in S.NB *) equal[S,cart[x_,y_]] := False (* derived 2006 January 3 in S.NB *) equal[S,inverse[S]] := False (* derived 2004 November 2 in SELECT.NB *) equal[SELECT,V] := axch (* derived 2008 October 19 in SEMIGP.NB *) equal[x_,semigp[x_]] := member[x,SEMIGPS] (* derived 2004 January 13 in RA-RCF.NB *) equal[set[0],set[x_]] := equal[0,x] (* derived 2004 March 14 in WF-WO.NB *) equal[set[0],subvar[x_]] := WELLFOUNDED[composite[Id,x]] (* derived 2004 November 26 in XS-SS-0.NB *) equal[set[0],X[x_]] := equal[0,domain[x]] (* derived 2005 January 21 in SS-A.NB *) equal[x_,set[A[x_]]] := or[equal[0,x],member[x,range[SINGLETON]]] (* added 2001 November 30 based on FLIP-SS.NB *) equal[set[x_],cart[y_,z_]] := or[and[equal[0,y],not[member[x,V]]],and[equal[0,z],not[member[x,V]]], and[equal[set[first[x]],y],equal[set[second[x]],z],member[first[x],V]]] (* derived 2004 June 15 in X1235.NB *) equal[set[pair[u_,v_],pair[x_,y_]],union[cart[set[u_],set[v_]],cart[set[x_],set[y_]]]] := and[member[u,V],member[v,V],member[x,V],member[y,V]] (* derived 2004 February 8 in BASICS.NB *) equal[set[x_,y_],set[y_]] := or[equal[x,y],not[member[x,V]]] (* derived 2004 May 15 in VARIOUS.NB *) equal[set[setpart[x_]],set[setpart[y_]]] := equal[setpart[x],setpart[y]] (* derived 2004 May 15 in VARIOUS.NB *) equal[set[x_],set[setpart[x_]]] := member[x,V] (* added 2003 January 25 based on PROPITER.NB *) equal[x_,set[U[x_]]] := member[x,range[SINGLETON]] (* added 2002 July 2 based on SS-I.NB *) equal[set[x_],succ[y_]] := and[equal[x,y],subclass[x,set[x]]] (* derived 2003 December 25 in TOPSDEFN.NB *) equal[set[x_,y_],Uclosure[set[x_,y_]]] := or[equal[0,x],equal[0,y]] (* derived 2004 May 15 in VARIOUS.NB *) equal[x_,setpart[x_]] := member[x,V] (* derived 2009 January 22 in ASS-SETP.NB *) equal[x_,setpart[assoc[x_]]] := and[associative[x],member[x,V]] (* derived 2006 October 20 in SET-WRAP.NB *) equal[x_,setpart[eqv[x_]]] := and[EQUIVALENCE[x],member[x,V]] (* derived 2004 November 12 in SETPFUNP.NB *) equal[x_,setpart[funpart[x_]]] := and[FUNCTION[x],member[x,V]] (* derived 2006 October 20 in SET-WRAP.NB *) equal[x_,setpart[intersection[x_,inverse[x_]]]] := and[equal[x,inverse[x]],member[x,V]] (* derived 2005 October 1 in PO-SETPT.NB *) equal[x_,setpart[po[x_]]] := and[member[x,V],PARTIALORDER[x]] (* derived 2006 October 20 in SET-WRAP.NB *) equal[x_,setpart[rfx[x_]]] := and[member[x,V],REFLEXIVE[x]] (* derived 2005 October 15 in TO-SETPT.NB *) equal[x_,setpart[to[x_]]] := and[member[x,V],TOTALORDER[x]] (* derived 2006 October 20 in SET-WRAP.NB *) equal[x_,setpart[trv[x_]]] := and[member[x,V],TRANSITIVE[x]] (* derived 2008 March 4 in WO-SETP.NB *) equal[x_,setpart[wo[x_]]] := and[member[x,V],WELLORDER[x]] (* derived 2007 June 10 in SPINE.NB *) equal[y_,spine[x_,y_]] := subclass[cart[y,y],union[x,inverse[x]]] (* derived 2008 January 4 in SPINSETP.NB *) equal[y_,spine[x_,fin[y_]]] := and[member[y,FINITE],subclass[cart[y,y],union[x,inverse[x]]]] (* derived 2008 January 4 in SPINSETP.NB *) equal[y_,spine[x_,setpart[y_]]] := and[member[y,V],subclass[cart[y,y],union[x,inverse[x]]]] (* derived 2005 February 6 in X3374.NB *) equal[x_,succ[x_]] := or[member[x,x],not[member[x,V]]] (* derived 2005 December 7 in SUCC-ORD.NB *) equal[succ[ord[x_]],succ[ord[y_]]] := equal[ord[x],ord[y]] (* derived 2005 July 9 in MM10-12.NB *) equal[succ[union[nat[x_],nat[y_]]],union[nat[y_],succ[nat[x_]]]] := not[member[nat[x],nat[y]]] (* added 2002 March 23 based on TC.NB *) equal[x_,tc[x_]] := subclass[U[x],x] (* derived 2004 May 14 in THINPART.NB *) equal[x_,thinpart[x_]] := and[equal[V,domain[VERTSECT[x]]],subclass[x,cart[V,V]]] (* derived 2004 September 30 in EQV-THNP.NB *) equal[x_,thinpart[eqv[x_]]] := and[equal[V,domain[VERTSECT[x]]],EQUIVALENCE[x]] (* derived 2008 May 4 in WFINTHIN.NB *) equal[x_,thinpart[inverse[wf[inverse[x_]]]]] := and[equal[V,domain[VERTSECT[x]]],subclass[x,cart[V,V]],WELLFOUNDED[inverse[x]]] (* derived 2005 October 1 in PO-THIN.NB *) equal[x_,thinpart[po[x_]]] := and[equal[V,domain[VERTSECT[x]]],PARTIALORDER[x]] (* derived 2004 December 17 in RFXTRV-C.NB *) equal[x_,thinpart[rfx[trv[x_]]]] := and[equal[V,domain[VERTSECT[x]]],REFLEXIVE[x],TRANSITIVE[x]] (* derived 2005 October 15 in TO-THIN.NB *) equal[x_,thinpart[to[x_]]] := and[equal[V,domain[VERTSECT[x]]],TOTALORDER[x]] (* derived 2004 June 5 in THPT-TRV.NB *) equal[x_,thinpart[trv[x_]]] := and[equal[V,domain[VERTSECT[x]]],TRANSITIVE[x]] (* derived 2006 December 9 in FIX-BH.NB *) equal[x_,times[APPLY[x_,set[0]]]] := or[equal[0,x],member[x,binhom[NATADD,NATADD]]] (* derived 2006 September 8 in TIMES.NB *) equal[times[x_],times[y_]] := or[and[not[member[x,omega]],not[member[y,omega]]], and[equal[x,y],member[x,omega],member[y,omega]]] (* derived 2005 October 8 in TO-WRAP.NB *) equal[x_,to[x_]] := TOTALORDER[x] (* derived 2005 October 17 in TO-FIN.NB *) equal[x_,to[fin[x_]]] := and[member[x,FINITE],TOTALORDER[x]] (* derived 2005 October 15 in TO-SETPT.NB *) equal[x_,to[setpart[x_]]] := and[member[x,V],TOTALORDER[x]] (* derived 2005 October 15 in TO-THIN.NB *) equal[x_,to[thinpart[x_]]] := and[equal[V,domain[VERTSECT[x]]],TOTALORDER[x]] (* derived 2005 October 25 in TOP-WRAP.NB *) equal[x_,top[x_]] := member[x,TOPS] (* derived 2007 September 26 in UCH-TOPS.NB *) equal[TOPS,Uchains[TOPS]] := False (* derived 2004 March 21 in TRV-WRAP.NB *) equal[x_,trv[x_]] := TRANSITIVE[x] (* derived 2005 January 29 in TRV-RFX.NB *) equal[x_,trv[rfx[x_]]] := and[REFLEXIVE[x],TRANSITIVE[x]] (* derived 2004 June 5 in THPT-TRV.NB *) equal[x_,trv[thinpart[x_]]] := and[equal[V,domain[VERTSECT[x]]],TRANSITIVE[x]] (* added 2003 April 19 based on XSQ.NB *) equal[twist[x_],twist[y_]] := equal[composite[id[cart[V,V]],x,id[cart[V,V]]],composite[id[cart[V,V]],y,id[cart[V,V]]]] (* derived 2005 January 30 in X3949.NB *) equal[U[x_],U[tc[x_]]] := subclass[U[U[x]],U[x]] (* added 2001 December 20 based on SUBST-2.NB *) equal[UB[x_],UB[y_]] := equal[composite[Id,x],composite[Id,y]] (* added 2000 October 3 based on KMINIMAL.NB *) equal[union[x_,y_],y_] := subclass[x,y] (* derived 2005 November 29 in TOTAL-FU.NB *) equal[x_,union[cart[complement[domain[funpart[x_]]],set[y_]],funpart[x_]]] := or[and[equal[V,domain[x]],FUNCTION[x]],and[FUNCTION[x],not[member[y,V]]]] (* derived 2004 July 23 in X23--.NB *) equal[union[cart[complement[y_],set[0]],composite[VERTSECT[x_],id[y_]]],VERTSECT[x_]] := subclass[domain[x],y] equal[union[x_,complement[image[V,y_]]],z_] := or[and[equal[0,y],equal[V,z]],and[equal[V,x],equal[V,z]],and[equal[x,z],not[equal[0,y]]]] equal[x_,union[y_,complement[image[V,z_]]]] := or[and[equal[0,z],equal[V,x]],and[equal[V,x],equal[V,y]],and[equal[x,y],not[equal[0,z]]]] equal[union[x_,image[V,y_]],z_] := or[and[equal[0,y],equal[x,z]],and[equal[V,x],equal[V,z]],and[equal[V,z],not[equal[0,y]]]] equal[x_,union[y_,image[V,z_]]] := or[and[equal[0,z],equal[x,y]],and[equal[V,x],equal[V,y]],and[equal[V,x],not[equal[0,z]]]] (* derived 2005 February 10 in X3548.NB *) equal[x_,union[y_,intersection[x_,image[V,z_]]]] := or[and[not[equal[0,z]],subclass[y,x]],equal[x,y]] (* derived 2005 February 24 in X3379.NB *) equal[union[x_,y_],union[y_,intersection[x_,z_]]] := subclass[x,union[y,z]] (* derived 2005 July 9 in MM10-12.NB *) equal[union[x_,y_],union[x_,succ[y_]]] := or[member[y,x],member[y,y],not[member[y,V]]] equal[V,0] := False (* added 1998 August 23 *) equal[V,A[x_]] := equal[0,x] (* added 1999 July 21 *) equal[V,ADJOIN[x_]] := False (* derived 2007 June 23 in ALLCLOSED.NB *) equal[V,allclosed[x_]] := subclass[inverse[x],E] (* added 2003 October 28 based on APPLY.NB *) equal[V,APPLY[x_,y_]] := not[member[y,domain[x]]] (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,BIJ] := False (* added 2001 December 1 based on CARD-X.NB *) equal[V,card[x_]] := not[member[x,image[Q,OMEGA]]] (* added 1998 August 23 *) equal[V,cart[x_,y_]] := False (* derived 2007 May 6 in CHNBASIC.NB *) equal[V,chains[x_]] := subclass[cart[V,V],union[x,inverse[x]]] (* added 2001 November 23 based on CLIQUES.NB *) equal[V,cliques[x_]] := subclass[cart[V,V],x] (* added 2001 December 8 based on EQUAL-C.NB *) equal[V,complement[x_]] := equal[0,x] (* added 1998 August 23 *) equal[V,composite[x_,y_]] := False (* proposed 1998 September 13 *) equal[V,cross[x_,y_]] := False (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,DEDEKIND] := False (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,DESCENDING] := False (* derived 2007 May 11 in VS-LEAST.NB *) equal[V,domain[GREATEST[x_]]] := False (* derived 2007 May 11 in VS-LEAST.NB *) equal[V,domain[LEAST[x_]]] := False (* derived 204 August 22 in PARTREC.NB *) equal[V,domain[setpart[x_]]] := False (* derived 2006 January 1 in RAVS-UBX.NB *) equal[V,domain[UB[setpart[x_]]]] := False (* derived 2005 July 24 in THIN-IDS.NB *) equal[V,domain[VERTSECT[composite[id[x_],S]]]] := member[x,V] (* derived 2004 August 1 in THINNESS.NB *) equal[V,domain[VERTSECT[iterate[x_,y_]]]] := member[iterate[x,y],V] (* derived 2004 June 5 in THPT-TRV.NB *) equal[V,domain[VERTSECT[trv[x_]]]] := equal[V,domain[VERTSECT[x]]] (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,FINITE] := False (* added 2001 November 17 based on 1ST-2ND.NB *) equal[V,first[x_]] := not[member[first[x],V]] (* derived 2008 November 6 in FIX-A.NB *) equal[V,fix[A[x_]]] := equal[0,x] (* derived 2005 August 18 in ACL-UCL.NB *) equal[V,fix[ACLOSURE]] := False (* derived 2004 October 17 in ID-IMG.NB *) equal[V,fix[BIGCUP]] := False (* derived 2007 May 11 in VS-LEAST.NB *) equal[V,fix[composite[E,BIGCAP]]] := False (* derived 2007 May 11 in VS-LEAST.NB *) equal[V,fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := False (* derived 2008 August 13 in IVR-V.NB *) equal[V,fix[composite[inverse[S],VERTSECT[x_]]]] := and[equal[V,domain[VERTSECT[x]]],subclass[E,inverse[x]]] (* derived 2008 August 13 in IVR-V.NB *) equal[V,fix[composite[S,VERTSECT[x_]]]] := subclass[inverse[x],E] (* derived 2007 May 17 in FP-FU-V.NB *) equal[V,fix[funpart[x_]]] := equal[Id,funpart[x]] (* derived 2004 October 17 in ID-IMG.NB *) equal[V,fix[IMAGE[x_]]] := equal[Id,composite[Id,x]] (* derived 2005 August 18 in ACL-UCL.NB *) equal[V,fix[UCLOSURE]] := False (* derived 2008 August 13 in IVR-V.NB *) equal[V,fix[VERTSECT[x_]]] := equal[E,inverse[x]] (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,FULL] := False (* added 1999 July 21 *) equal[V,funpart[x_]] := False (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,FUNS] := False (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,H[x_]] := equal[V,x] (* derived 2004 March 29 based on HULL.NB *) equal[V,hull[x_,y_]] := not[member[y,image[inverse[S],x]]] (* added 1998 August 23 *) equal[V,id[x_]] := False (* Theorem IM-DI-V in Otter subdirectory proved 1999 August 11 *) equal[V,image[Di,x_]] := and[not[equal[0,x]],not[member[x,range[SINGLETON]]]] (* derived 2004 May 8 in IMIN-BC.NB *) equal[V,image[inverse[BIGCUP],x_]] := equal[V,x] (* derived 2004 June 23 in CRHLTALK.NB *) equal[V,image[inverse[CORE[t_]],t_]] := equal[t,Uclosure[t]] (* derived 2004 November 5 in RS-SU.NB *) equal[V,image[inverse[IMAGE[composite[id[x_],inverse[FIRST]]]],y_]] := and[equal[V,domain[VERTSECT[x]]],subclass[RS[x],y]] (* derived 2005 November 25 in IMIN-V.NB *) equal[V,image[inverse[IMAGE[FIRST]],x_]] := equal[V,x] (* added 2001 February 3 based on COND1.NB *) equal[V,image[inverse[IMAGE[id[x_]]],y_]] := subclass[P[x],y] (* derived 2005 November 25 in IMIN-V.NB *) equal[V,image[inverse[IMAGE[SECOND]],x_]] := equal[V,x] (* Theorem POW-5A&B in POW2 proved 1999 January 28 *) equal[V,image[inverse[POWER],x_]] := subclass[range[POWER],x] (* added 1998 August 23 *) equal[V,image[S,x_]] := member[0,x] (* added 2001 October 10 based on REPLACE.NB *) equal[V,image[inverse[SINGLETON],x_]] := subclass[range[SINGLETON],x] (* added 1999 July 21 *) equal[V,IMAGE[x_]] := False equal[V,image[V,x_]] := not[equal[0,x]] (* added 2003 August 9 based on INTADDXY.NB *) equal[V,intadd[x_,y_]] := or[not[member[x,Z]],not[member[y,Z]]] equal[V,intersection[x_,y_]] := and[equal[V,x],equal[V,y]] (* derived 2007 January 5 based on INTMUL-5.NB *) equal[V,intmul[x_,y_]] := or[not[member[x,Z]],not[member[y,Z]]] (* derived 2008 August 13 in IVR-V.NB *) equal[V,invar[x_]] := subclass[composite[Id,x],Id] (* proposed 1998 September 13 *) equal[V,inverse[x_]] := False (* derived 2004 February 20 in REPLACE1.NB *) equal[V,lb[x_,y_]] := subclass[cart[V,y],x] (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,map[x_,y_]] := False (* derived 2005 June 3 in A4.NB *) equal[V,nat[x_]] := False (* added 2002 July 28 based on ADD-NAT.NB *) equal[V,natadd[x_,y_]] := or[not[member[x,omega]],not[member[y,omega]]] (* derived 2006 June 27 in NATEXP-1.NB *) equal[V,natexp[x_,y_]] := or[not[member[x,omega]],not[member[y,omega]]] (* derived 2005 May 17 based on NATMOD.NB *) equal[V,natmod[x_,y_]] := or[not[member[x,omega]],not[member[y,omega]]] (* added 2002 August 21 based on NATMUL.NB *) equal[V,natmul[x_,y_]] := or[not[member[x,omega]],not[member[y,omega]]] (* added 2002 September 15 based on SUBTRACT.NB *) equal[V,natsub[x_,y_]] := or[not[member[x,omega]],not[member[y,omega]],not[subclass[y,x]]] (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,omega] := False (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,OMEGA] := False (* added 1998 August 23 *) equal[V,P[x_]] := equal[V,x] equal[V,pair[x_,y_]] := False (* added 9/17/96 at 9:20 pm *) (* added 2002 January 1 based on PAIR-MEM.NB *) equal[V,PAIR[x_,y_]] := or[not[member[x,V]],not[member[y,V]]] (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,set[x_,y_]] := False (* added 2001 December 3 based on RANK-3.NB *) equal[V,rank[x_]] := not[member[x,REGULAR]] (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,RFX] := False (* added 2001 November 17 based on 1ST-2ND.NB *) equal[V,second[x_]] := not[member[first[x],V]] (* derived 2004 December 26 in SETPART.NB *) equal[V,setpart[x_]] := False (* added 1998 August 23 *) equal[V,set[x_]] := False (* added 2001 December 30 based on DISCOVER.NB *) equal[V,subvar[x_]] := equal[V,fix[x]] (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,succ[x_]] := equal[V,x] (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,SYM] := False (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,TOPS] := False (* derived 2004 October 18 in XVR-V.NB *) equal[V,transvar[x_,y_]] := subclass[composite[Id,x],y] (* added 2001 December 9 based on EQUAL-V.NB *) equal[V,TRV] := False (* derived 2007 May 19 in OLDO-ORD.NB *) equal[V,U[intersection[OMEGA,x_]]] := False (* derived 2006 May 21 in RK-SC.NB *) equal[V,U[ord[x_]]] := False (* derived 2006 May 21 in RK-SC.NB *) equal[V,U[rank[x_]]] := not[member[x,REGULAR]] (* derived 2004 February 20 in REPLACE1.NB *) equal[V,ub[x_,y_]] := subclass[cart[y,V],x] (* derived 2006 January 3 in E.NB *) equal[V,union[cart[x_,y_],set[z_]]] := False (* added 2002 September 7 based on REPLACE.NB *) equal[V,union[x_,complement[y_]]] := subclass[y,x] (* added 2002 September 10 based on IMV-RULE.NB *) equal[V,union[z_,intersection[x_,y_]]] := and[equal[V,union[x,z]],equal[V,union[y,z]]] (* derived 2007 May 20 in U-V-LBUB.NB *) equal[V,union[x_,lb[y_,z_]]] := subclass[cart[complement[x],z],y] (* added 2002 September 8 based on REPLACE.NB *) equal[V,union[x_,P[y_]]] := subclass[U[complement[x]],y] (* derived 2008 January 6 in SUBVAR.NB *) equal[V,union[REGULAR,fix[E]]] := AxReg (* derived 2007 May 20 in U-V-LBUB.NB *) equal[V,union[x_,ub[y_,z_]]] := subclass[cart[z,complement[x]],y] (* added 1999 July 21 *) equal[V,VERTSECT[x_]] := False (* derived 2007 January 6 in IVR-INV.NB *) equal[V,Z] := False (* added 2002 October 15 based on MEMBER.NB *) equal[x_,VERTSECT[complement[composite[complement[inverse[E]],x_]]]] := FUNCTION[x] (* derived 2004 February 28 in IMG-EQ.NB *) equal[VERTSECT[x_],VERTSECT[y_]] := equal[IMAGE[x],IMAGE[y]] (* derived 2004 September 18 in WF-WRAP.NB *) equal[x_,wf[x_]] := WELLFOUNDED[x] (* derived 2007 September 19 in UCH-WF.NB *) equal[WF,Uchains[WF]] := False (* derived 2005 October 16 in WO-WRAP.NB *) equal[x_,wo[x_]] := WELLORDER[x] (* derived 2008 March 4 in WO-SETP.NB *) equal[x_,wo[setpart[x_]]] := and[member[x,V],WELLORDER[x]] (* derived 2007 September 18 in UCH-WO.NB *) equal[WO,Uchains[WO]] := False (* derived 2007 May 2 in WOB.NB *) equal[x_,wob[x_]] := member[x,image[Q,OMEGA]] (* definition of logical equivalence *) equiv[p_,q_] := and[implies[p,q],implies[q,p]] (* derived 2004 March 20 in EQV-WRAP.NB *) EQUIVALENCE[0] := True (* derived 2004 March 20 in EQV-WRAP.NB *) EQUIVALENCE[cart[x_,y_]] := or[equal[0,x],equal[0,y],equal[x,y]] (* derived 2004 September 30 in EQV-THNP.NB *) EQUIVALENCE[composite[eqv[x_],id[y_]]] := subclass[image[eqv[x],y],y] (* derived 2004 May 12 in EQUIV.NB *) EQUIVALENCE[composite[id[y_],eqv[x_],id[y_]]] := True (* derived 2005 October 19 in IN-RS.NB *) EQUIVALENCE[composite[id[x_],inverse[y_],id[z_]]] := EQUIVALENCE[composite[id[z],y,id[x]]] (* derived 2004 December 27 in FUN-TRV.NB *) EQUIVALENCE[composite[inverse[funpart[x_]],eqv[y_],funpart[x_]]] := True (* derived 2004 August 27 in TRV-COND.NB *) EQUIVALENCE[composite[inverse[funpart[x_]],funpart[x_]]] := True (* derived 2004 December 3 in TRVASSOC.NB *) EQUIVALENCE[cross[eqv[x_],eqv[y_]]] := True (* derived 2008 November 26 in SEMIGP.NB *) EQUIVALENCE[domain[binop[x_]]] := True (* derived 2008 November 26 in QUASIGP.NB *) EQUIVALENCE[domain[quasigp[x_]]] := True (* derived 2008 November 26 in SEMIGP.NB *) EQUIVALENCE[domain[semigp[x_]]] := True (* derived 2006 January 3 in E.NB *) EQUIVALENCE[E] := False (* derived 2004 March 20 in EQV-WRAP.NB *) EQUIVALENCE[EQUIDIFF] := True (* derived 2004 May 11 in EQV-GEN.NB *) EQUIVALENCE[eqv[x_]] := True (* derived 2008 November 7 in HULL-EQV.NB *) EQUIVALENCE[hull[EQV,x_]] := and[member[x,V],subclass[x,cart[V,V]]] (* derived 2004 March 20 in EQV-WRAP.NB *) EQUIVALENCE[Id] := True (* derived 2004 March 20 in EQV-WRAP.NB *) EQUIVALENCE[id[x_]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) EQUIVALENCE[inverse[x_]] := EQUIVALENCE[composite[Id,x]] (* derived 2004 March 20 in EQV-WRAP.NB *) EQUIVALENCE[Q] := True (* derived 2006 January 3 in S.NB *) EQUIVALENCE[S] := False (* derived 2004 March 20 in EQV-WRAP.NB *) EQUIVALENCE[set[x_]] := or[and[equal[first[x],second[x]],member[first[x],V]],not[member[x,V]]] (* derived 2006 October 20 in SETPART.NB *) EQUIVALENCE[setpart[x_]] := or[EQUIVALENCE[x],not[member[x,V]]] (* derived 2004 September 30 in EQV-THNP.NB *) EQUIVALENCE[thinpart[eqv[x_]]] := True (* derived 2007 July 17 in U-EQV.NB *) EQUIVALENCE[trv[union[eqv[x_],eqv[y_]]]] := True (* derived 2004 June 6 in EQV-TRV.NB *) EQUIVALENCE[union[eqv[x_],id[y_]]] := True (* derived 2004 June 6 in EQV-TRV.NB *) EQUIVALENCE[union[Id,eqv[x_]]] := True (* derived 2008 November 7 in HULL-EQV.NB *) EQUIVALENCE[V] := False (* derived 2004 May 12 in EQV-GEN.NB *) eqv[x_] := x /; EQUIVALENCE[x] (* derived 2004 May 12 in EQV-GEN.NB *) eqv[0] := 0 (* derived 2004 May 12 in EQV-GEN.NB *) eqv[cart[x_,y_]] := cart[intersection[x,y],intersection[x,y]] (* derived 2004 May 12 in EQV-GEN.NB *) eqv[composite[Id,x_]] := eqv[x] (* derived 2004 August 27 in TRV-COND.NB *) eqv[composite[id[x_],y_,id[x_]]] := composite[id[x],y,id[x]] /; EQUIVALENCE[y] (* derived 2004 May 12 in EQV-GEN.NB *) eqv[EQUIDIFF] := EQUIDIFF (* derived 2004 May 12 in EQV-GEN.NB *) eqv[eqv[x_]] := eqv[x] (* derived 2004 May 12 in EQV-GEN.NB *) eqv[Id] := Id (* derived 2004 May 12 in EQV-GEN.NB *) eqv[id[x_]] := id[x] (* derived 2004 May 12 in EQV-GEN.NB *) eqv[inverse[x_]] := eqv[x] (* derived 2004 May 12 in EQV-GEN.NB *) eqv[K] := 0 (* derived 2004 May 12 in EQV-GEN.NB *) eqv[PS] := 0 (* derived 2004 May 12 in EQV-GEN.NB *) eqv[Q] := Q (* derived 2004 May 12 in EQV-GEN.NB *) eqv[S] := Id (* derived 2004 June 6 in EQV-TRV.NB *) eqv[union[Id,x_]] := union[Id,eqv[x]] (* derived 2004 May 12 in EQV-GEN.NB *) eqv[V] := cart[V,V] (* derived 2008 July 13 in TRV-WF.NB *) eqv[wf[x_]] := 0 (* derived 2006 October 24 in EVAL.NB *) eval[x_] := 0 /; not[member[x,V]] (* rules for existential quantifiers *) (* revised rule added 1998 October 8 *) exists[x_,p_] := p /; FreeQ[p,x] (* added 1998 October 8 *) exists[x_,or[p_,q_]] := or[exists[x,p],exists[x,q]] (* notational abbreviation for multiple quantifiers *) exists[x_,y__,p_] := exists[x,exists[y,p]] (* derived 2005 October 17 in TO-FIN.NB *) fin[x_] := x /; member[x,FINITE] (* introduced 2008 January 2 in FINCHR-1.NB *) finchar[x_] := equal[complement[x],image[S,intersection[FINITE,complement[x]]]] (* added 2001 November 13 based on 1ST-2ND.NB *) first[x_] := V /; not[member[x,V]] (* added 2001 November 13 based on REPLACE.NB *) first[0] := V (* added 2001 November 13 based on 1ST-2ND.NB *) first[pair[x_,y_]] := union[x,complement[image[V,set[x]]], complement[image[V,set[y]]]] (* added 2002 January 1 based on PAIR-MEM.NB *) first[PAIR[x_,y_]] := union[x,complement[image[V,set[x]]], complement[image[V,set[y]]]] (* derived 2004 June 21 in X18--.NB *) first[set[0]] := V (* added 2002 November 1 based on IMV.NB *) first[union[x_,complement[image[V,y_]]]] := union[complement[image[V,y]],first[x]] (* added 2002 November 1 based on IMV.NB *) first[union[x_,image[V,y_]]] := union[first[x],image[V,y]] (* Theorem FP-0 in FP1 *) fix[0] := 0 (* Theorem ADJ-FP in ADJ proved 1999 March 11 *) fix[ADJOIN[x_]] := image[S,set[x]] (* Theorem FP-CP in FP1 *) fix[cart[x_,y_]] := intersection[x,y] (* added 2003 July 4 based on COARSER.NB *) fix[COARSER] := V (* derived 2009 January 6 in CAT-UNIT.NB *) fix[cod[cat[x_]]] := ids[cat[x]] (* added 2001 May 18 based on COMMUTE2.NB *) fix[COMMUTE] := V (* Theorem FP-C2 in FP1 *) fix[complement[x_]] := complement[fix[x]] (* added 2001 October 6 based on FIXRULES.NB *) fix[composite[ASSOC,SWAP]] := DUP (* derived 2008 March 13 in LEAST.NB *) fix[composite[BIGCAP,id[P[x_]],E]] := x (* added 2002 May 31 based on A-DIF.NB *) fix[composite[BIGCAP,RC[omega]]] := omega (* derived 2006 March 26 in IM-BC-ON.NB *) fix[composite[BIGCUP,id[OMEGA],complement[E]]] := intersection[OMEGA,fix[BIGCUP]] (* derived 2006 March 26 in IM-BC-ON.NB *) fix[composite[BIGCUP,id[OMEGA],complement[inverse[S]]]] := OMEGA (* derived 2006 March 26 in IM-BC-ON.NB *) fix[composite[BIGCUP,id[OMEGA],E]] := OMEGA (* derived 2006 March 26 in IM-BC-ON.NB *) fix[composite[BIGCUP,id[OMEGA],inverse[S]]] := intersection[OMEGA,fix[BIGCUP]] (* derived 2006 March 26 in IM-BC-ON.NB *) fix[composite[BIGCUP,id[P[OMEGA]],complement[E]]] := intersection[OMEGA,fix[BIGCUP]] (* derived 2006 March 26 in IM-BC-ON.NB *) fix[composite[BIGCUP,id[P[OMEGA]],complement[inverse[S]]]] := OMEGA (* derived 2006 March 26 in IM-BC-ON.NB *) fix[composite[BIGCUP,id[P[OMEGA]],E]] := OMEGA (* Theorem FUL-FP-3 in FUL3 proved 2000 February 18 *) fix[composite[BIGCUP,SUCC]] := FULL (* added 2001 November 1 based on RFX.NB *) fix[composite[CAP,id[x_],inverse[FIRST]]] := fix[composite[inverse[S],x]] (* added 2001 October 6 based on FIXRULES.NB *) fix[composite[CAP,inverse[DIF]]] := set[0] (* added 1999 November 6 based on CART-DI.NB *) fix[composite[CART,Di,inverse[CART]]] := set[0] (* added 2001 December 18 based on DORA.NB *) fix[composite[CART,DORA]] := range[CART] (* derived 2008 February 2 in CUP-DORA.NB *) fix[composite[CART,DUP,CUP,DORA]] := image[CART,Id] (* added 2003 May 3 based on SQUARE.NB *) fix[composite[CART,DUP,IMAGE[FIRST]]] := image[CART,Id] (* added 2001 October 20 based on SQUARE.NB *) fix[composite[CART,DUP,IMAGE[inverse[DUP]]]] := image[CART,Id] (* added 2003 May 3 based on SQUARE.NB *) fix[composite[CART,DUP,IMAGE[SECOND]]] := image[CART,Id] (* derived 2009 January 7 in CAT-DIV.NB *) fix[composite[cat[x_],inverse[FIRST]]] := range[cat[x]] (* derived 2009 January 7 in CAT-DIV.NB *) fix[composite[cat[x_],inverse[SECOND]]] := range[cat[x]] (* derived 2004 February 20 in REPLACE1.NB *) fix[composite[complement[x_],complement[inverse[x_]]]] := complement[ub[x,V]] (* variant of DEF-SBV *) fix[composite[complement[composite[E,x_]],inverse[E]]] := complement[subvar[inverse[x]]] (* added 2003 July 3 based on PTCLOSED.NB *) fix[composite[complement[composite[intersection[composite[E,DIF], composite[inverse[BIGCUP],FIRST]],inverse[SECOND]]], inverse[E],IMAGE[SINGLETON],BIGCUP]] := complement[PointClosed] (* added 2000 February 5 based on REVISIT.NB *) fix[composite[complement[composite[inverse[x_],Di]],x_]] := domain[funpart[x]] (* derived 2006 May 28 in FUNPART.NB *) fix[composite[complement[composite[inverse[x_],Di]],id[y_],x_]] := image[inverse[funpart[x]],y] (* added 1998 August 10 *) fix[composite[complement[E],id[FULL],inverse[PS]]] := complement[OMEGA] (* Theorem IVR-5 in INVAR proved 1998 December 26 *) fix[composite[complement[E],x_,inverse[E]]] := complement[invar[x]] (* derived 2007 June 23 in ALLCLOSED.NB *) fix[composite[complement[E],x_,inverse[S]]] := complement[allclosed[x]] (* derived 2004 May 2 in ZN.NB *) fix[composite[complement[E],ZN]] := V (* derived 2004 February 20 in REPLACE1.NB *) fix[composite[complement[inverse[x_]],complement[x_]]] := complement[lb[x,V]] (* derived 2006 June 10 in SYMDIF.NB *) fix[composite[complement[inverse[E]],FIRST,id[cart[P[x_],P[x_]]],inverse[CUP],E]] := x (* added 2002 November 13 based on NORM-ADD.NB *) fix[composite[complement[inverse[E]],IMAGE[x_],id[y_],E]] := image[GREATEST[complement[x]],intersection[y,P[domain[VERTSECT[x]]]]] (* derived 2006 June 10 in SYMDIF.NB *) fix[composite[complement[inverse[E]],SECOND,id[cart[P[x_],P[x_]]],inverse[CUP],E]] := x (* derived 2005 February 18 in MUL-NORM.NB *) fix[composite[complement[inverse[rotate[composite[complement[S],NATMUL]]]],id[omega], complement[rotate[composite[complement[inverse[S]],NATMUL]]]]] := union[complement[cart[V,omega]],inverse[DIV]] (* added 2001 January 28 based on GENERAL.NB *) fix[composite[complement[inverse[rotate[w_]]],SECOND, intersection[composite[x_,FIRST],composite[inverse[FIRST],y_]]]] := composite[FIRST,intersection[complement[inverse[w]],composite[SWAP, inverse[rotate[composite[SECOND,intersection[composite[x,FIRST], composite[inverse[FIRST],y]],SWAP]]]]]] (* added 2000 September 8 based on FUNPART.NB *) fix[composite[complement[S],FUNPART]] := 0 (* added 1999 October 30 based on IMAGEINT.3 *) fix[composite[complement[S],id[x_],Di]] := complement[image[S,set[U[x]]]] (* derived 2007 November 3 in IMIN-PS.NB *) fix[composite[complement[S],id[x_],S]] := image[inverse[PS],x] (* derived 2006 January 15 in MONO-IVR.NB *) fix[composite[complement[S],x_,inverse[S]]] := complement[image[inverse[POWER],invar[x]]] (* derived 2004 May 2 in ZN.NB *) fix[composite[complement[S],ZN]] := complement[fix[IMAGE[ZN]]] (* derived 2004 December 14 in IDEMPROJ.NB *) fix[composite[COMPOSE,DUP]] := IDEM (* added 2002 January 15 based on EQV-2.NB *) fix[composite[COMPOSE,id[IMAGE[SWAP]],inverse[FIRST]]] := EQV (* added 2002 November 19 based on EQV.NB *) fix[composite[COMPOSE,id[inverse[IMAGE[SWAP]]],inverse[SECOND]]] := EQV (* added 2002 November 19 based on EQV.NB *) fix[composite[COMPOSE,id[INVERSE],inverse[FIRST]]] := EQV (* added 2002 November 19 based on EQV.NB *) fix[composite[COMPOSE,id[INVERSE],inverse[SECOND]]] := EQV (* derived 2004 December 16 in VS-EQV.NB *) fix[composite[COMPOSE,id[INVERSE],inverse[SECOND],VS]] := EQV (* added 2001 January 21 based on NEAT.NB *) fix[composite[COMPOSE,inverse[FIRST]]] := P[cart[V,V]] (* added 2001 January 21 based on NEAT.NB *) fix[composite[COMPOSE,inverse[SECOND]]] := P[cart[V,V]] (* added 2003 June 22 based on HULL-RC.NB *) fix[composite[CORE[x_],IMAGE[id[y_]]]] := intersection[P[y],Uclosure[x]] (* added 2002 December 26 based on REPLACE.NB *) fix[composite[cross[composite[inverse[FIRST],inverse[IMAGE[SWAP]]], inverse[SECOND]],inverse[rotate[E]],rotate[E], cross[SECOND,FIRST]]] := composite[inverse[E],COMPOSE] (* added 2002 December 27 based on SBCOMMUT.NB *) fix[composite[cross[composite[inverse[SECOND],inverse[IMAGE[SWAP]]], inverse[SECOND]],inverse[rotate[E]],rotate[E],cross[FIRST,FIRST]]] := composite[inverse[E],COMPOSE,SWAP] (* added 2002 December 26 based on FIX.NB *) fix[composite[cross[x_,y_],z___,FIRST]] := composite[y,SECOND, intersection[composite[z],composite[inverse[FIRST],inverse[x]]]] (* added 1999 October 10 based on FIXCROSS.1 *) fix[composite[cross[u_,v_],id[w_],cross[x_,y_]]] := composite[intersection[v,inverse[y]],w,intersection[x,inverse[u]]] (* added 2002 December 25 based on FIXCROSS.NB *) fix[composite[cross[inverse[FIRST],inverse[FIRST]],x_,cross[SECOND,SECOND]]] := composite[SWAP,twist[x],SWAP] (* added 2002 December 26 based on REPLACE.NB *) fix[composite[cross[inverse[FIRST],inverse[SECOND]],x_,cross[SECOND,FIRST]]] := composite[twist[x],SWAP] (* added 2003 May 30 based on FIX-ROT.NB *) fix[composite[cross[u_,v_],inverse[rotate[w_]],x_]] := composite[FIRST,intersection[composite[SWAP,inverse[rotate[composite[x,SWAP]]]], composite[cross[v,Id],inverse[w],inverse[u]]]] (* added 2002 December 26 based on REPLACE.NB *) fix[composite[cross[inverse[SECOND],inverse[FIRST]],x_,cross[FIRST,SECOND]]] := composite[SWAP,twist[x]] (* added 2002 December 25 based on FIXCROSS.NB *) fix[composite[cross[inverse[SECOND],inverse[SECOND]],x_,cross[FIRST,FIRST]]] := twist[x] (* added 2002 December 26 based on FIX.NB *) fix[composite[cross[x_,y_],z___,SECOND]] := composite[intersection[ composite[y,SECOND],inverse[composite[z]]],inverse[FIRST],inverse[x]] (* added 2002 June 24 based on FIX.NB *) fix[composite[CUP,id[x_],inverse[FIRST]]] := fix[composite[S,x]] (* added 2001 October 6 based on FIXRULES.NB *) fix[composite[CUP,inverse[DIF]]] := V (* added 1999 October 30 based on IMAGEINT.3 *) fix[composite[Di,id[x_],complement[S]]] := complement[P[A[x]]] (* derived 2008 June 13 in WF-DO-RA.NB *) fix[composite[Di,id[x_],inverse[y_]]] := fix[composite[y,id[x],Di]] (* derived 2006 February 28 in PS.NB *) fix[composite[Di,id[x_],S]] := image[inverse[PS],x] (* derived 2005 February 1 in DIV-WF.NB *) fix[composite[Di,inverse[x_]]] := fix[composite[x,Di]] (* added 2001 October 6 based on FIXRULES.NB *) fix[composite[DIF,inverse[CAP]]] := set[0] (* added 2001 October 6 based on FIXRULES.NB *) fix[composite[DIF,inverse[CUP]]] := V (* added 2002 June 24 based on FIX.NB *) fix[composite[DIF,id[x_],inverse[FIRST]]] := fix[composite[DISJOINT,x]] (* added 2002 June 24 based on FIX.NB *) fix[composite[DIF,id[x_],inverse[SECOND]]] := intersection[fix[x],set[0]] (* derived 2006 March 25 in REG-DESC.NB *) fix[composite[DISJOINT,id[DESCENDING],E]] := 0 (* derived 2006 March 25 in PC-ON-A.NB *) fix[composite[DISJOINT,id[OMEGA],E]] := set[0] (* added 2000 December 9 based on IM-CP-0.NB *) fix[composite[DISJOINT,id[range[POWER]],S]] := set[0] (* derived 2006 March 25 in REG-DESC.NB *) fix[composite[DISJOINT,id[REGULAR],E]] := REGULAR (* added 2001 August 30 based on RC.NB *) fix[composite[DISJOINT,id[x_],S,RC[y_]]] := image[RC[y],image[IMAGE[id[y]],x]] (* added 1999 October 30 based on IMAGEINT.1 *) fix[composite[DISJOINT,IMAGE[id[x_]]]] := P[complement[x]] (* added 2002 January 17 based on ANTISYM2.NB *) fix[composite[DISJOINT,IMAGE[id[Di]],INVERSE]] := ANTISYM (* added 2003 June 6 based on FIX-S.NB *) fix[composite[DISJOINT,IMAGE[inverse[S]]]] := set[0] (* added 2002 January 17 based on ANTISYM1.NB *) fix[composite[DISJOINT,IMAGE[SWAP],IMAGE[id[Di]]]] := image[inverse[IMAGE[id[cart[V,V]]]],ANTISYM] fix[composite[DISJOINT,inverse[E]]] := complement[DESCENDING] (* derived 2006 March 25 in REG-DESC.NB *) fix[composite[DISJOINT,inverse[E],IMAGE[id[REGULAR]]]] := complement[P[complement[REGULAR]]] (* derived 2004 June 25 in X2870.NB *) fix[composite[DISJOINT,inverse[E],IMAGE[SINGLETON]]] := 0 (* derived 2005 February 1 in DIV-WF.NB *) fix[composite[DIV,Di]] := intersection[omega,complement[set[set[0]]]] (* derived 2005 February 22 in PRIMES.NB *) fix[composite[DIV,id[complement[set[set[0]]]],Di]] := intersection[omega,complement[PRIMES],complement[set[set[0]]]] (* derived 2005 November 19 in HERED.NB *) fix[composite[DUP,x_,CAP]] := id[fix[x]] (* derived 2005 November 19 in HERED.NB *) fix[composite[DUP,x_,CUP]] := id[fix[x]] (* added 1999 October 26 based on DIF1.NB *) fix[composite[DUP,DIF]] := cart[set[0],set[0]] (* derived 2005 November 19 in HERED.NB *) fix[composite[DUP,x_,DIF]] := id[image[x,set[0]]] (* revised 2000 September 21 *) fix[composite[DUP,x___,FIRST]] := id[fix[composite[x]]] (* revised 2000 September 21 *) fix[composite[DUP,x___,SECOND]] := id[fix[composite[x]]] (* Definition DEF-SBV in SUBVAR dated 1999 February 13 *) fix[composite[E,complement[composite[x_,inverse[E]]]]] := complement[subvar[x]] (* variant of Theorem IVR-5 in INVAR *) fix[composite[E,x_,complement[inverse[E]]]] := complement[invar[inverse[x]]] (* derived 2004 June 16 in TRANSVAR.NB *) fix[composite[E,x_,complement[inverse[E]],IMAGE[y_]]] := intersection[complement[transvar[inverse[x],y]],P[domain[VERTSECT[y]]]] (* derived 2004 March 30 in CO-ES-ID.NB *) fix[composite[E,complement[inverse[x_]],UB[x_]]] := 0 (* added 2000 December 18 based on UB-UB.NB *) fix[composite[E,complement[x_],LB[x_]]] := 0 (* derived 2007 August 15 in MEMB-SU.NB *) fix[composite[E,complement[x_],LEAST[x_]]] := 0 (* added 2001 July 8 based on ZN-2.NB *) fix[composite[E,cross[Id,inverse[x_]], LB[complement[cross[x_,Id]]]]] := complement[subcommutant[x]] (* added 2001 June 5 based on SUBCOM.NB *) fix[composite[E,cross[Id,x_],UB[complement[cross[x_,Id]]]]] := complement[subcommutant[inverse[x]]] (* added 2001 December 28 based on SUBCOMUT.NB *) fix[composite[E,cross[x_,Id],UB[complement[cross[Id,x_]]]]] := complement[image[inverse[IMAGE[SWAP]],subcommutant[inverse[x]]]] (* Definition of DESCENDING *) fix[composite[E,DISJOINT]] := complement[DESCENDING] (* derived 2005 October 5 in LEASTGLB.NB *) fix[composite[E,GLB[x_]]] := domain[LEAST[x]] (* added 2000 December 14 based on FP-E-LT.NB *) fix[composite[E,GREATEST[x_]]] := domain[GREATEST[x]] (* derived 2008 August 20 in CANT-REG.NB *) fix[composite[E,IMAGE[id[REGULAR]]]] := 0 (* derived 2008 August 20 in CANT-REG.NB *) fix[composite[E,IMAGE[id[RUSSELL]]]] := 0 (* added 2000 December 9 based on CLIQUES.NB *) fix[composite[E,x_,inverse[E]]] := complement[cliques[complement[x]]] (* added 1999 October 30 based on IMAGEINT.1 *) fix[composite[E,inverse[E],IMAGE[id[x_]]]] := complement[P[complement[x]]] (* derived 2008 Jaanuary 17 in CLQ-U-ID.NB *) fix[composite[E,x_,inverse[E],IMAGE[id[y_]]]] := complement[cliques[union[cart[complement[y],V],complement[x]]]] (* derived 2008 June 12 in MIN-A.NB *) fix[composite[E,inverse[PS],BIGCAP]] := 0 (* added 2000 November 3 based on SUBVAR.LOG *) fix[composite[E,inverse[S],BIGCAP]] := fix[composite[E,BIGCAP]] (* added 2000 December 5 based on DO-GT.NB *) fix[composite[E,LB[x_]]] := domain[LEAST[x]] (* derived 2004 June 16 in TRANSVAR.NB *) fix[composite[E,x_,LB[y_]]] := complement[transvar[inverse[x],complement[inverse[y]]]] (* added 2001 July 12 based on RANK-2.NB *) fix[composite[E,LB[x_],IMAGE[y_]]] := intersection[complement[subvar[composite[complement[inverse[x]],y]]], P[domain[VERTSECT[y]]]] (* added 2000 December 14 based on FP-E-LT.NB *) fix[composite[E,LEAST[x_]]] := domain[LEAST[x]] (* derived 2005 October 5 in LEASTGLB.NB *) fix[composite[E,LUB[x_]]] := domain[GREATEST[x]] (* added 2000 December 14 based on FP-E-LT.NB *) fix[composite[E,MAXIMAL[x_]]] := complement[subvar[intersection[Di,inverse[x]]]] (* added 2000 December 14 based on FP-E-LT.NB *) fix[composite[E,MINIMAL[x_]]] := complement[subvar[intersection[Di,x]]] (* added 2000 December 5 based on DO-GT.NB *) fix[composite[E,UB[x_]]] := domain[GREATEST[x]] (* derived 2004 June 16 in TRANSVAR.NB *) fix[composite[E,x_,UB[y_]]] := complement[transvar[inverse[x],complement[y]]] (* added 2001 July 12 based on RANK-2.NB *) fix[composite[E,UB[x_],IMAGE[y_]]] := intersection[complement[subvar[composite[complement[x],y]]],P[domain[VERTSECT[y]]]] (* derived 2006 May 2 in RFX-XFM.NB *) fix[composite[x_,eqv[y_],inverse[x_]]] := image[x,fix[eqv[y]]] (* derived 2005 April 23 in FACT-S.NB *) fix[composite[FACTORIAL,E]] := 0 (* derived 2005 April 23 in FACT-S.NB *) fix[composite[FACTORIAL,S,inverse[FACTORIAL],E]] := 0 (* added 2000 January 16 based on COMBINOP.NB *) fix[composite[FIRST,id[composite[id[x_],DISJOINT]],inverse[CUP],S,id[y_],S]] := image[DIF,cart[y,x]] (* added 2000 January 16 based on COMBINOP.NB *) fix[composite[FIRST,id[composite[id[x_],inverse[S]]],inverse[DIF],inverse[S],id[y_],inverse[S]]] := image[CUP,cart[x,y]] (* added 2000 January 16 based on COMBIN-2.NB *) fix[composite[FIRST,id[x_],inverse[DIF],inverse[S]]] := domain[x] (* added 2000 January 16 based on COMBIN-2.NB *) fix[composite[FIRST,id[x_],inverse[DIF],inverse[S],IMAGE[id[y_]]]] := fix[composite[inverse[x],S,IMAGE[id[complement[y]]]]] (* added 2001 October 6 based on FIXRULES.NB *) fix[composite[FIRST,inverse[COMPOSE]]] := P[cart[V,V]] (* added 1999 November 29 based on FIX-FIX.NB *) fix[composite[x_,fix[composite[y_,FIRST]]]] := fix[composite[FIRST,id[inverse[x]],y]] (* added 1999 November 29 based on FIX-FIX.NB *) fix[composite[fix[composite[x_,FIRST]],FIRST]] := fix[composite[SECOND,id[inverse[FIRST]],x,FIRST]] (* added 1999 November 29 based on FIX-FIX.NB *) fix[composite[fix[composite[x_,FIRST]],SECOND]] := fix[composite[SECOND,id[inverse[SECOND]],x,SECOND]] (* added 1999 November 29 based on FIX-FIX.NB *) fix[composite[fix[composite[y_,SECOND]],x_]] := fix[composite[SECOND,id[inverse[x]],y]] (* derived 2004 June 19 in REPLACE.NB *) fix[composite[funpart[x_],funpart[inverse[x_]]]] := range[oopart[x]] (* derived 2004 June 19 in REPLACE.NB *) fix[composite[funpart[inverse[x_]],funpart[x_]]] := domain[oopart[x]] (* derived 2005 October 5 in LEASTGLB.NB *) fix[composite[GLB[x_],E]] := fix[x] (* derived 2005 October 5 in LEASTGLB.NB *) fix[composite[GLB[x_],id[y_],E]] := image[LEAST[x],y] (* added 2002 October 27 based on GREATEST.NB *) fix[composite[GREATEST[x_],id[y_],E]] := image[GREATEST[x],y] (* derived 2008 January 24 in HART-Q-S.TXT *) fix[composite[HARTOGS,S]] := 0 (* added 2001 April 1 based on HF-CONT.NB *) fix[composite[HC,S]] := FULL (* added 2002 May 7 based on FIX-HULL.NB *) fix[composite[HULL[x_],S]] := fix[HULL[x]] (* Theorem FP-ID2 in FP2 *) fix[composite[Id,x_]] := fix[x] fix[composite[id[x_],y_]] := intersection[x,fix[y]] fix[composite[x_,id[y_]]] := intersection[y,fix[x]] (* added 2003 July 1 based on IN-DUP.NB *) fix[composite[x_,id[y_],ASSOC]] := intersection[fix[composite[x,ASSOC]],rotate[inverse[y]]] (* added 2000 October 5 based on INT-VS.NB *) fix[composite[x_,id[cart[set[u_],set[v_]]],y_]] := intersection[image[x,cart[set[u],set[v]]],image[inverse[y],cart[set[u],set[v]]]] (* derived 2006 May 28 in FUNPART.NB *) fix[composite[x_,id[y_],complement[composite[inverse[x_],Di]]]] := image[funpart[x],y] (* added 2002 January 27 based on FIXCORE1.NB *) fix[composite[x_,id[image[V,y_]],z_]] := intersection[fix[composite[x,z]],image[V,y]] (* derived 2008 January 10 in REPLACE.NB *) fix[composite[IMAGE[BIGCUP],IMAGE[id[FINITE]],POWER]] := intersection[binclosed[CUP],complement[P[complement[set[0]]]]] (* derived 2008 January 6 in ALLCL-BC.NB *) fix[composite[IMAGE[BIGCUP],IMAGE[id[intersection[FINITE,chains[S]]]],POWER]] := complement[P[complement[set[0]]]] (* revised 2003 May23 based on DEF-CLOS.NB *) fix[composite[IMAGE[CAP],CART,DUP]] := binclosed[CAP] (* derived 2004 August 7 in RS-1.NB *) fix[composite[IMAGE[composite[id[x_],inverse[FIRST]]],IMAGE[FIRST]]] := RS[x] (* revised 2003 May23 based on DEF-CLOS.NB *) fix[composite[IMAGE[CUP],CART,DUP]] := binclosed[CUP] (* revised 2003 May 24 based on DIFCLOS.NB *) fix[composite[IMAGE[DIF],CART,DUP]] := binclosed[DIF] (* derived 2006 September 17 in IDS-INCL.NB *) fix[composite[IMAGE[DUP],Di,IMAGE[FIRST]]] := 0 (* added 2002 May 10 based on PC-ID.NB *) fix[composite[IMAGE[DUP],IMAGE[FIRST]]] := P[Id] (* added 2002 May 10 based on PC-ID.NB *) fix[composite[IMAGE[DUP],IMAGE[SECOND]]] := P[Id] (* derived 2007 October 19 in RECT-CUT.NB *) fix[composite[IMAGE[id[x_]],CART,DORA]] := image[IMAGE[id[x]],range[CART]] (* derived 2007 October 21 in CUP-DORA.NB *) fix[composite[IMAGE[id[x_]],CART,DUP,CUP,DORA]] := image[IMAGE[id[x]],image[CART,Id]] (* added 2003 June 22 based on HULL-RC.NB *) fix[composite[IMAGE[id[x_]],CORE[y_]]] := intersection[P[x],Uclosure[y]] (* added 2003 June 22 based on FP-HC.NB *) fix[composite[IMAGE[id[x_]],HC]] := intersection[FULL,P[x]] (* derived 2008 March 9 in INIT-OM.NB *) fix[composite[IMAGE[id[omega]],IMAGE[inverse[S]]]] := succ[omega] (* derived 2008 March 9 in INIT-OM.NB *) fix[composite[IMAGE[id[OMEGA]],IMAGE[inverse[S]]]] := OMEGA (* derived 2008 October 22 in CUT-REG.NB *) fix[composite[IMAGE[id[REGULAR]],E]] := 0 (* derived 2007 June 9 in VS-LT-GT.NB *) fix[composite[IMAGE[id[x_]],VERTSECT[GREATEST[y_]]]] := intersection[cliques[y],P[x]] (* derived 2007 June 9 in VS-LT-GT.NB *) fix[composite[IMAGE[id[x_]],VERTSECT[LEAST[y_]]]] := intersection[cliques[y],P[x]] (* derived 2004 November 6 in IMIM-CAP.NB *) fix[composite[image[inverse[CAP],x_],inverse[S]]] := image[S,x] (* derived 2004 November 6 in IMIM-CAP.NB *) fix[composite[image[inverse[CAP],x_],S]] := x (* added 2002 May 2 based on PAIRSET.NB *) fix[composite[IMAGE[inverse[PAIRSET]],CLIQUES]] := intersection[RFX,SYM] (* derived 2004 August 6 in CONSTANT.NB *) fix[composite[IMAGE[LEFT[x_]],IMAGE[SECOND]]] := P[cart[set[x],V]] (* derived 2004 August 6 in CONSTANT.NB *) fix[composite[IMAGE[RIGHT[x_]],IMAGE[FIRST]]] := P[cart[V,set[x]]] (* derived 2006 July 23 in BINHOM-4.NB *) fix[composite[INTADD,DUP]] := set[id[omega]] fix[composite[intersection[x_,y_],z_]] := fix[composite[x,intersection[z,inverse[y]]]] fix[composite[x_,intersection[inverse[x_],y_]]] := fix[composite[x,y]] (* added 2001 February 3 based on COND1.NB *) fix[composite[x_,intersection[y_,rotate[z_]]]] := composite[FIRST,intersection[composite[SWAP, inverse[rotate[composite[intersection[y,inverse[x]],SWAP]]]],inverse[z]]] (* derived 2006 December 23 in ZTIMES-3.NB *) fix[composite[INTTIMES,eval[composite[id[omega],SUCC]]]] := binhom[INTADD,INTADD] fix[composite[x_,inverse[x_]]] := range[x] fix[composite[inverse[x_],x_]] := domain[x] (* added 2003 June 6 based on ACL-UCL.NB *) fix[composite[inverse[ACLOSURE],E,BIGCAP]] := complement[set[0]] (* added 2001 August 30 based on BC-BA-RC.NB *) fix[composite[inverse[BIGCAP],BIGCUP]] := range[SINGLETON] (* added 2001 August 30 based on BC-BA-RC.NB *) fix[composite[inverse[BIGCUP],BIGCAP]] := range[SINGLETON] (* derived 2007 November 15 in ZORN-LEM.NB *) fix[composite[inverse[BIGCUP],Di,id[x_],inverse[POWER],S]] := image[inverse[BIGCUP],image[inverse[PS],x]] (* added 2002 April 18 based on DESCEND.NB *) fix[composite[inverse[BIGCUP],E]] := fix[composite[inverse[E],BIGCUP]] (* added 2003 June 23 based on T1.NB *) fix[composite[inverse[BIGCUP],E,FIRST,id[Di], inverse[SINGLETON],LB[INVAR]]] := complement[T1] (* added 2003 June 23 based on T2.NB *) fix[composite[inverse[BIGCUP],inverse[DUP],inverse[CART],inverse[IMAGE[id[Di]]], inverse[S],BIGCUP,IMAGE[CART],IMAGE[id[DISJOINT]],CART,DUP]] := T2 (* derived 2006 March 26 in I-BC.NB *) fix[composite[inverse[BIGCUP],inverse[POWER],S]] := V fix[composite[inverse[BIGCUP],S]] := subvar[inverse[E]] (* added 2000 January 5 based on A-SC-0.NB *) fix[composite[inverse[BIGCUP],S,BIGCAP]] := complement[set[0]] (* added 2002 June 7 based on SUBVAR.NB *) fix[composite[inverse[BIGCUP],S,IMAGE[id[x_]]]] := subvar[union[id[complement[x]],inverse[E]]] (* derived 2004 October 29 in A8-SIMP.NB *) fix[composite[inverse[BIGCUP],S,UB[image[inverse[CAP],y_]]]] := domain[UB[image[inverse[CAP],y]]] (* added 2001 March 1 based on CO-INE.NB *) fix[composite[inverse[CAP],DISJOINT,CUP]] := DISJOINT (* added 2001 March 1 based on CO-INE.NB *) fix[composite[inverse[CAP],DISJOINT,DIF]] := cart[V,V] (* added 2001 October 23 based on CAPCLOS.NB *) fix[composite[inverse[CAP],FIRST]] := S (* derived 2007 October 18 in ERASE.NB *) fix[composite[inverse[CAP],inverse[S],FIRST]] := cart[V,V] (* added 2001 March 1 based on CO-INE.NB *) fix[composite[inverse[CAP],S,CUP]] := Id (* added 2001 March 1 based on CO-INE.NB *) fix[composite[inverse[CAP],S,DIF]] := S (* derived 2008 February 16 in CAP.NB *) fix[composite[inverse[CAP],S,FIRST]] := S (* added 2001 October 23 based on CAPCLOS.NB *) fix[composite[inverse[CAP],SECOND]] := inverse[S] (* derived 2005 August 8 in PIGEON.NB *) fix[composite[inverse[CARD],id[omega],CARD,PS]] := 0 (* derived 2005 January 18 in CP-Q.NB *) fix[composite[inverse[CART],Q,CART,SWAP]] := cart[V,V] (* based on 1999 December 10 session FUNPART.1 *) fix[composite[inverse[x_],complement[composite[Di,x_]]]] := domain[funpart[x]] (* derived 2004 June 14 in FU-F-O.NB *) fix[composite[inverse[x_],complement[funpart[x_]]]] := fix[composite[inverse[x],Di,x]] (* added 2001 May 18 based on COMMUTE2.NB *) fix[composite[inverse[COMPOSE],COMPOSE,SWAP]] := COMMUTE (* added 2002 December 27 based on SBCOMMUT.NB *) fix[composite[inverse[COMPOSE],inverse[S],COMPOSE,SWAP]] := SUBCOMMUTE (* added 2002 December 27 based on SBCOMMUT.NB *) fix[composite[inverse[COMPOSE],S,COMPOSE,SWAP]] := inverse[SUBCOMMUTE] (* added 2002 May 4 based on CORE.NB *) fix[composite[inverse[CORE[x_]],S]] := Uclosure[x] (* derived 2008 August 15 in CORE-I.NB *) fix[composite[inverse[CORE[x_]],S,CORE[intersection[x_,y_]]]] := V (* added 1999 December 23 based on ASSOCDUP.NB *) fix[composite[inverse[CUP],CAP]] := Id (* added 2001 March 1 based on CO-INE.NB *) fix[composite[inverse[CUP],DISJOINT,CAP]] := DISJOINT (* added 2001 March 1 based on CO-INE.NB *) fix[composite[inverse[CUP],DISJOINT,DIF]] := S (* added 2003 May 23 based on REPLACE.NB *) fix[composite[inverse[CUP],FIRST]] := inverse[S] (* added 1999 December 23 based on ASSOCDUP.NB *) fix[composite[inverse[CUP],id[x_],CAP]] := id[x] (* added 2001 March 1 based on CO-INE.NB *) fix[composite[inverse[CUP],S,CAP]] := cart[V,V] (* added 2001 March 1 based on CO-INE.NB *) fix[composite[inverse[CUP],S,DIF]] := cart[V,V] (* added 1999 October 7 based on SC5-LOG.1 *) fix[composite[inverse[CUP],S,FIRST]] := cart[V,V] (* added 1999 October 7 based on SC5-LOG.2 *) fix[composite[inverse[CUP],S,SECOND]] := cart[V,V] (* added 2003 May 23 based on REPLACE.NB *) fix[composite[inverse[CUP],SECOND]] := S (* derived 2008 June 13 in WF-DO-RA.NB *) fix[composite[inverse[x_],Di]] := fix[composite[Di,x]] (* added 2000 February 5 based on REVISIT.NB *) fix[composite[inverse[x_],Di,funpart[x_]]] := 0 (* derived 2004 June 19 in REPLACE.NB *) fix[composite[inverse[x_],Di,oopart[x_]]] := 0 (* added 1999 December 23 based on ASSOCDUP.NB *) fix[composite[inverse[DIF],CAP]] := cart[set[0],V] (* added 1999 December 23 based on ASSOCDUP.NB *) fix[composite[inverse[DIF],CUP]] := cart[V,set[0]] (* added 2001 March 1 based on CO-INE.NB *) fix[composite[inverse[DIF],DISJOINT,CAP]] := cart[V,V] (* added 2001 March 1 based on CO-INE.NB *) fix[composite[inverse[DIF],DISJOINT,CUP]] := S (* added 2001 November 1 based on RFX.NB *) fix[composite[inverse[DIF],DISJOINT,FIRST]] := S (* added 2001 March 8 based on IMAGEDIF.NB *) fix[composite[inverse[DIF],DISJOINT,SECOND]] := cart[V,V] (* added 2000 December 23 based on FIX-DIF.NB *) fix[composite[inverse[DIF],E,x_,FIRST]] := composite[complement[E],intersection[x,inverse[E]]] (* added 2000 December 23 based on FIX-DIF.NB *) fix[composite[inverse[DIF],E,x_,SECOND]] := composite[intersection[complement[E],inverse[x]],inverse[E]] (* added 2003 November 28 based on FIN-IND.NB *) fix[composite[inverse[DIF],inverse[E],IMAGE[SINGLETON],FIRST]] := image[inverse[DIF],range[SINGLETON]] (* added 2001 March 5 based on K-SS.NB *) fix[composite[inverse[DIF],inverse[E],IMAGE[SINGLETON],SECOND]] := 0 (* derived 2004 September 25 in WFPART.NB *) fix[composite[inverse[DIF],inverse[IMAGE[SECOND]],inverse[S],BIGCUP,SUBVAR,FIRST]] := composite[S,WFPART] (* added 2000 September 28 based on SUBST.NB *) fix[composite[inverse[DIF],inverse[IMAGE[SINGLETON]],E,FIRST]] := composite[complement[S],id[range[SINGLETON]]] (* added 2001 March 31 based on HF-AGAIN.NB *) fix[composite[inverse[DIF],inverse[IMAGE[TC]],E,inverse[S],FIRST]] := composite[complement[S],HC] (* added 2000 January 16 based on COMBIN-2.NB *) fix[composite[inverse[DIF],inverse[S],x_,SECOND]] := composite[FIRST,id[x],inverse[CUP],S] (* added 2001 March 1 based on CO-INE.NB *) fix[composite[inverse[DIF],S,CAP]] := DISJOINT (* added 2001 March 1 based on CO-INE.NB *) fix[composite[inverse[DIF],S,CUP]] := cart[V,set[0]] (* added 2000 December 23 based on FIX-DIF.NB *) fix[composite[inverse[DIF],S,x_,FIRST]] := composite[DISJOINT,intersection[x,inverse[S]]] (* added 2000 December 23 based on FIX-DIF.NB *) fix[composite[inverse[DIF],S,x_,SECOND]] := composite[intersection[DISJOINT,inverse[x]],inverse[S]] (* derived 2008 February 9 in ASYM-TRV.NB *) fix[composite[INVERSE,DISJOINT]] := fix[composite[DISJOINT,INVERSE]] (* derived 2005 March 29 in DIV-SUB.NB *) fix[composite[inverse[DIV],SUCC,DIV]] := set[set[0]] (* derived 2008 October 28 in FIX-DUP.NB *) fix[composite[x_,inverse[DUP]]] := fix[composite[DUP,inverse[x]]] (* derived 2007 October 7 in FPCO-DUP.NB *) fix[composite[inverse[DUP],inverse[COMPOSE],S]] := fix[composite[inverse[S],COMPOSE,DUP]] (* derived 2007 January 15 in FACT-UB.NB *) fix[composite[inverse[DUP],inverse[NATEXP],S,FACTORIAL]] := omega (* derived 2007 April 29 in ORD-CARD.NB *) fix[composite[inverse[E],CARD]] := 0 (* added 2000 December 14 based on LT-CO-E.NB *) fix[composite[inverse[E],CART,DUP,x_]] := fix[composite[inverse[x],S,PAIRSET]] (* revised 2003 May23 based on DEF-CLOS.NB *) fix[composite[inverse[E],CLIQUES,IMAGE[inverse[CUP]]]] := binclosed[CUP] (* derived 2008 February 28 in MORSE100.NB *) fix[composite[inverse[E],CORE[ord[x_]]]] := 0 (* added 2002 June 2 based on COREHULL.NB *) fix[composite[inverse[E],HC]] := intersection[FULL,fix[E]] (* derived 2007 August 2 in HULL-SG.NB *) fix[composite[inverse[E],HULL[x_],SINGLETON]] := U[x] (* derived 2008 June 3 in CARD-ORD.NB *) fix[composite[inverse[E],IMAGE[CARD]]] := 0 (* added 2000 December 14 based on PAIRSET.NB *) fix[composite[inverse[E],IMAGE[DUP],x___,FIRST]] := id[fix[composite[inverse[E],x]]] (* added 2000 December 14 based on PAIRSET.NB *) fix[composite[inverse[E],IMAGE[DUP],x___,SECOND]] := id[fix[composite[inverse[E],x]]] (* added 2001 December 12 based on CORE-ON.NB *) fix[composite[inverse[E],IMAGE[id[x_]]]] := intersection[x,fix[E]] (* added 2002 June 2 based on COREHULL.NB *) fix[composite[inverse[E],IMAGE[id[x_]],y_]] := intersection[x,fix[composite[inverse[E],y]]] (* derived 2007 November 3 in MAX-U.NB *) fix[composite[inverse[E],IMAGE[inverse[BIGCUP]],IMAGE[inverse[PS]]]] := 0 (* derived 2007 September 3 in IMS-P-U.NB *) fix[composite[inverse[E],IMAGE[inverse[BIGCUP]],IMAGE[inverse[S]]]] := fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]] (* derived 2006 March 26 in I-BC.NB *) fix[composite[inverse[E],IMAGE[inverse[BIGCUP]],UCLOSURE]] := V (* added 2002 October 14 based on WEAKINEQ.NB *) fix[composite[inverse[E],IMAGE[inverse[NATADD]],FIRST]] := 0 (* derived 2006 November 30 in EXP-INEQ.NB *) fix[composite[inverse[E],IMAGE[inverse[NATMUL]],NATEXP,cross[SUCC,Id]]] := cart[omega,omega] (* added 2001 August 30 based on BC-BA-RC.NB *) fix[composite[inverse[E],IMAGE[POWER],UCLOSURE]] := range[POWER] (* added 2001 February 28 based on FIXIMAGE.NB *) fix[composite[inverse[E],IMAGE[SINGLETON],x___]] := image[SINGLETON,fix[composite[inverse[E],x,SINGLETON]]] (* added 2000 January 20 based on SUCC.NB *) fix[composite[inverse[E],IMAGE[SUCC]]] := range[SUCC] (* added 2001 February 27 based on FIX-IMG.NB *) fix[composite[inverse[E],IMAGE[SUCC],IMAGE[id[x_]]]] := image[SUCC,x] (* added 2001 December 22 based on DORA-2.NB *) fix[composite[inverse[E],MAP,DORA]] := FUNS (* derived 2006 July 9 in UNOP-POW.NB *) fix[composite[inverse[E],MAP,DUP,IMAGE[FIRST]]] := UNOPS (* From session SUCC-2.LOG added 1999 February 18 *) fix[composite[inverse[E],SUCC]] := V (* added 2001 January 1 based on TC-1.NB *) fix[composite[inverse[E],TC,SINGLETON]] := V (* derived 2006 March 26 in IM-BC-ON.NB *) fix[composite[inverse[E],UCLOSURE,IMAGE[id[OMEGA]]]] := intersection[OMEGA,fix[BIGCUP]] (* added 1999 October 7 based on CAP-CUP.1 *) fix[composite[inverse[FIRST],CAP]] := S (* added 2002 November 10 based on FIX-SW-X.NB *) fix[composite[inverse[FIRST],x___,cross[y_,z_]]] := composite[inverse[z],SECOND,intersection[composite[inverse[FIRST],y],inverse[composite[x]]]] (* derived 2006 September 12 in DIRECT.NB *) fix[composite[inverse[FIRST],cross[x_,y_],TWIST]] := cross[fix[composite[inverse[FIRST],x]],fix[composite[inverse[FIRST],y]]] (* added 1999 October 7 based on CAP-CUP.1 *) fix[composite[inverse[FIRST],CUP]] := inverse[S] (* added 2003 June 30 based on NEUTRAL.NB *) fix[composite[inverse[FIRST],Di,CAP]] := composite[Id,complement[S]] (* derived 2006 September 12 in DIRECT.NB *) fix[composite[inverse[FIRST],Di,cross[x_,y_],TWIST]] := union[cross[domain[x],fix[composite[inverse[FIRST],Di,y]]], cross[fix[composite[inverse[FIRST],Di,x]],domain[y]]] (* added 2003 June 30 based on NEUTRAL.NB *) fix[composite[inverse[FIRST],Di,CUP]] := composite[Id,complement[inverse[S]]] (* added 2003 June 30 based on NEUTRAL.NB *) fix[composite[inverse[FIRST],Di,DIF]] := composite[E,inverse[E]] (* derived 2006 September 8 in NEUTRAL.NB *) fix[composite[inverse[FIRST],Di,INTADD]] := cart[Z,intersection[Z,complement[set[id[omega]]]]] (* added 2003 June 30 based on NEUTRAL.NB *) fix[composite[inverse[FIRST],Di,NATADD]] := cart[omega,intersection[omega,complement[set[0]]]] (* added 2003 June 30 based on NATMUL.NB *) fix[composite[inverse[FIRST],Di,NATMUL]] := cart[intersection[omega,complement[set[0]]],intersection[omega,complement[set[set[0]]]]] (* derived 2006 September 8 in NEUTRAL.NB *) fix[composite[inverse[FIRST],Di,SWAP,RIF]] := composite[id[Di],inverse[SECOND],FIRST] (* added 2003 June 30 based on NEUTRAL.NB *) fix[composite[inverse[FIRST],Di,SYMDIF]] := cart[V,complement[set[0]]] (* added 1999 October 26 based on DIF1.NB *) fix[composite[inverse[FIRST],DIF]] := DISJOINT (* added 2000 October 2 based on FIX-1.LOG *) fix[composite[inverse[FIRST],DISJOINT,CAP]] := DISJOINT (* added 1999 October 28 based on MOREDIF2.NB *) fix[composite[inverse[FIRST],DISJOINT,DIF]] := S (* added 2001 January 28 based on FP-RO3.MB *) fix[composite[inverse[FIRST],FIRST,intersection[x_, composite[inverse[SECOND],SECOND]]]] := composite[Id,fix[x]] (* added 2002 November 22 based on CHAL.NB *) fix[composite[inverse[FIRST],x___,FIRST, intersection[y_,composite[inverse[SECOND],z___,SECOND]]]] := fix[composite[inverse[y],cross[inverse[composite[x]],composite[z]]]] (* added 2000 December 3 based on ABSORB.NB *) fix[composite[inverse[FIRST],GREATEST[x_],PAIRSET]] := composite[inverse[x],id[fix[x]]] (* derived 2006 July 29 in Z-ADD-EQ.NB *) fix[composite[inverse[FIRST],INTADD]] := cart[Z,set[id[omega]]] fix[composite[inverse[FIRST],x_,intersection[composite[y_,FIRST],z_]]] := fix[composite[inverse[FIRST],intersection[x,inverse[y]],z]] (* added 2002 December 26 based on FIX.NB *) fix[composite[inverse[FIRST],u_,intersection[composite[v_,intersection[composite[w_,FIRST], composite[x_,SECOND]]],composite[y_,SECOND]]]] := composite[intersection[composite[inverse[x],SECOND],composite[inverse[y],FIRST]],id[inverse[v]], intersection[composite[inverse[FIRST],inverse[u]],composite[inverse[SECOND],w]]] (* derived 2008 November 29 in INT-WRAP.NB *) fix[composite[inverse[FIRST],INTMUL]] := union[cart[Z,set[composite[id[omega],SUCC]]],cart[set[id[omega]],Z]] (* added 2001 March 5 based on K-SS.NB *) fix[composite[inverse[FIRST],inverse[IMAGE[SINGLETON]],E,DIF]] := image[inverse[DIF],range[SINGLETON]] (* added 1999 October 28 based on MOREDIF2.NB *) fix[composite[inverse[FIRST],inverse[S],CUP]]:=cart[V,V] (* added 2002 October 12 based on O-14.NB *) fix[composite[inverse[FIRST],inverse[S],NATADD]] := cart[omega,omega] (* derived 2008 October 24 in JOIN-FP.NB *) fix[composite[inverse[FIRST],JOIN]] := cart[LISTS,set[0]] (* added 2000 December 3 based on ABSORB.NB *) fix[composite[inverse[FIRST],LEAST[x_],PAIRSET]] := composite[x,id[fix[x]]] (* added 2002 June 19 based on ROT-DUP.NB *) fix[composite[inverse[FIRST],NATADD]] := cart[omega,set[0]] (* derived 2005 June 24 in MOD-FIX.NB *) fix[composite[inverse[FIRST],NATMOD]] := union[cart[omega,set[0]],composite[id[omega],E]] (* derived 2006 September 8 in FIX-1-2.NB *) fix[composite[inverse[FIRST],NATMUL]] := union[cart[omega,set[set[0]]],cart[set[0],omega]] (* added 2002 October 25 based on EQ-0-FIX.NB *) fix[composite[inverse[FIRST],RIF]] := id[Id] (* added 1999 October 7 based on SC5-LOG.3 *) fix[composite[inverse[FIRST],S,CAP]] := cart[V,V] (* added 2000 October 2 based on FIX-1.LOG *) fix[composite[inverse[FIRST],S,CUP]] := inverse[S] (* added 2000 October 2 based on FIX-1.LOG *) fix[composite[inverse[FIRST],S,DIF]] := cart[V,V] (* added 2002 October 12 based on O-17.NB *) fix[composite[inverse[FIRST],S,NATADD]] := cart[omega,set[0]] (* derived 2005 May 21 in MOD-SU.NB *) fix[composite[inverse[FIRST],S,NATMOD]] := cart[omega,omega] (* added 1999 December 24 based on SYMDIF-1.NB *) fix[composite[inverse[FIRST],S,SYMDIF]] := inverse[S] (* Theorem X-FP-CO2 in X3 proved 2000 September 3 *) fix[composite[inverse[FIRST],x___,SECOND]] := inverse[composite[x]] fix[composite[inverse[FIRST],x_,SWAP]] := inverse[fix[composite[inverse[SECOND],x]]] (* derived 2006 September 8 in FIX-1-2.NB *) fix[composite[inverse[FIRST],SYMDIF]] := cart[V,set[0]] (* added 2001 October 11 based on VARIOUS.NB *) fix[composite[inverse[fix[composite[x_,FIRST]]],y_]] := fix[composite[FIRST,id[y],x]] (* added 2000 January 16 based on COMBIN-2.NB *) fix[composite[x_,inverse[fix[composite[y_,SECOND]]]]] := fix[composite[SECOND,id[x],y]] (* added 2000 February 5 based on REVISIT.NB *) fix[composite[inverse[x_],funpart[x_]]] := domain[funpart[x]] (* added 2000 February 5 based on REVISIT.NB *) fix[composite[inverse[funpart[x_]],x_]] := domain[funpart[x]] (* added 2000 February 5 based on REVISIT.NB *) fix[composite[inverse[funpart[x_]],Di,x_]] := 0 fix[composite[inverse[FUNPART],inverse[IMAGE[FIRST]],S,IMAGE[FIRST]]] := image[inverse[IMAGE[id[cart[V,V]]]],FUNS] (* derived 2005 November 4 in FIN-FUNP.NB *) fix[composite[inverse[FUNPART],S]] := FUNS (* derived 2004 March 6 in GT-C.NB *) fix[composite[inverse[GREATEST[x_]],GREATEST[complement[x_]]]] := 0 (* added 2002 June 7 based on LEAST.NB *) fix[composite[inverse[GREATEST[x_]],inverse[E],IMAGE[id[y_]]]] := image[inverse[GREATEST[x]],y] (* derived 2004 March 6 in GT-C.NB *) fix[composite[inverse[GREATEST[x_]],UB[complement[x_]]]] := 0 (* derived 2008 February 5 in TOT-RELN.NB *) fix[composite[inverse[HULL[invar[SWAP]]],CART,DUP,CUP,DORA]] := fix[composite[inverse[HULL[SYM]],CART,DUP,CUP,DORA]] (* derived 2007 October 30 in RFX-CPTV.NB *) fix[composite[inverse[HULL[invar[SWAP]]],CART,DUP,IMAGE[inverse[DUP]]]] := fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]] (* derived 2008 February 5 in TOT-RELN.NB *) fix[composite[inverse[HULL[invar[SWAP]]],inverse[S],CART,DUP,CUP,DORA]] := P[cart[V,V]] (* derived 2007 September 15 in HULIVRSW.NB *) fix[composite[inverse[HULL[invar[SWAP]]],inverse[S],CART,DUP,IMAGE[inverse[DUP]]]] := RFX (* derived 2008 February 5 in TOT-RELN.NB *) fix[composite[inverse[HULL[invar[SWAP]]],S,CART,DUP,CUP,DORA]] := image[inverse[IMAGE[id[cart[V,V]]]],fix[composite[inverse[HULL[SYM]],CART,DUP,CUP,DORA]]] (* derived 2007 October 30 in RFX-CPTV.NB *) fix[composite[inverse[HULL[invar[SWAP]]],S,CART,DUP,IMAGE[inverse[DUP]]]] := image[inverse[CHAINS],range[POWER]] (* derived 2008 February 5 in TOT-RELN.NB *) fix[composite[inverse[HULL[SYM]],inverse[S],CART,DUP,CUP,DORA]] := P[cart[V,V]] (* derived 2004 February 10 in TO.NB *) fix[composite[inverse[HULL[SYM]],inverse[S],CART,DUP,IMAGE[inverse[DUP]]]] := RFX (* derived 2008 February 5 in TOT-RELN.NB *) fix[composite[inverse[HULL[SYM]],S,CART,DUP,CUP,DORA]] := fix[composite[inverse[HULL[SYM]],CART,DUP,CUP,DORA]] (* derived 2008 June 13 in WF-DO-RA.NB *) fix[composite[inverse[x_],id[y_],Di]] := fix[composite[Di,id[y],x]] (* derived 2004 December 31 in IN-RK.NB *) fix[composite[inverse[IMAGE[cross[Id,inverse[E]]]],inverse[IMAGE[cross[Id,SINGLETON]]], inverse[IMAGE[CART]],E,DISJOINT]] := complement[subcommutant[inverse[E]]] (* added 2001 July 8 based on TAKEAWAY.NB *) fix[composite[inverse[IMAGE[cross[u_,v_]]],inverse[IMAGE[SWAP]],E,UB[complement[cross[x_,y_]]], IMAGE[SWAP]]] := fix[composite[inverse[IMAGE[cross[u,v]]],E,UB[complement[cross[y,x]]]]] (* derived 2008 August 18 in CANTOR.NB *) fix[composite[inverse[image[DORA,FUNS]],S,POWER]] := 0 (* derived 2004 June 16 in TRANSVAR.NB *) fix[composite[inverse[IMAGE[x_]],E,LB[y_]]] := intersection[complement[transvar[x,complement[inverse[y]]]],P[domain[VERTSECT[x]]]] (* derived 2004 June 16 in TRANSVAR.NB *) fix[composite[inverse[IMAGE[x_]],E,UB[y_]]] := intersection[complement[transvar[x,complement[y]]],P[domain[VERTSECT[x]]]] (* added 2002 May 18 based on FUNPART.NB *) fix[composite[inverse[IMAGE[FIRST]],IMAGE[FIRST],FUNPART]] := image[inverse[IMAGE[id[cart[V,V]]]],FUNS] (* derived 2005 January 16 in BIPART.NB *) fix[composite[inverse[IMAGE[FIRST]],u_,FIRST,id[v_], intersection[w_,composite[inverse[SECOND],x_,IMAGE[SECOND]]]]] := fix[composite[inverse[w],id[v],cross[inverse[u],x],DORA]] (* added 2001 October 28 based on EQV.NB *) fix[composite[inverse[IMAGE[FIRST]],IMAGE[inverse[DUP]]]] := invar[composite[DUP,FIRST]] (* added 2001 December 18 based on DORA.NB *) fix[composite[inverse[IMAGE[FIRST]],x_,IMAGE[SECOND]]] := image[inverse[DORA],inverse[x]] (* added 2002 May 18 based on FUNPART.NB *) fix[composite[inverse[IMAGE[FIRST]],inverse[S],IMAGE[FIRST],FUNPART]] := image[inverse[IMAGE[id[cart[V,V]]]],FUNS] (* added 2002 December 23 based on REPLACE.NB *) fix[composite[inverse[IMAGE[id[cart[x_,x_]]]],inverse[S],CART,DUP, IMAGE[inverse[DUP]]]] := image[inverse[IMAGE[id[cart[x,x]]]],RFX] (* derived 2007 October 8 in UCL-DORA.NB *) fix[composite[inverse[IMAGE[id[cart[V,V]]]],x_,COMPOSE,DUP]] := image[inverse[IMAGE[id[cart[V,V]]]],fix[composite[x,COMPOSE,DUP]]] (* added 2002 January 17 based on ANTISYM2.NB *) fix[composite[inverse[IMAGE[id[cart[V,V]]]],x_,IMAGE[id[Di]]]] := image[inverse[IMAGE[id[cart[V,V]]]],fix[composite[x,IMAGE[id[Di]]]]] (* added 2002 January 17 based on CLIQSWAP.NB *) fix[composite[inverse[IMAGE[id[cart[V,V]]]],x_,IMAGE[SWAP]]] := image[inverse[IMAGE[id[cart[V,V]]]],fix[composite[x,IMAGE[SWAP]]]] (* added 2001 December 6 based on SYM.NB *) fix[composite[inverse[IMAGE[id[cart[V,V]]]],inverse[S],INVERSE]] := SYM (* added 2002 June 7 based on LEAST.NB *) fix[composite[inverse[IMAGE[id[x_]]],E,GREATEST[y_]]] := image[inverse[GREATEST[y]],x] (* added 2002 June 7 based on LEAST.NB *) fix[composite[inverse[IMAGE[id[x_]]],E,LB[y_]]] := image[inverse[LEAST[y]],x] (* added 2002 June 7 based on LEAST.NB *) fix[composite[inverse[IMAGE[id[x_]]],E,LEAST[y_]]] := image[inverse[LEAST[y]],x] (* added 2001 November 27 based on FUNPART2.NB *) fix[composite[inverse[IMAGE[id[x_]]],E,UB[y_]]] := image[inverse[GREATEST[y]],x] (* added 2002 June 7 based on SUBVAR.NB *) fix[composite[inverse[IMAGE[id[x_]]],inverse[POWER],S]] := intersection[FULL,P[P[x]]] (* added 2002 June 7 based on SUBVAR.NB *) fix[composite[inverse[IMAGE[id[x_]]],inverse[S],BIGCUP]] := subvar[union[id[complement[x]],inverse[E]]] (* added 2002 June 7 based on SUBVAR.NB *) fix[composite[inverse[IMAGE[id[x_]]],inverse[S],IMAGE[y_]]] := intersection[P[domain[VERTSECT[y]]],subvar[union[y,id[complement[x]]]]] fix[composite[inverse[IMAGE[id[x_]]],S]] := P[x] (* added 2002 June 7 based on SUBVAR.NB *) fix[composite[inverse[IMAGE[id[x_]]],S,IMAGE[y_]]] := intersection[invar[y],P[complement[image[inverse[y],complement[x]]]]] (* derived 2006 September 26 in FP-IMG.NB *) fix[composite[inverse[IMAGE[w_]],x_,intersection[y_,composite[z_,IMAGE[w_]]]]] := fix[composite[inverse[y],intersection[z,inverse[x]],IMAGE[w]]] (* derived 2004 June 17 in X21--.NB *) fix[composite[inverse[IMAGE[inverse[BIGCUP]]],E]] := fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]] (* added 2002 January 22 based on FIXRULES.NB *) fix[composite[inverse[IMAGE[inverse[BIGCUP]]],S,POWER]] := fix[UCLOSURE] (* revised 2003 May23 based on DEF-CLOS.NB *) fix[composite[inverse[IMAGE[inverse[CUP]]],S,CART,DUP]] := binclosed[CUP] (* derived 2006 June 15 in XVR.NB *) fix[composite[inverse[IMAGE[inverse[DUP]]],IMAGE[FIRST]]] := invar[composite[DUP,FIRST]] (* derived 2006 June 15 in XVR.NB *) fix[composite[inverse[IMAGE[inverse[DUP]]],IMAGE[SECOND]]] := invar[composite[DUP,SECOND]] (* derived 2007 October 30 in CHN-S.NB *) fix[composite[inverse[IMAGE[inverse[DUP]]],inverse[E],CHAINS]] := image[inverse[CHAINS],range[POWER]] (* derived 2007 October 18 in BINCL.NB *) fix[composite[inverse[IMAGE[inverse[DUP]]],inverse[E],CLIQUES]] := image[inverse[CLIQUES],range[POWER]] (* derived 2007 October 30 in PROJ-SBV.NB *) fix[composite[inverse[IMAGE[inverse[DUP]]],inverse[POWER],S,SUBVAR]] := fix[composite[inverse[SUBVAR],POWER,IMAGE[inverse[DUP]]]] (* derived 2004 December 31 in IN-RK.NB *) fix[composite[inverse[IMAGE[inverse[RANK]]],E]] := 0 (* derived 2004 October 14 in REFINE.NB *) fix[composite[inverse[IMAGE[inverse[S]]],COARSER]] := V (* added 2002 June 2 based on HER-HULL.NB *) fix[composite[inverse[IMAGE[inverse[S]]],HULL[fix[IMAGE[inverse[S]]]]]] := V (* derived 2004 June 16 in TRANSVAR.NB *) fix[composite[inverse[IMAGE[x_]],inverse[S],IMAGE[y_]]] := intersection[P[domain[VERTSECT[y]]],transvar[x,y]] (* added 2002 June 7 based on SUBVAR.NB *) fix[composite[inverse[IMAGE[x_]],inverse[S],IMAGE[id[y_]]]] := intersection[invar[x],P[complement[image[inverse[x],complement[y]]]]] (* added 2002 June 7 based on SUBVAR.NB *) fix[composite[inverse[IMAGE[x_]],inverse[S],IMAGE[id[y_]]]] := intersection[invar[x],P[complement[image[inverse[x],complement[y]]]]] (* derived 2007 November 4 in FP-IM-PS.NB *) fix[composite[inverse[IMAGE[inverse[S]]],IMAGE[inverse[PS]]]] := subvar[inverse[PS]] (* derived 2007 September 3 in IMS-P-U.NB *) fix[composite[inverse[IMAGE[inverse[S]]],POWER,BIGCUP]] := fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]] (* derived 2005 November 12 in UCL-INS.NB *) fix[composite[inverse[IMAGE[inverse[S]]],S,POWER,BIGCUP]] := fix[composite[inverse[IMAGE[inverse[S]]],POWER,BIGCUP]] (* derived 2007 November 23 in INDUCTIV.NB *) fix[composite[inverse[IMAGE[inverse[S]]],S,UCLOSURE]] := fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]] (* variant of Theorem SBV-IMG3 in SUBVAR *) fix[composite[inverse[IMAGE[x_]],S]] := intersection[P[domain[VERTSECT[x]]],subvar[x]] (* derived 2004 June 16 in TRANSVAR.NB *) fix[composite[inverse[IMAGE[x_]],S,IMAGE[y_]]] := intersection[P[domain[VERTSECT[x]]],transvar[y,x]] (* added 2002 June 7 based on SUBVAR.NB *) fix[composite[inverse[IMAGE[x_]],S,IMAGE[id[y_]]]] := intersection[P[domain[VERTSECT[x]]],subvar[union[x,id[complement[y]]]]] (* added 2001 December 18 based on DORA.NB *) fix[composite[inverse[IMAGE[SECOND]],x_,IMAGE[FIRST]]] := image[inverse[DORA],x] (* added 2002 February 9 based on IDEM-BIJ.NB *) fix[composite[inverse[IMAGE[SECOND]],IMAGE[inverse[DUP]]]] := invar[composite[DUP,SECOND]] fix[composite[inverse[IMAGE[SINGLETON]],E]] := range[SINGLETON] (* added 2001 February 28 based on FIXIMAGE.NB *) fix[composite[x_,inverse[IMAGE[SINGLETON]],E]] := image[SINGLETON,fix[composite[inverse[E],inverse[x],SINGLETON]]] (* added 1999 October 18 based on CART-LOG.1 *) fix[composite[inverse[IMAGE[SINGLETON]],SINGLETON]] := range[SINGLETON] (* added 2001 October 6 based on FIXRULES.NB *) fix[composite[inverse[IMAGE[SUCC]],E]] := range[SUCC] (* added 2002 April 15 based on ITERATE.NB *) fix[composite[inverse[IMAGE[SWAP]],x_,IMAGE[SWAP],IMAGE[id[cart[y_,z_]]]]] := image[inverse[IMAGE[SWAP]],fix[composite[x,IMAGE[id[cart[z,y]]]]]] (* added 2000 September 12 based on INVAR.NB *) fix[composite[inverse[IMG],x_]] := fix[composite[inverse[x],IMG]] fix[composite[inverse[x_],intersection[x_,y_]]] := fix[composite[inverse[x],y]] (* added 1998 August 9 *) fix[composite[inverse[x_],intersection[inverse[y_],z_]]] := fix[composite[y,intersection[x,z]]] (* added 2003 May 9 based on FPIVRDOM.NB *) fix[composite[inverse[INVAR],IMAGE[FIRST]]] := image[inverse[DORA],inverse[S]] fix[composite[inverse[x_],inverse[y_]]] := fix[composite[y,x]] fix[composite[inverse[x_],y_,inverse[z_]]] := fix[composite[z,inverse[y],x]] (* derived 2006 May 2 in RFX-XFM.NB *) fix[composite[x_,inverse[y_],inverse[x_]]] := fix[composite[x,y,inverse[x]]] (* derived 2006 May 2 in RFX-XFM.NB *) fix[composite[inverse[x_],inverse[y_],x_]] := fix[composite[inverse[x],y,x]] fix[composite[inverse[x_],inverse[y_],y_,x_]] := image[inverse[x],domain[y]] (* added 2003 June 6 based on FIX-S.NB *) fix[composite[x_,inverse[x_],inverse[S]]] := range[x] (* derived 2007 August 21 in CO-K-PS.NB *) fix[composite[inverse[K],PS]] := V (* derived 2007 August 21 in CO-K-PS.NB *) fix[composite[inverse[K],PS,PS]] := 0 (* derived 2007 August 21 in CO-K-PS.NB *) fix[composite[inverse[K],S]] := V (* derived 2005 January 7 in K-SUCC.NB *) fix[composite[inverse[K],SUCC]] := RUSSELL (* derived 2008 August 18 in CL-S.NB *) fix[composite[inverse[LB[x_]],id[domain[x_]], complement[composite[complement[x_],id[domain[x_]],LB[x_]]]]] := domain[GLB[x]] (* added 2003 June 23 based on T1.NB *) fix[composite[inverse[LB[INVAR]],inverse[E],IMAGE[SINGLETON], IMAGE[id[Di]],CART,DUP,BIGCUP]] := complement[T1] (* added 2003 June 23 based on T1.NB *) fix[composite[inverse[LB[INVAR]],SINGLETON,id[Di], inverse[FIRST],inverse[E],BIGCUP]] := complement[T1] (* added 2002 June 7 based on LEAST.NB *) fix[composite[inverse[LB[x_]],inverse[E],IMAGE[id[y_]]]] := image[inverse[LEAST[x]],y] (* derived 2004 March 6 in LT-C.NB *) fix[composite[inverse[LB[x_]],LB[complement[x_]]]] := set[0] (* derived 2004 March 6 in LT-C.NB *) fix[composite[inverse[LB[x_]],LEAST[complement[x_]]]] := 0 (* added 2002 June 7 based on LEAST.NB *) fix[composite[inverse[LEAST[x_]],inverse[E],IMAGE[id[y_]]]] := image[inverse[LEAST[x]],y] (* derived 2004 March 6 in LT-C.NB *) fix[composite[inverse[LEAST[x_]],LB[complement[x_]]]] := 0 (* derived 2004 March 6 in LT-C.NB *) fix[composite[inverse[LEAST[x_]],LEAST[complement[x_]]]] := 0 (* added 1999 August 16 based on session FIX-L-R.LOG *) fix[composite[inverse[LEFT[x_]],y_]] := image[fix[composite[y,SECOND]],set[x]] (* added 1999 August 16 based on session FIX-L-R.LOG *) fix[composite[x_,inverse[LEFT[y_]]]] := cart[set[y],image[fix[composite[x,SECOND]],set[y]]] (* derived 2004 November 26 in XS-CP.NB *) fix[composite[inverse[MAP],XS,CART]] := union[cart[V,complement[set[0]]],cart[set[0],V]] (* derived 2005 May 22 in DIV-ADD.NB *) fix[composite[inverse[NATADD],DIV,FIRST]] := DIV (* derived 2005 May 22 in DIV-ADD.NB *) fix[composite[inverse[NATADD],DIV,SECOND]] := inverse[DIV] (* added 2002 June 21 based on NATSUB.NB *) fix[composite[inverse[NATADD],FIRST]] := cart[omega,set[0]] (* added 2002 June 22 based on ADD-CUP.NB *) fix[composite[inverse[NATADD],S,FIRST]] := cart[omega,omega] (* added 2002 June 22 based on ADD-CUP.NB *) fix[composite[inverse[NATADD],S,SECOND]] := cart[omega,omega] (* added 2002 June 21 based on NATSUB.NB *) fix[composite[inverse[NATADD],SECOND]] := cart[set[0],omega] (* derived 2006 January 24 in EXP-DIV.NB *) fix[composite[inverse[NATEXP],DIV,FIRST]] := union[cart[omega,intersection[omega,complement[set[0]]]],cart[set[set[0]],omega]] (* derived 2005 June 24 in MOD-FIX.NB *) fix[composite[inverse[NATMOD],FIRST]] := union[cart[omega,set[0]],composite[id[omega],E]] (* derived 2008 August 18 in CANTOR.NB *) fix[composite[inverse[POWER],image[DORA,FUNS]]] := 0 (* added 1998 August 9 *) fix[composite[inverse[POWER],S]] := FULL (* derived 2008 February 26 in IVR-INE.NB *) fix[composite[inverse[POWER],S,IMAGE[x_]]] := invar[composite[inverse[E],x]] (* added 2002 May 27 based on ON-DEFN.NB *) fix[composite[inverse[POWER],S,SUCC]] := FULL (* added 2001 March 17 based on H-FULL.NB *) fix[composite[inverse[POWER],S,TC]] := FULL (* derived 2008 November 11 in CANTOR.NB *) fix[composite[inverse[POWER],SMALLER]] := V (* derived 2004 August 10 in RS-3.NB *) fix[composite[inverse[POWER],VERTSECT[RESTRICT]]] := FUNS (* derived 2005 August 17 in PRIMESEQ.NB *) fix[composite[inverse[PRIMESEQ],S,IMAGE[PRIMESEQ]]] := omega (* derived 2007 August 21 in CO-K-PS.NB *) fix[composite[inverse[PS],inverse[PS],K]] := 0 (* derived 2005 January 7 in K-SUCC.NB *) fix[composite[inverse[PS],inverse[PS],SUCC]] := 0 (* derived 2005 January 7 in K-SUCC.NB *) fix[composite[inverse[PS],SUCC]] := RUSSELL (* added 2000 June 2 based on DEDEKIND.NB *) fix[composite[inverse[x_],Q]] := fix[composite[Q,x]] (* derived 2004 August 14 in RANK.NB *) fix[composite[inverse[RANK],S,IMAGE[RANK]]] := REGULAR (* derived 2006 May 2 in RFX-XFM.NB *) fix[composite[inverse[x_],rfx[y_],x_]] := image[inverse[x],fix[y]] (* added 1999 August 16 based on session FIX-L-R.LOG *) fix[composite[inverse[RIGHT[x_]],y_]] := image[inverse[fix[composite[y,FIRST]]],set[x]] (* added 1999 August 16 based on session FIX-L-R.LOG *) fix[composite[x_,inverse[RIGHT[y_]]]] := cart[image[inverse[fix[composite[x,FIRST]]],set[y]],set[y]] (* added 2001 January 30 based on FP-RO1.NB *) fix[composite[inverse[rotate[x_]],y_]] := composite[FIRST,intersection[ composite[SWAP,inverse[rotate[composite[y,SWAP]]]],inverse[x]]] (* added 2001 December 6 based on SYM.NB *) fix[composite[INVERSE,S]] := SYM (* added 2003 June 6 based on FIX-S.NB *) fix[composite[inverse[x_],S,x_]] := domain[x] (* added 2003 June 6 based on FIX-S.NB *) fix[composite[inverse[x_],x_,S]] := domain[x] (* added 2003 June 6 based on FIX-S.NB *) fix[composite[x_,inverse[x_],S]] := range[x] (* added 2001 May 10 based on ACLOSURE.NB *) fix[composite[inverse[S],ACLOSURE]] := V fix[composite[inverse[S],BIGCUP]] := subvar[inverse[E]] (* derived 2008 February 26 in IVR-INE.NB *) fix[composite[inverse[S],BIGCUP,IMAGE[x_]]] := intersection[P[domain[VERTSECT[x]]], subvar[composite[inverse[E],x]]] (* added 2001 December 19 based on INV-DORA.NB *) fix[composite[inverse[S],CART,DORA]] := P[cart[V,V]] (* derived 2008 February 2 in CUP-DORA.NB *) fix[composite[inverse[S],CART,DUP,CUP,DORA]] := P[cart[V,V]] (* added 2003 May 3 based on SQUARE.NB *) fix[composite[inverse[S],CART,DUP,IMAGE[FIRST]]] := intersection[image[inverse[DORA],inverse[S]],P[cart[V,V]]] (* added 2001 October 8 based on RFX.NB *) fix[composite[inverse[S],CART,DUP,IMAGE[inverse[DUP]]]] := RFX (* added 2003 May 3 based on SQUARE.NB *) fix[composite[inverse[S],CART,DUP,IMAGE[SECOND]]] := intersection[image[inverse[DORA],S],P[cart[V,V]]] (* added 2002 May 4 based on CORE.NB *) fix[composite[inverse[S],CORE[x_]]] := Uclosure[x] (* added 2001 November 20 based on FIX-FUNP.NB *) fix[composite[inverse[S],FUNPART]] := FUNS (* added 2001 March 31 based on HF.NB *) fix[composite[inverse[S],HC]] := FULL (* added 2001 April 2 based on HF-X.NB *) fix[composite[inverse[S],HC,E]] := V (* added 2002 May 5 based on HULL.NB *) fix[composite[inverse[S],HULL[x_]]] := image[inverse[S],x] (* derived 2006 February 28 in PS.NB *) fix[composite[inverse[S],id[x_],Di]] := image[inverse[PS],x] (* derived 2004 October 9 in IM-COA.NB *) fix[composite[inverse[S],id[x_],inverse[BIGCUP],BIGCUP]] := image[inverse[COARSER],x] (* Theorem SBV-IMG3 in SUBVAR proved 1999 February 14 *) fix[composite[inverse[S],IMAGE[x_]]] := intersection[P[domain[VERTSECT[x]]],subvar[x]] (* derived 2008 January 6 in ALLCL-BC.NB *) fix[composite[inverse[S],IMAGE[BIGCUP],IMAGE[id[FINITE]],POWER]] := V (* added 2001 October 14 based on CAPCLOS.NB *) fix[composite[inverse[S],IMAGE[CAP],CART,DUP]] := V (* added 2001 October 15 based on CUPCLOS.NB *) fix[composite[inverse[S],IMAGE[CUP],CART,DUP]] := V (* added 2002 June 2 based on COREHULL.NB *) fix[composite[inverse[S],IMAGE[id[x_]],ACLOSURE]] := P[x] (* added 2002 June 2 based on COREHULL.NB *) fix[composite[inverse[S],IMAGE[id[x_]],ADJOIN[y_]]] := intersection[image[V,set[y]],P[x]] (* derived 2008 February 26 in IVR-INE.NB *) fix[composite[inverse[S],IMAGE[id[x_]],BIGCUP]] := intersection[P[x],subvar[inverse[E]]] (* derived 2008 February 26 in IVR-INE.NB *) fix[composite[inverse[S],IMAGE[id[x_]],BIGCUP,IMAGE[id[y_]]]] := intersection[P[x],subvar[composite[inverse[E],id[y]]]] (* derived 2007 October 19 in RECT-CUT.NB *) fix[composite[inverse[S],IMAGE[id[x_]],CART,DORA]] := P[composite[Id,x]] (* added 2002 June 2 based on COREHULL.NB *) fix[composite[inverse[S],IMAGE[id[x_]],CORE[y_]]] := intersection[P[x],Uclosure[y]] (* added 2001 December 12 based on ON.NB *) fix[composite[inverse[S],IMAGE[id[FULL]],POWER]] := H[FULL] (* added 2002 June 2 based on COREHULL.NB *) fix[composite[inverse[S],IMAGE[id[x_]],HC]] := intersection[FULL,P[x]] (* added 2002 June 2 based on COREHULL.NB *) fix[composite[inverse[S],IMAGE[id[x_]],HULL[y_]]] := intersection[image[inverse[S],y],P[x]] (* added 2002 June 2 based on COREHULL.NB *) fix[composite[inverse[S],IMAGE[id[x_]],IMAGE[inverse[S]]]] := P[x] (* added 2002 June 7 based on SUBVAR.NB *) fix[composite[inverse[S],IMAGE[id[x_]],POWER]] := intersection[FULL,P[x]] (* added 2002 June 2 based on COREHULL.NB *) fix[composite[inverse[S],IMAGE[id[x_]],TC]] := P[x] (* added 2002 June 2 based on COREHULL.NB *) fix[composite[inverse[S],IMAGE[id[x_]],UCLOSURE]] := P[x] (* derived 2004 November 6 in IMIM-CAP.NB *) fix[composite[inverse[S],image[inverse[CAP],x_]]] := x (* added 2001 October 30 based on RFX-SYM.NB *) fix[composite[inverse[S],IMAGE[inverse[PAIRSET]],CLIQUES]] := intersection[RFX,SYM] (* added 2003 June 6 based on FIX-S.NB *) fix[composite[inverse[S],inverse[x_],x_]] := domain[x] (* added 2003 June 6 based on FIX-S.NB *) fix[composite[x_,inverse[S],inverse[x_]]] := range[x] (* added 1998 August 9 *) fix[composite[inverse[S],POWER]] := FULL (* added 2001 August 30 based on BC-BA-RC.NB *) fix[composite[inverse[S],POWER,BIGCAP]] := range[SINGLETON] (* added 2000 November 14 bases on GREATEST.NB *) fix[composite[inverse[S],POWER,BIGCUP]] := V (* derived 2004 October 9 in IM-COA.NB *) fix[composite[inverse[S],POWER,BIGCUP,id[x_],COARSER]] := image[inverse[COARSER],x] (* derived 2005 January 30 in X3949.NB *) fix[composite[inverse[S],POWER,HC]] := FULL (* added 2002 June 7 based on SUBVAR.NB *) fix[composite[inverse[S],POWER,IMAGE[id[x_]]]] := intersection[FULL,P[P[x]]] (* derived 2007 December 4 in HER-H.NB *) fix[composite[inverse[S],POWER,IMAGE[inverse[S]]]] := image[inverse[IMAGE[inverse[S]]],FULL] (* added 2002 May 28 based on IND-BC.NB *) fix[composite[inverse[S],POWER,SUCC]] := image[inverse[SUCC],FULL] (* From session SUCC-2.LOG added 1999 February 18 *) fix[composite[inverse[S],SUCC]] := V (* added 2001 January 1 based on TC-1.NB *) fix[composite[inverse[S],TC]] := V (* derived 2007 December 23 in FIX.NB *) fix[composite[inverse[S],TC,SINGLETON]] := V (* added 2001 May 10 based on UCLOS-1.NB *) fix[composite[inverse[S],UCLOSURE]] := V (* derived 2007 May 11 in VS-LEAST.NB *) fix[composite[inverse[S],VERTSECT[GREATEST[x_]]]] := cliques[x] (* derived 2007 May 11 in VS-LEAST.NB *) fix[composite[inverse[S],VERTSECT[LEAST[x_]]]] := cliques[x] (* derived 2004 May 2 in ZN.NB *) fix[composite[inverse[S],VERTSECT[ZN]]] := domain[VERTSECT[ZN]] (* derived 2004 September 25 in LAMB-WF.NB *) fix[composite[inverse[S],WFPART]] := WF (* added 1999 October 7 based on CAP-CUP.1 *) fix[composite[inverse[SECOND],CAP]] := inverse[S] (* added 2002 November 10 based on FIX-SW-X.NB *) fix[composite[inverse[SECOND],x___,cross[y_,z_]]] := composite[intersection[composite[x],composite[inverse[z],SECOND]],inverse[FIRST],y] (* derived 2006 September 12 in DIRECT.NB *) fix[composite[inverse[SECOND],cross[x_,y_],TWIST]] := cross[fix[composite[inverse[SECOND],x]],fix[composite[inverse[SECOND],y]]] (* added 1999 October 7 based on CAP-CUP.1 *) fix[composite[inverse[SECOND],CUP]] := S (* added 2003 June 30 based on NEUTRAL.NB *) fix[composite[inverse[SECOND],Di,CAP]] := composite[Id,complement[inverse[S]]] (* added 2003 June 30 based on NEUTRAL.NB *) fix[composite[inverse[SECOND],Di,CUP]] := composite[Id,complement[S]] (* derived 2006 September 12 in DIRECT.NB *) fix[composite[inverse[SECOND],Di,cross[x_,y_],TWIST]] := union[cross[domain[x],fix[composite[inverse[SECOND],Di,y]]],cross[fix[composite[inverse[SECOND],Di,x]],domain[y]]] (* added 2003 June 30 based on NEUTRAL.NB *) fix[composite[inverse[SECOND],Di,DIF]] := union[cart[V,complement[set[0]]],cart[complement[set[0]],V]] (* derived 2006 September 8 in NEUTRAL.NB *) fix[composite[inverse[SECOND],Di,INTADD]] := cart[intersection[Z,complement[set[id[omega]]]],Z] (* added 2003 June 30 based on NEUTRAL.NB *) fix[composite[inverse[SECOND],Di,NATADD]] := cart[intersection[omega,complement[set[0]]],omega] (* added 2003 June 30 based on NATMUL.NB *) fix[composite[inverse[SECOND],Di,NATMUL]] := cart[intersection[omega,complement[set[set[0]]]],intersection[omega,complement[set[0]]]] (* derived 2006 September 8 in NEUTRAL.NB *) fix[composite[inverse[SECOND],Di,SWAP,RIF]] := composite[inverse[SECOND],FIRST,id[Di]] (* added 2003 June 30 based on NEUTRAL.NB *) fix[composite[inverse[SECOND],Di,SYMDIF]] := cart[complement[set[0]],V] (* added 1999 October 26 based on DIF1.NB *) fix[composite[inverse[SECOND],DIF]] := cart[set[0],set[0]] (* added 2000 October 2 based on FIX-1.LOG *) fix[composite[inverse[SECOND],DISJOINT,CAP]] := DISJOINT (* added 2000 October 2 based on FIX-1.LOG *) fix[composite[inverse[SECOND],DISJOINT,CUP]] := cart[V,set[0]] (* added 1999 October 28 based on MOREDIF2.NB *) fix[composite[inverse[SECOND],DISJOINT,DIF]] := cart[V,V] (* added 2002 April 6 based on SUBST.NB *) fix[composite[inverse[SECOND],DISJOINT,IMG]] := composite[inverse[POWER],DISJOINT,IMAGE[PAIRSET]] (* added 2001 February 6 based on ROT-2.NB *) fix[composite[inverse[SECOND],DISJOINT,intersection[composite[S,DIF,cross[SECOND,Id]], composite[inverse[E],CAP,cross[Id,POWER],FIRST]]]] := rotate[composite[E,DIF]] fix[composite[inverse[SECOND],FIRST]] := Id (* Theorem X-FP-CO1 in X3 proved 2000 September 3 *) fix[composite[inverse[SECOND],x_,FIRST]] := composite[Id,x] (* added 2000 December 3 based on ABSORB.NB *) fix[composite[inverse[SECOND],GREATEST[x_],PAIRSET]] := composite[id[fix[x]],x] (* derived 2006 July 29 in Z-ADD-EQ.NB *) fix[composite[inverse[SECOND],INTADD]] := cart[set[id[omega]],Z] (* added 2001 February 6 based on ROT-2.NB *) fix[composite[inverse[SECOND],intersection[composite[inverse[FIRST],x_], composite[inverse[SECOND],DISJOINT]],intersection[composite[inverse[S],FIRST], composite[S,DIF,cross[Id,SECOND]]]]] := inverse[rotate[composite[x,DIF,SWAP]]] fix[composite[inverse[SECOND],x_,intersection[composite[y_,SECOND],z_]]] := fix[composite[inverse[SECOND],intersection[x,inverse[y]],z]] (* added 2001 March 5 based on K-SS.NB *) fix[composite[inverse[SECOND],inverse[IMAGE[SINGLETON]],E,DIF]] := 0 (* added 1999 October 28 based on MOREDIF2.NB *) fix[composite[inverse[SECOND],inverse[S],CUP]] := cart[V,V] (* added 2000 September 21 *) fix[composite[inverse[SECOND],inverse[S],IMG]] := composite[inverse[E],SUBVAR] (* added 2001 February 6 based on ROT-2.NB *) fix[composite[inverse[SECOND],inverse[S],intersection[composite[ intersection[composite[S,SECOND],composite[x_,FIRST]],FIRST], composite[inverse[S],CUP,cross[SECOND,Id]]]]] := rotate[composite[inverse[x],CUP]] (* added 2002 October 12 based on O-14.NB *) fix[composite[inverse[SECOND],inverse[S],NATADD]] := cart[omega,omega] (* derived 2008 October 24 in JOIN-FP.NB *) fix[composite[inverse[SECOND],JOIN]] := cart[set[0],LISTS] (* added 2000 December 3 based on ABSORB.NB *) fix[composite[inverse[SECOND],LEAST[x_],PAIRSET]] := composite[id[fix[x]],inverse[x]] (* added 2002 June 21 based on NATSUB.NB *) fix[composite[inverse[SECOND],NATADD]] := cart[set[0],omega] (* derived 2006 September 8 in FIX-1-2.NB *) fix[composite[inverse[SECOND],NATMUL]] := union[cart[omega,set[0]],cart[set[set[0]],omega]] (* added 2002 October 25 based on EQ-0-FIX.NB *) fix[composite[inverse[SECOND],RIF]] := id[Id] (* added 1999 October 7 based on SC5-LOG.3 *) fix[composite[inverse[SECOND],S,CAP]] := cart[V,V] (* added 2000 October 2 based on FIX-1.LOG *) fix[composite[inverse[SECOND],S,CUP]] := S (* added 2000 October 2 based on FIX-1.LOG *) fix[composite[inverse[SECOND],S,DIF]] := S (* added 2002 April 10 based on INVAR.NB *) fix[composite[inverse[SECOND],S,IMG]] := INVAR (* added 2003 June 23 based on INVAR.NB *) fix[composite[inverse[SECOND],S,IMG,cross[Id,IMG],ASSOC]] := composite[INVAR,COMPOSE] (* added 2001 February 6 based on CLS6.NB *) fix[composite[inverse[SECOND],S,intersection[composite[S,CAP,cross[SECOND,Id]], composite[inverse[E],CAP,cross[Id,POWER],FIRST]]]] := rotate[composite[E,CAP]] (* added 2002 October 12 based on O-17.NB *) fix[composite[inverse[SECOND],S,NATADD]] := cart[set[0],omega] (* added 2002 December 26 based on REPLACE.NB *) fix[composite[inverse[SECOND],x___,SECOND, intersection[y_,composite[inverse[FIRST],z___,FIRST]]]] := fix[composite[inverse[y],cross[composite[z],inverse[composite[x]]]]] fix[composite[inverse[SECOND],x_,SWAP]] := inverse[fix[composite[inverse[FIRST],x]]] (* derived 2006 September 8 in FIX-1-2.NB *) fix[composite[inverse[SECOND],SYMDIF]] := cart[set[0],V] (* added 1999 August 15 based on Notebook IMAGEDI.NB *) fix[composite[inverse[SINGLETON],Di,IMAGE[SINGLETON]]] := complement[range[SINGLETON]] (* derived 2008 June 13 in DORA-S.NB *) fix[composite[inverse[SUBVAR],E,IMAGE[FIRST]]] := image[inverse[DORA],S] (* derised 2008 August 11 in BC-SBV.NB *) fix[composite[inverse[SUBVAR],inverse[BIGCUP],DISJOINT,IMAGE[FIRST]]] := image[inverse[IMAGE[id[cart[V,V]]]],WF] (* derived 2007 October 30 in PROJ-SBV.NB *) fix[composite[inverse[SUBVAR],inverse[S],POWER,IMAGE[inverse[DUP]]]] := fix[composite[inverse[SUBVAR],POWER,IMAGE[inverse[DUP]]]] (* From session SUCC-2.LOG added 1999 February 18 *) fix[composite[inverse[SUCC],E]] := V (* added 2001 December 12 based on ON.NB *) fix[composite[inverse[SUCC],IMAGE[id[FULL]],POWER]] := OMEGA (* added 2002 June 4 based in ISB5-SUC.NB *) fix[composite[inverse[SUCC],inverse[S],IMAGE[id[x_]],POWER]] := intersection[FULL,x,P[x]] (* added 2002 May 27 based on ON-DEFN.NB *) fix[composite[inverse[SUCC],inverse[S],POWER]] := FULL (* derived 2005 January 7 in K-SUCC.NB *) fix[composite[inverse[SUCC],K]] := RUSSELL (* derived 2005 January 7 in K-SUCC.NB *) fix[composite[inverse[SUCC],PS]] := RUSSELL (* derived 2005 January 7 in K-SUCC.NB *) fix[composite[inverse[SUCC],PS,PS]] := 0 (* From session SUCC-2.LOG added 1999 February 18 *) fix[composite[inverse[SUCC],S]] := V (* added 2002 June 4 based in ISB5-SUC.NB *) fix[composite[inverse[SUCC],S,IMAGE[id[FULL]],POWER]] := OMEGA fix[composite[inverse[x_],SWAP]] := fix[composite[SWAP,x]] (* added 1999 December 23 based on ASSOCDUP.NB *) fix[composite[inverse[SYMDIF],CAP]] := cart[set[0],set[0]] (* added 1999 December 23 based on ASSOCDUP.NB *) fix[composite[inverse[SYMDIF],CUP]] := DISJOINT (* added 1999 December 23 based on ASSOCDUP.NB *) fix[composite[inverse[SYMDIF],DIF]] := inverse[S] (* added 1999 December 23 based on ASSOCDUP.NB *) fix[composite[inverse[SYMDIF],id[x_],CUP]] := intersection[DISJOINT,image[inverse[CUP],x]] (* derived 2007 November 29 in FP-TRV-E.NB *) fix[composite[inverse[TC],E]] := fix[composite[inverse[E],TC]] (* derived 2004 March 6 in GT-C.NB *) fix[composite[inverse[UB[x_]],GREATEST[complement[x_]]]] := 0 (* added 2002 June 7 based on LEAST.NB *) fix[composite[inverse[UB[x_]],inverse[E],IMAGE[id[y_]]]] := image[inverse[GREATEST[x]],y] (* derived 2004 March 6 in GT-C.NB *) fix[composite[inverse[UB[x_]],UB[complement[x_]]]] := set[0] (* derived 2008 August 28 in UCH-UCL.NB *) fix[composite[inverse[UCLOSURE],S,UCHAINS]] := V (* derived 2005 December 30 in UB-THIN.NB *) fix[composite[inverse[VERTSECT[UB[x_]]],inverse[S],id[y_],LB[LB[x_]]]] := image[inverse[VERTSECT[UB[x]]],y] (* derived 2005 December 30 in UB-THIN.NB *) fix[composite[inverse[VERTSECT[UB[x_]]],LB[LB[x_]]]] := domain[VERTSECT[UB[x]]] (* derived 2004 May 2 in ZN.NB *) fix[composite[inverse[VERTSECT[ZN]],inverse[S],POWER]] := fix[IMAGE[ZN]] (* derived 2004 May 2 in ZN.NB *) fix[composite[inverse[VERTSECT[ZN]],POWER]] := fix[IMAGE[ZN]] (* derived 2004 May 2 in ZN.NB *) fix[composite[inverse[VERTSECT[ZN]],S,POWER]] := domain[VERTSECT[ZN]] (* derived 2008 October 23 in PREFIX.NB *) fix[composite[JOIN,inverse[FIRST]]] := LISTS (* derived 2008 October 23 in PREFIX.NB *) fix[composite[JOIN,inverse[SECOND]]] := LISTS (* derived 2007 August 21 in CO-K-PS.NB *) fix[composite[K,inverse[K],PS]] := 0 (* derived 2007 August 21 in CO-K-PS.NB *) fix[composite[K,inverse[PS]]] := complement[set[0]] (* derived 2007 August 14 in K-PS.NB *) fix[composite[K,inverse[PS],inverse[PS]]] := 0 (* derived 2007 August 21 in CO-K-PS.NB *) fix[composite[K,inverse[S]]] := complement[set[0]] (* derived 2007 August 21 in CO-K-PS.NB *) fix[composite[K,inverse[S],K]] := complement[set[0]] (* derived 2007 August 21 in CO-K-PS.NB *) fix[composite[K,K]] := 0 (* derived 2006 January 24 in RALAMHUL.NB *) fix[composite[LAMBHULL,IMAGE[inverse[DUP]]]] := range[LAMBHULL] (* added 2002 October 27 based on GREATEST.NB *) fix[composite[LB[x_],id[y_],E]] := image[LEAST[x],y] (* derived 2007 July 2 in FP-LB.NB *) fix[composite[LB[x_],id[y_],S,VERTSECT[x_]]] := image[inverse[VERTSECT[x]],y] (* added 2002 October 25 based on VS-LB.NB *) fix[composite[LB[x_],VERTSECT[x_]]] := domain[VERTSECT[x]] (* added 2002 October 27 based on GREATEST.NB *) fix[composite[LEAST[x_],id[y_],E]] := image[LEAST[x],y] (* added 1999 August 16 based on session FIX-L-R.LOG *) fix[composite[LEFT[x_],y_]] := cart[set[x],image[fix[composite[inverse[SECOND],y]],set[x]]] (* added 1999 August 16 based on session FIX-L-R.LOG *) fix[composite[x_,LEFT[y_]]] := image[fix[composite[inverse[x],SECOND]],set[y]] (* derived 2005 October 5 in LEASTGLB.NB *) fix[composite[LUB[x_],E]] := fix[x] (* derived 2005 October 5 in LEASTGLB.NB *) fix[composite[LUB[x_],id[y_],E]] := image[GREATEST[x],y] (* added 2002 October 27 based on GREATEST.NB *) fix[composite[MAXIMAL[x_],id[y_],E]] := image[MAXIMAL[x],y] (* added 2002 October 27 based on GREATEST.NB *) fix[composite[MINIMAL[x_],id[y_],E]] := image[MINIMAL[x],y] (* derived 2006 December 9 in FIX-BH.NB *) fix[composite[MIXTIMES,eval[set[0]]]] := binhom[NATADD,INTADD] (* derived 2006 July 23 in BINHOM-4.NB *) fix[composite[NATADD,DUP]] := set[0] (* derived 2006 November 30 in EXPIDEMP.NB *) fix[composite[NATEXP,DUP]] := set[set[0]] (* derived 2006 October 28 in MOD-1ST.NB *) fix[composite[NATMOD,inverse[FIRST]]] := omega (* derived 2006 July 23 in BINHOM-4.NB *) fix[composite[NATMUL,DUP]] := succ[set[0]] (* derived 2006 May 2 in RFX-XFM.NB *) fix[composite[x_,po[y_],inverse[x_]]] := image[x,fix[po[y]]] (* added 2002 May 10 based on P-A.NB *) fix[composite[POWER,BIGCAP]] := set[set[0]] (* Theorem POW-BC-7 in POW4 proved 1998 December 21 *) fix[composite[POWER,BIGCUP]] := range[POWER] (* added 2003 June 29 based on POWER.NB *) fix[composite[POWER,Di,BIGCUP]] := 0 (* derived 2007 December 4 in HER-H.NB *) fix[composite[POWER,IMAGE[inverse[S]]]] := 0 (* Discovered 1998 September 26 *) fix[composite[POWER,inverse[S]]] := intersection[FULL,range[POWER]] (* added 2002 January 21 based on VS-IN-BC.TXT *) fix[composite[POWER,inverse[S],BIGCUP]] := range[POWER] (* derived 2006 January 17 in POW-SG.NB *) fix[composite[POWER,inverse[SINGLETON]]] := set[set[0]] (* derived 2004 August 10 in RS-3.NB *) fix[composite[POWER,inverse[VERTSECT[RESTRICT]]]] := image[POWER,FUNS] (* added 2001 October 6 based on FIXRULES.NB *) fix[composite[POWER,Q]] := 0 (* added 2000 October 1 based on CANTOR-2.NB *) fix[composite[POWER,Q,S]] := 0 (* derived 2007 November 4 in FP-IM-PS.NB *) fix[composite[POWER,TC]] := 0 (* derived 2007 August 21 in CO-K-PS.NB *) fix[composite[PS,Di]] := complement[set[0]] (* added 1998 August 10 *) fix[composite[PS,id[FULL],complement[inverse[E]]]] := complement[OMEGA] (* derived 2005 August 8 in PIGEON.NB *) fix[composite[PS,inverse[CARD],id[omega],CARD]] := 0 (* derived 2007 August 14 in K-PS.NB *) fix[composite[PS,inverse[K],PS]] := 0 (* derived 2007 August 14 in K-PS.NB *) fix[composite[PS,inverse[K],S]] := complement[set[0]] (* based on 1998/DEC/21/SESSION4.LOG *) fix[composite[PS,PS]] := 0 (* derived 2004 June 28 in X1913-14.NB *) fix[composite[PS,PS,inverse[K]]] := 0 (* derived 2008 June 5 in FP-HART.NB *) fix[composite[Q,HARTOGS]] := 0 (* derived 2008 January 24 in HART-Q-S.TXT *) fix[composite[Q,HARTOGS,S]] := 0 (* derived 2008 January 24 in CARD-ON.NB *) fix[composite[Q,id[OMEGA],complement[S]]] := intersection[complement[fix[composite[inverse[S],CARD]]],image[Q,OMEGA]] (* added 2000 June 2 based on DEDEKIND.NB *) fix[composite[Q,inverse[x_]]] := fix[composite[x,Q]] (* derived 2008 August 18 in CANTOR.NB *) fix[composite[Q,POWER]] := 0 (* added 2000 June 2 based on DK-C3.NB *) fix[composite[Q,PS]] := complement[DEDEKIND] (* Theorem Q-SR-FP2 in Q proved 2000 May 12 *) fix[composite[Q,S]] := V (* derived 2008 January 24 in HART-Q-S.TXT *) fix[composite[Q,S,HARTOGS]] := 0 (* added 2000 October 1 based on CANTOR.NB *) fix[composite[Q,S,POWER]] := 0 (* added 2001 July 27 based on RANK.NB *) fix[composite[RANK,E]] := 0 (* derived 2007 December 8 in RANK-ORD.NB *) fix[composite[RANK,IMAGE[id[omega]]]] := succ[omega] (* derived 2007 December 8 in RANK-ORD.NB *) fix[composite[RANK,IMAGE[id[ord[x_]]]]] := succ[ord[x]] (* derived 2006 May 2 in RFX-XFM.NB *) fix[composite[x_,rfx[y_],inverse[x_]]] := image[x,fix[y]] (* derived 2008 October 23 in FPCO-RFX.NB *) fix[composite[rfx[x_],rfx[y_]]] := intersection[fix[x],fix[y]] (* added 2002 June 24 based on FIX.NB *) fix[composite[RIF,id[x_],inverse[FIRST]]] := id[fix[fix[x]]] (* added 2002 June 24 based on FIX.NB *) fix[composite[RIF,id[x_],inverse[SECOND]]] := id[fix[fix[x]]] (* added 1999 August 16 based on session FIX-L-R.LOG *) fix[composite[x_,RIGHT[y_]]] := image[inverse[fix[composite[inverse[x],FIRST]]],set[y]] (* added 1999 August 16 based on session FIX-L-R.LOG *) fix[composite[RIGHT[x_],y_]] := cart[image[inverse[fix[composite[inverse[FIRST],y]]],set[x]],set[x]] (* added 2001 January 30 based on FP-RO1.NB *) fix[composite[x_,rotate[y_]]] := composite[FIRST,intersection[ composite[SWAP,inverse[rotate[composite[inverse[x],SWAP]]]], inverse[y]]] (* derived 2007 February 10 in EX-8.NB *) fix[composite[rotate[composite[NATEXP,SWAP]],cross[Id,Di], inverse[rotate[composite[NATEXP,SWAP]]]]] := succ[set[0]] (* added 2003 May 30 based on FIX-ROT.NB *) fix[composite[w_,rotate[x_],cross[y_,z_]]] := composite[FIRST,intersection[ composite[SWAP,inverse[rotate[composite[inverse[w],SWAP]]]], composite[cross[inverse[z],Id],inverse[x],y]]] (* added 2002 October 29 based on RO-I.NB *) fix[composite[rotate[x_],id[y_],inverse[rotate[z_]]]] := range[fix[composite[inverse[FIRST],y,intersection[x,z]]]] (* added 2001 January 28 based on FP-RO3.MB *) fix[composite[rotate[x_],SWAP]] := composite[FIRST,id[inverse[SECOND]], intersection[composite[inverse[SECOND],inverse[FIRST]], inverse[rotate[composite[x,SWAP]]]]] (* added 2001 May 10 based on UCLOS-4.NB *) fix[composite[S,ACLOSURE]] := fix[ACLOSURE] (* derived 2008 August 11 in BIGCAP.NB *) fix[composite[S,BIGCAP,id[x_],E]] := U[x] (* derived 2007 May 8 in POWER.TXT *) fix[composite[S,CART,DUP,IMAGE[inverse[DUP]]]] := image[inverse[CLIQUES],range[POWER]] (* derived 2007 August 5 in ALLCLOSE.NB *) fix[composite[S,x_,complement[inverse[E]]]] := complement[allclosed[inverse[x]]] (* added 2001 October 9 based on TRV-1.NB *) fix[composite[S,COMPOSE,DUP]] := image[inverse[IMAGE[id[cart[V,V]]]],TRV] (* added 2002 January 27 based on IMAGE.NB *) fix[composite[S,CORE[x_]]] := V (* Theorem in PS-RA-3 added 1998 July 2 *) fix[composite[S,Di]] := complement[set[0]] (* added 2001 November 20 based on FIX-FUNP.NB *) fix[composite[S,FUNPART]] := V (* derived 2008 January 24 in HART-Q-S.TXT *) fix[composite[S,HARTOGS]] := 0 (* added 2001 May 2 based on IMG-PC.NB *) fix[composite[S,HULL[x_]]] := fix[HULL[x]] (* added 1998 August 28; flipped 2000 April 15 *) fix[composite[S,id[x_],Di]] := image[PS,x] (* derived 2004 November 6 in IMIM-CAP.NB *) fix[composite[S,id[x_],fix[composite[inverse[DIF],DISJOINT,id[y_],S,SECOND]]]] := image[image[inverse[CAP],x],y] (* derived 2004 November 6 in IMIM-CAP.NB *) fix[composite[S,id[x_],fix[composite[inverse[SECOND],inverse[S],id[y_],DISJOINT,DIF]]]] := image[image[inverse[CAP],x],y] (* added 1998 February 7 *) fix[composite[S,id[FULL],complement[inverse[E]],SUCC]] := complement[OMEGA] (* derived 2004 November 2 in SELECT.NB *) fix[composite[S,id[FUNS],inverse[IMAGE[FIRST]],IMAGE[FIRST]]] := SELECT (* derived 2004 October 9 in IM-COA.NB *) fix[composite[S,id[x_],inverse[BIGCUP],inverse[POWER],S]] := image[COARSER,x] (* added 1998 September 25: see FIXRULES.LOG *) fix[composite[S,id[x_],S]] := x (* derived 2005 December 22 in UCL-CL.NB *) fix[composite[S,id[Uclosure[x_]],S,CORE[x_]]] := V (* Definition DEF-IVR in INVAR added 1999 January 9 *) fix[composite[S,IMAGE[x_]]] := invar[x] (* derived 2008 February 26 in IVR-INE.NB *) fix[composite[S,IMAGE[x_],BIGCUP]] := invar[composite[x,inverse[E]]] (* derived 2008 February 26 in IVR-INE.NB *) fix[composite[S,IMAGE[x_],BIGCUP,IMAGE[id[y_]]]] := invar[composite[x,inverse[E],id[y]]] (* derived 2008 January 6 in ALLCL-BC.NB *) fix[composite[S,IMAGE[BIGCUP],IMAGE[id[x_]],POWER]] := allclosed[composite[BIGCUP,id[x]]] (* added 2003 May 21 based on BINCLOSE.NB *) fix[composite[S,IMAGE[x_],CART,DUP]] := binclosed[x] (* derived 2006 June 15 in XVR.NB *) fix[composite[S,IMAGE[DUP],IMAGE[FIRST]]] := invar[composite[DUP,FIRST]] (* derived 2006 June 15 in XVR.NB *) fix[composite[S,IMAGE[DUP],IMAGE[FIRST],IMAGE[id[x_]]]] := invar[composite[DUP,FIRST,id[x]]] (* derived 2006 June 15 in XVR.NB *) fix[composite[S,IMAGE[DUP],IMAGE[SECOND]]] := invar[composite[DUP,SECOND]] (* derived 2006 June 15 in XVR.NB *) fix[composite[S,IMAGE[DUP],IMAGE[SECOND],IMAGE[id[x_]]]] := invar[composite[DUP,SECOND,id[x]]] (* derived 2004 November 6 in IMIM-CAP.NB *) fix[composite[S,image[inverse[CAP],x_]]] := image[S,x] (* derived 2005 August 17 in MONOPRSQ.NB *) fix[composite[S,IMAGE[inverse[PRIMESEQ]],PRIMESEQ]] := omega (* added 2002 May 26 based on ON-SUC-1.NB *) fix[composite[S,IMAGE[inverse[SUCC]],id[x_],SUCC]] := intersection[image[inverse[SUCC],x],invar[inverse[SUCC]]] (* derived 2007 June 23 in ALLCLOSED.NB *) fix[composite[S,IMAGE[x_],POWER]] := allclosed[x] (* derived 2004 December 31 in IN-RK.NB *) fix[composite[S,IMAGE[RANK],id[REGULAR],S,IMAGE[inverse[RANK]]]] := V (* added 2003 June 6 based on FIX-S.NB *) fix[composite[S,inverse[x_],x_]] := domain[x] (* added 2003 June 6 based on FIX-S.NB *) fix[composite[S,x_,inverse[x_]]] := range[x] (* added 2003 June 6 based on FIX-S.NB *) fix[composite[x_,S,inverse[x_]]] := range[x] (* added 2001 October 6 based on FIXRULES.NB *) fix[composite[S,inverse[SUCC]]] := range[SUCC] (* added 2001 October 6 based on FIXRULES.NB *) fix[composite[S,inverse[TC]]] := FULL (* added 2001 November 7 based on PAIRSET.NB *) fix[composite[S,PAIRSET,x_,CART,DUP]] := fix[image[inverse[CART],fix[composite[E,x]]]] (* Theorem POW-FP2 in POW3 proved 1999 January 3 *) fix[composite[S,POWER]] := 0 (* added 2002 May 10 based on P-A.NB *) fix[composite[S,POWER,BIGCAP]] := complement[P[complement[set[0]]]] (* Theorem POW-RA13 in POW5 proved 1999 January 21 *) fix[composite[S,POWER,BIGCUP]] := range[POWER] (* added 2000 October 1 based on CANTOR.NB *) fix[composite[S,POWER,Q]] := 0 (* added 2001 March 30 based on IMAGCOMP.NB *) fix[composite[S,RC[x_]]] := set[x] fix[composite[S,SUCC]] := fix[E] (* added 2001 March 15 based on H-1.NB *) fix[composite[S,TC]] := FULL (* derived 2007 June 25 in UCH-HULL.NB *) fix[composite[S,UCHAINS]] := fix[UCHAINS] (* added 2001 May 10 based on UCLOS-4.NB *) fix[composite[S,UCLOSURE]] := fix[UCLOSURE] (* derived 2007 May 11 in VS-LEAST.NB *) fix[composite[S,VERTSECT[GREATEST[x_]]]] := V (* derived 2008 July 9 in C-CO-C-E.NB *) fix[composite[S,VERTSECT[x_],id[y_],LB[x_]]] := image[VERTSECT[x],y] (* derived 2008 July 9 in C-CO-C-E.NB *) fix[composite[S,VERTSECT[inverse[x_]],id[y_],UB[x_]]] := image[VERTSECT[inverse[x]],y] (* derived 2008 July 9 in C-CO-C-E.NB *) fix[composite[S,VERTSECT[inverse[x_]],UB[x_]]] := range[VERTSECT[inverse[x]]] (* derived 2007 May 11 in VS-LEAST.NB *) fix[composite[S,VERTSECT[LEAST[x_]]]] := V (* derived 2004 May 2 in ZN.NB *) fix[composite[S,VERTSECT[ZN]]] := 0 (* added 2000 January 16 based on COMBINOP.NB *) fix[composite[SECOND,id[composite[inverse[S],id[x_]]], inverse[DIF],DISJOINT,id[y_],S]] := image[CAP,cart[x,y]] (* added 2000 January 16 based on COMBINOP.NB *) fix[composite[SECOND,id[composite[inverse[S],id[x_]]],inverse[DIF], inverse[S],id[y_],DISJOINT]] := image[DIF,cart[x,y]] (* added 2000 January 16 based on FIX-DIF.NB *) fix[composite[SECOND,id[x_],inverse[DIF],DISJOINT]] := range[x] (* added 2001 October 6 based on FIXRULES.NB *) fix[composite[SECOND,inverse[COMPOSE]]] := P[cart[V,V]] (* added 2001 October 6 based on FIXRULES.NB *) fix[composite[SECOND,inverse[SYMDIF]]] := V (* added 1999 August 31 based on FP-SG-BA.LOG *) fix[composite[SINGLETON,BIGCAP]] := range[SINGLETON] fix[composite[SINGLETON,BIGCUP]] := range[SINGLETON] (* derived 2007 May 11 in VS-LEAST.NB *) fix[composite[SINGLETON,GREATEST[x_]]] := image[SINGLETON,fix[x]] (* derived 2006 January 17 in POW-SG.NB *) fix[composite[SINGLETON,inverse[POWER]]] := set[set[0]] (* derived 2007 May 11 in VS-LEAST.NB *) fix[composite[SINGLETON,LEAST[x_]]] := image[SINGLETON,fix[x]] (* derived 2006 May 11 in IVR-FUNP.NB *) fix[composite[SINGLETON,UB[x_]]] := image[SINGLETON,fix[x]] (* derived 2008 August 10 in SML-ASYM.NB *) fix[composite[SMALLER,SMALLER]] := 0 (* added 2001 October 6 based on FIXRULES.NB *) fix[composite[SUCC,inverse[S]]] := range[SUCC] (* added 2002 November 10 based on FIX-SW-X.NB *) fix[composite[SWAP,cross[x_,y_]]] := intersection[x,inverse[y]] (* added 2002 December 30 based on FP-TW.NB *) fix[composite[SWAP,cross[inverse[FIRST],inverse[FIRST]],x_, cross[FIRST,FIRST]]] := composite[inverse[FIRST],fix[composite[SWAP,x]],FIRST] (* added 2002 December 30 based on FP-TW.NB *) fix[composite[SWAP,cross[inverse[FIRST],inverse[FIRST]],x_, cross[SECOND,SECOND]]] := composite[SWAP,twist[composite[SWAP,x]],SWAP] (* added 2002 December 30 based on FP-TW.NB *) fix[composite[SWAP,cross[inverse[FIRST],inverse[SECOND]],x_, cross[FIRST,SECOND]]] := composite[SWAP,twist[composite[SWAP,x]]] (* added 2002 December 30 based on FP-TW.NB *) fix[composite[SWAP,cross[inverse[FIRST],inverse[SECOND]],x_, cross[SECOND,FIRST]]] := composite[inverse[FIRST],fix[composite[SWAP,x]],SECOND] (* added 2002 December 30 based on FP-TW.NB *) fix[composite[SWAP,cross[inverse[SECOND],inverse[FIRST]],x_, cross[FIRST,SECOND]]] := composite[inverse[SECOND],fix[composite[SWAP,x]],FIRST] (* added 2002 December 30 based on FP-TW.NB *) fix[composite[SWAP,cross[inverse[SECOND],inverse[FIRST]],x_, cross[SECOND,FIRST]]] := composite[twist[composite[SWAP,x]],SWAP] (* added 2002 December 30 based on FP-TW.NB *) fix[composite[SWAP,cross[inverse[SECOND],inverse[SECOND]],x_, cross[FIRST,FIRST]]] := twist[composite[SWAP,x]] (* added 2002 December 30 based on FP-TW.NB *) fix[composite[SWAP,cross[inverse[SECOND],inverse[SECOND]],x_, cross[SECOND,SECOND]]] := composite[inverse[SECOND],fix[composite[SWAP,x]],SECOND] (* added 2002 December 30 based on FP-TW.NB *) fix[composite[SWAP,x_,SWAP,cross[y_,z_]]] := inverse[fix[composite[x,cross[z,y]]]] fix[composite[SWAP,x_,FIRST]] := inverse[fix[composite[x,SECOND]]] (* added 2001 May 18 based on COMMUTE3.NB *) fix[composite[SWAP,inverse[COMPOSE],COMPOSE]] := COMMUTE (* added 2002 December 27 based on SBCOMMUT.NB *) fix[composite[SWAP,inverse[COMPOSE],inverse[S],COMPOSE]] := inverse[SUBCOMMUTE] (* added 2002 December 27 based on SBCOMMUT.NB *) fix[composite[SWAP,inverse[COMPOSE],S,COMPOSE]] := SUBCOMMUTE fix[composite[SWAP,x_,SECOND]] := inverse[fix[composite[x,FIRST]]] fix[composite[SWAP,x_,SWAP]] := inverse[fix[x]] (* added 2002 June 24 based on FIX.NB *) fix[composite[SYMDIF,id[x_],inverse[FIRST]]] := image[inverse[x],set[0]] (* added 2002 June 24 based on FIX.NB *) fix[composite[SYMDIF,id[x_],inverse[SECOND]]] := image[x,set[0]] (* added 2001 March 15 based on H-1.NB *) fix[composite[TC,inverse[S]]] := FULL (* derived 2006 January 24 in VS-MEMB.NB *) fix[composite[thinpart[x_],inverse[x_]]] := range[thinpart[x]] (* derived 2006 December 7 in BH-TIMES.NB *) fix[composite[TIMES,eval[set[0]]]] := binhom[NATADD,NATADD] (* derived 2006 May 2 in RFX-XFM.NB *) fix[composite[x_,to[y_],inverse[x_]]] := image[x,fix[to[y]]] (* derived 2008 July 13 in TRV-WF.NB *) fix[composite[trv[wf[x_]],trv[wf[x_]]]] := 0 (* added 2002 October 27 based on GREATEST.NB *) fix[composite[UB[x_],id[y_],E]] := image[GREATEST[x],y] (* derived 2004 April 28 in WF.NB *) fix[composite[UB[x_],VERTSECT[inverse[x_]]]] := domain[VERTSECT[inverse[x]]] (* derived 2008 June 13 in WF-DO-RA.NB *) fix[composite[wf[x_],Di]] := range[wf[x]] (* derived 2008 August 3 in WF-ASYM.NB *) fix[composite[wf[x_],wf[x_]]] := 0 (* derived 2004 September 25 in LAMB-WF.NB *) fix[composite[WFPART,inverse[S]]] := WF (* derived 2004 September 25 in LAMB-WF.NB *) fix[composite[WFPART,S]] := WF (* derived 2006 May 2 in RFX-XFM.NB *) fix[composite[x_,wo[y_],inverse[x_]]] := image[x,fix[wo[y]]] (* derived 2004 May 2 in ZN.NB *) fix[composite[ZN,POWER]] := V (* added 2002 May 3 based on CORE-UCL.NB *) fix[CORE[x_]] := Uclosure[x] (* Theorem X-FP in X2 *) fix[cross[x_,y_]] := cart[fix[x],fix[y]] (* Theorem FP-DI in FP1 added 1998 July 2 *) fix[Di] := 0 (* Theorem FP-DJT in FP2 proved 1998 September 4 *) fix[DISJOINT] := set[0] (* added 2002 August 30 based on DIVIDES.NB *) fix[DIV] := omega (* derived 2009 January 6 in CAT-UNIT.NB *) fix[dom[cat[x_]]] := ids[cat[x]] (* derived 2009 January 21 in HOM.NB *) fix[domain[hom[x_]]] := ids[x] (* derived 2008 October 9 in QUASIGP.NB *) fix[domain[quasigp[x_]]] := range[quasigp[x]] (* added 2002 November 5 based on EQDF-TRV.NB *) fix[EQUIDIFF] := cart[omega,omega] (* derived 2004 May 12 in EQUIV.NB *) fix[EQUIV] := EQV (* derived 2008 August 26 in FIX-FACT.NB *) fix[FACTORIAL] := set[set[0],succ[set[0]]] (* derived 2008 October 28 in FIX-DUP.NB *) fix[fix[composite[DUP,x_]]] := fix[composite[x,DUP]] (* added 2001 February 6 based on FIXFIX.NB *) fix[fix[composite[x_,FIRST]]] := fix[composite[inverse[x],DUP]] (* added 2001 February 6 based on CLS-6.NB *) fix[fix[composite[inverse[FIRST],x_]]] := fix[composite[x,DUP]] (* added 2001 February 6 based on CLS-6.NB *) fix[fix[composite[inverse[SECOND],x_]]] := fix[composite[x,DUP]] (* added 2001 February 6 based on FIXFIX.NB *) fix[fix[composite[x_,SECOND]]] := fix[composite[inverse[x],DUP]] (* added 2002 May 28 based on FIRSTDIF.NB *) fix[fix[composite[x_,SYMDIF]]] := fix[image[x,set[0]]] fix[fix[composite[x_,SWAP]]] := fix[fix[x]] fix[fix[composite[SWAP,x_]]] := fix[fix[x]] (* Theorem FIN-FP2 proved 2000 April 22 *) fix[FINITE] := V (* added 2000 September 8 based on FUNPART.LOG *) fix[FUNPART] := FUNS (* derived 2008 June 22 in FP-FUNP-S.NB *) fix[funpart[composite[id[x_],inverse[S]]]] := intersection[x,complement[image[PS,x]]] (* derived 2008 June 22 in FP-FUNP-S.NB *) fix[funpart[composite[id[x_],S]]] := intersection[x,complement[image[inverse[PS],x]]] (* derived 2008 June 5 in FP-HART.NB *) fix[HARTOGS] := 0 (* Theorem HF-FP in HC proved 2001 April 10 *) fix[HC] := FULL (* derived 2008 September 19 in HULL.NB *) fix[HULL[x_]] := x /; subclass[x,OMEGA] (* derived 2007 June 23 in ALLCLOSED.NB *) fix[HULL[allclosed[x_]]] := allclosed[x] (* added 2003 September 14 based on FXHL-BCL.NB *) fix[HULL[binclosed[x_]]] := binclosed[x] (* derived 2006 September 19 in COMMTIVE.NB *) fix[HULL[COMMUTATIVE]] := COMMUTATIVE (* added 2003 April 3 based on FIXHULLI.NB *) fix[HULL[EQV]] := EQV (* derived 2008 January 2 in FINCHR-1.NB *) fix[HULL[FINCHAR]] := FINCHAR (* derived 2007 October 18 in BINCL.NB *) fix[HULL[fix[composite[S,CART,DORA]]]] := fix[composite[S,CART,DORA]] (* derived 2007 June 25 in UCH-HULL.NB *) fix[HULL[fix[UCHAINS]]] := fix[UCHAINS] (* derived 2007 October 18 in BINCL.NB *) fix[HULL[image[CART,Id]]] := image[CART,Id] (* derived 2007 October 18 in BINCL.NB *) fix[HULL[image[inverse[CLIQUES],range[POWER]]]] := image[inverse[CLIQUES],range[POWER]] (* derived 2007 October 18 in BINCL.NB *) fix[HULL[image[inverse[IMAGE[id[cart[V,V]]]],TRV]]] := image[inverse[IMAGE[id[cart[V,V]]]],TRV] (* derived 2008 November 6 in EQV-ON-X.NB *) fix[HULL[image[inverse[IMAGE[inverse[DUP]]],set[x_]]]] := image[inverse[IMAGE[inverse[DUP]]],set[x]] (* derived 2005 September 17 in ACL-DIV.NB *) fix[HULL[image[VERTSECT[DIV],omega]]] := image[VERTSECT[DIV],omega] (* derived 2004 October 7 in HULL-I.NB *) fix[HULL[intersection[fix[HULL[x_]],fix[HULL[y_]]]]] := intersection[fix[HULL[x]],fix[HULL[y]]] (* derived 2006 March 7 in HULL-ON.NB *) fix[HULL[intersection[OMEGA,x_]]] := intersection[OMEGA,x] (* added 2003 September 14 based on FXHL-BCL.NB *) fix[HULL[invar[x_]]] := invar[x] (* derived 2006 February 4 in INVOL.NB *) fix[HULL[INVOL]] := INVOL (* derived 2006 March 14 in ORDRULES.NB *) fix[HULL[ord[x_]]] := ord[x] (* added 2003 April 4 based on FXHULLPO.NB *) fix[HULL[PO]] := PO (* derived 2005 July 24 in ACL-P-OM.NB *) fix[HULL[PRIMES]] := PRIMES (* derived 2006 October 14 in HULLCLIQ.NB *) fix[HULL[range[CLIQUES]]] := range[CLIQUES] (* derived 2005 September 16 in HULL-DIV.NB *) fix[HULL[range[VERTSECT[DIV]]]] := range[VERTSECT[DIV]] (* added 2003 April 3 based on HULL-RFX.NB *) fix[HULL[RFX]] := RFX (* derived 2007 June 27 in TOPS.NB *) fix[HULL[set[0,set[set[0]],succ[set[0]]]]] := set[0,set[set[0]],succ[set[0]]] (* derived 2004 October 12 in CMPCT-OM.NB *) fix[HULL[succ[omega]]] := succ[omega] (* added 2003 April 3 based on HULL-SYM.NB *) fix[HULL[SYM]] := SYM (* added 2003 September 14 based on FXHL-BCL.NB *) fix[HULL[TOPS]] := TOPS (* added 2002 February 8 based on IDEMPOT.NB *) fix[HULL[TRV]] := TRV (* derived 2006 April 20 in UCL-IMS.NB *) fix[HULL[union[x_,P[y_]]]] := union[fix[HULL[x]],P[y]] (* derived 2005 September 16 in HULL-DIV.NB *) fix[HULL[union[x_,set[0]]]] := union[fix[HULL[x]],set[0]] (* added 2003 March 1 based on Z.NB *) fix[HULL[Z]] := union[Z,set[0]] (* Theorem FP-ID1 in FP2 *) fix[Id] := V (* Theorem IDX-FP-3 in IDX2 *) fix[id[x_]] := x (* derived 2007 May 29 in IVR-HULL.NB *) fix[IMAGE[ACLOSURE]] := P[fix[ACLOSURE]] (* derived 2008 March 18 in RC-OM.NB *) fix[IMAGE[composite[id[omega],S]]] := union[image[RC[omega],omega],set[0]] (* derived 2007 May 29 in IVR-CORE.NB *) fix[IMAGE[CORE[x_]]] := P[Uclosure[x]] (* derived 2006 September 19 in COMMTIVE.NB *) fix[IMAGE[cross[SWAP,Id]]] := COMMUTATIVE (* 1998 November 10. See IM-DI-ID.LOG *) fix[image[Di,id[x_]]] := image[Di,x] (* derived 2004 July 26 in DORAFUNS.NB *) fix[image[DORA,FUNS]] := V (* added 2002 December 17 based on UCL-Z.NB *) fix[IMAGE[EQUIDIFF]] := Uclosure[Z] (* derived 2007 June 2 in HC-TC.NB *) fix[IMAGE[HC]] := P[FULL] (* derived 2007 May 29 in IVR-HULL.NB *) fix[IMAGE[HULL[x_]]] := P[fix[HULL[x]]] (* Theorem CUT-FP in CUT1 proved 1998 December 25 *) fix[IMAGE[id[x_]]] := P[x] (* added 2003 March 13 based on IMG-CUT.NB *) fix[IMAGE[IMAGE[id[x_]]]] := P[P[x]] (* derived 2007 June 6 in IDEMWRAP.NB *) fix[IMAGE[IMAGE[idem[x_]]]] := P[fix[IMAGE[idem[x]]]] (* derived 2007 May 29 in IVR-HULL.NB *) fix[IMAGE[IMAGE[inverse[S]]]] := P[fix[IMAGE[inverse[S]]]] (* derived 2007 May 29 in ZN.NB *) fix[IMAGE[IMAGE[ZN]]] := P[fix[IMAGE[ZN]]] (* added 1999 December 23 based on ASSOCDUP.NB *) fix[image[inverse[CAP],x_]] := x (* derived 2005 October 18 in SQUARE.NB *) fix[image[inverse[CART],image[CART,Id]]] := V (* derived 2005 October 18 in SQUARE.NB *) fix[image[inverse[CART],image[CART,id[x_]]]] := x (* derived 2007 September 3 in CLQ-PC.NB *) fix[image[inverse[CART],image[inverse[CLIQUES],range[POWER]]]] := V (* derived 2008 January 26 in CHAINS-C.NB *) fix[image[inverse[CART],image[inverse[IMAGE[id[x_]]],ANTISYM]]] := chains[union[Id,complement[x]]] (* derived 2008 March 1 in FUND.NB *) fix[image[inverse[CART],image[inverse[IMAGE[id[E]]],WF]]] := FUND (* derived 2008 July 15 in CHAINS.NB *) fix[image[inverse[CART],image[inverse[IMAGE[id[x_]]],fix[composite[DISJOINT,INVERSE]]]]] := chains[complement[x]] (* derived 2008 July 15 in CHAINS.NB *) fix[image[inverse[CART],image[inverse[IMAGE[id[x_]]],intersection[y_,z_]]]] := intersection[fix[image[inverse[CART],image[inverse[IMAGE[id[x]]],y]]], fix[image[inverse[CART],image[inverse[IMAGE[id[x]]],z]]]] (* derived 2008 July 3 in MAX-FUNP.NB *) fix[image[inverse[CART],image[inverse[IMAGE[id[inverse[S]]]],image[inverse[FUNPART],set[0]]]]] := subvar[PS] (* derived 2007 May 9 in CHN-PO.NB *) fix[image[inverse[CART],image[inverse[IMAGE[id[po[x_]]]],TO]]] := image[inverse[IMAGE[id[fix[po[x]]]]],chains[po[x]]] (* derived 2007 October 30 in CHN-S.NB *) fix[image[inverse[CART],image[inverse[IMAGE[id[S]]], image[inverse[CHAINS],range[POWER]]]]] := chains[S] (* derived 2008 July 3 in MAX-FUNP.NB *) fix[image[inverse[CART],image[inverse[IMAGE[id[S]]],image[inverse[FUNPART],set[0]]]]] := subvar[inverse[PS]] (* derived 2007 October 30 in CHN-S.NB *) fix[image[inverse[CART],image[inverse[IMAGE[id[S]]],PO]]] := V (* derived 2007 October 30 in CHN-S.NB *) fix[image[inverse[CART],image[inverse[IMAGE[id[S]]],RFX]]] := V (* derived 2007 October 30 in CHN-S.NB *) fix[image[inverse[CART],image[inverse[IMAGE[id[S]]],TO]]] := chains[S] (* derived 2008 July 15 in CHAINS.NB *) fix[image[inverse[CART],image[inverse[IMAGE[id[x_]]],SYM]]] := cliques[union[x,complement[inverse[x]]]] (* derived 2008 July 15 in CHAINS.NB *) fix[image[inverse[CART],image[inverse[IMAGE[id[x_]]],WF]]] := complement[image[S,intersection[complement[set[0]],subvar[x]]]] (* derived 2008 July 17 in FPINCART.NB *) fix[image[inverse[CART],intersection[x_,y_]]] := intersection[fix[image[inverse[CART],x]],fix[image[inverse[CART],y]]] (* added 2001 October 8 based on RFX.NB *) fix[image[inverse[CART],RFX]] := V (* derived 2004 June 16 in TRANSVAR.NB *) fix[image[inverse[CART],transvar[x_,inverse[DUP]]]] := binclosed[x] (* added 1999 December 23 based on ASSOCDUP.NB *) fix[image[inverse[CUP],x_]] := x (* added 1999 December 23 based on ASSOCDUP.NB *) fix[image[inverse[DIF],x_]] := image[V,intersection[x,set[0]]] (* derived 2009 January 21 in INV.NB *) fix[image[inverse[x_],ids[x_]]] := fix[inv[x]] (* derived 2007 June 30 in UNOPS.NB *) fix[image[inverse[MAP],P[UNOPS]]] := V (* added 2001 October 10 based on REPLACE.NB *) fix[image[inverse[PAIRSET],x_]] := image[inverse[SINGLETON],x] (* added 1999 December 23 based on ASSOCDUP.NB *) fix[image[inverse[SYMDIF],x_]] := image[V,intersection[x,set[0]]] (* derived 2008 March 20 in INIT-WO.NB *) fix[IMAGE[inverse[wo[setpart[w_]]]]] := image[RC[fix[wo[setpart[w]]]],range[VERTSECT[wo[setpart[w]]]]] (* derived 2007 July 4 in IMAGRANK.NB *) fix[IMAGE[RANK]] := P[OMEGA] (* added 2001 October 10 based on REPLACE.NB *) fix[IMAGE[SWAP]] := SYM (* derived 2007 June 2 in HC-TC.NB *) fix[IMAGE[TC]] := P[FULL] (* derived 2007 May 29 in IVR-HULL.NB *) fix[IMAGE[UCLOSURE]] := P[fix[UCLOSURE]] (* Theorem FP-IM-V in FP2 *) fix[image[V,x_]] := image[V,x] (* derived 2006 October 21 in INTDIV.NB *) fix[INTDIV] := Z (* Theorem FP-I in FP1 *) fix[intersection[x_,y_]] := intersection[fix[x],fix[y]] (* derived 2006 September 24 in INTLEQ.NB *) fix[INTLEQ] := Z (* added 2001 October 10 based on SYM-1.NB *) fix[INVERSE] := SYM (* Theorem FP-IN2 in FP2 *) fix[inverse[x_]] := fix[x] (* added 2000 May 14 based on K-2.NB *) fix[K] := 0 (* added 2000 November 21 based on FINITE.NB *) fix[LB[x_]] := complement[fix[composite[E,complement[x]]]] (* derived 2005 July 18 in MODULO.NB *) fix[modulo[x_]] := union[intersection[omega,complement[image[V,x]]],nat[x]] (* added 2001 October 6 based on FIXRULES.NB *) fix[omega] := 0 (* added 2001 October 6 based on FIXRULES.NB *) fix[OMEGA] := 0 (* derived 2004 May 9 in OOPART.NB *) fix[OOPART] := BIJ (* Theorem POW-FP in POW3 proved 1998 July 18 *) fix[POWER] := 0 (* Theorem PS-FP in PS added 1998 August 9 *) fix[PS] := 0 (* Theorem Q-3 in Q proved 2000 April 25 *) fix[Q] := V (* Theorem RK-FP in RANK2 proved 2001 July 25 *) fix[RANK] := OMEGA (* added 2001 June 28 based on RC.NB *) fix[RC[x_]] := intersection[complement[image[V,x]],set[0]] (* Theorem REG-FP in REG2 *) fix[REGULAR] := REGULAR (* added 2003 May 30 based on RESTRICT.NB *) fix[RESTRICT] := P[cart[V,V]] (* derived 2004 December 16 in RFX-CORE.NB *) fix[rfx[x_]] := fix[x] (* added 1999 September 12 based on 1999\SEPT\10\ROT-FP.LOG *) fix[ROT] := inverse[DUP] (* added 2001 January 30 based on FP-RO2.NB *) fix[rotate[x_]] := composite[FIRST,id[inverse[SECOND]], intersection[composite[inverse[SECOND],inverse[FIRST]],inverse[x]]] (* Theorem FP-SR2 in FP2 *) fix[S] := V (* derived 2004 April 6 in SMALLER.NB *) fix[SMALLER] := 0 (* added 2002 December 27 based on SBCOMMUT.NB *) fix[SUBCOMMUTE] := V (* Theorem SUC-FP-4 in SUC-RELATION added 1998 February 7 *) fix[SUCC] := fix[E] (* Theorem SW-FP in SW3 corrected 1998 August 6 *) fix[SWAP] := Id (* added 2000 January 8 based on TC-RA.NB *) fix[TC] := FULL (* derived 2006 March 12 in OLIST-OO.NB *) fix[trv[composite[HULL[intersection[OMEGA,x_]],id[OMEGA],SUCC]]] := 0 (* derived 2009 May 10 in WO-PS.NB *) fix[trv[funpart[intersection[PS,x_]]]] := 0 (* derived 2004 March 23 in TRV-K.NB *) fix[trv[K]] := 0 (* derived 2008 April 30 in ACYCLIC.NB *) fix[trv[POWER]] := 0 (* derived 2006 October 7 in TRV-RFX.NB *) fix[trv[rfx[x_]]] := fix[x] (* derived 2004 September 18 in WF-WRAP.NB *) fix[trv[wf[x_]]] := 0 (* added 2001 January 18 based on ROT-CPS.NB *) fix[twist[x_]] := composite[inverse[DUP],x,DUP] (* derived 2004 June 24 in SBCOMTNT.NB *) fix[U[subcommutant[thinpart[x_]]]] := V (* added 2000 November 21 based on FINITE.NB *) fix[UB[x_]] := complement[fix[composite[complement[x],inverse[E]]]] (* Theorem FP-U in FP1 *) fix[union[x_,y_]] := union[fix[x],fix[y]] (* Theorem FP-V in FP1 *) fix[V] := V (* derived 2007 May 11 in VS-LEAST.NB *) fix[VERTSECT[GREATEST[x_]]] := cliques[x] (* derived 2007 May 11 in VS-LEAST.NB *) fix[VERTSECT[LEAST[x_]]] := cliques[x] (* derived 2007 June 9 in VS-LT-GT.NB *) fix[VERTSECT[MAXIMAL[x_]]] := cliques[union[Id,complement[x]]] (* derived 2007 June 9 in VS-LT-GT.NB *) fix[VERTSECT[MINIMAL[x_]]] := cliques[union[Id,complement[x]]] (* added 2001 July 17 based on ZN-IMG2.NB *) fix[VERTSECT[ZN]] := 0 (* derived 2004 September 18 in WF-WRAP.NB *) fix[wf[x_]] := 0 (* derived 2004 September 25 in LAMB-WF.NB *) fix[WFPART] := WF (* added 2001 July 12 based on ZN-2.NB *) fix[ZN] := V FIX := IMAGE[inverse[DUP]] flags := Print["cond = ",cond, ", equality = ",equality, ", expand = ",expand, ", simplify = ",simplify, ", unsafe = ",unsafe] (* rule for eliminating flip: *) (* Theorem SW-FL in SW2 proved 1998 November 2 *) flip[x_] := composite[x,SWAP] (* elimination rule for universal quantifiers *) forall[x__,y_] := not[exists[x,not[y]]] (* definition of full *) full[x_] := subclass[U[x],x] (* Theorem FU-0 in FU2 *) FUNCTION[0] := True (* added 2001 May 10 based on ACLOSURE.NB *) FUNCTION[ACLOSURE] := True (* Theorem ADJ-FU in ADJ proved 1999 March 13 *) FUNCTION[ADJOIN[x_]] := True (* derived 2006 November 9 in DOAP-CUR.NB *) FUNCTION[APPLY[CURRY,x_]] := and[member[x,V],subclass[x,cart[cart[V,V],V]]] (* derived 2008 October 21 in JOIN.NB *) FUNCTION[APPLY[JOIN,PAIR[list[x_],list[y_]]]] := True (* added 1999 October 13 based on ASSOC.1 *) FUNCTION[ASSOC] := True (* derived 2008 November 21 in ASSOCFUN.NB *) FUNCTION[assoc[funpart[x_]]] := True (* Theorem BA-FU in BIGCAP/BA1 *) FUNCTION[BIGCAP] := True (* Theorem BC-5 in BIGCUP/BC *) FUNCTION[BIGCUP] := True (* derived 2008 October 7 in BNP-WRAP.NB *) FUNCTION[binop[x_]] := True (* Theorem CAP-FU proved 1999 August 12 *) FUNCTION[CAP] := True (* added 2001 December 2 based on CARD-FUN.NB *) FUNCTION[CARD] := True (* Theorem CART-FU in CART proved 1999 July 26 *) FUNCTION[CART] := True (* derived 2008 December 7 in NATMUL.NB *) FUNCTION[cart[x_,y_]] := or[equal[0,x],equal[0,y],member[y,range[SINGLETON]]] (* derived 2008 December 30 in CAT-WRAP.NB *) FUNCTION[cat[x_]] := True (* derived 2005 August 1 in CATOFUNS.NB *) FUNCTION[CATOFUNS] := True (* derived 2005 July 30 in CATORELN.NB *) FUNCTION[CATORELN] := True (* derived 2007 May 6 in CHN-FU.NB *) FUNCTION[CHAINS] := True (* derived 2006 August 22 in CHAR.NB *) FUNCTION[CHAR[x_]] := True (* added 2001 April 29 based on CLIQUES2.NB *) FUNCTION[CLIQUES] := True (* derived 2006 July 13 in CLOCK.NB *) FUNCTION[clock[x_]] := True (* derived 2004 June 18 in NON-FUNS.NB *) FUNCTION[COARSER] := False (* derived 2009 January 5 in DOM-CAT.NB *) FUNCTION[cod[cat[x_]]] := True (* derived 2004 June 18 in NON-FUNS.NB *) FUNCTION[COMMUTE] := False (* added 2002 November 29 based on PLUS.NB *) FUNCTION[complement[image[V,x_]]] := not[equal[0,x]] (* Theorem CPS-FU in COMPOSE-CPS proved 2001 January 16 *) FUNCTION[COMPOSE] := True (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[x_,BIGCAP]] := FUNCTION[composite[Id,x]] (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[x_,BIGCUP]] := FUNCTION[composite[Id,x]] (* derived 2004 March 23 in ADJECT.NB *) FUNCTION[composite[CUP,id[cart[V,x_]],inverse[FIRST]]] := or[equal[0,x],member[x,range[SINGLETON]]] (* derived 2004 November 21 in FU-VS.NB *) FUNCTION[composite[Di,x_]] := equal[0,domain[x]] (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[DUP,x_]] := FUNCTION[composite[Id,x]] (* added 2002 June 15 based on REPLACE.NB *) FUNCTION[composite[x_,FIRST]] := FUNCTION[composite[Id,x]] (* added 2002 June 15 based on REPLACE.NB *) FUNCTION[composite[x_,FIRST,id[y_]]] := FUNCTION[composite[x,id[domain[y]]]] (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[x_,funpart[y_]]] := FUNCTION[composite[x,id[range[funpart[y]]]]] (* derived 2006 August 19 in MAP-DJU.NB *) FUNCTION[composite[id[cart[P[x_],P[complement[x_]]]],inverse[CUP]]] := True (* added 2002 December 16 based on EQUIDIFF.NB *) FUNCTION[composite[id[x_],E]] := subclass[cart[x,x],union[DISJOINT,Id]] (* derived 2004 October 2 in CLIQ-EQV.NB *) FUNCTION[composite[id[EQV],inverse[CLIQUES]]] := True (* derived 2008 June 27 in AP-VS-IN.NB *) FUNCTION[composite[id[fix[po[x_]]],inverse[VERTSECT[inverse[po[x_]]]]]] := True (* derived 2005 October 15 in OO-PO.NB *) FUNCTION[composite[id[fix[po[x_]]],inverse[VERTSECT[po[x_]]]]] := True (* derived 2005 October 1 in PO-THIN.NB *) FUNCTION[composite[id[fix[thinpart[po[x_]]]],inverse[VERTSECT[thinpart[po[x_]]]]]] := True (* derived 2005 October 15 in OO-PO.NB *) FUNCTION[composite[id[fix[to[x_]]],inverse[VERTSECT[to[x_]]]]] := True (* derived 2005 October 15 in OORFXTRV.NB *) FUNCTION[composite[id[fix[trv[x_]]],inverse[VERTSECT[rfx[trv[x_]]]]]] := subclass[intersection[inverse[thinpart[rfx[trv[x]]]],thinpart[rfx[trv[x]]]],Id] (* added 2002 April 27 based on FULSUC-D.NB *) FUNCTION[composite[id[FULL],inverse[SUCC]]] := True (* added 2002 June 15 based on REPLACE.NB *) FUNCTION[composite[x_,id[image[V,y_]]]] := or[equal[0,y],FUNCTION[composite[Id,x]]] (* added 2002 October 5 based on MUL-OO.NB *) FUNCTION[composite[id[image[V,x_]],y_]] := or[equal[0,x],FUNCTION[composite[Id,y]]] (* derived 2004 June 14 in FU-F-O.NB *) FUNCTION[composite[Id,intersection[y_, complement[composite[Di,intersection[y_,complement[funpart[x_]]]]]]]] := True (* added 1999 August 16: Paulson's Theorem *) FUNCTION[composite[id[x_],inverse[FIRST]]] := FUNCTION[composite[Id,x]] (* added 1999 August 16: Corollary of Paulson's Theorem *) FUNCTION[composite[id[x_],inverse[SECOND]]] := FUNCTION[inverse[x]] (* derived 2005 January 29 in DIV.NB *) FUNCTION[composite[id[omega],inverse[VERTSECT[DIV]]]] := True (* derived 2005 January 29 in DIV.NB *) FUNCTION[composite[id[omega],inverse[VERTSECT[inverse[DIV]]]]] := True (* derived 2004 August 10 in RS-3.NB *) FUNCTION[composite[id[P[cart[V,V]]],inverse[VERTSECT[RESTRICT]]]] := True (* derived 2006 June 29 in IM-VS-PC.NB *) FUNCTION[composite[id[P[cart[x_,y_]]],inverse[VS]]] := True (* derived 2004 November 18 in XS-IN-AC.NB *) FUNCTION[composite[id[P[cart[V,V]]],inverse[XS]]] := axch (* derived 2006 July 4 in MAP-Q.NB *) FUNCTION[composite[id[P[domain[oopart[x_]]]],inverse[IMAGE[oopart[x_]]]]] := True (* derived 2007 June 13 in THIN-PO.NB *) FUNCTION[composite[id[P[fix[po[thinpart[x_]]]]],inverse[IMAGE[VERTSECT[po[thinpart[x_]]]]]]] := True (* derived 2007 June 13 in THIN-PO.NB *) FUNCTION[composite[id[P[fix[thinpart[po[x_]]]]],inverse[IMAGE[VERTSECT[po[x_]]]]]] := True (* derived 2007 June 13 in THIN-PO.NB *) FUNCTION[composite[id[P[fix[thinpart[po[x_]]]]],inverse[IMAGE[VERTSECT[thinpart[po[x_]]]]]]] := True (* derived 2008 May 5 in FU-RS-DO.NB *) FUNCTION[composite[id[P[funpart[x_]]],inverse[IMAGE[FIRST]]]] := True (* derived 2007 June 13 in IMGVSDIV.NB *) FUNCTION[composite[id[P[omega]],inverse[IMAGE[VERTSECT[DIV]]]]] := True (* added 2001 December 19 based on INV-IM.NB *) FUNCTION[composite[id[P[range[funpart[x_]]]],inverse[IMAGE[inverse[funpart[x_]]]]]] := True (* derived 2008 May 5 in FU-REC.NB *) FUNCTION[composite[id[partrec[funpart[x_],thinpart[inverse[wf[y_]]]]], inverse[IMAGE[FIRST]]]] := True (* derived 2008 October 1 in OOLAMBIJ.NB *) FUNCTION[composite[id[Q],inverse[VERTSECT[composite[id[BIJ],inverse[DORA]]]]]] := True (* derived 2004 January 4 in VS-IMIN.NB *) FUNCTION[composite[id[range[funpart[x_]]],inverse[VERTSECT[inverse[funpart[x_]]]]]] := True (* derived 2008 May 6 in RS-DO.NB *) FUNCTION[composite[id[RS[x_]],inverse[IMAGE[FIRST]]]] := True (* added 2003 July 25 based on HULL-Z.NB *) FUNCTION[composite[id[x_],S]] := or[equal[0,x],member[x,range[SINGLETON]]] (* added 2003 July 25 based on HULL-Z.NB *) FUNCTION[composite[id[x_],S,id[complement[set[0]]]]] := subclass[cart[x,x],union[DISJOINT,Id]] (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[IMAGE[DUP],x_]] := FUNCTION[composite[Id,x]] (* added 2003 October 21 based on LAMHUL-2.NB *) FUNCTION[composite[IMAGE[inverse[S]],inverse[LAMBHULL]]] := True (* added 1999 November 6 based on CART-OO.NB *) FUNCTION[composite[inverse[CAP],inverse[CART]]] := True (* added 1999 November 6 based on CART-DI.NB *) FUNCTION[composite[inverse[CART],id[x_]]] := not[member[0,x]] (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[x_,inverse[DUP]]] := FUNCTION[composite[Id,x]] (* based on 1999 December 11 notebook CART-DUP.NB *) FUNCTION[composite[inverse[DUP],inverse[CART]]] := True (* derived 2004 November 25 in MAP-DUP.NB *) FUNCTION[composite[inverse[DUP],inverse[MAP]]] := True (* derived 2008 October 12 in NAT-HALF.NB *) FUNCTION[composite[inverse[DUP],inverse[NATADD]]] := True (* added 2003 May 18 based on SQRTUNIQ.NB *) FUNCTION[composite[inverse[DUP],inverse[NATMUL]]] := True (* derived 2008 October 1 in OOLAMBIJ.NB *) FUNCTION[composite[inverse[DUP],inverse[VERTSECT[composite[id[BIJ],inverse[DORA]]]]]] := True (* added 1999 August 31 based on SESSION2.LOG *) FUNCTION[composite[inverse[FIRST],x_]] := equal[0,domain[x]] (* derived 2007 January 1 in INTMUL-4.NB *) FUNCTION[composite[inverse[LEFT[x_]],inverse[INTMUL]]] := not[equal[x,id[omega]]] (* derived 2007 February 10 in EX-8.NB *) FUNCTION[composite[inverse[LEFT[x_]],inverse[NATEXP]]] := or[member[set[0],x],not[member[x,omega]]] (* derived 2008 October 15 in QG-L-R.NB *) FUNCTION[composite[inverse[LEFT[y_]],inverse[quasigp[x_]]]] := True (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[x_,inverse[POWER]]] := FUNCTION[composite[Id,x]] (* derived 2008 October 15 in QG-L-R.NB *) FUNCTION[composite[inverse[RIGHT[y_]],inverse[quasigp[x_]]]] := True (* added 1999 August 31 based on SESSION2.LOG *) FUNCTION[composite[inverse[SECOND],x_]] := equal[0,domain[x]] (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[x_,inverse[SINGLETON]]] := FUNCTION[composite[Id,x]] (* Theorem OMSUC-OO in OM3 proved 2000 February 17 *) FUNCTION[composite[inverse[SUCC],id[omega]]] := True (* Theorem ON-5-OO in ON6 proved 1998 May 31 *) FUNCTION[composite[inverse[SUCC],id[OMEGA]]] := True (* added 2002 April 18 based on SUCC.NB *) FUNCTION[composite[inverse[SUCC],id[REGULAR]]] := True (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[LEFT[x_],y_]] := or[FUNCTION[composite[Id,y]],not[member[x,V]]] (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[oopart[x_],y_]] := FUNCTION[composite[id[domain[oopart[x]]],y]] (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[POWER,x_]] := FUNCTION[composite[Id,x]] (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[RCF,x_]] := FUNCTION[composite[Id,x]] (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[RIGHT[x_],y_]] := or[FUNCTION[composite[Id,y]],not[member[x,V]]] (* added 2002 June 15 based on REPLACE.NB *) FUNCTION[composite[rotate[E],id[cart[x_,V]]]] := subclass[image[IMAGE[id[cart[V,V]]],x],FUNS] (* derived 2007 January 1 in INTMUL-4.NB *) FUNCTION[composite[rotate[INTMUL],id[cart[V,complement[set[id[omega]]]]]]] := True (* derived 2007 February 10 in EX-8.NB *) FUNCTION[composite[rotate[NATEXP],id[cart[V,complement[succ[set[0]]]]]]] := True (* added 2002 October 6 based on DIVISION.NB *) FUNCTION[composite[rotate[NATMUL],id[cart[V,complement[set[0]]]]]] := True (* derived 2007 February 10 in EX-8.NB *) FUNCTION[composite[rotate[x_],SWAP,id[cart[y_,z_]]]] := FUNCTION[composite[rotate[x],id[cart[z,y]]]] (* added 2002 June 15 based on REPLACE.NB *) FUNCTION[composite[x_,SECOND]] := FUNCTION[composite[Id,x]] (* added 2002 June 15 based on REPLACE.NB *) FUNCTION[composite[x_,SECOND,id[y_]]] := FUNCTION[composite[x,id[range[y]]]] (* derived 2004 November 20 in FU-CO.NB *) FUNCTION[composite[SINGLETON,x_]] := FUNCTION[composite[Id,x]] (* added 2002 June 15 based on REPLACE.NB *) FUNCTION[composite[x_,SWAP]] := FUNCTION[composite[x,id[cart[V,V]]]] (* added 2001 May 2 based on COREHULL.NB *) FUNCTION[CORE[x_]] := True (* Theorem CRS-FU in CROSS proved 2000 August 6 *) FUNCTION[CROSS] := True (* derived 2006 January 6 in FU-X.NB *) FUNCTION[cross[x_,x_]] := FUNCTION[composite[Id,x]] (* derived 2006 January 6 in FU-X.NB *) FUNCTION[cross[x_,y_]] := or[and[FUNCTION[composite[Id,x]],FUNCTION[composite[Id,y]]], equal[0,domain[x]],equal[0,domain[y]]] (* Theorem CUP-FU in CUP1 proved 1999 July 22 *) FUNCTION[CUP] := True (* derived 2006 November 5 in CURRY.NB *) FUNCTION[CURRY] := True (* Theorem SP-DI-FU in SP3 proved 1999 March 25 *) FUNCTION[Di] := False (* added 1999 October 26 based on DIF2.NB *) FUNCTION[DIF] := True (* Theorem SP-DJT-3 in SP3 proved 1999 March 25 *) FUNCTION[DISJOINT] := False (* derived 2004 June 18 in NON-FUNS.NB *) FUNCTION[DIV] := False (* derived 2009 January 5 in DOM-CAT.NB *) FUNCTION[dom[cat[x_]]] := True (* added 2001 December 18 based on DORA.NB *) FUNCTION[DORA] := True (* Theorem DUP-FU-1 in DUP *) FUNCTION[DUP] := True (* Theorem PSM-E-FU in PSM proved 1998 August 14 *) FUNCTION[E] := False (* derived 2004 June 18 in NON-FUNS.NB *) FUNCTION[EQUIDIFF] := False (* derived 2004 May 12 in EQUIV.NB *) FUNCTION[EQUIV] := True (* derived 2006 October 24 in EVAL.NB *) FUNCTION[eval[x_]] := True (* derived 2005 April 16 in FACTRL.NB *) FUNCTION[FACTORIAL] := True (* derived 2005 November 4 in FIN-FUNP.NB *) FUNCTION[fin[funpart[x_]]] := True (* Theorem 1ST-FU in 1ST *) FUNCTION[FIRST] := True (* added 2000 September 8 based on FUNPART.NB *) FUNCTION[FUNPART] := True (* derived 2008 October 28 in FIX-DUP.NB *) FUNCTION[fix[composite[DUP,x_]]] := True (* derived 2008 December 5 in AP-FIX.NB *) FUNCTION[fix[composite[inverse[FIRST],quasigp[x_]]]] := True (* Theorem FUNPART4 in FU1 proved 1999 July 8 *) FUNCTION[funpart[x_]] := True (* derived 2008 January 22 in HART-FU.NB *) FUNCTION[HARTOGS] := True (* Theorem HC-FU in HC proved 2001 April 6 *) FUNCTION[HC] := True (* derived 2004 September 5 in WF-REC-4.NB *) FUNCTION[history[x_,y_]] := True (* added 2001 May 2 based on COREHULL.NB *) FUNCTION[HULL[x_]] := True (* Theorem ID-4 in ID2 *) FUNCTION[Id] := True (* Theorem IDX-FU in IDX1 *) FUNCTION[id[x_]] := True (* derived 2007 December 6 in IDEMFUNP.NB *) FUNCTION[idem[funpart[x_]]] := True (* Theorem IMG-FU in IMG2 *) FUNCTION[IMAGE[x_]] := True (* added 2003 August 12 based on RO-ZADD.NB *) FUNCTION[image[inverse[INTADD],set[x_]]] := True (* added 2002 June 18 based on NATSUB.NB *) FUNCTION[image[inverse[NATADD],set[x_]]] := True (* derived 2008 October 18 in QG-ROT.NB *) FUNCTION[image[inverse[quasigp[x_]],set[y_]]] := True (* added 1999 December 24 based on SYMDIF-2.NB *) FUNCTION[image[inverse[SYMDIF],set[x_]]] := True (* Theorem MG-FU in MG proved 2000 August 24 *) FUNCTION[IMG] := True (* derived 2008 November 29 in INT-WRAP.NB *) FUNCTION[int[x_]] := True (* added 2003 July 25 based on INTADD.NB *) FUNCTION[INTADD] := True (* derived 2003 December 21 in INTADD.NB *) FUNCTION[intadd[x_,y_]] := and[member[x,Z],member[y,Z]] (* added 2003 October 15 based on FUNRULES.NB *) FUNCTION[intersection[x_,complement[image[V,y_]]]] := or[FUNCTION[x],not[equal[0,y]]] (* derived 2004 June 14 in FU-F-O.NB *) FUNCTION[intersection[x_,composite[Di,x_]]] := FUNCTION[composite[Id,x]] (* derived 2008 May 6 in RS-DO.NB *) FUNCTION[intersection[composite[RESTRICT,FIRST], composite[inverse[IMAGE[FIRST]],SECOND]]] := True (* added 2002 June 15 based on REPLACE.NB *) FUNCTION[intersection[composite[x_,SECOND],rotate[E]]] := FUNCTION[composite[Id,x]] (* added 2003 October 15 based on FUNRULES.NB *) FUNCTION[intersection[x_,image[V,y_]]] := or[equal[0,y],FUNCTION[x]] (* derived 2006 December 21 in INTMUL-1.NB *) FUNCTION[INTMUL] := True (* derived 2006 December 21 in ZTIMES-2.NB *) FUNCTION[INTTIMES] := True (* derived 2008 September 15 in INTTIMES.NB *) FUNCTION[inttimes[x_]] := True (* derived 2009 January 21 in INV.NB *) FUNCTION[inv[cat[x_]]] := True (* derived 2004 June 18 in NON-FUNS.NB *) FUNCTION[INVAR] := False (* added 1999 October 12 based on INVERSE.4 *) FUNCTION[INVERSE] := True (* added 1999 October 13 based on ASSOC.1 *) FUNCTION[inverse[ASSOC]] := True (* derived 2008 August 31 in NOT-OO.NB *) FUNCTION[inverse[BIGCAP]] := False (* derived 2007 June 2 in COARSER.NB *) FUNCTION[inverse[BIGCUP]] := False (* derived 2008 August 31 in NOT-OO.NB *) FUNCTION[inverse[CAP]] := False (* derived 2008 August 31 in NOT-OO.NB *) FUNCTION[inverse[CART]] := False (* derived 2008 August 31 in OO-CUT.NB *) FUNCTION[inverse[CHAINS]] := False (* derived 2006 August 22 in CHAR.NB *) FUNCTION[inverse[CHAR[x_]]] := True (* derived 2008 August 31 in OO-CUT.NB *) FUNCTION[inverse[CLIQUES]] := False (* derived 2006 July 13 in CLOCK.NB *) FUNCTION[inverse[clock[x_]]] := True (* derived 2007 June 2 in COARSER.NB *) FUNCTION[inverse[COARSER]] := False (* derived 2008 August 31 in OO-SWAP.NB *) FUNCTION[inverse[COMPOSE]] := False (* derived 2008 August 31 in OO-SWAP.NB *) FUNCTION[inverse[CROSS]] := False (* derived 2008 August 31 in NOT-OO.NB *) FUNCTION[inverse[CUP]] := False (* derived 2006 November 5 in CURRY.NB *) FUNCTION[inverse[CURRY]] := True (* derived 2008 August 31 in NOT-OO.NB *) FUNCTION[inverse[DIF]] := False (* derived 2008 August 31 in NOT-OO.NB *) FUNCTION[inverse[DIV]] := False (* derived 2008 August 31 in OO-CUT.NB *) FUNCTION[inverse[DORA]] := False (* Theorem DUP-FU-2 in DUP *) FUNCTION[inverse[DUP]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) FUNCTION[inverse[E]] := False (* derived 2008 August 31 in OO-CUT.NB *) FUNCTION[inverse[EQUIV]] := False (* derived 2008 August 31 in OO-EVAL.NB *) FUNCTION[inverse[eval[x_]]] := not[member[x,V]] (* derived 2008 August 31 in OO-AP.NB *) FUNCTION[inverse[FACTORIAL]] := False (* Theorem IMG1STFU in IMG2 proved 1998 August 15 *) FUNCTION[inverse[FIRST]] := False (* derived 2008 December 5 in AP-FIX.NB *) FUNCTION[inverse[fix[composite[inverse[SECOND],quasigp[x_]]]]] := True (* derived 2008 August 31 in OO-CUT.NB *) FUNCTION[inverse[FUNPART]] := False (* derived 2009 January 21 in HOM.NB *) FUNCTION[inverse[hom[cat[x_]]]] := True (* Theorem IDP-OO in IDP proved 1998 December 17 *) FUNCTION[inverse[IMAGE[DUP]]] := True FUNCTION[inverse[IMAGE[FIRST]]] := False (* derived 2004 October 2 in OO-CUT.NB *) FUNCTION[inverse[IMAGE[id[x_]]]] := equal[V,x] (* derived 2004 August 19 in X2901-93.NB *) FUNCTION[inverse[IMAGE[inverse[BIGCUP]]]] := True (* derived 2004 August 19 in X2901-93.NB *) FUNCTION[inverse[IMAGE[inverse[CUP]]]] := True (* derived 2008 August 31 in OO-CUT.NB *) FUNCTION[inverse[IMAGE[inverse[DUP]]]] := False (* derived 2008 October 18 in QG-ROT.NB *) FUNCTION[inverse[image[inverse[quasigp[x_]],set[y_]]]] := True (* derived 2004 October 14 in REFINE.NB *) FUNCTION[inverse[IMAGE[inverse[S]]]] := False (* derived 2004 August 11 in X2911.NB *) FUNCTION[inverse[IMAGE[LEFT[x_]]]] := member[x,V] (* derived 2006 May 9 *) FUNCTION[inverse[IMAGE[oopart[x_]]]] := equal[V,domain[oopart[x]]] (* derived 2004 August 19 in X2901-93.NB *) FUNCTION[inverse[IMAGE[POWER]]] := True (* derived 2004 August 19 in X2901-93.NB *) FUNCTION[inverse[IMAGE[RCF]]] := True (* derived 2004 August 11 in X2911.NB *) FUNCTION[inverse[IMAGE[RIGHT[x_]]]] := member[x,V] FUNCTION[inverse[IMAGE[SECOND]]] := False (* Theorem IMG-SGOO in IMG2 proved 1999 August 11 *) FUNCTION[inverse[IMAGE[SINGLETON]]] := True (* derived 2008 August 31 in OO-SWAP.NB *) FUNCTION[inverse[IMG]] := False (* derived 2008 August 31 in NOT-OO.NB *) FUNCTION[inverse[INTADD]] := False (* derived 2008 August 31 in OO-SWAP.NB *) FUNCTION[inverse[INTMUL]] := False (* derived 2006 December 19 in ZTIMES-1.NB *) FUNCTION[inverse[INTTIMES]] := True (* derived 2009 May 10 in WO-PS.NB *) FUNCTION[inverse[iterate[funpart[intersection[PS,x_]],set[y_]]]] := True (* added 2002 January 11 based on KURA.NB *) FUNCTION[inverse[KURA]] := True (* added 1999 August 16 based on session OO-L-R *) FUNCTION[inverse[LEFT[x_]]] := True (* rules added 1998 January 22 *) FUNCTION[inverse[LeftPairV]] := True (* derived 2008 August 31 in OO-SWAP.NB *) FUNCTION[inverse[MAP]] := False (* derived 2008 August 31 in OO-SWAP.NB *) FUNCTION[inverse[MIXMUL]] := False (* derived 2006 December 5 in MIXTIMES.NB *) FUNCTION[inverse[MIXTIMES]] := True (* derived 2008 August 31 in NOT-OO.NB *) FUNCTION[inverse[NATADD]] := False (* derived 2008 August 31 in OO-SWAP.NB *) FUNCTION[inverse[NATEXP]] := False (* derived 2008 August 31 in OO-SWAP.NB *) FUNCTION[inverse[NATMOD]] := False (* derived 2008 August 31 in NOT-OO.NB *) FUNCTION[inverse[NATMUL]] := False (* derived 2008 August 31 in OO-CUT.NB *) FUNCTION[inverse[OOPART]] := False (* derived 2004 May 7 in OOPART.NB *) FUNCTION[inverse[oopart[x_]]] := True (* derived 2006 March 12 in OLIST-OO.NB *) FUNCTION[inverse[ordlist[x_]]] := True (* derived 2008 August 31 in OO-SWAP.NB *) FUNCTION[inverse[PAIRSET]] := False (* added 2002 November 29 based on PLUS.NB *) FUNCTION[inverse[PLUS]] := True (* added 2003 August 7 based on PLUS.NB *) FUNCTION[inverse[plus[x_]]] := True (* Theorem POW-OO in POW2 *) FUNCTION[inverse[POWER]] := True (* derived 2005 August 17 in PRIMESEQ.NB *) FUNCTION[inverse[PRIMESEQ]] := True (* added 2002 February 4 based on RCF-BIJ *) FUNCTION[inverse[RCF]] := True (* derived 2008 August 31 in NOT-OO.NB *) FUNCTION[inverse[RIF]] := False (* added 1999 August 16 based on session OO-L-R *) FUNCTION[inverse[RIGHT[x_]]] := True FUNCTION[inverse[RightPairV]] := True (* added 1999 August 3 *) FUNCTION[inverse[ROT]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) FUNCTION[inverse[S]] := False (* Theorem IMG2NDFU in IMG2 proved 1998 August 15 *) FUNCTION[inverse[SECOND]] := False (* Theorem SG-FU2 in SG1 *) FUNCTION[inverse[SINGLETON]] := True (* derived 2008 August 31 in OO-CUT.NB *) FUNCTION[inverse[SUBVAR]] := False (* derived 2008 August 31 in OO-SWAP.NB *) FUNCTION[inverse[SYMDIF]] := False (* derived 2004 December 31 in IN-RK.NB *) FUNCTION[inverse[thinpart[inverse[funpart[x_]]]]] := True (* derived 2006 September 23 in TIMES.NB *) FUNCTION[inverse[TIMES]] := True (* derived 2005 July 17 in TIMES.NB *) FUNCTION[inverse[times[x_]]] := not[equal[0,x]] (* derived 2008 August 31 in OO-CUT.NB *) FUNCTION[inverse[UBD]] := False (* derived 2008 August 31 in OO-AP.NB *) FUNCTION[inverse[UCHAINS]] := False (* derived 2008 August 31 in OO-AP.NB *) FUNCTION[inverse[UCLOSURE]] := False (* derived 2005 January 29 in RFXTRVTH.NB *) FUNCTION[inverse[VERTSECT[COARSER]]] := True (* derived 2006 June 20 in MAP-RASG.NB *) FUNCTION[inverse[VERTSECT[composite[id[cart[x_,V]],inverse[SECOND]]]]] := not[equal[0,x]] (* derived 2008 September 10 in VS-IN-BC.NB *) FUNCTION[inverse[VERTSECT[inverse[BIGCUP]]]] := True (* derived 2005 January 29 in RFXTRVTH.NB *) FUNCTION[inverse[VERTSECT[inverse[COARSER]]]] := True (* derived 2008 August 31 in OO-CUT.NB *) FUNCTION[inverse[VS]] := False (* derived 2008 August 31 in OO-CUT.NB *) FUNCTION[inverse[WFPART]] := False (* derived 2008 August 31 in OO-CUT.NB *) FUNCTION[inverse[XS]] := False (* derived 2005 January 1 in ITER-FUN.NB *) FUNCTION[iterate[funpart[x_],y_]] := or[equal[0,y],member[y,range[SINGLETON]]] (* derived 2008 October 21 in JOIN.NB *) FUNCTION[JOIN] := True (* derived 2004 June 18 in NON-FUNS.NB *) FUNCTION[K] := False (* added 2002 January 11 based on KURA.NB *) FUNCTION[KURA] := True (* added 2003 May 10 based on LAMBHULL.NB *) FUNCTION[LAMBHULL] := True (* added 1999 August 16 based on session OO-L-R *) FUNCTION[LEFT[x_]] := True FUNCTION[LeftPairV] := True (* derived 2008 October 20 in LIST.NB *) FUNCTION[list[x_]] := True (* added 2001 April 27 based on MAP3.NB *) FUNCTION[MAP] := True (* derived 2006 December 6 in MIXMUL-1.NB *) FUNCTION[MIXMUL] := True (* derived 2006 December 5 in MIXTIMES.NB *) FUNCTION[MIXTIMES] := True (* derived 2005 July 18 in MODULO.NB *) FUNCTION[modulo[x_]] := True (* added 2002 June 13 based on FUN-ADD.NB *) FUNCTION[NATADD] := True (* derived 2006 June 27 in NATEXP-1.NB *) FUNCTION[NATEXP] := True (* derived 2005 May 17 based on NATMOD.NB *) FUNCTION[NATMOD] := True (* added 2002 June 30 based on NATMUL.NB *) FUNCTION[NATMUL] := True (* derived 2004 May 9 in OOPART.NB *) FUNCTION[OOPART] := True (* derived 2004 May 7 in OOPART.NB *) FUNCTION[oopart[x_]] := True (* derived 2006 March 7 in ORDLIST.NB *) FUNCTION[ordlist[x_]] := True (* added 1999 October 2 based on PAIRSET.6 *) FUNCTION[PAIRSET] := True (* derived 2005 August 17 in PRIMESEQ.NB *) FUNCTION[PRIMESEQ] := True (* derived 2004 March 4 in PAIRSET.NB *) FUNCTION[set[pair[x_,y_],pair[y_,x_]]] := and[member[x,V],member[y,V]] (* derived 2004 June 13 in X1233.NB *) FUNCTION[set[pair[w_,x_],pair[y_,z_]]] := or[and[equal[x,z],member[w,V],member[x,V],member[y,V]], and[member[w,V],member[x,V],member[y,V],member[z,V],not[equal[w,y]]]] (* added 2002 November 29 based on PLUS.NB *) FUNCTION[PLUS] := True (* added 2003 August 7 based on PLUS.NB *) FUNCTION[plus[x_]] := True (* added 1998 July 18 *) FUNCTION[POWER] := True (* derived 2004 June 18 in NON-FUNS.NB *) FUNCTION[PS] := False (* derived 2004 June 18 in NON-FUNS.NB *) FUNCTION[Q] := False (* derived 2008 October 9 in QUASIGP.NB *) FUNCTION[quasigp[x_]] := True (* added 2001 July 12 based on RANK-1.NB *) FUNCTION[RANK] := True (* Theorem RC-FU in RC proved 2001 September 3 *) FUNCTION[RC[x_]] := True (* added 2002 February 3 based on RCF.NB *) FUNCTION[RCF] := True (* derived 2008 May 4 in APORDREC.NB *) FUNCTION[rec[funpart[x_],composite[inverse[E],id[OMEGA]]]] := True (* derived 2008 May 4 in WFINTHIN.NB *) FUNCTION[rec[funpart[x_],thinpart[inverse[wf[y_]]]]] := True (* derived 2004 June 18 in NON-FUNS.NB *) FUNCTION[RESTRICT] := False (* added 2001 January 20 based on RIF-2.NB *) FUNCTION[RIF] := True (* added 1999 August 16 based on session OO-L-R *) FUNCTION[RIGHT[x_]] := True FUNCTION[RightPairV] := True (* added 1999 August 2 *) FUNCTION[ROT] := True (* added 2002 June 15 based on REPLACE.NB *) FUNCTION[rotate[composite[inverse[IMAGE[DUP]],E]]] := True (* added 2002 June 15 based on REPLACE.NB *) FUNCTION[rotate[composite[inverse[IMAGE[id[x_]]],E]]] := FUNCTION[composite[Id,x]] (* added 2002 June 15 based on REPLACE.NB *) FUNCTION[rotate[composite[inverse[IMAGE[LEFT[x_]]],E]]] := not[member[x,V]] (* added 2002 June 15 based on REPLACE.NB *) FUNCTION[rotate[composite[inverse[IMAGE[RIGHT[x_]]],E]]] := True (* derived 2008 October 9 in QUASIGP.NB *) FUNCTION[rotate[composite[quasigp[x_],SWAP]]] := True (* added 2002 June 15 based on REPLACE.NB *) FUNCTION[rotate[E]] := False (* derived 2007 January 3 in FUNPRZML.NB *) FUNCTION[rotate[INTMUL]] := False (* added 2002 June 15 based on CANCEL.NB *) FUNCTION[rotate[NATADD]] := True (* derived 2007 February 10 in EX-8.NB *) FUNCTION[rotate[NATEXP]] := False (* derived 2006 October 28 in NATDIV.NB *) FUNCTION[rotate[NATMUL]] := False (* derived 2008 October 9 in QUASIGP.NB *) FUNCTION[rotate[quasigp[x_]]] := True (* Theorem ID-SR-FU in ID1 proved 1998 August 14 *) FUNCTION[S] := False (* Theorem 2ND-FU in 2ND *) FUNCTION[SECOND] := True (* derived 2008 October 19 in SEMIGP.NB *) FUNCTION[semigp[x_]] := True (* derived 2004 November 12 in SETPFUNP.NB *) FUNCTION[setpart[funpart[x_]]] := True (* Theorem SG-FU1 in SG1 *) FUNCTION[SINGLETON] := True (* derived 2004 March 4 in PAIRSET.NB *) FUNCTION[set[x_]] := or[member[first[x],V],not[member[x,V]]] (* derived 2004 June 18 in NON-FUNS.NB *) FUNCTION[SMALLER] := False (* derived 2004 June 18 in NON-FUNS.NB *) FUNCTION[SUBCOMMUTE] := False (* added 2000 February 15 based on SUBVAR2.LOG *) FUNCTION[SUBVAR] := True (* Theorem SUC-FU in SUC-RELATION *) FUNCTION[SUCC] := True (* Theorem SW-FU in SW3 *) FUNCTION[SWAP] := True (* added 1999 December 2 based on SYMDIF-2.NB *) FUNCTION[SYMDIF] := True (* added 2000 January 7 based on TCMEMBER.NB *) FUNCTION[TC] := True (* derived 2006 September 23 in TIMES.NB *) FUNCTION[TIMES] := True (* derived 2005 July 17 in TIMES.NB *) FUNCTION[times[x_]] := True (* Theorem TW-1 in TWIST proved 1999 July 30 *) FUNCTION[TWIST] := True (* derived 2008 July 5 in UBD-DEFN.NB *) FUNCTION[UBD] := True (* derived 2007 June 25 in UCH-HULL.NB *) FUNCTION[UCHAINS] := True (* added 2001 May 10 based on UCLOS-1.NB *) FUNCTION[UCLOSURE] := True (* derived 2008 December 7 in NATMUL.NB *) FUNCTION[union[x_,y_]] := False /; not[FUNCTION[x]] (* derived 2005 November 25 in TOTAL-FU.NB *) FUNCTION[union[x_,cart[complement[domain[x_]],set[y_]]]] := FUNCTION[x] (* derived 2004 May 4 in CORE-IMS.NB *) FUNCTION[union[cart[complement[x_],set[0]],id[x_]]] := True (* derived 2004 September 5 in WF-REC-4.NB *) FUNCTION[union[cart[complement[x_],set[y_]],composite[VERTSECT[z_],id[x_]]]] := True (* derived 2006 June 10 in DORAPROJ.NB *) FUNCTION[union[cart[intersection[x_,complement[y_]],set[z_]],id[y_]]] := True (* derived 2005 January 7 in CARD-OM.NB *) FUNCTION[union[cart[set[0],set[omega]],composite[inverse[SUCC],id[omega]]]] := True (* derived 2006 August 22 in CHAR.NB *) FUNCTION[union[cart[x_,set[u_]],cart[y_,set[v_]]]] := or[equal[0,intersection[x,y]],equal[u,v],not[member[u,V]],not[member[v,V]]] (* derived 2005 January 7 in CARD-OM.NB *) FUNCTION[union[cart[set[omega],set[0]],composite[id[omega],SUCC]]] := True (* derived 2006 August 15 in CLOCK-AP.NB *) FUNCTION[union[cart[set[x_],set[y_]],cart[set[y_],set[x_]]]] := True (* added 2003 October 15 based on FUNRULES.NB *) FUNCTION[union[x_,complement[image[V,y_]]]] := and[FUNCTION[x],not[equal[0,y]]] (* added 2003 October 15 based on FUNRULES.NB *) FUNCTION[union[x_,image[V,y_]]] := and[equal[0,y],FUNCTION[x]] (* derived 2008 December 20 in PSEUDOCAT.NB *) FUNCTION[union[inverse[LEFT[0]],inverse[RIGHT[0]]]] := True (* derived 2004 September 14 in WF-REC-6.NB *) FUNCTION[union[RANK,cart[complement[REGULAR],set[0]]]] := True (* added 2003 June 6 based on FUNCTION.NB *) FUNCTION[V] := False (* added 1999 July 12 based on PROOF.TXT *) FUNCTION[VERTSECT[x_]] := True (* added 2003 June 11 based on VS.NB *) FUNCTION[VS] := True (* derived 2004 September 25 in LAMB-WF.NB *) FUNCTION[WFPART] := True (* derived 2004 November 16 in XS.NB *) FUNCTION[XS] := True (* derived 2004 June 18 in NON-FUNS.NB *) FUNCTION[ZN] := False (* derived 2009 January 16 in FUNCTOR.NB *) functor[0,x_,y_] := equal[0,domain[x]] (* derived 2009 January 16 in FUNCTOR.NB *) functor[w_,x_,composite[y_,id[cart[V,V]]]] := functor[w,x,y] (* derived 2009 January 16 in FUNCTOR.NB *) functor[w_,composite[x_,SWAP],y_] := functor[w,composite[x,id[cart[V,V]]],composite[y,SWAP]] (* derived 2009 January 16 in FUNCTOR.NB *) functor[id[range[x_]],x_,x_] := subclass[domain[x],cart[range[x],range[x]]] (* Theorem FUNPART2 in FU1 *) funpart[x_] := x /; FUNCTION[x] (* added 1999 September 2 based on FUNPART.LOG *) funpart[cart[x_,y_]] := cart[x,intersection[y,complement[image[Di,y]]]] (* derived 2008 August 24 in FUNPART.NB *) funpart[COMMUTE] := 0 (* based on a session 1999 July 8 *) funpart[complement[E]] := 0 (* derived 2006 December 9 in EXTRA.NB *) funpart[complement[image[V,x_]]] := 0 (* based on a session 1999 July 8 *) funpart[complement[inverse[E]]] := 0 (* based on a session 1999 July 8 *) funpart[complement[inverse[S]]] := 0 (* based on a session 1999 July 8 *) funpart[complement[S]] := 0 (* added 1999 September 2 based on FUNPART.LOG *) funpart[composite[x_,y_]] := composite[funpart[x],y] /; FUNCTION[y] (* added 1999 October 24 based on FUNPART.5 *) funpart[composite[x_,y_]] := 0 /; composite[Di,x] == cart[V,V] (* added 1999 October 24 based on FUNPART.4 *) funpart[composite[Di,x_]] := 0 (* based on a session 1999 July 9 *) funpart[composite[E,x_]] := 0 (* Theorem AP-FUNP2 in AP2 proved 1999 July 9 *) funpart[composite[x_,funpart[y_]]] := composite[funpart[x],funpart[y]] (* based on a session 1999 July 9 *) funpart[composite[Id,x_]] := funpart[x] (* added 2002 May 19 based on FUNP-INE.NB *) funpart[composite[x_,inverse[E]]] := composite[inverse[SINGLETON],IMAGE[x]] (* discovered 1999 December 20 in CANCEL.NB *) funpart[composite[inverse[POWER],S]] := 0 (* added 2002 May 19 based on FUNP-INE.NB *) funpart[composite[inverse[SINGLETON],Di]] := 0 (* based on a session 1999 July 9 *) funpart[composite[S,x_]] := 0 (* derived 2004 May 14 in CROSSFUN.NB *) funpart[cross[x_,y_]] := cross[funpart[x],funpart[y]] (* based on a session 1999 July 8 *) funpart[Di] := 0 (* based on a session 1999 July 8 *) funpart[DISJOINT] := 0 (* derived 2006 August 4 in TIMES-0.NB *) funpart[DIV] := cart[set[0],set[0]] (* based on a session 1999 July 8 *) funpart[E] := 0 (* derived 2008 August 24 in FUNPART.NB *) funpart[EQUIDIFF] := 0 (* Theorem FUNPART5 in FU1 proved 1999 July 8 *) funpart[funpart[x_]] := funpart[x] (* derived 2006 December 9 in EXTRA.NB *) funpart[image[V,x_]] := 0 (* derived 2003 December 21 in INTADD.NB *) funpart[intadd[x_,y_]] := intersection[image[V,intersection[Z,set[x]]], image[V,intersection[Z,set[y]]],intadd[x,y]] (* derived 2004 June 14 in FU-F-O.NB *) funpart[intersection[x_,composite[Di,x_]]] := 0 (* added 2002 April 10 based on INVAR.NB *) funpart[INVAR] := 0 (* derived 2008 August 24 in FUNPART.NB *) funpart[inverse[BIGCAP]] := 0 (* derived 2008 August 24 in FUNPART.NB *) funpart[inverse[CAP]] := 0 (* derived 2005 February 19 in ONE-DIV.NB *) funpart[inverse[DIV]] := cart[set[set[0]],set[set[0]]] (* Theorem FUNP-SG in FU1 proved 1999 July 8 *) funpart[inverse[E]] := inverse[SINGLETON] (* added 1999 September 3 based on FUNPART.LOG *) funpart[inverse[FIRST]] := 0 (* derived 2004 May 9 in OOPART.NB *) funpart[inverse[funpart[x_]]] := inverse[oopart[funpart[x]]] (* derived 2008 August 24 in FUNPART.NB *) funpart[inverse[INVAR]] := 0 (* based on a session 1999 July 8 *) funpart[inverse[S]] := cart[set[0],set[0]] (* added 1999 September 3 based on FUNPART.LOG *) funpart[inverse[SECOND]] := 0 (* derived 2006 October 28 in NATDIV.NB *) funpart[inverse[times[x_]]] := intersection[image[V,x],inverse[times[x]]] (* added 2001 July 15 based on FUNPART.NB *) funpart[inverse[ZN]] := 0 (* added 2000 November 16 based on FUNPART.NB *) funpart[K] := 0 (* added 1999 October 24 based on FUNPART.2 *) funpart[omega] := 0 (* added 1999 October 24 based on FUNPART.2 *) funpart[OMEGA] := 0 (* based on a session 1999 July 8 *) funpart[PS] := 0 (* added 2001 July 15 based on FUNPART.NB *) funpart[Q] := cart[set[0],set[0]] (* added 1999 October 24 based on FUNPART.2 *) funpart[REGULAR] := 0 (* added 2000 September 8 based on FUNPART.NB *) funpart[rotate[composite[g_,E]]] := composite[inverse[SINGLETON],IMG,cross[inverse[g],SINGLETON]] /; INVFUN[g] (* added 2000 September 8 based on FUNPART.NB *) funpart[rotate[E]] := composite[inverse[SINGLETON],IMG,cross[Id,SINGLETON]] (* derived 2007 January 3 in FUNPRZML.NB *) funpart[rotate[INTMUL]] := composite[rotate[INTMUL],id[cart[V,complement[set[id[omega]]]]]] (* derived 2006 October 28 in NATDIV.NB *) funpart[rotate[NATMUL]] := composite[rotate[NATMUL],id[cart[V,complement[set[0]]]]] (* added 1999 September 3 based on FUNPART.LOG *) funpart[S] := 0 (* added 2001 November 13 based on REPLACE.NB *) funpart[set[x_]] := cart[set[first[x]],set[second[x]]] (* derived 2008 August 24 in FUNPART.NB *) funpart[SUBCOMMUTE] := 0 (* derived 2004 May 14 in THINPART.NB *) funpart[thinpart[x_]] := funpart[x] (* added 2000 August 14 based on FUNPART.NB *) funpart[union[x_,y_]] := union[intersection[complement[composite[Di,x]],funpart[y]], intersection[complement[composite[Di,y]],funpart[x]]] (* based on a session 1999 July 8 *) funpart[V] := 0 (* added 2001 July 15 based on FUNPART.NB *) funpart[ZN] := cart[set[0],set[0]] (* derived 2005 September 27 in EXAMPLES.NB *) GLB[0] := 0 (* derived 2005 September 27 in GLB-LUB.NB *) GLB[cart[x_,y_]] := cart[P[y],intersection[x,y]] (* derived 2005 September 27 in EXAMPLES.NB *) GLB[complement[E]] := composite[intersection[complement[inverse[E]],inverse[S]],BIGCUP] (* derived 2005 September 27 in EXAMPLES.NB *) GLB[complement[S]] := 0 (* derived 2005 September 27 in GLB-LUB.NB *) GLB[composite[Id,x_]] := GLB[x] (* derived 2006 January 19 in GLB-S-PC.NB *) GLB[composite[id[P[x_]],S]] := union[cart[set[0],set[x]],composite[BIGCAP,id[P[P[x]]]]] (* derived 2005 December 22 in LUB-S.NB *) GLB[composite[inverse[IMAGE[id[x_]]],S]] := union[cart[set[0],set[x]],composite[IMAGE[id[x]],BIGCAP]] (* derived 2005 September 27 in EXAMPLES.NB *) GLB[Di] := 0 (* derived 2005 September 27 in EXAMPLES.NB *) GLB[DISJOINT] := cart[V,set[0]] (* derived 2005 September 27 in EXAMPLES.NB *) GLB[E] := composite[intersection[S,inverse[E]],BIGCAP] (* derived 2005 September 27 in EXAMPLES.NB *) GLB[Id] := inverse[SINGLETON] (* derived 2005 September 27 in EXAMPLES.NB *) GLB[id[x_]] := union[cart[set[0],intersection[x,complement[image[Di,x]]]],composite[id[x],inverse[SINGLETON]]] (* derived 2005 October 6 in GLB-S-DI.NB *) GLB[intersection[Di,x_]] := 0 (* derived 2005 September 27 in GLB-LUB.NB *) GLB[inverse[x_]] := LUB[x] (* derived 2005 September 27 in EXAMPLES.NB *) GLB[PS] := 0 (* derived 2005 September 27 in GLB-LUB.NB *) GLB[S] := BIGCAP (* derived 2005 September 27 in EXAMPLES.NB *) GLB[V] := cart[V,V] (* added 2004 March 6 based on UB-LEAST.NB *) greatest[x_,y_] := intersection[y,ub[x,y]] (* added 2000 November 13 based on MAX.NB *) GREATEST[0] := 0 (* added 2000 November 17 based on CO-ID.NB *) GREATEST[cart[x_,y_]] := composite[inverse[E],IMAGE[id[y]],id[P[x]]] (* derived 2006 October 31 in REPLACE.NB *) GREATEST[complement[cross[Di,Id]]] := union[composite[inverse[E],IMAGE[id[complement[cart[V,V]]]]], composite[inverse[E],INVERSE,FUNPART,IMAGE[SWAP]]] (* added 2002 April 6 based on SUBST.NB *) GREATEST[complement[cross[Id,Di]]] := union[composite[inverse[E],FUNPART], composite[inverse[E],IMAGE[id[complement[cart[V,V]]]]]] (* added 2000 November 14 based on MAX.NB *) GREATEST[complement[E]] := intersection[DISJOINT,inverse[E]] (* added 2000 December 7 based on GOBACK.NB *) GREATEST[complement[inverse[x_]]] := LEAST[complement[x]] (* added 2000 December 3 based on DO-LT.NB *) GREATEST[complement[S]] := 0 (* added 2002 November 26 based on LT-GT-DI.NB *) GREATEST[composite[Di,inverse[x_]]] := LEAST[composite[x,Di]] (* added 2000 November 17 based on CO-ID.NB *) GREATEST[composite[Id,x_]] := GREATEST[x] (* added 2000 November 16 based on RESTRICT.NB*) GREATEST[composite[id[x_],y_]] := composite[id[x],GREATEST[y]] (* added 2000 November 16 based on RESTRICT.NB*) GREATEST[composite[x_,id[y_]]] := composite[GREATEST[x],id[P[y]]] (* added 2002 November 26 based on LT-GT-DI.NB *) GREATEST[composite[inverse[x_],Di]] := LEAST[composite[Di,x]] (* added 2000 November 14 based on MAX.NB *) GREATEST[Di] := 0 (* added 2000 November 13 based on MAX.NB *) GREATEST[E] := intersection[S,inverse[E]] (* derived 2006 October 12 in REPLACE.NB *) GREATEST[EQUIDIFF] := composite[inverse[E],id[cliques[EQUIDIFF]]] (* derived 2006 October 8 in GT-EQV.NB *) GREATEST[eqv[x_]] := composite[inverse[E],id[cliques[eqv[x]]]] (* added 2000 December 5 based on DO-GT.NB *) GREATEST[FINITE] := inverse[E] (* added 2000 November 13 based on MAX.NB *) GREATEST[Id] := inverse[SINGLETON] (* added 2000 December 26 based on UB-ID.NB *) GREATEST[id[x_]] := composite[id[x],inverse[SINGLETON]] (* added 2000 November 18 based on GREATEST.NB *) GREATEST[intersection[x_,y_]] := intersection[GREATEST[x],GREATEST[y]] (* added 2000 November 13 based on MAX.NB *) GREATEST[inverse[x_]] := LEAST[x] (* derived 2006 October 12 in REPLACE.NB *) GREATEST[Q] := composite[inverse[E],id[cliques[Q]]] (* derived 2004 May 2 in REGULAR.NB *) GREATEST[REGULAR] := composite[inverse[E],id[REGULAR]] (* derived 2006 March 26 in I-BC.NB *) GREATEST[S] := composite[BIGCUP,id[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]]] (* added 2002 November 26 based on LT-GT-CP.NB *) GREATEST[union[cart[x_,y_],composite[inverse[z_],Di]]] := LEAST[union[cart[y,x],composite[Di,z]]] (* added 2002 November 26 based on LT-GT-CP.NB *) GREATEST[union[cart[x_,y_],composite[Di,inverse[z_]]]] := LEAST[union[cart[y,x],composite[z,Di]]] (* added 2002 November 26 based on GREATEST.NB *) GREATEST[union[x_,complement[cart[y_,z_]]]] := union[composite[inverse[E],IMAGE[id[complement[z]]]], GREATEST[union[x,cart[complement[y],V]]]] (* added 2000 November 13 based on MAX.NB *) GREATEST[union[Id,complement[x_]]] := MINIMAL[x] (* derived 2004 July 21 in TOMINMAX.NB *) GREATEST[union[composite[id[y_],complement[x_],id[y_]],id[y_]]] := composite[id[y],MINIMAL[x],id[P[y]]] (* added 2000 November 13 based on MAX.NB *) GREATEST[V] := inverse[E] (* added 2001 March 17 based on TC-I-FUL.NB *) H[x_] := x /; full[x] (* added 2001 March 15 based on H-1.NB *) H[0] := 0 (* derived 2004 December 30 in AXREG.NB *) H[complement[set[0]]] := 0 /; AxReg (* derived 2004 December 30 in AXREG.NB *) H[FULL] := OMEGA /; AxReg (* Theorem H-5 in H proved 2001 March 14 *) H[H[x_]] := H[x] (* added 2001 March 17 based on TC-I-FUL.NB *) H[intersection[x_,y_]] := intersection[H[x],H[y]] (* added 2001 March 15 based on H-1.NB *) H[P[x_]] := P[H[x]] (* added 2001 March 17 based on TC-I-FUL.NB *) H[REGULAR] := REGULAR (* added 2001 March 17 based on TC-H.NB *) H[tc[x_]] := tc[x] (* derived 2004=5 January 25 in H.NB *) H[union[x_,complement[image[V,y_]]]] := union[complement[image[V,y]],H[x]] (* added 2001 March 17 based on TC-I-FUL.NB *) H[V] := V (* introduced 2008 January 22 in HART-FU.NB *) hartogs[x_] := intersection[OMEGA,image[Q,P[x]]] (* introduced 2004 September 12 in WF-REC-5.NB *) HISTORY[x_,y_] := composite[id[composite[IMAGE[composite[id[x],inverse[FIRST]]],VERTSECT[y]]],inverse[FIRST]] (* derived 2004 September 12 in WF-REC-5.NB *) history[composite[Id,x_],y_] := history[x,y] (* derived 2004 September 12 in WF-REC-5.NB *) history[x_,composite[Id,y_]] := history[x,y] (* derived 2008 May 3 in HISTORY.NB *) history[composite[x_,id[OMEGA]],composite[inverse[E],id[OMEGA]]] := history[x,composite[inverse[E],id[OMEGA]]] (* derived 2008 May 3 in HISTORY.NB *) history[composite[x_,id[REGULAR]],composite[inverse[E],id[REGULAR]]] := history[x,composite[inverse[E],id[REGULAR]]] (* derived 2008 May 3 in HISTORY.NB *) history[composite[x_,id[y_]],thinpart[z_]] := history[x,composite[id[y],thinpart[z]]] (* introduced 2008 May 17 *) holds[x_,y_] := member[y,x] (* derived 2009 January 21 in HOM.NB *) hom[0] := 0 (* derived 2009 January 21 in HOM.NB *) hom[composite[id[x_],inverse[DUP]]] := composite[id[x],inverse[DUP]] (* derived 2009 January 21 in HOM.NB *) hom[composite[x_,SWAP]] := composite[hom[x],SWAP] (* derived 2009 January 21 in HOM.NB *) hom[inverse[DUP]] := inverse[DUP] (* derived 2009 January 21 in HOM.NB *) hom[NATADD] := cart[cart[set[0],set[0]],omega] (* derived 2009 January 21 in HOM.NB *) hom[V] := 0 (* derived 2008 September 19 in HULL.NB *) HULL[x_] := id[x] /; equal[image[inverse[S],x],x] (* derived 2006 July 31 in HULL-Z.NB *) hull[x_,y_] := y /; member[y,x] (* derived 2007 May 9 in HULL.NB *) hull[x_,y_] := V /; not[member[y,V]] (* added 2001 May 2 based on COREHULL.NB *) HULL[0] := 0 (* derived 2004 March 29 based on HULL.NB *) hull[0,x_] := V (* derived 2004 March 29 based on HULL.NB *) hull[x_,0] := A[x] (* derived 2004 May 4 in REPLACE.NB *) hull[x_,A[x_]] := A[x] (* added 2002 May 6 based on HULL-ACL.NB *) HULL[Aclosure[x_]] := HULL[x] (* derived 2004 March 29 based on HULL.NB *) hull[Aclosure[x_],y_] := hull[x,y] (* added 2003 October 15 based on ACYCLIC.NB *) HULL[ACYCLIC] := id[ACYCLIC] (* derived 2004 March 29 based on HULL.NB *) hull[ACYCLIC,x_] := union[x,complement[image[V,intersection[ACYCLIC,set[x]]]]] (* added 2002 January 17 based on ANTISYM3.NB *) HULL[ANTISYM] := id[ANTISYM] (* added 2001 October 27 based on HULL-IMS.NB *) HULL[BIJ] := id[BIJ] (* derived 2007 May 6 in CHN-ACL.NB *) HULL[chains[x_]] := id[chains[x]] (* derived 2007 May 6 in CHN-ACL.NB *) hull[chains[x_],y_] := union[y,complement[image[V,intersection[chains[x],set[y]]]]] (* added 2001 October 27 based on HULL-IMS.NB *) HULL[cliques[x_]] := id[cliques[x]] (* derived 2007 May 6 in CHN-ACL.NB *) hull[cliques[x_],y_] := union[y,complement[image[V,intersection[cliques[x],set[y]]]]] (* added 2001 October 27 based on HULL-IMS.NB *) HULL[complement[image[S,x_]]] := id[complement[image[S,x]]] (* derived 2005 October 27 in HULL-IMS.NB *) HULL[complement[P[complement[set[x_]]]]] := composite[ADJOIN[set[x]],id[image[V,set[x]]]] (* derived 2007 July 3 in HLC-RASG.NB *) HULL[complement[range[SINGLETON]]] := Id (* derived 2005 October 5 in LUB-E.NB *) HULL[complement[set[0]]] := Id (* derived 2007 May 31 in HULL-ID.NB *) HULL[CONST] := id[CONST] (* derived 2005 October 25 in KURA14.NB *) hull[x_,core[y_,hull[x_,core[y_,z_]]]] := hull[x,core[y,z]] (* derived 2007 May 31 in HULL-ID.NB *) HULL[DEDEKIND] := id[DEDEKIND] (* derived 2007 May 31 in HULL-ID.NB *) HULL[domain[LB[x_]]] := id[domain[LB[x]]] (* derived 2007 May 31 in HULL-ID.NB *) HULL[domain[UB[x_]]] := id[domain[UB[x]]] (* added 2001 October 27 based on HULL-IMS.NB *) HULL[FINITE] := id[FINITE] (* added 2002 January 23 based on HULL-ACL.TXT *) HULL[fix[ACLOSURE]] := ACLOSURE (* added 2002 January 18 based on CLIQUES.NB *) HULL[fix[composite[DISJOINT,IMAGE[x_]]]] := id[fix[composite[DISJOINT,IMAGE[x]]]] (* added 2002 January 17 based on CLIQSWAP.NB *) HULL[fix[composite[DISJOINT,INVERSE]]] := id[fix[composite[DISJOINT,INVERSE]]] (* derived 2007 October 12 in DJ-IM-IM.NB *) HULL[fix[composite[inverse[IMAGE[x_]],DISJOINT,IMAGE[y_]]]] := id[fix[composite[inverse[IMAGE[x]],DISJOINT,IMAGE[y]]]] (* added 2003 September 5 based on FIXHULL.NB *) HULL[fix[HULL[x_]]] := HULL[x] (* derived 2007 June 5 in COA-ZN.NB *) HULL[fix[IMAGE[COARSER]]] := IMAGE[COARSER] (* derived 2007 June 6 in HLTRVRFX.NB *) HULL[fix[IMAGE[DIV]]] := composite[IMAGE[DIV],id[P[omega]]] (* derived 2007 June 6 in HLTRVRFX.NB *) HULL[fix[IMAGE[eqv[x_]]]] := composite[IMAGE[eqv[x]],id[P[fix[eqv[x]]]]] (* derived 2007 June 6 in HLTRVRFX.NB *) HULL[fix[IMAGE[INTDIV]]] := composite[IMAGE[INTDIV],id[P[Z]]] (* derived 2007 June 6 in HLTRVRFX.NB *) HULL[fix[IMAGE[INTLEQ]]] := composite[IMAGE[INTLEQ],id[P[Z]]] (* derived 2007 June 5 in COA-ZN.NB *) HULL[fix[IMAGE[inverse[COARSER]]]] := IMAGE[inverse[COARSER]] (* added 2002 June 2 based on HER-HULL.NB *) HULL[fix[IMAGE[inverse[S]]]] := IMAGE[inverse[S]] (* derived 2007 December 4 in HER-H.NB *) hull[fix[IMAGE[inverse[S]]],x_] := union[complement[image[V,set[x]]],image[inverse[S],x]] (* derived 2007 June 5 in COA-ZN.NB *) HULL[fix[IMAGE[inverse[ZN]]]] := IMAGE[inverse[ZN]] (* derived 2007 June 6 in HLTRVRFX.NB *) HULL[fix[IMAGE[po[x_]]]] := composite[IMAGE[po[x]],id[P[fix[po[x]]]]] (* derived 2007 June 6 in HLTRVRFX.NB *) HULL[fix[IMAGE[trv[rfx[x_]]]]] := composite[IMAGE[trv[rfx[x]]],id[P[fix[x]]]] (* derived 2007 June 5 in COA-ZN.NB *) HULL[fix[IMAGE[ZN]]] := IMAGE[ZN] (* derived 2007 June 25 in UCH-HULL.NB *) hull[fix[UCHAINS],Uchains[x_]] := hull[fix[UCHAINS],x] (* added 2002 January 23 based on HULL-UCL.NB *) HULL[fix[UCLOSURE]] := UCLOSURE (* derived 2004 February 25 in HULLUBLB.NB *) HULL[fix[VERTSECT[complement[composite[complement[inverse[x_]],UB[x_]]]]]] := VERTSECT[complement[composite[complement[inverse[x]],UB[x]]]] (* derived 2004 February 25 in HULLUBLB.NB *) HULL[fix[VERTSECT[complement[composite[complement[x_],LB[x_]]]]]] := VERTSECT[complement[composite[complement[x],LB[x]]]] (* added 2001 May 2 based on COREHULL.NB *) HULL[FULL] := TC (* derived 2004 March 29 based on HULL.NB *) hull[FULL,x_] := union[complement[image[V,set[x]]],tc[x]] (* added 2001 October 27 based on HULL-IMS.NB *) HULL[FUNS] := id[FUNS] (* added 2001 October 27 based on HULL-IMS.NB *) HULL[H[FINITE]] := id[H[FINITE]] (* derived 2004 March 29 based on HULL.NB *) hull[x_,hull[x_,y_]] := hull[x,y] (* derived 2004 October 7 in HULL-I.NB *) hull[x_,hull[intersection[x_,y_],z_]] := hull[intersection[x,y],z] (* derived 2007 December 19 in ACL-FUND.NB *) HULL[FUND] := id[FUND] (* derived 2008 July 15 in H-RUS.NB *) HULL[H[RUSSELL]] := id[H[RUSSELL]] (* derived 2008 August 23 in IMBCFUNS.NB *) HULL[image[inverse[BIGCUP],FUNS]] := id[image[inverse[BIGCUP],FUNS]] (* added 2001 October 27 based on HULL-IMS.NB *) HULL[image[inverse[S],x_]] := id[image[inverse[S],x]] (* revised rule derived 2004 April 25 in HULL-RC.NB *) HULL[image[RC[x_],y_]] := composite[RC[x],CORE[y],id[image[S,y]],RC[x]] (* derived 2004 April 25 in ADJOIN.NB *) HULL[image[S,x_]] := ADJOIN[A[x]] (* derived 2004 April 25 in ADJOIN.NB *) hull[image[S,x_],y_] := union[y,A[x],complement[image[V,set[y]]]] (* added 2001 May 2 based on COREHULL.NB *) HULL[image[S,set[x_]]] := ADJOIN[x] (* derived 2004 March 29 based on HULL.NB *) hull[image[S,set[x_]],y_] := union[x,y,complement[image[V,set[x]]],complement[image[V,set[y]]]] (* added 2001 October 27 based on HULL-IMS.NB *) HULL[image[V,x_]] := id[image[V,x]] (* derived 2006 August 1 in ZBCLHULL.NB *) hull[intersection[binclosed[INTADD],invar[composite[id[Z],INVERSE]]],set[composite[id[omega],SUCC]]] := Z (* derived 2006 August 1 in BCL-ZADD.NB *) hull[intersection[binclosed[INTADD],invar[IMAGE[SWAP]]],set[composite[id[omega],SUCC]]] := Z (* derived 2006 August 1 in ZBCLHULL.NB *) hull[intersection[binclosed[INTADD],invar[INVERSE]],set[composite[id[omega],SUCC]]] := Z (* derived 2007 October 12 in DJ-IM-IM.NB *) HULL[intersection[cliques[x_],P[y_]]] := id[intersection[cliques[x],P[y]]] (* derived 2005 October 27 in HULL-IMS.NB *) HULL[intersection[x_,complement[image[V,y_]]]] := composite[id[complement[image[V,y]]],HULL[x]] (* derived 2007 May 26 in A-HULL.NB *) hull[x_,intersection[y_,complement[image[V,z_]]]] := union[A[x],intersection[complement[image[V,z]],hull[x,y]]] (* derived 2005 July 24 in TC-HULL.NB *) HULL[intersection[FULL,P[tc[x_]]]] := composite[TC,id[P[tc[x]]]] (* derived 2004 October 7 in HULL-I.NB *) hull[intersection[x_,y_],hull[x_,z_]] := hull[intersection[x,y],z] (* added 2002 May 5 based on HULL.NB *) HULL[intersection[x_,image[S,set[y_]]]] := composite[HULL[x],ADJOIN[y]] (* derived 2005 October 27 in HULL-IMS.NB *) HULL[intersection[x_,image[V,y_]]] := composite[id[image[V,y]],HULL[x]] (* derived 2007 May 26 in A-HULL.NB *) hull[x_,intersection[y_,image[V,z_]]] := union[A[x],intersection[hull[x,y],image[V,z]]] (* derived 2006 July 27 in IND-Z.NB *) hull[intersection[invar[IMAGE[SWAP]],invar[IMAGE[cross[inverse[SUCC],Id]]]],set[id[omega]]] := Z (* derived 2007 May 30 in NEXT-LIM.NB *) hull[intersection[OMEGA,fix[BIGCUP]],set[0]] := omega (* derived 2007 May 30 in NEXT-LIM.NB *) hull[intersection[OMEGA,fix[BIGCUP]],set[nat[x_]]] := omega (* derived 2007 May 30 in NEXT-LIM.NB *) hull[intersection[OMEGA,fix[BIGCUP]],set[succ[ord[x_]]]] := hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x]]] (* derived 2006 May 29 in OL-AP.NB *) hull[intersection[OMEGA,x_],succ[APPLY[ordlist[x_],y_]]] := APPLY[ordlist[x],succ[y]] (* derived 2007 November 3 in RFX-TRV.NB *) hull[intersection[RFX,TRV],composite[Id,setpart[x_]]] := union[id[union[domain[setpart[x]],range[setpart[x]]]],trv[setpart[x]]] (* derived 2006 July 23 in ITERCLOK.NB *) hull[invar[clock[succ[nat[x_]]]],set[0]] := succ[nat[x]] (* derived 2006 May 13 in DBL-IND3.NB *) hull[invar[composite[HULL[intersection[OMEGA,x_]],SUCC]],set[A[intersection[OMEGA,x_]]]] := range[ordlist[x]] (* derived 2005 August 18 in IVR-PRIM.NB *) hull[invar[composite[HULL[PRIMES],SUCC]],set[succ[set[0]]]] := PRIMES (* derived 2007 May 29 in ITERSUCC.NB *) hull[invar[composite[id[OMEGA],SUCC]],set[ord[x_]]] := hull[invar[SUCC],set[ord[x]]] (* derived 2006 April 14 in PC-TOWER.NB *) hull[invar[composite[POWER,id[FULL]]],set[0]] := image[IMAGE[inverse[RANK]],omega] (* derived 2005 July 24 in RA-ITER.NB *) hull[invar[inverse[SUCC]],set[nat[x_]]] := succ[nat[x]] (* derived 2006 June 22 in PLUSTIME.NB *) hull[invar[plus[nat[x_]]],set[0]] := image[DIV,set[nat[x]]] (* derived 2006 June 22 in PLUSTIME.NB *) hull[invar[plus[nat[x_]]],set[nat[y_]]] := image[plus[nat[y]],image[DIV,set[nat[x]]]] (* derived 2006 April 11 in ZN-OM.NB *) hull[invar[POWER],set[0]] := image[IMAGE[inverse[RANK]],omega] (* derived 2006 March 29 in HULL-SET.NB *) hull[invar[SUCC],set[0]] := omega (* derived 2005 July 24 in RA-ITER.NB *) hull[invar[SUCC],set[nat[x_]]] := intersection[omega,complement[nat[x]]] (* derived 2007 May 9 in IVR-SWAP.NB *) hull[invar[SWAP],x_] := union[x,complement[image[V,set[x]]],inverse[x]] (* derived 2006 July 6 in HULL-EXP.NB *) hull[invar[times[nat[x_]]],set[set[0]]] := image[NATEXP,cart[set[nat[x]],V]] (* derived 2007 May 25 in HULL-UCL.NB *) hull[invar[x_],union[y_,z_]] := union[hull[invar[x],y],hull[invar[x],z]] (* added 2001 December 4 based on TC-ON.NB *) HULL[OMEGA] := composite[TC,id[P[OMEGA]]] (* derived 2008 April 24 in ITERPRIM.NB *) hull[omega,set[nat[x_]]] := succ[nat[x]] (* derived 2008 April 19 in SUCC-ORD.NB *) hull[OMEGA,set[ord[x_]]] := succ[ord[x]] (* added 2001 October 27 based on HULL-IMS.NB *) HULL[P[x_]] := id[P[x]] (* derived 2004 December 15 in LB-UB-RS.NB *) hull[P[x_],y_] := union[y,complement[image[V,set[y]]],image[V,intersection[y,complement[x]]]] (* derived 2005 August 18 *) hull[PRIMES,set[0]] := succ[set[0]] (* derived 2008 April 24 in ITERPRIM.NB *) hull[PRIMES,set[APPLY[PRIMESEQ,nat[x_]]]] := APPLY[PRIMESEQ,succ[nat[x]]] (* derived 2005 August 17 in PRIMESEQ.NB *) hull[PRIMES,succ[APPLY[PRIMESEQ,x_]]] := APPLY[PRIMESEQ,succ[x]] (* derived 2005 August 18 *) hull[PRIMES,succ[set[0]]] := succ[set[0]] (* derived 2005 August 8 in NEXTPRIM.NB *) hull[PRIMES,succ[succ[set[0]]]] := succ[succ[set[0]]] (* derived 2005 August 8 in NEXTPRIM.NB *) hull[PRIMES,succ[succ[succ[set[0]]]]] := succ[succ[succ[succ[set[0]]]]] (* derived 2007 May 25 in HULLRECT.NB *) HULL[range[CART]] := composite[CART,DORA,id[P[cart[V,V]]]] (* added 2001 May 2 based on ADJOIN.NB *) HULL[range[POWER]] := composite[POWER,BIGCUP] (* derived 2004 March 29 based on HULL.NB *) hull[range[POWER],x_] := union[complement[image[V,set[x]]],P[U[x]]] (* added 2003 February 26 based on HULLRASG.NB *) HULL[range[SINGLETON]] := union[cart[set[0],set[0]],id[range[SINGLETON]]] (* added 2001 October 27 based on HULL-IMS.NB *) HULL[REGULAR] := id[REGULAR] (* derived 2004 May 2 in REGULAR.NB *) hull[REGULAR,x_] := union[x,complement[image[V,intersection[REGULAR,set[x]]]]] (* derived 2007 June 10 in HULL-RFX.NB *) hull[RFX,composite[Id,setpart[x_]]] := union[composite[Id,setpart[x]],id[union[domain[setpart[x]],range[setpart[x]]]]] (* derived 2007 June 10 in HULL-RFX.NB *) hull[RFX,rfx[x_]] := union[complement[image[V,set[fix[x]]]],rfx[x]] (* derived 2007 November 3 in RFX-TRV.NB *) hull[RFX,trv[setpart[x_]]] := union[id[union[domain[setpart[x]],range[setpart[x]]]],trv[setpart[x]]] (* added 2001 May 2 based on COREHULL.NB *) HULL[set[x_]] := cart[P[x],set[x]] (* derived 2005 October 5 in GLB-DIV.NB *) hull[set[0],x_] := image[V,x] (* derived 2007 July 3 in ITERSING.NB *) hull[subvar[inverse[E]],set[0]] := set[0] (* derived 2005 July 24 in TC-HULL.NB *) HULL[succ[nat[x_]]] := composite[TC,id[P[nat[x]]]] (* derived 2005 July 24 in TC-HULL.NB *) HULL[succ[omega]] := composite[TC,id[P[omega]]] (* derived 2008 February 3 in HULL-SYM.NB *) hull[SYM,x_] := union[x,complement[image[V,set[x]]], image[V,intersection[x,complement[cart[V,V]]]],inverse[x]] (* wrapper definition introduced 2005 October 25 in TOP-WRAP.NB *) hull[TOPS,setpart[x_]] := top[x] (* derived 2004 May 12 in EQUIV.NB *) hull[TRV,composite[Id,setpart[x_]]] := trv[setpart[x]] (* derived 2007 May 25 in HULL-UCL.NB *) hull[Uclosure[x_],union[y_,z_]] := union[hull[Uclosure[x],y],hull[Uclosure[x],z]] (* derived 2007 June 6 in HLTRVRFX.NB *) HULL[Uclosure[Z]] := composite[IMAGE[EQUIDIFF],id[P[cart[omega,omega]]]] (* derived 2004 March 29 based on HULL.NB *) hull[union[x_,y_],z_] := intersection[hull[x,z],hull[y,z]] (* derived 2005 October 27 in HULL-IMS.NB *) HULL[union[x_,complement[image[V,y_]]]] := union[composite[id[image[V,y]],HULL[x]],id[complement[image[V,y]]]] (* derived 2004 March 29 based on HULL.NB *) hull[x_,union[y_,complement[image[V,z_]]]] := union[complement[image[V,z]],hull[x,y]] (* derived 2007 May 31 in HULL-ID.NB *) HULL[union[image[SINGLETON,x_],set[0]]] := id[union[image[SINGLETON,x],set[0]]] (* derived 2005 October 27 in HULL-IMS.NB *) HULL[union[x_,image[V,y_]]] := union[composite[id[complement[image[V,y]]],HULL[x]],id[image[V,y]]] (* derived 2007 May 31 in HULL-ID.NB *) HULL[union[range[SINGLETON],set[0]]] := id[union[range[SINGLETON],set[0]]] (* derived 2006 September 30 in HULL-INV.NB *) HULL[union[Z,set[0]]] := HULL[Z] (* added 2001 May 2 based on COREHULL.NB *) HULL[V] := Id (* derived 2004 March 29 based on HULL.NB *) hull[V,x_] := union[x,complement[image[V,set[x]]]] (* derived 2004 March 29 based on HULL.NB *) hull[x_,V] := V (* added 2003 September 29 based on WF.NB *) HULL[WF] := id[WF] (* derived 2006 September 2 in HULL-Z.NB *) hull[Z,cart[set[0],set[0]]] := id[omega] (* derived 2006 September 2 in HULL-Z.NB *) hull[Z,cart[set[nat[x_]],set[nat[y_]]]] := composite[inverse[plus[nat[x]]],plus[nat[y]]] (* derived 2006 September 2 in HULL-Z.NB *) hull[Z,composite[inverse[plus[x_]],plus[y_]]] := composite[inverse[plus[x]],plus[y]] (* derived 2006 September 2 in HULL-Z.NB *) hull[Z,composite[plus[x_],inverse[plus[y_]]]] := composite[inverse[plus[y]],plus[x]] (* derived 2006 September 2 in HULL-Z.NB *) hull[Z,inverse[plus[x_]]] := inverse[plus[x]] (* derived 2006 September 2 in HULL-Z.NB *) hull[Z,plus[x_]] := plus[x] (* Theorem IDX-4 in IDX1 *) id[0] := 0 (* added 2002 May 11 based on PAIR.NB *) id[cart[set[x_],set[y_]]] := cart[cart[set[x],set[y]],cart[set[x],set[y]]] id[fix[composite[x_,DUP]]] := fix[composite[DUP,x]] id[fix[composite[inverse[DUP],x_]]] := fix[composite[x,inverse[DUP]]] (* Theorem IDX-SS-3 in IDX2 proved 1998 May 30 *) id[set[x_]] := cart[set[x],set[x]] (* Theorem IDX-3 in IDX1 *) id[V] := Id (* convenient definition added 1998 August 21 *) IDP := IMAGE[DUP] (* introduced 2004 June 15 in HULIVRSW.NB *) idempotent[x_] := equal[x,composite[x,x]] (* derived 2008 December 16 in IDS.NB *) ids[0] := 0 (* derived 2008 December 28 in E.NB *) ids[binop[x_]] := set[e[binop[x]]] (* derived 2008 December 16 in IDS.NB *) ids[CAP] := 0 (* derived 2008 December 29 in MONOIDS.NB *) ids[cart[cart[set[x_],set[x_]],set[x_]]] := set[x] (* derived 2008 December 23 in IDS-FUNS.NB *) ids[CATOFUNS] := inverse[IMAGE[DUP]] (* derived 2008 December 23 in CATORELN.NB *) ids[CATORELN] := inverse[IMAGE[DUP]] (* derived 2008 December 16 in IDS.NB *) ids[COMPOSE] := 0 (* derived 2008 December 23 in IDS.NB *) ids[composite[cross[x_,y_],TWIST]] := cart[ids[x],ids[y]] (* derived 2009 January 15 in FIRST.NB *) ids[composite[FIRST,id[cart[x_,x_]]]] := intersection[x,complement[image[Di,x]]] (* derived 2008 December 23 in IDS.NB *) ids[composite[Id,x_]] := ids[x] (* derived 2008 December 16 in IDS.NB *) ids[composite[x_,id[cart[V,V]]]] := ids[x] (* derived 2009 January 11 in CAT-SPEC.NB *) ids[composite[id[x],inverse[DUP]]] := x (* derived 2009 January 15 in FIRST.NB *) ids[composite[SECOND,id[cart[x_,x_]]]] := intersection[x,complement[image[Di,x]]] (* derived 2008 December 16 in IDS.NB *) ids[composite[x_,SWAP]] := ids[x] (* derived 2008 December 23 in IDS.NB *) ids[composite[SWAP,RIF]] := Id (* derived 2009 January 11 in CAT-SPEC.NB *) ids[composite[SWAP,RIF,id[cart[x_,x_]]]] := id[fix[x]] (* derived 2008 December 23 in IDS.NB *) ids[cross[FIRST,SECOND]] := 0 (* derived 2008 December 16 in IDS.NB *) ids[CUP] := set[0] (* derived 2008 December 23 in IDS.NB *) ids[FIRST] := 0 (* derived 2008 December 16 in IDS.NB *) ids[INTADD] := set[id[omega]] (* derived 2008 December 16 in CAT-WRAP.NB *) ids[intersection[x_,complement[image[V,y_]]]] := intersection[complement[image[V,y]],ids[x]] (* derived 2008 December 16 in CAT-WRAP.NB *) ids[intersection[x_,image[V,y_]]] := intersection[ids[x],image[V,y]] (* derived 2008 December 16 in IDS.NB *) ids[INTMUL] := set[composite[id[omega],SUCC]] (* derived 2008 December 16 in IDS.NB *) ids[inverse[DUP]] := V (* derived 2008 December 23 in IDS.NB *) ids[JOIN] := set[0] (* derived 2008 December 16 in IDS.NB *) ids[NATADD] := set[0] (* derived 2008 December 16 in IDS.NB *) ids[NATMUL] := set[set[0]] (* derived 2008 December 23 in IDS.NB *) ids[SECOND] := 0 (* derived 2008 December 16 in IDS.NB *) ids[SYMDIF] := set[0] (* derived 2008 December 20 in PSEUDOCAT.NB *) ids[union[inverse[LEFT[0]],inverse[RIGHT[0]]]] := set[0] (* derived 2008 December 16 in IDS.NB *) ids[V] := 0 (* Theorem IM-0' in IM1 *) image[0,x_] := 0 (* see IMG-0 in IMG2.DEM *) IMAGE[0] := cart[V,set[0]] (* Theorem IM-0 in IM1 *) image[x_,0] := 0 (* derived 2004 January 8 in FIN-FU.NB *) image[ACLOSURE,FINITE] := intersection[FINITE,fix[ACLOSURE]] (* derived 2004 January 23 in P-FINITE.NB *) image[ACLOSURE,P[FINITE]] := intersection[fix[ACLOSURE],P[FINITE]] (* added 2001 September 30 based on ACL-3.NB *) image[ACLOSURE,range[POWER]] := range[POWER] (* derived 2007 July 11 in CONSTHUL.NB *) image[ACLOSURE,range[SINGLETON]] := range[SINGLETON] (* derived 2006 March 30 in REG-ACL.NB *) image[ACLOSURE,REGULAR] := intersection[REGULAR,fix[ACLOSURE]] (* restored 2001 October 14 based on ACL-1.NB *) image[ACLOSURE,set[x_]] := set[Aclosure[x]] (* Theorem ADJ-IM4 in ADJOIN proved 1999 April 10 *) image[ADJOIN[x_],P[y_]] := intersection[P[union[x,y]],image[S,set[x]]] (* Theorem ADJ-SS in ADJ proved 1999 March 13 *) image[ADJOIN[x_],set[y_]] := set[union[x,y]] (* derived 2004 October 10 in COMPACT0.NB *) image[ADJOIN[set[0]],COMPACT] := intersection[COMPACT,complement[P[complement[set[0]]]]] (* added 2003 September 13 based on UCL-TOPS.NB *) image[ADJOIN[set[0]],complement[set[0]]] := complement[P[complement[set[0]]]] (* derived 2008 September 17 in ADJ0-HER.NB *) image[ADJOIN[set[0]],fix[IMAGE[inverse[S]]]] := intersection[complement[set[0]],fix[IMAGE[inverse[S]]]] (* derived 2007 July 3 in ADJ-SS-0.NB *) image[ADJOIN[set[0]],fix[UCLOSURE]] := fix[UCLOSURE] (* derived 2005 January 9 in PC-CARD2.NB *) image[ADJOIN[set[0]],image[SINGLETON,range[SINGLETON]]] := image[POWER,range[SINGLETON]] (* derived 2005 February 16 in BC-OM.NB *) image[ADJOIN[set[0]],omega] := intersection[omega,complement[set[0]]] (* derived 2007 July 3 in ADJ-SS-0.NB *) image[ADJOIN[set[0]],range[CLIQUES]] := range[CLIQUES] (* derived 2007 July 3 in ADJ-SS-0.NB *) image[ADJOIN[set[0]],range[POWER]] := range[POWER] (* derived 2007 July 3 in ADJ-SS-0.NB *) image[ADJOIN[set[0]],range[SUBVAR]] := range[SUBVAR] (* revised 1999 November 30 based on ROT-SWAP.LOG *) image[ASSOC,x_] := composite[SWAP,inverse[rotate[composite[x,SWAP]]]] (* derived 2008 November 22 in ASS-PAIR.NB *) image[assoc[w_],cart[x_,image[assoc[w_],cart[y_,z_]]]] := image[assoc[w],cart[image[assoc[w],cart[x,y]],z]] (* derived 2008 November 22 in ASS-PAIR.NB *) image[assoc[funpart[x_]],cart[set[y_],set[z_]]] := set[APPLY[assoc[funpart[x]],PAIR[y,z]]] (* Theorem BA-IM-E in BIGCAP\BA1 proved 1998 December 15 *) image[BIGCAP,complement[P[x_]]] := image[inverse[S],complement[x]] (* Theorem BA-C-REG in BIGCAP/BA1 proved 1999 March 19 *) image[BIGCAP,complement[REGULAR]] := image[V,complement[REGULAR]] (* added 2001 September 30 based on ACL-3.NB *) image[BIGCAP,fix[ACLOSURE]] := V (* added 2001 September 30 based on ACL-3.NB *) image[BIGCAP,fix[UCLOSURE]] := set[0] (* added 2002 January 30 based on ACL-TRV.NB *) image[BIGCAP,image[inverse[BIGCAP],x_]] := x (* derived 2004 April 24 in BA-BC.NB *) image[BIGCAP,image[inverse[BIGCUP],x_]] := image[inverse[S],x] (* added 1998 November 10 *) image[BIGCAP,image[POWER,x_]] := intersection[image[V,x],set[0]] (* 1998 November 11 from SESSION3.LOG *) image[BIGCAP,image[S,set[x_]]] := union[complement[image[V,x]], intersection[image[V,set[x]],P[A[x]]]] (* added 1998 November 10 *) image[BIGCAP,image[SINGLETON,x_]] := x (* added 2002 May 6 based on RA-HULL.NB *) image[BIGCAP,intersection[x_,complement[set[0]]]] := image[BIGCAP,x] (* derived 2005 January 27 in BA-OM.NB *) image[BIGCAP,omega] := set[0] (* Theorem ON-BA3 in ON5 proved 1999 December 30 *) image[BIGCAP,OMEGA] := set[0] (* restored 2001 October 14 based on ACLOS-1.NB *) image[BIGCAP,P[x_]] := Aclosure[x] (* derived 2008 January 5 in CAP-FIN.NB *) image[BIGCAP,range[PAIRSET]] := V (* added 1998 August 9 *) image[BIGCAP,range[POWER]] := set[0] image[BIGCAP,range[SINGLETON]] := V (* derived 2006 March 21 in ACL-REG.NB *) image[BIGCAP,REGULAR] := REGULAR (* Theorem BA-IM-SS in BIGCAP/BA1 proved 1998 October 1 *) image[BIGCAP,set[x_]] := intersection[image[V,set[x]],set[A[x]]] (* derived 2007 September 28 in UCH-RS.NB *) image[BIGCUP,binclosed[CAP]] := V (* derived 2006 October 21 in INTDIV.NB *) image[BIGCUP,binclosed[COMPOSE]] := image[inverse[IMAGE[id[cart[V,V]]]],TRV] (* derived 2007 June 9 in CONST.NB *) image[BIGCUP,chains[S]] := V (* derived 2006 October 19 in EQV-BC.NB *) image[BIGCUP,cliques[union[DISJOINT,Id]]] := V (* Theorem FIN-BC4 in FINITE proved 2000 April 6 *) image[BIGCUP,complement[FINITE]] := complement[FINITE] (* Theorem BC-IM-PC in BIGCUP/BC proved 1998 October 6 *) image[BIGCUP,complement[P[x_]]] := image[S,complement[x]] (* Theorem BC-C-REG in BIGCUP/BC proved 1999 March 19 *) image[BIGCUP,complement[REGULAR]] := complement[REGULAR] image[BIGCUP,complement[set[0]]] := V (* Theorem FIN-BC1 in FINITE proved 2000 April 7 *) image[BIGCUP,FINITE] := V (* added 2001 September 30 based on ACL-3.NB *) image[BIGCUP,fix[ACLOSURE]] := V (* derived 2007 May 11 in VS-LEAST.NB *) image[BIGCUP,fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := V (* added 2001 September 23 based on IM-BC.NB *) image[BIGCUP,fix[IMAGE[inverse[S]]]] := V (* derived 2007 July 5 in PC-TOWER.NB *) image[BIGCUP,fix[IMAGE[ZN]]] := fix[IMAGE[ZN]] (* added 2001 September 23 based on IM-BC.NB *) image[BIGCUP,fix[UCLOSURE]] := V (* Theorem FUL-BC-2 in FUL3 added 1998 February 7 *) image[BIGCUP,FULL] := FULL (* Theorem HF-BC in HF proved 2001 March 27 *) image[BIGCUP,H[FINITE]] := H[FINITE] (* derived 2005 November 13 in COVER.NB *) image[BIGCUP,image[COARSER,x_]] := image[BIGCUP,x] (* derived 2007 September 4 in UCL-IDP.NB *) image[BIGCUP,image[IMAGE[IMAGE[DUP]],x_]] := image[IMAGE[DUP],image[BIGCUP,x]] (* derived 2007 September 4 in UCL-IDP.NB *) image[BIGCUP,image[IMAGE[IMAGE[inverse[DUP]]],x_]] := image[IMAGE[inverse[DUP]],image[BIGCUP,x]] (* derived 2007 December 20 in UCL-DO.NB *) image[BIGCUP,image[IMAGE[IMAGE[x_]],P[y_]]] := image[IMAGE[x],Uclosure[y]] (* derived 2007 July 5 in PC-TOWER.NB *) image[BIGCUP,image[IMAGE[inverse[RANK]],omega]] := image[IMAGE[inverse[RANK]],omega] (* derived 2008 October 29 in PARTN.NB *) image[BIGCUP,image[IMAGE[SECOND],image[VS,x_]]] := image[IMAGE[SECOND],x] image[BIGCUP,image[IMAGE[SINGLETON],x_]] := x (* derived 2008 July 3 in BC-IMGVS.NB *) image[BIGCUP,image[IMAGE[VERTSECT[x_]],y_]] := image[IMAGE[thinpart[x]],y] (* derived 2004 April 24 in BA-BC.NB *) image[BIGCUP,image[inverse[BIGCAP],x_]] := image[S,x] (* derived 2005 November 13 in COVER.NB *) image[BIGCUP,image[inverse[COARSER],x_]] := image[BIGCUP,x] (* derived 2004 October 12 in CMPCT-OM.NB *) image[BIGCUP,image[inverse[S],omega]] := omega (* derived 2008 January 6 in ALLCL-BC.NB *) image[BIGCUP,image[PAIRSET,x_]] := image[CUP,x] (* added 1998 November 10 *) image[BIGCUP,image[POWER,x_]] := x (* added 1998 November 10 *) image[BIGCUP,image[S,set[x_]]] := image[S,set[U[x]]] image[BIGCUP,image[SINGLETON,x_]] := x (* derived 2007 June 23 in UCHAINS.NB *) image[BIGCUP,intersection[chains[S],P[x_]]] := Uchains[x] (* derived 2006 October 19 in EQV-BC.NB *) image[BIGCUP,intersection[cliques[union[DISJOINT,Id]],P[image[CART,Id]]]] := EQV (* derived 2008 November 4 in EQV.NB *) image[BIGCUP,intersection[cliques[union[DISJOINT,Id]],P[image[CART,id[complement[set[0]]]]]]] := EQV (* derived 2006 March 26 in IM-BC-ON.NB *) image[BIGCUP,intersection[complement[subvar[inverse[E]]],P[OMEGA]]] := OMEGA (* derived 2008 January 2 in U-FIN-CH.NB *) image[BIGCUP,intersection[FINITE,chains[S],P[x_]]] := union[x,set[0]] (* Theorem FIN-SC5 in FINITE proved 2000 April 16 *) image[BIGCUP,intersection[FINITE,P[FINITE]]] := FINITE (* derived 2008 January 6 in REGULAR.NB *) image[BIGCUP,intersection[FINITE,REGULAR]] := REGULAR (* derived 2006 March 26 in IM-BC-ON.NB *) image[BIGCUP,intersection[x_,fix[BIGCUP]]] := intersection[x,fix[BIGCUP]] (* added 2002 January 22 based on UCLUCL.NB *) image[BIGCUP,intersection[image[inverse[BIGCUP],y_],P[x_]]] := intersection[y,Uclosure[x]] (* added 2003 June 4 based on LIMITORD.NB *) image[BIGCUP,intersection[invar[SUCC],P[OMEGA]]] := intersection[OMEGA,fix[BIGCUP]] (* derived 2006 March 26 in IM-BC-ON.NB *) image[BIGCUP,intersection[OMEGA,complement[fix[BIGCUP]]]] := OMEGA (* derived 2005 February 16 in BC-OM.NB *) image[BIGCUP,intersection[omega,complement[set[0]]]] := omega (* derived 2006 March 26 in IM-BC-ON.NB *) image[BIGCUP,intersection[P[OMEGA],subvar[inverse[E]]]] := intersection[OMEGA,fix[BIGCUP]] (* added 2003 June 28 based on IM-BC.NB *) image[BIGCUP,intersection[x_,P[P[y_]]]] := intersection[image[BIGCUP,x],P[y]] (* Theorem POW-BC11 in POW5 proved 1999 January 28 *) image[BIGCUP,intersection[x_,range[POWER]]] := image[inverse[POWER],x] (* Session BC-SG.LOG *) image[BIGCUP,intersection[x_,range[SINGLETON]]] := image[inverse[SINGLETON],x] (* derived 2008 August 13 in IVR-IMBC.NB *) image[BIGCUP,invar[IMAGE[inverse[S]]]] := fix[IMAGE[inverse[S]]] (* Theorem OM-BC-2 in OM4 proved 1998 September 17 *) image[BIGCUP,omega] := omega (* Theorem ON-PC-4 in ON5 added 1998 February 7 *) image[BIGCUP,OMEGA] := OMEGA (* added 2001 September 22 based on UCL.NB *) image[BIGCUP,P[x_]] := Uclosure[x] (* derived 2003 December 30 in PTCLOSED.NB *) image[BIGCUP,PointClosed] := V (* added 2002 December 17 based on UCL-Z.NB *) image[BIGCUP,range[IMAGE[VERTSECT[x_]]]] := range[IMAGE[x]] (* derived 2007 April 26 in RA-FU.NB *) image[BIGCUP,range[PAIRSET]] := V (* added 1998 August 9 *) image[BIGCUP,range[POWER]] := V image[BIGCUP,range[SINGLETON]] := V (* derived 2007 July 17 in RA-SBV.NB *) image[BIGCUP,range[SUBVAR]] := V (* Theorem BC-REG-1 in BIGCUP/BC proved 1999 March 4 *) image[BIGCUP,REGULAR] := REGULAR (* derived 2005 November 17 in RUSSELL.NB *) image[BIGCUP,RUSSELL] := V (* Theorem BC-IM-6 in BIGCUP/BC added 1998 August 4 *) image[BIGCUP,set[x_]] := set[U[x]] (* added 2001 September 22 based on UCL.NB *) image[BIGCUP,succ[set[0]]] := set[0] (* derived 2003 December 27 in T1.NB *) image[BIGCUP,T1] := V (* derived 2003 December 30 in T2.NB *) image[BIGCUP,T2] := V (* added 2003 March 18 based on TOPS-IBC.NB *) image[BIGCUP,TOPS] := V (* derived 2008 November 26 in AP-BINOP.NB *) image[binop[x_],cart[set[y_],set[z_]]] := set[APPLY[binop[x],PAIR[y,z]]] (* derived 2007 May 28 in CAP-HULL.NB *) image[CAP,ACLOSURE] := V (* derived 2007 May 28 in CAP-HULL.NB *) image[CAP,ADJOIN[x_]] := image[V,set[x]] (* added 2002 January 19 based on ACLOSURE.NB *) image[CAP,cart[Aclosure[x_],Aclosure[x_]]] := Aclosure[x] (* derived 2008 April 30 in ACYCLIC.NB *) image[CAP,cart[ACYCLIC,image[CART,Id]]] := ACYCLIC (* added 2002 January 19 based on ANTISYM.NB *) image[CAP,cart[ANTISYM,ANTISYM]] := ANTISYM (* derived 2005 January 17 in BIJ-PO.NB *) image[CAP,cart[ANTISYM,image[CART,Id]]] := ANTISYM (* added 2002 January 19 based on ANTISYM.NB *) image[CAP,cart[BIJ,BIJ]] := BIJ (* derived 2008 May 1 in SYM-RS.NB *) image[CAP,cart[BIJ,image[CART,Id]]] := BIJ (* derived 2008 February 16 in CAP.NB *) image[CAP,cart[x_,cliques[y_]]] := intersection[cliques[y],image[inverse[S],x]] (* derived 2008 February 16 in CAP.NB *) image[CAP,cart[cliques[x_],y_]] := intersection[cliques[x],image[inverse[S],y]] (* derived 2008 May 1 in SYM-RS.NB *) image[CAP,cart[CONST,image[CART,Id]]] := CONST (* derived 2005 February 6 in IVR-SBV.NB *) image[CAP,cart[DESCENDING,FULL]] := DESCENDING (* derived 2004 December 27 in CAP-EQV.NB *) image[CAP,cart[EQV,image[CART,Id]]] := EQV (* derived 2008 January 5 in CAP-FIN.NB *) image[CAP,cart[x_,FINITE]] := intersection[FINITE,image[inverse[S],x]] (* derived 2008 January 5 in CAP-FIN.NB *) image[CAP,cart[FINITE,x_]] := intersection[FINITE,image[inverse[S],x]] (* derived 2005 February 6 in IVR-SBV.NB *) image[CAP,cart[FULL,DESCENDING]] := DESCENDING (* added 2002 January 19 based on ANTISYM.NB *) image[CAP,cart[FUNS,FUNS]] := FUNS (* derived 2008 May 1 in SYM-RS.NB *) image[CAP,cart[FUNS,image[CART,Id]]] := FUNS (* derived 2008 April 30 in ACYCLIC.NB *) image[CAP,cart[image[CART,Id],ACYCLIC]] := ACYCLIC (* derived 2005 January 17 in BIJ-PO.NB *) image[CAP,cart[image[CART,Id],ANTISYM]] := ANTISYM (* derived 2008 May 1 in SYM-RS.NB *) image[CAP,cart[image[CART,Id],BIJ]] := BIJ (* derived 2008 May 1 in SYM-RS.NB *) image[CAP,cart[image[CART,Id],CONST]] := CONST (* derived 2004 December 27 in CAP-EQV.NB *) image[CAP,cart[image[CART,Id],EQV]] := EQV (* derived 2005 October 15 in OO-FIN.NB *) image[CAP,cart[image[CART,Id],FINITE]] := intersection[FINITE,P[cart[V,V]]] (* derived 2008 May 1 in SYM-RS.NB *) image[CAP,cart[image[CART,Id],FUNS]] := FUNS (* derived 2008 May 1 in SYM-RS.NB *) image[CAP,cart[image[CART,Id],INVOL]] := INVOL (* derived 2004 March 21 in PO-WRAP.NB *) image[CAP,cart[image[CART,Id],PO]] := PO (* derived 2005 January 16 in FUN-RFX.NB *) image[CAP,cart[image[CART,Id],RFX]] := RFX (* derived 2008 May 1 in SYM-RS.NB *) image[CAP,cart[image[CART,Id],SYM]] := SYM (* derived 2005 October 11 in TO-RS.NB *) image[CAP,cart[image[CART,Id],TO]] := TO (* derived 2004 December 27 in CAP-TRV.NB *) image[CAP,cart[image[CART,Id],TRV]] := TRV (* derived 2005 October 11 in WF-XFORM.NB *) image[CAP,cart[image[CART,Id],WF]] := WF (* derived 2008 May 1 in SYM-RS.NB *) image[CAP,cart[image[CART,Id],WO]] := WO (* derived 2008 February 16 in CAP.NB *) image[CAP,cart[x_,image[inverse[S],y_]]] := intersection[image[inverse[S],x],image[inverse[S],y]] (* derived 2008 February 16 in CAP.NB *) image[CAP,cart[image[inverse[S],x_],y_]] := intersection[image[inverse[S],x],image[inverse[S],y]] (* derived 2003 December 25 in RC-CUP.NB *) image[CAP,cart[image[RC[x_],FINITE],image[RC[x_],FINITE]]] := image[RC[x],FINITE] (* derived 2004 June 26 in X1650.NB *) image[CAP,cart[intersection[RFX,TRV],PO]] := PO (* derived 2008 May 1 in SYM-RS.NB *) image[CAP,cart[INVOL,image[CART,Id]]] := INVOL (* Theorem ON-OM-I2 in ON6 proved 2000 March 11 *) image[CAP,cart[omega,omega]] := omega (* added 2001 November 11 based on CHAINS.NB *) image[CAP,cart[OMEGA,OMEGA]] := OMEGA (* derived 2007 December 12 in COREDESC.NB *) image[CAP,cart[P[x_],y_]] := intersection[image[inverse[S],y],P[x]] (* derived 2007 December 12 in COREDESC.NB *) image[CAP,cart[x_,P[y_]]] := intersection[image[inverse[S],x],P[y]] (* added 1999 November 16 based on CAP-CUP.NB *) image[CAP,cart[P[x_],P[y_]]] := P[intersection[x,y]] (* added 2003 March 18 based on INDSCRET.NB *) image[CAP,cart[set[0,x_],set[0,x_]]] := set[0,x] (* derived 2004 March 21 in PO-WRAP.NB *) image[CAP,cart[PO,image[CART,Id]]] := PO (* added 2001 October 9 based on TRV-1.NB *) image[CAP,cart[range[CART],range[CART]]] := range[CART] (* derived 2004 December 27 in CAP-TRV.NB *) image[CAP,cart[range[CART],TRV]] := TRV (* derived 2007 December 12 in COREDESC.NB *) image[CAP,cart[REGULAR,x_]] := intersection[REGULAR,image[inverse[S],x]] (* derived 2007 December 12 in COREDESC.NB *) image[CAP,cart[x_,REGULAR]] := intersection[REGULAR,image[inverse[S],x]] (* added 2002 January 19 based on ANTISYM.NB *) image[CAP,cart[REGULAR,REGULAR]] := REGULAR (* added 1999 October 5 based on CAP-IMSS.LOG *) image[CAP,cart[set[x_],set[y_]]] := intersection[image[V,set[x]],image[V,set[y]], set[intersection[x,y]]] (* added 1999 October 5 based on ASSOC.2 *) image[CAP,cart[range[SINGLETON],range[SINGLETON]]] := union[range[SINGLETON],set[0]] (* derived 2005 January 16 in FUN-RFX.NB *) image[CAP,cart[RFX,image[CART,Id]]] := RFX (* based on 1999/DEC/16/CAP.NB *) image[CAP,cart[x_,set[y_]]] := intersection[image[V,set[y]],image[IMAGE[id[y]],x]] (* based on 1999/DEC/16/CAP.NB *) image[CAP,cart[set[x_],y_]] := intersection[image[V,set[x]],image[IMAGE[id[x]],y]] (* derived 2005 February 6 in IVR-SBV.NB *) image[CAP,cart[subvar[inverse[thinpart[x_]]],invar[thinpart[x_]]]] := subvar[inverse[thinpart[x]]] (* derived 2008 May 1 in SYM-RS.NB *) image[CAP,cart[SYM,image[CART,Id]]] := SYM (* added 2002 January 19 based on SYM.NB *) image[CAP,cart[SYM,SYM]] := SYM (* derived 2008 April 30 in TO-FP.NB *) image[CAP,cart[TO,image[CART,Id]]] := TO (* derived 2005 October 25 in TOP-WRAP.NB *) image[CAP,cart[top[x_],top[x_]]] := top[x] (* derived 2004 December 27 in CAP-TRV.NB *) image[CAP,cart[TRV,image[CART,Id]]] := TRV (* derived 2004 December 27 in CAP-TRV.NB *) image[CAP,cart[TRV,range[CART]]] := TRV (* added 1999 November 2 based on IMAGE.NB *) image[CAP,cart[x_,V]] := image[inverse[S],x] (* added 1999 November 2 based on IMAGE.NB *) image[CAP,cart[V,x_]] := image[inverse[S],x] (* derived 2008 April 30 in WF.NB *) image[CAP,cart[WF,image[CART,Id]]] := WF (* derived 2004 July 20 in X2081.NB *) image[CAP,cart[WO,image[CART,Id]]] := WO (* added 1999 November 6 based on CO-2.LOG *) image[CAP,complement[cart[V,V]]] := 0 (* derived 2008 May 15 in H-PC.NB *) image[CAP,composite[HC,inverse[POWER]]] := FULL (* added 1999 November 17 based on NEWRULES.1 *) image[CAP,composite[Id,x_]] := image[CAP,x] (* derived 2004 November 6 in IMIM-CAP.NB *) image[CAP,composite[id[x_],inverse[S]]] := x (* derived 2004 November 6 in IMIM-CAP.NB *) image[CAP,composite[id[x_],S]] := image[inverse[S],x] (* derived 2006 June 9 in FUN-RASG.NB *) image[CAP,composite[inverse[E],IMAGE[SINGLETON]]] := range[SINGLETON] (* derived 2008 February 16 in CAP.NB *) image[CAP,composite[inverse[S],x_]] := fix[composite[inverse[S],x,S]] (* derived 2008 May 15 in H-PC.NB *) image[CAP,composite[POWER,inverse[HC]]] := FULL (* derived 2008 February 16 in CAP.NB *) image[CAP,composite[x_,S]] := fix[composite[inverse[S],x,S]] (* derived 2004 November 6 in IMIM-CAP.NB *) image[CAP,composite[S,id[x_]]] := x (* added 2002 May 5 based on HULL.NB *) image[CAP,CORE[x_]] := Uclosure[x] (* derived 2007 May 28 in CAP-HULL.NB *) image[CAP,HC] := FULL (* added 2002 May 5 based on HULL.NB *) image[CAP,HULL[x_]] := image[inverse[S],x] (* added 1999 October 30 based on IM-S-DJ.NB *) image[CAP,DISJOINT] := set[0] (* derived 2008 January 5 in CAP-FIN.NB *) image[CAP,FINITE] := V (* added 1999 October 30 based on IM-S-DJ.NB *) image[CAP,Id] := V (* added 1999 October 30 based on IM-S-DJ.NB *) image[CAP,id[x_]] := x (* derived 2007 May 28 in CAP-HULL.NB *) image[CAP,IMAGE[id[x_]]] := P[x] (* derived 2007 May 28 in CAP-HULL.NB *) image[CAP,IMAGE[inverse[S]]] := V (* added 2001 October 30 based on SYM-CORE.NB *) image[CAP,IMAGE[SWAP]] := SYM (* added 1999 October 28 based on MOREDIF2.NB *) image[CAP,inverse[x_]]:=image[CAP,x] (* derived 2005 January 6 in RCF.NB *) image[CAP,RC[x_]] := intersection[image[V,set[x]],set[0]] (* added 1999 November 17 based on NEWRULES.1 *) image[CAP,S] := V (* added 2001 November 16 *) image[CAP,set[x_]] := set[intersection[first[x],second[x]]] (* derived 2007 May 28 in CAP-HULL.NB *) image[CAP,TC] := V (* derived 2007 May 28 in CAP-HULL.NB *) image[CAP,UCLOSURE] := V (* derived 2006 March 15 in CARD-OO.NB *) image[CARD,BIJ] := fix[CARD] (* added 2002 May 28 based on FINITE.NB *) image[CARD,FINITE] := omega (* derived 2006 March 15 in CARD-OO.NB *) image[CARD,FUNS] := fix[CARD] (* derived 2006 August 17 in CTBL-U.NB *) image[CARD,image[INVERSE,range[PLUS]]] := set[omega] (* derived 2005 November 4 in CARD-SU.NB *) image[CARD,nat[x_]] := nat[x] (* added 2002 May 28 based on FINITE.NB *) image[CARD,omega] := omega (* added 2001 December 17 based on Q-HAT.NB *) image[CARD,OMEGA] := fix[CARD] (* derived 2005 November 5 in FIN-RELN.NB *) image[CARD,P[domain[fin[x_]]]] := succ[card[domain[fin[x]]]] (* derived 2005 November 4 in CARD-SU.NB *) image[CARD,P[fin[x_]]] := succ[card[fin[x]]] (* derived 2005 November 4 in CARD-SU.NB *) image[CARD,P[nat[x_]]] := succ[nat[x]] (* derived 2006 August 16 in OL-SU-OM.NB *) image[CARD,P[omega]] := succ[omega] (* derived 2006 August 17 in CTBL-U.NB *) image[CARD,range[PLUS]] := set[omega] (* derived 2005 January 7 in CARD-ONE.NB *) image[CARD,range[SINGLETON]] := set[set[0]] (* added 2001 December 2 based on CARD-FUN.NB *) image[CARD,set[x_]] := set[card[x]] (* derived 2006 March 12 in DENUM.NB *) image[CARD,succ[omega]] := succ[omega] (* derived 2006 August 17 in CTBL-U.NB *) image[CARD,Z] := set[omega] (* Theorem IM-CP-IM in IM3 *) image[cart[x_,y_],z_] := intersection[y,image[V,intersection[x,z]]] (* added 1998 February 22 *) IMAGE[cart[x_,y_]] := union[cart[P[complement[x]],set[0]], cart[complement[P[complement[x]]],set[y]]] (* added 2001 December 18 based on DORA.NB *) image[CART,cart[complement[set[0]],complement[set[0]]]] := intersection[complement[set[0]],range[CART]] (* Theorem FIN-CP-3 in FINITE proved 2000 September 30 *) image[CART,cart[FINITE,FINITE]] := intersection[FINITE,range[CART]] (* added 1999 October 5 based on CARTIMSS.LOG *) image[CART,cart[set[x_],set[y_]]] := intersection[image[V,set[x]],image[V,set[y]],set[cart[x,y]]] (* derived 2006 November 4 in CONSTMAP.NB *) image[CART,cart[set[0],x_]] := intersection[image[V,x],set[0]] (* derived 2006 November 4 in CONSTMAP.NB *) image[CART,cart[x_,set[0]]] := intersection[image[V,x],set[0]] (* added 1999 October 5 based on ASSOC.2 *) image[CART,cart[range[SINGLETON],range[SINGLETON]]] := image[SINGLETON,cart[V,V]] (* derived 2006 June 7 in CONST.NB *) image[CART,cart[V,range[SINGLETON]]] := CONST (* derived 2006 June 7 in CONST.NB *) image[CART,cart[V,union[x_,set[0]]]] := union[image[CART,cart[V,x]],set[0]] (* added 1999 November 6 based on CO-1.LOG *) image[CART,composite[Id,x_]] := image[CART,x] (* derived 2006 June 17 in CONST-I.NB *) image[CART,composite[inverse[E],IMAGE[SINGLETON]]] := intersection[CONST,PROJ,complement[set[0]]] (* derived 2006 June 11 in CONSTOPS.NB *) image[CART,composite[inverse[E],IMAGE[SINGLETON],inverse[DUP],inverse[CART]]] := intersection[BINOPS,CONST,complement[set[0]]] (* derived 2004 November 14 in DJ-U.NB *) image[CART,id[image[SINGLETON,x_]]] := image[SINGLETON,id[x]] (* derived 2004 November 14 in DJ-U.NB *) image[CART,id[range[SINGLETON]]] := image[SINGLETON,Id] (* derived 2005 January 17 in CP-PO.NB *) image[CART,id[union[range[SINGLETON],set[0]]]] := union[image[SINGLETON,Id],set[0]] (* added 2002 January 11 based on IMVRULES.NB *) image[w_,cart[x_,intersection[y_,image[V,z_]]]] := intersection[image[V,z],image[w,cart[x,y]]] (* added 2002 January 11 based on IMVRULES.NB *) image[w_,cart[x_,intersection[y_,complement[image[V,z_]]]]] := intersection[complement[image[V,z]],image[w,cart[x,y]]] (* added 2001 October 20 based on UB-LB.NB *) image[CART,LB[LB[x_]]] := intersection[P[x],range[CART]] (* added 1999 November 11 based on 1999/NOV/09/SESSION4.NB *) image[CART,set[0]] := 0 (* derived 2009 January 3 in CAT-AX-1.NB *) image[cat[x_],cart[u_,image[cat[x_],cart[v_,w_]]]] := image[cat[x],cart[image[cat[x],cart[u,v]],w]] (* derived 2008 December 31 in CAT-AP.NB *) image[cat[x_],cart[set[u_],set[v_]]] := set[APPLY[cat[x],PAIR[u,v]]] (* derived 2008 December 30 in CAT-WRAP.NB *) image[cat[x_],cart[V,V]] := range[cat[x]] (* derived 2008 December 23 in IDS-FUNS.NB *) image[CATOFUNS,cart[cart[set[x_],set[u_]],cart[set[y_],set[v_]]]] := cart[set[composite[x,y]],intersection[ complement[image[V,intersection[complement[v],range[y]]]], image[V,intersection[FUNS,set[y]]],image[V,intersection[map[v,u],set[x]]],set[u]]] (* derived 2008 December 23 in CATO-IDS.NB *) image[CATOFUNS,cart[inverse[IMAGE[DUP]],inverse[IMAGE[DUP]]]] := inverse[IMAGE[DUP]] (* derived 2008 December 23 in IDS-FUNS.NB *) image[CATOFUNS,cart[set[x_],set[y_]]] := cart[set[composite[first[x],first[y]]], intersection[complement[image[V,intersection[complement[second[y]],range[first[y]]]]], image[V,intersection[FUNS,set[first[y]]]], image[V,intersection[map[second[y],second[x]],set[first[x]]]],set[second[x]]]] (* derived 2008 March 9 in CHAIN-WO.NB *) image[CHAINS,image[CART,Id]] := range[POWER] (* derived 2007 May 7 in APCHAINS.NB *) image[CHAINS,set[x_]] := intersection[image[V,set[x]],set[chains[x]]] (* derived 2007 August 7 in CHN-TO.NB *) image[CHAINS,TO] := image[POWER,image[IMAGE[inverse[DUP]],TO]] (* derived 2008 March 9 in CHAIN-WO.NB *) image[CHAINS,WO] := image[POWER,image[IMAGE[inverse[DUP]],WO]] (* derived 2006 August 22 in CHAR.NB *) image[CHAR[x_],set[y_]] := intersection[complement[image[V,intersection[y,complement[x]]]], set[union[cart[y,set[set[0]]],cart[intersection[x,complement[y]],set[0]]]]] (* derived 2006 October 10 in CLIQ-RFX.NB *) image[CLIQUES,intersection[RFX,SYM]] := range[CLIQUES] (* derived 2006 October 10 in CLIQ-RFX.NB *) image[CLIQUES,RFX] := range[CLIQUES] (* added 2001 April 29 based on CLIQUES2.NB *) image[CLIQUES,set[x_]] := intersection[image[V,set[x]],set[cliques[x]]] (* derived 2006 October 10 in CLIQ-RFX.NB *) image[CLIQUES,SYM] := range[CLIQUES] (* derived 2006 August 15 in CLOCK-AP.NB *) image[clock[x_],set[y_]] := set[APPLY[clock[x],y]] (* derived 2004 February 7 in COMPACT.NB *) image[COARSER,complement[COMPACT]] := complement[COMPACT] (* derived 2004 February 7 in COMPACT.NB *) image[COARSER,complement[FINITE]] := complement[FINITE] (* derived 2004 February 7 in COMPACT.NB *) image[COARSER,complement[image[COARSER,FINITE]]] := complement[COMPACT] (* derived 2007 December 28 in COARSER.NB *) image[COARSER,complement[P[x_]]] := complement[P[x]] (* derived 2007 December 28 in COARSER.NB *) image[COARSER,complement[set[0]]] := complement[set[0]] (* derived 2007 December 28 in COARSER.NB *) image[COARSER,complement[succ[set[0]]]] := complement[succ[set[0]]] (* derived 2004 February 7 in COMPACT.NB *) image[COARSER,image[COARSER,x_]] := image[COARSER,x] (* derived 2008 January 5 in COARSER.NB *) image[COARSER,image[inverse[BIGCUP],x_]] := image[inverse[BIGCUP],x] (* derived 2008 January 5 in COARSER.NB *) image[COARSER,image[POWER,x_]] := image[POWER,x] (* derived 2008 January 5 in COARSER.NB *) image[COARSER,image[S,x_]] := image[S,x] (* derived 2003 December 31 in COARSER.NB *) image[COARSER,P[P[x_]]] := P[P[x]] (* derived 2003 December 30 in PTCLOSED.NB *) image[COARSER,PointClosed] := PointClosed (* derived 2003 December 31 in COARSER.NB *) image[COARSER,range[POWER]] := range[POWER] (* derived 2006 March 26 in IMIN-REG.NB *) image[COARSER,REGULAR] := REGULAR (* derived 2004 January 2 in COAR-ADJ.NB *) image[COARSER,set[0]] := succ[set[0]] (* derived 2008 January 5 in COARSER.NB *) image[COARSER,set[set[0]]] := set[set[0]] (* derived 2007 December 28 in COARSER.NB *) image[COARSER,succ[set[0]]] := succ[set[0]] (* derived 2003 December 27 in T1.NB *) image[COARSER,T1] := T1 (* derived 2003 December 30 in T2.NB *) image[COARSER,T2] := T2 (* derived 2009 January 5 in DOM-CAT.NB *) image[cod[cat[x_]],set[w_]] := set[APPLY[cod[cat[x]],w]] (* derived 2009 January 7 in IM-COD.NB *) image[cod[x_],ids[x_]] := ids[x] (* derived 2009 January 7 in IM-COD.NB *) image[cod[x_],image[cod[x_],y_]] := image[cod[x],y] (* derived 2009 January 7 in IM-COD.NB *) image[cod[x_],image[dom[x_],y_]] := image[dom[x],y] (* derived 2009 January 7 in IM-COD.NB *) image[cod[x_],intersection[y_,ids[x_]]] := intersection[y,ids[x]] (* added 2002 October 29 based on COMMUTE.NB *) image[COMMUTE,P[x_]] := V (* derived 2004 December 21 in COMUTANT.NB *) image[COMMUTE,set[x_]] := intersection[commutant[x],image[V,set[x]]] (* added 2004 February 17 *) image[complement[x_],y_] := complement[ub[x,y]] (* derived 2004 December 20 in IMG-U.NB *) IMAGE[complement[cart[x_,y_]]] := union[cart[intersection[complement[set[0]],P[x]],set[complement[y]]], cart[P[x],intersection[complement[image[V,complement[y]]],set[0]]],cart[set[0],set[0]]] image[x_,complement[domain[x_]]] := 0 (* Theorem IMG-E-C in IMG2 proved 1999 March 26 *) IMAGE[complement[E]] := cart[set[0],set[0]] (* added 2000 April 23 based on FINITE.NB *) IMAGE[complement[FINITE]] := cart[V,set[0]] (* derived 2004 February 17 in SU-IM-C.NB *) image[x_,complement[image[inverse[x_],complement[image[x_,y_]]]]] := image[x,y] (* Theorem IM-C-IMV in IM2 proved 1998 October 8 *) image[x_,complement[image[V,y_]]] := intersection[range[x],complement[image[V,y]]] (* from 1999 January 9 session ABSTRACT.LOG *) IMAGE[complement[inverse[E]]] := cart[set[0],set[0]] (* 1999 March 25 session IMG-ECIN *) IMAGE[complement[inverse[S]]] := cart[set[0],set[0]] (* revised 2002 April 18 based on REPLACE.NB *) IMAGE[complement[S]] := cart[succ[set[0]],set[0]] (* derived 2004 December 12 in RESTRICT.NB *) image[COMPOSE,cart[ACYCLIC,P[Id]]] := ACYCLIC (* derived 2004 December 12 in RESTRICT.NB *) image[COMPOSE,cart[ANTISYM,P[Id]]] := ANTISYM (* added 2001 November 23 based on BIJ-1.NB *) image[COMPOSE,cart[BIJ,BIJ]] := BIJ (* derived 2004 December 12 in RESTRICT.NB *) image[COMPOSE,cart[BIJ,P[Id]]] := BIJ (* derived 2007 May 6 in CHNBASIC.NB *) image[COMPOSE,cart[chains[x_],P[Id]]] := intersection[chains[x],P[cart[V,V]]] (* derived 2006 September 7 in CO-IMS-Z.NB *) image[COMPOSE,cart[cliques[EQUIDIFF],cliques[EQUIDIFF]]] := cliques[EQUIDIFF] (* derived 2004 December 12 in RESTRICT.NB *) image[COMPOSE,cart[cliques[x_],P[Id]]] := intersection[cliques[x],P[cart[V,V]]] (* derived 2006 June 10 in CONST-CO.NB *) image[COMPOSE,cart[CONST,FUNS]] := CONST (* derived 2006 June 10 in CONST-CO.NB *) image[COMPOSE,cart[CONST,P[Id]]] := CONST (* derived 2004 December 12 in RESTRICT.NB *) image[COMPOSE,cart[FINITE,P[Id]]] := intersection[FINITE,P[cart[V,V]]] (* derived 2006 June 10 in CONST-CO.NB *) image[COMPOSE,cart[FUNS,CONST]] := CONST (* added 2001 November 23 based on FUN-3.NB *) image[COMPOSE,cart[FUNS,FUNS]] := FUNS (* added 2003 May 31 based on RS-FUNS.NB *) image[COMPOSE,cart[FUNS,P[Id]]] := FUNS (* added 2001 November 23 based on BIJ-1.NB *) image[COMPOSE,cart[image[INVERSE,FUNS],image[INVERSE,FUNS]]] := image[INVERSE,FUNS] (* added 2003 July 25 based on CPS-ZXZ.NB *) image[COMPOSE,cart[image[INVERSE,range[PLUS]],image[INVERSE,range[PLUS]]]] := image[INVERSE,range[PLUS]] (* added 2002 November 29 based on PLUS.NB *) image[COMPOSE,cart[image[INVERSE,range[PLUS]],range[PLUS]]] := Z (* derived 2004 December 12 in RESTRICT.NB *) image[COMPOSE,cart[image[inverse[S],x_],P[Id]]] := intersection[image[inverse[S],x],P[cart[V,V]]] (* derived 2006 August 1 in BCL-ZADD.NB *) image[COMPOSE,cart[intersection[z_,set[x_]],set[y_]]] := intersection[image[V,intersection[z,set[x]]],image[V,set[y]],set[composite[x,y]]] (* derived 2008 October 20 in LIST.NB *) image[COMPOSE,cart[LISTS,set[0]]] := set[0] (* derived 2006 June 20 in UOBCLCPS.NB *) image[COMPOSE,cart[map[x_,x_],map[x_,x_]]] := map[x,x] (* derived 2008 October 28 in BCL-CPS.NB *) image[COMPOSE,cart[P[cart[x_,x_]],P[cart[x_,x_]]]] := P[cart[x,x]] (* derived 2008 October 28 in BCL-CPS.NB *) image[COMPOSE,cart[P[eqv[x_]],P[eqv[x_]]]] := P[eqv[x]] (* derived 2004 August 11 in RS-4.NB *) image[COMPOSE,cart[P[Id],P[x_]]] := P[composite[Id,x]] (* added 1999 December 24 based on COMPOSE.NB *) image[COMPOSE,cart[P[Id],P[Id]]] := P[Id] (* derived 2008 October 28 in BCL-CPS.NB *) image[COMPOSE,cart[P[id[x_]],P[id[x_]]]] := P[id[x]] (* derived 2004 August 11 in RS-4.NB *) image[COMPOSE,cart[P[x_],P[Id]]] := P[composite[Id,x]] (* derived 2008 October 28 in BCL-CPS.NB *) image[COMPOSE,cart[P[po[x_]],P[po[x_]]]] := P[po[x]] (* derived 2008 October 28 in BCL-CPS.NB *) image[COMPOSE,cart[P[rfx[trv[x_]]],P[rfx[trv[x_]]]]] := P[rfx[trv[x]]] (* added 2003 July 25 based on CPS-ZXZ.NB *) image[COMPOSE,cart[range[PLUS],image[INVERSE,range[PLUS]]]] := image[COMPOSE,cart[Z,Z]] (* added 2002 November 30 based on Z-PLUS.NB *) image[COMPOSE,cart[range[PLUS],range[PLUS]]] := range[PLUS] (* derived 2004 December 12 in RESTRICT.NB *) image[COMPOSE,cart[REGULAR,P[Id]]] := P[cart[REGULAR,REGULAR]] (* derived 2004 August 11 in RS-4.NB *) image[COMPOSE,cart[RS[x_],P[Id]]] := RS[x] (* derived 2005 December 25 in SELCO-RT.NB *) image[COMPOSE,cart[SELECT,FUNS]] := intersection[SELECT,P[cart[V,V]]] (* derived 2004 November 7 in SEL-RS.NB *) image[COMPOSE,cart[SELECT,P[Id]]] := intersection[SELECT,P[cart[V,V]]] (* derived 2008 November 7 in IM-CPS-0.NB *) image[COMPOSE,cart[set[0],x_]] := intersection[image[V,x],set[0]] (* derived 2008 November 7 in IM-CPS-0.NB *) image[COMPOSE,cart[x_,set[0]]] := intersection[image[V,x],set[0]] (* added 2002 November 30 based on Z-PLUS.NB *) image[COMPOSE,cart[set[id[x_]],y_]] := intersection[image[V,set[x]],image[IMAGE[id[cart[V,x]]],y]] (* derived 2004 August 10 in RS-3.NB *) image[COMPOSE,cart[set[x_],P[Id]]] := intersection[image[V,set[x]],RS[x]] (* proposed 1999 November 27 based on analogy with rule for IMG *) image[COMPOSE,cart[set[x_],set[y_]]] := intersection[image[V,set[x]],image[V,set[y]],set[composite[x,y]]] (* derived 2004 December 12 in RESTRICT.NB *) image[COMPOSE,cart[TRV,P[Id]]] := TRV (* added 2003 May 31 based on RS-CO.NB *) image[COMPOSE,cart[V,P[Id]]] := P[cart[V,V]] (* derived 2004 December 12 in RESTRICT.NB *) image[COMPOSE,cart[WF,P[Id]]] := WF (* derived 2008 June 29 in CPS-CPS.NB *) image[COMPOSE,composite[COMPOSE,id[cart[image[IMAGE[id[S]],image[CART,Id]],BIJ]], inverse[SECOND],INVERSE]] := PO (* derived 2008 June 29 in CPS-CPS.NB *) image[COMPOSE,composite[COMPOSE,id[cart[PO,BIJ]],inverse[SECOND],INVERSE]] := PO (* derived 2008 November 7 in CMT-EQV.NB *) image[COMPOSE,composite[id[EQV],COMMUTE,id[EQV]]] := EQV (* derived 2004 December 16 in VS-EQV.NB *) image[COMPOSE,composite[id[FUNS],INVERSE]] := EQV (* derived 2004 December 19 in FUNS-EQV.NB *) image[COMPOSE,composite[id[image[inverse[IMAGE[id[cart[V,V]]]],FUNS]],inverse[IMAGE[SWAP]]]] := EQV (* derived 2006 October 19 in IMVS-EQV.NB *) image[COMPOSE,composite[id[image[VS,EQV]],INVERSE]] := EQV (* derived 2008 May 29 in COREPROJ.NB *) image[COMPOSE,composite[id[x_],inverse[IMAGE[id[Id]]]]] := image[CORE[PROJ],x] (* derived 2008 January 15 in CO-SEL.NB *) image[COMPOSE,composite[id[SELECT],inverse[IMAGE[SECOND]],IMAGE[FIRST],id[SELECT]]] := intersection[SELECT,P[cart[V,V]]] (* derived 2004 December 25 in SELCO-LT.NB *) image[COMPOSE,composite[id[SELECT],inverse[IMAGE[SECOND]],inverse[S],IMAGE[FIRST],id[FUNS]]] := intersection[SELECT,P[cart[V,V]]] (* derived 2008 January 15 in CO-SEL.NB *) image[COMPOSE,composite[id[SELECT],inverse[IMAGE[SECOND]],inverse[S],IMAGE[FIRST],id[SELECT]]] := intersection[SELECT,P[cart[V,V]]] (* derived 2008 January 15 in CO-SEL.NB *) image[COMPOSE,composite[IMAGE[DUP],IMAGE[FIRST],id[x_]]] := image[IMAGE[id[cart[V,V]]],x] (* added 2002 January 16 based on IM-CPS.NB *) image[COMPOSE,composite[IMAGE[id[cart[V,V]]],x_]] := image[COMPOSE,x] (* derived 2004 December 18 in QO-FU.NB *) image[COMPOSE,composite[IMAGE[cross[Id,inverse[S]]],id[FUNS],INVERSE]] := intersection[RFX,TRV] (* added 2003 June 8 based on P-ID-FUN.NB *) image[COMPOSE,composite[INVERSE,id[BIJ]]] := P[Id] (* added 2003 June 8 based on P-ID-FUN.NB *) image[COMPOSE,composite[INVERSE,id[FUNS]]] := P[Id] (* derived 2008 June 26 in PO-BIJ.NB *) image[COMPOSE,composite[INVERSE,IMAGE[cross[inverse[S],Id]],id[BIJ]]] := PO (* added 2002 January 16 based on IM-CPS.NB *) image[COMPOSE,composite[x_,inverse[IMAGE[id[cart[V,V]]]]]] := image[COMPOSE,x] (* added 2002 January 3 based on COMPOSE.NB *) image[COMPOSE,composite[inverse[IMAGE[id[cart[x_,V]]]],inverse[IMAGE[SECOND]], DISJOINT,IMAGE[FIRST],IMAGE[id[cart[V,y_]]]]] := P[union[cart[V,complement[y]],cart[complement[x],V]]] (* added 2001 December 31 based on DORA-DJ.NB *) image[COMPOSE,composite[inverse[IMAGE[SECOND]],DISJOINT,IMAGE[FIRST]]] := set[0] (* added 2002 January 3 based on COMPRULE.NB *) image[COMPOSE,composite[LB[LB[complement[cross[x_,Id]]]],IMAGE[SWAP]]] := P[composite[Id,complement[inverse[x]]]] (* derived 2004 December 19 in QO-IDEM.NB *) image[COMPOSE,id[intersection[RFX,TRV]]] := intersection[RFX,TRV] (* derived 2004 December 19 in QO-IDEM.NB *) image[COMPOSE,id[EQV]] := EQV (* derived 2004 December 19 in QO-IDEM.NB *) image[COMPOSE,id[IDEM]] := IDEM (* added 2003 June 8 based on P-ID-FUN.NB *) image[COMPOSE,id[P[Id]]] := P[Id] (* added 2003 June 8 based on P-ID-FUN.NB *) image[COMPOSE,id[P[id[x_]]]] := P[id[x]] (* derived 2004 December 19 in QO-IDEM.NB *) image[COMPOSE,id[PO]] := PO (* derived 2006 February 7 in IVR-DUP1.NB *) image[COMPOSE,IMAGE[id[Id]]] := intersection[invar[composite[DUP,FIRST]],P[cart[V,V]]] (* derived 2008 October 31 in IMCPSINV.NB *) image[COMPOSE,IMAGE[SWAP]] := intersection[RFX,SYM] (* derived 2008 October 31 in IMCPSINV.NB *) image[COMPOSE,INVERSE] := intersection[RFX,SYM] (* derived 2006 February 7 in UCL-PROJ.NB *) image[COMPOSE,inverse[IMAGE[id[Id]]]] := intersection[invar[composite[DUP,SECOND]],P[cart[V,V]]] (* Theorem CO-IM7 in CO3 *) image[composite[x_,y_],z_] := image[x,image[y,z]] (* added 2003 June 15 based on VSCORULE.NB *) IMAGE[composite[BIGCUP,x_]] := composite[IMAGE[BIGCUP],IMAGE[x]] (* added 2003 June 15 based on VSCORULE.NB *) IMAGE[composite[complement[S],x_]] := cart[image[inverse[IMAGE[x]],succ[set[0]]],set[0]] (* Theorem IMG-IDCO in IMG2 proved 1999 March 26 *) IMAGE[composite[Id,z_]] := IMAGE[z] (* added 2003 June 15 based on VSCORULE.NB *) IMAGE[composite[inverse[E],x_]] := composite[BIGCUP,IMAGE[x]] (* added 2003 June 15 based on VSCORULE.NB *) IMAGE[composite[inverse[S],x_]] := composite[IMAGE[inverse[S]],IMAGE[x]] (* added 2003 June 15 based on VSCORULE.NB *) IMAGE[composite[POWER,x_]] := composite[IMAGE[POWER],IMAGE[x]] (* added 2003 June 15 based on VSCORULE.NB *) IMAGE[composite[SINGLETON,x_]] := composite[IMAGE[SINGLETON],IMAGE[x]] (* derived 2006 December 9 in MISC.NB *) IMAGE[composite[SWAP,cross[x_,y_]]] := composite[INVERSE,IMAGE[cross[x,y]]] (* derived 2007 December 12 in COREDESC.NB *) image[CORE[x_],complement[image[S,intersection[x,complement[set[0]]]]]] := set[0] (* derived 2007 December 12 in COREDESC.NB *) image[CORE[DESCENDING],DESCENDING] := DESCENDING (* derived 2007 December 12 in COREDESC.NB *) image[CORE[DESCENDING],FUND] := set[0] (* derived 2007 December 12 in COREDESC.NB *) image[CORE[DESCENDING],intersection[DESCENDING,x_]] := intersection[DESCENDING,x] (* derived 2007 December 12 in COREDESC.NB *) image[CORE[DESCENDING],P[complement[REGULAR]]] := DESCENDING (* derived 2004 September 24 in COREDESC.NB *) image[CORE[DESCENDING],REGULAR] := set[0] (* derived 2007 May 26 in COREHULL.NB *) image[CORE[x_],fix[HULL[y_]]] := fix[composite[CORE[x],HULL[y]]] (* derived 2007 December 12 in COREDESC.NB *) image[CORE[x_],image[CORE[x_],y_]] := image[CORE[x],y] (* derived 2004 October 4 in REPLACE.NB *) image[CORE[intersection[RFX,SYM]],EQV] := EQV (* derived 2004 October 4 in CORE-EQV.NB *) image[CORE[RFX],EQV] := EQV (* derived 2004 December 18 in RFX-WRAP.NB *) image[CORE[RFX],FUNS] := P[Id] (* derived 2008 November 4 in RFX-TRV.NB *) image[CORE[RFX],P[cart[V,V]]] := RFX (* derived 2004 December 18 in RFX-WRAP.NB *) image[CORE[RFX],P[Di]] := set[0] (* derived 2004 December 18 in RFX-WRAP.NB *) image[CORE[RFX],P[Id]] := P[Id] (* derived 2007 May 9 in RFX.NB *) image[CORE[RFX],PO] := PO (* derived 2004 October 4 in RFSYMCOR.NB *) image[CORE[RFX],RFX] := RFX (* derived 2004 October 4 in RFSYMCOR.NB *) image[CORE[RFX],SYM] := intersection[RFX,SYM] (* derived 2004 December 18 in QO-FU.NB *) image[CORE[RFX],TRV] := intersection[RFX,TRV] (* derived 2004 July 20 in X2081.NB *) image[CORE[RFX],WO] := WO (* derived 2004 April 17 in REPLACE.NB *) image[CORE[x_],set[y_]] := intersection[image[V,set[y]],set[core[x,y]]] (* derived 2008 August 8 in FIN-PP2.NB *) image[CORE[subvar[PS]],FINITE] := set[0] (* derived 2004 October 4 in CORE-EQV.NB *) image[CORE[SYM],EQV] := EQV (* derived 2004 October 4 in RFSYMCOR.NB *) image[CORE[SYM],RFX] := intersection[RFX,SYM] (* derived 2004 April 4 in TRV-EQV.NB *) image[CORE[SYM],SYM] := SYM (* derived 2004 April 4 in TRV-EQV.NB *) image[CORE[SYM],TRV] := EQV (* derived 2008 August 3 in WF-ASYM.NB *) image[CORE[SYM],WF] := set[0] (* derived 2004 October 4 in RFSYMCOR.NB *) image[CORE[x_],Uclosure[x_]] := Uclosure[x] (* Theorem X-IM-2 in X2 *) image[cross[x_,y_],z_] := composite[y,z,inverse[x]] (* added 2000 September 28 based on CROSS.NB *) image[CROSS,cart[P[complement[cart[V,V]]],V]] := set[0] (* added 1999 October 17 based on CROSS.1 *) image[CROSS,cart[set[x_],set[y_]]] := intersection[image[V,set[x]],image[V,set[y]],set[cross[x,y]]] (* added 2000 September 28 based on CROSS.NB *) image[CROSS,cart[V,P[complement[cart[V,V]]]]] := set[0] (* added 1999 November 6 based on CO-1.LOG *) image[CROSS,composite[Id,x_]] := image[CROSS,x] (* derived 2004 December 27 in FUN-TRV.NB *) image[CROSS,id[P[Id]]] := image[IMAGE[DUP],image[CART,Id]] (* derived 2007 May 28 in CUP-HULL.NB *) image[CUP,ACLOSURE] := fix[ACLOSURE] (* derived 2007 May 28 in CUP-HULL.NB *) image[CUP,ADJOIN[x_]] := image[S,set[x]] (* derived 2007 October 21 in CUP-DORA.NB *) image[CUP,cart[complement[set[0]],complement[set[0]]]] := complement[set[0]] (* derived 2005 February 4 in DK-K.NB *) image[CUP,cart[FINITE,DEDEKIND]] := DEDEKIND (* Theorem FIN-CUP2 in FINITE proved 2000 March 22 *) image[CUP,cart[FINITE,FINITE]] := FINITE (* derived 2006 August 17 in CTBL-FIN.NB *) image[CUP,cart[FINITE,image[Q,set[omega]]]] := image[Q,set[omega]] (* added 2003 September 24 based on PO-FACTS.NB *) image[CUP,cart[fix[HULL[Uclosure[x_]]],fix[HULL[Uclosure[x_]]]]] := fix[HULL[Uclosure[x]]] (* derived 2005 November 19 in HERED.NB *) image[CUP,cart[fix[IMAGE[inverse[S]]],fix[IMAGE[inverse[S]]]]] := fix[IMAGE[inverse[S]]] (* derived 2004 August 7 in IMAGECUP.NB *) image[CUP,cart[FULL,FULL]] := FULL (* derived 2008 January 2 in U-FIN-CH.NB *) image[CUP,cart[image[BIGCUP,x_],image[BIGCUP,y_]]] := image[BIGCUP,image[CUP,cart[x,y]]] (* derived 2006 January 17 in IMS-INS.NB *) image[CUP,cart[image[inverse[S],x_],image[inverse[S],x_]]] := image[inverse[S],image[CUP,cart[x,x]]] (* derived 2006 August 17 in CTBL-U.NB *) image[CUP,cart[image[Q,set[omega]],image[Q,set[omega]]]] := image[Q,set[omega]] (* derived 2005 October 27 in TOP-THMS.NB *) image[CUP,cart[image[RC[U[top[x_]]],top[x_]],image[RC[U[top[x_]]],top[x_]]]] := image[RC[U[top[x]]],top[x]] (* added 2000 January 16 based on COMBINOP.NB *) image[CUP,cart[image[SINGLETON,x_],image[SINGLETON,y_]]] := image[PAIRSET,cart[x,y]] (* derived 2008 January 2 in U-FIN-CH.NB *) image[CUP,cart[intersection[FINITE,x_],intersection[FINITE,y_]]] := intersection[FINITE,image[CUP,cart[x,y]]] (* added 2003 September 18 based on IVR-I-U.NB *) image[CUP,cart[invar[x_],invar[x_]]] := invar[x] (* derived 2006 January 17 in IMS-INS.NB *) image[CUP,cart[nat[x_],nat[x_]]] := nat[x] (* Theorem ON-OM-U2 in ON6 proved 2000 March 11 *) image[CUP,cart[omega,omega]] := omega (* added 2001 August 12 based on RANK-1.NB *) image[CUP,cart[OMEGA,OMEGA]] := OMEGA (* derived 2006 January 17 in IMS-INS.NB *) image[CUP,cart[ord[x_],ord[x_]]] := ord[x] (* derived 2007 June 10 in ADD-ID.NB *) image[CUP,cart[P[Id],ANTISYM]] := ANTISYM (* derived 2007 June 10 in ADD-ID.NB *) image[CUP,cart[P[Id],EQV]] := EQV (* derived 2007 June 10 in ADD-ID.NB *) image[CUP,cart[P[Id],intersection[RFX,TRV]]] := intersection[RFX,TRV] (* derived 2007 June 10 in ADD-ID.NB *) image[CUP,cart[P[Id],PO]] := PO (* derived 2007 June 10 in ADD-ID.NB *) image[CUP,cart[P[Id],RFX]] := RFX (* derived 2007 June 10 in ADD-ID.NB *) image[CUP,cart[P[Id],SYM]] := SYM (* derived 2007 June 10 in ADD-ID.NB *) image[CUP,cart[P[Id],TRV]] := TRV (* Theorem CUP-PC-2 in CUP proved 2000 July 21 *) image[CUP,cart[P[x_],P[y_]]] := P[union[x,y]] (* derived 2003 December 25 in TOPSDEFN.NB *) image[CUP,cart[x_,set[y_,z_]]] := union[image[ADJOIN[y],x],image[ADJOIN[z],x]] (* added 2003 September 24 based on PO-FACTS.NB *) image[CUP,cart[PO,P[Id]]] := PO (* added 2003 November 28 based on FIN-IND.NB *) image[CUP,cart[x_,range[SINGLETON]]] := union[image[K,x],intersection[x,complement[set[0]]]] (* derived 2004 January 2 in BNCL-FIN.NB *) image[CUP,cart[range[SINGLETON],x_]] := union[image[K,x],intersection[x,complement[set[0]]]] (* added 1999 October 5 based on ASSOC.2 *) image[CUP,cart[range[SINGLETON],range[SINGLETON]]] := range[PAIRSET] (* added 2002 January 8 based on REGULAR.NB *) image[CUP,cart[REGULAR,REGULAR]] := REGULAR (* added 2003 September 21 based on RFX-CORE.NB *) image[CUP,cart[RFX,RFX]] := RFX (* discovered 1999 December 16 in CUP.NB *) image[CUP,cart[x_,set[y_]]] := image[ADJOIN[y],x] (* discovered 1999 December 16 in CUP.NB *) image[CUP,cart[set[x_],y_]] := image[ADJOIN[x],y] (* added 1999 October 5 based on 1999\OCT\04\CUP-IMSS *) image[CUP,cart[set[x_],set[y_]]] := set[union[x,y]] (* added 2002 January 19 based on SYM.NB *) image[CUP,cart[SYM,SYM]] := SYM (* added 2002 November 20 based on UCL-U.NB *) image[CUP,cart[Uclosure[x_],Uclosure[y_]]] := Uclosure[union[x,y]] (* added 1999 November 2 based on IMAGE.NB *) image[CUP,cart[x_,V]] := image[S,x] (* added 1999 November 2 based on IMAGE.NB *) image[CUP,cart[V,x_]] := image[S,x] (* added 1999 October 28 based on MOREDIF2.NB *) image[CUP,cart[V,set[x_]]] := image[S,set[x]] (* added 1999 November 6 based on CO-2.LOG *) image[CUP,complement[cart[V,V]]] := 0 (* derived 2008 August 17 in IVR-CUP.NB *) image[CUP,composite[BIGCUP,TC]] := FULL (* added 1999 November 17 based on NEWRULES.1 *) image[CUP,composite[Id,x_]] := image[CUP,x] (* derived 2004 August 18 in X2812-61.NB *) image[CUP,composite[id[x_],inverse[S],id[y_]]] := intersection[y,image[S,x]] (* derived 2004 August 18 in X2812-61.NB *) image[CUP,composite[id[x_],S,id[y_]]] := intersection[x,image[S,y]] (* derived 2007 May 28 in CUP-SG.NB *) image[CUP,composite[SINGLETON,id[x_]]] := image[SUCC,x] (* derived 2004 June 14 in TP-SYM.NB *) image[CUP,composite[SINGLETON,x_,inverse[SINGLETON]]] := image[PAIRSET,x] (* added 2002 May 5 based on HULL.NB *) image[CUP,CORE[x_]] := V (* added 1999 December 7 based on RESTRICT.NB *) image[CUP,DISJOINT] := V (* derived 2007 May 28 in CUP-HULL.NB *) image[CUP,HULL[x_]] := fix[HULL[x]] (* added 1999 October 30 based on IM-S-DJ.NB *) image[CUP,Id] := V (* added 1999 October 30 based on IM-S-DJ.NB *) image[CUP,id[x_]] := x (* derived 2007 May 29 in IVR-HULL.NB *) image[CUP,IMAGE[ACLOSURE]] := invar[ACLOSURE] (* derived 2007 May 27 in COARSER.NB *) image[CUP,IMAGE[COARSER]] := fix[IMAGE[COARSER]] (* derived 2007 May 29 in IVR-CORE.NB *) image[CUP,IMAGE[CORE[x_]]] := invar[CORE[x]] (* derived 2004 June 6 in EQV-TRV.NB *) image[CUP,IMAGE[eqv[x_]]] := invar[eqv[x]] (* derived 2007 May 29 in IVR-HULL.NB *) image[CUP,IMAGE[HULL[x_]]] := invar[HULL[x]] (* derived 2007 May 29 in IVR-HULL.NB *) image[CUP,IMAGE[id[x_]]] := V (* derived 2007 May 29 in IVR-HULL.NB *) image[CUP,IMAGE[IMAGE[id[x_]]]] := invar[IMAGE[id[x]]] (* derived 2007 May 29 in IVR-HULL.NB *) image[CUP,IMAGE[IMAGE[IMAGE[id[x_]]]]] := invar[IMAGE[IMAGE[id[x]]]] (* derived 2007 May 29 in IVR-HULL.NB *) image[CUP,IMAGE[IMAGE[inverse[S]]]] := invar[IMAGE[inverse[S]]] (* derived 2007 May 27 in COARSER.NB *) image[CUP,IMAGE[inverse[COARSER]]] := fix[IMAGE[inverse[COARSER]]] (* added 2002 March 12 based on CUP.NB *) image[CUP,image[inverse[CUP],x_]] := x (* derived 2007 May 28 in CUP-HULL.NB *) image[CUP,IMAGE[inverse[S]]] := fix[IMAGE[inverse[S]]] (* derived 2008 August 17 in IVR-CUP.NB *) image[CUP,IMAGE[inverse[TC]]] := invar[inverse[TC]] (* derived 2008 August 17 in IVR-CUP.NB *) image[CUP,IMAGE[inverse[ZN]]] := invar[inverse[ZN]] (* derived 2008 August 17 in IVR-CUP.NB *) image[CUP,IMAGE[TC]] := invar[TC] (* derived 2004 June 6 in EQV-TRV.NB *) image[CUP,IMAGE[trv[x_]]] := invar[x] (* derived 2007 May 29 in IVR-HULL.NB *) image[CUP,IMAGE[UCLOSURE]] := invar[UCLOSURE] (* derived 2008 August 17 in IVR-CUP.NB *) image[CUP,IMAGE[ZN]] := fix[IMAGE[ZN]] (* derived 2004 June 14 in TP-SYM.NB *) image[CUP,INVERSE] := SYM (* added 1999 October 28 based on MOREDIF2.NB *) image[CUP,inverse[x_]]:=image[CUP,x] (* derived 2005 January 6 in RCF.NB *) image[CUP,RC[x_]] := set[x] (* added 1999 November 17 based on NEWRULES.1 *) image[CUP,S] := V (* added 2001 November 13 based on 1ST-2ND.NB *) image[CUP,set[x_]] := set[union[first[x],second[x]]] (* derived 2007 May 28 in CUP-SG.NB *) image[CUP,SINGLETON] := range[SUCC] (* derived 2007 May 28 in CUP-HULL.NB *) image[CUP,TC] := FULL (* derived 2007 May 28 in CUP-HULL.NB *) image[CUP,UCLOSURE] := fix[UCLOSURE] (* derived 2006 November 18 in CURMAP-3.NB *) image[CURRY,map[cart[x_,y_],z_]] := map[intersection[x,image[V,y]],map[y,z]] (* derived 2008 December 3 in CURRY-BO.NB *) image[CURRY,map[domain[binop[x_]],fix[domain[binop[x_]]]]] := map[fix[domain[binop[x]]],map[fix[domain[binop[x]]],fix[domain[binop[x]]]]] (* derived 2006 November 5 in CURRY.NB *) image[CURRY,set[x_]] := set[APPLY[CURRY,x]] (* Theorem IMG-DI in IMG2 proved 1999 March 26 *) IMAGE[Di] := cart[set[0],set[0]] (* added 1999 August 31 based on CP-IM-DI.LOG *) image[Di,cart[x_,y_]] := intersection[complement[cart[complement[image[Di,x]], complement[image[Di,y]]]],image[V,x],image[V,y]] (* 1998 August 25 *) image[Di,complement[A[x_]]] := image[V,x] (* added 1998 November 10 *) image[Di,complement[P[x_]]] := image[V,complement[x]] (* Theorem REG-C-DI in REG2 proved 1999 March 18 *) image[Di,complement[REGULAR]] := image[V,complement[REGULAR]] (* Theorem SP-C-SS in SP3 proved 1998 July 14 *) image[Di,complement[set[x_]]] := V image[Di,Id] := V (* added 1998 November 10 *) image[Di,image[Di,x_]] := image[V,x] (* added 1998 November 10 *) image[Di,image[DISJOINT,x_]] := image[V,x] (* added 1998 November 10 *) image[Di,image[S,x_]] := image[V,x] (* Theorem DI-IM-PC in DI group proved 1998 July 2 *) image[Di,P[x_]] := union[complement[set[0]],image[V,x]] (* added 1999 August 18 based on 3PM.LOG *) image[Di,range[POWER]] := V (* added 1999 August 18 based on 3PM.LOG *) image[Di,range[SINGLETON]] := V (* Theorem REG-DI in REG2 proved 1999 March 4 *) image[Di,REGULAR] := V (* added 1998 July 2 *) image[Di,set[x_]] := intersection[image[V,set[x]],complement[set[x]]] (* added 2003 July 25 based on HULL-Z.NB *) image[Di,Z] := V (* derived 2008 March 20 in BNCL-DIF.NB *) image[DIF,cart[BIJ,BIJ]] := BIJ (* derived 2008 March 20 in BNCL-DIF.NB *) image[DIF,cart[chains[x_],chains[x_]]] := chains[x] (* derived 2008 March 20 in BNCL-DIF.NB *) image[DIF,cart[cliques[x_],cliques[x_]]] := cliques[x] (* derived 2008 March 20 in BNCL-DIF.NB *) image[DIF,cart[FINITE,FINITE]] := FINITE (* derived 2008 March 20 in BNCL-DIF.NB *) image[DIF,cart[FUND,FUND]] := FUND (* derived 2008 March 20 in BNCL-DIF.NB *) image[DIF,cart[FUNS,FUNS]] := FUNS (* derived 2008 March 20 in BNCL-DIF.NB *) image[DIF,cart[image[inverse[S],x_],image[inverse[S],x_]]] := image[inverse[S],x] (* derived 2006 August 17 in CTBL-FIN.NB *) image[DIF,cart[image[Q,set[omega]],FINITE]] := image[Q,set[omega]] (* added 1999 November 3 based on ASS-DIF.TXT *) image[DIF,cart[P[x_],image[S,set[y_]]]] := intersection[image[V,set[y]],P[intersection[x,complement[y]]]] (* added 2000 January 16 based on DIF.NB *) image[DIF,cart[P[x_],P[y_]]] := P[x] (* derived 2008 March 20 in BNCL-DIF.NB *) image[DIF,cart[REGULAR,REGULAR]] := REGULAR (* discovered 1999 December 16 in DIF.NB *) image[DIF,cart[x_,set[y_]]] := intersection[image[V,set[y]],image[IMAGE[id[complement[y]]],x]] (* discovered 1999 December 16 in DIF.NB *) image[DIF,cart[set[x_],y_]] := image[RC[x],image[IMAGE[id[x]],y]] (* added 1999 October 26 based on DIF2.NB *) image[DIF,cart[set[x_],set[y_]]] := intersection[image[V,set[x]],image[V,set[y]],set[intersection[x,complement[y]]]] (* derived 2008 March 20 in BNCL-DIF.NB *) image[DIF,cart[succ[set[0]],succ[set[0]]]] := succ[set[0]] (* derived 2008 March 20 in BNCL-DIF.NB *) image[DIF,cart[union[range[SINGLETON],set[0]],union[range[SINGLETON],set[0]]]] := union[range[SINGLETON],set[0]] (* added 1999 November 2 based on IMAGE.NB *) image[DIF,cart[x_,V]] := image[inverse[S],x] (* added 1999 November 2 based on IMAGE.NB *) image[DIF,cart[V,x_]] := image[DISJOINT,x] (* derived 2008 March 20 in BNCL-DIF.NB *) image[DIF,cart[WF,WF]] := WF (* added 1999 November 6 based on CO-2.LOG *) image[DIF,complement[cart[V,V]]] := 0 (* derived 2006 June 10 in SYMDIF.NB *) image[DIF,composite[CAP,id[cart[P[x_],P[x_]]],inverse[CUP]]] := P[x] (* added 1999 November 6 based on CO-1.LOG *) image[DIF,composite[Id,x_]] := image[DIF,x] (* added 1999 December 6 based on RESTRICT.NB *) image[DIF,DISJOINT] := V (* added 1999 October 30 based on IM-S-DJ.NB *) image[DIF,Id] := set[0] (* added 1999 October 30 based on IM-S-DJ.NB *) image[DIF,id[x_]] := intersection[image[V,x],set[0]] (* added 1999 October 30 based on IM-S-DJ.NB *) image[DIF,inverse[S]] := V (* added 1999 November 17 based on NEWRULES.1 *) image[DIF,S] := set[0] (* Theorem IMG-DJT in IMG2 proved 1999 March 25 *) IMAGE[DISJOINT] := cart[set[0],set[0]] (* derived 2007 September 28 in UCH-RS.NB *) image[DISJOINT,chains[x_]] := V (* derived 2007 September 28 in UCH-RS.NB *) image[DISJOINT,cliques[x_]] := V (* added 1998 November 10 *) image[DISJOINT,complement[P[x_]]] := complement[image[S,set[complement[x]]]] (* added 1998 August 23 *) image[DISJOINT,complement[set[0]]] := V (* added 2000 June 2 based on Q-S.NB *) image[DISJOINT,FINITE] := V (* added 2000 January 2 based on DC.NB *) image[DISJOINT,image[COMPOSE,cart[P[x_],P[y_]]]] := V (* added 1999 December 21 based on IMAGEROT.NB *) image[DISJOINT,image[CUP,cart[x_,y_]]] := intersection[image[DISJOINT,x],image[DISJOINT,y]] (* added 1998 November 10 *) image[DISJOINT,image[Di,x_]] := image[V,x] (* added 1998 November 10 *) image[DISJOINT,image[DISJOINT,x_]] := image[V,x] (* added 1998 November 10 *) image[DISJOINT,image[inverse[S],x_]] := image[V,x] (* added 1998 November 10 *) image[DISJOINT,image[S,x_]] := image[DISJOINT,x] (* added 1998 November 10 *) image[DISJOINT,image[SINGLETON,x_]] := complement[image[S,set[x]]] (* Corollary DJT-PC in DJT proved 1999 March 4 *) image[DISJOINT,P[x_]] := V (* added 2002 December 23 based on REPLACE.NB *) image[DISJOINT,range[POWER]] := P[complement[set[0]]] image[DISJOINT,range[SINGLETON]] := V (* Theorem REG-DJT in REG2 proved 1999 March 4 *) image[DISJOINT,REGULAR] := V (* Theorem DJT-IM-3 in DJT proved 1998 August 6 *) image[DISJOINT,set[x_]] := intersection[image[V,set[x]],P[complement[x]]] (* derived 2006 August 16 in EVOD-MUL.NB *) image[DIV,even] := even (* derived 2005 February 22 in DIVRULES.NB *) image[DIV,image[DIV,x_]] := image[DIV,x] (* derived 2005 February 22 in DIVRULES.NB *) image[DIV,intersection[omega,x_]] := image[DIV,x] (* derived 2007 April 12 in LD-4.NB *) image[DIV,ld[x_,y_]] := ld[x,y] (* derived 2006 August 16 in EVOD-MUL.NB *) image[DIV,odd] := omega (* derived 2005 February 22 in PRIMEDIV.NB *) image[DIV,PRIMES] := intersection[omega,complement[set[set[0]]]] (* added 2002 September 2 based on IMAGEDIV.NB *) image[DIV,set[0]] := set[0] (* added 2002 September 2 based on IMAGEDIV.NB *) image[DIV,set[set[0]]] := omega (* derived 2006 August 15 in EVEN-ODD.NB *) image[DIV,set[succ[set[0]]]] := even (* derived 2009 January 5 in DOM-CAT.NB *) image[dom[cat[x_]],set[w_]] := set[APPLY[dom[cat[x]],w]] (* derived 2009 January 7 in IM-COD.NB *) image[dom[x_],ids[x_]] := ids[x] (* derived 2009 January 7 in IM-COD.NB *) image[dom[x_],image[cod[x_],y_]] := image[cod[x],y] (* derived 2009 January 7 in IM-COD.NB *) image[dom[x_],image[dom[x_],y_]] := image[dom[x],y] (* derived 2009 January 7 in IM-COD.NB *) image[dom[x_],intersection[y_,ids[x_]]] := intersection[y,ids[x]] (* Theorem IM-5 in IM2 *) image[x_,domain[x_]] := range[x] (* derived 2008 October 18 in BINOP-LR.NB *) image[domain[binop[x_]],y_] := intersection[fix[domain[binop[x]]], image[V,intersection[y,fix[domain[binop[x]]]]]] (* added 2000 February 5 based on FUNPART.NB *) image[x_,domain[funpart[x_]]] := range[funpart[x]] (* derived 2008 December 25 in COD-DOM.NB *) image[domain[x_],ids[x_]] := domain[cod[x]] (* derived 2008 October 18 in QG-ROT.NB *) image[domain[quasigp[x_]],y_] := intersection[image[V,intersection[y,range[quasigp[x]]]],range[quasigp[x]]] (* derived 2008 November 26 in SEMIGP.NB *) image[domain[semigp[x_]],y_] := intersection[fix[domain[semigp[x]]], image[V,intersection[y,fix[domain[semigp[x]]]]]] (* derived 2005 January 26 in REMOVED.NB *) image[x_,domain[VERTSECT[x_]]] := range[thinpart[x]] (* added 2001 December 18 based on DORA.NB *) image[DORA,BIJ] := Q (* derived 2006 October 28 in DORA.NB *) image[DORA,binhom[NATADD,NATADD]] := cart[set[omega],image[VERTSECT[DIV],omega]] (* derived 2006 July 9 in DORA-BO.NB *) image[DORA,BINOPS] := union[cart[set[0],set[0]],composite[id[complement[set[0]]],inverse[S],inverse[DUP],inverse[CART]]] (* derived 2006 June 9 in CNSTDORA.NB *) image[DORA,CONST] := union[cart[complement[set[0]],range[SINGLETON]],cart[set[0],set[0]]] (* added 2001 December 23 based on DORA-3.NB *) image[DORA,EQV] := Id (* derived 2004 December 13 in DORA-FIN.NB *) image[DORA,FINITE] := union[cart[intersection[FINITE,complement[set[0]]], intersection[FINITE,complement[set[0]]]],cart[set[0],set[0]]] (* added 2001 December 23 based on DORA-3.NB *) image[DORA,image[CART,Id]] := union[cart[set[0],set[0]],id[complement[set[0]]]] (* derived 2004 July 26 in IMAGDORA.NB *) image[DORA,image[IMAGE[id[cart[V,V]]],x_]] := image[DORA,x] (* derived 2004 July 26 in IMAGDORA.NB *) image[DORA,image[IMAGE[SWAP],x_]] := inverse[image[DORA,x]] (* derived 2004 January 4 in VS-IMIN.NB *) image[DORA,image[INVERSE,FUNS]] := inverse[image[DORA,FUNS]] (* derived 2004 July 26 in IMAGDORA.NB *) image[DORA,image[inverse[IMAGE[id[cart[V,V]]]],x_]] := image[DORA,intersection[x,P[cart[V,V]]]] (* added 2001 December 22 based on Q-SS.NB *) image[DORA,image[SINGLETON,cart[V,V]]] := cart[range[SINGLETON],range[SINGLETON]] (* derived 2005 August 7 in DORA-FIN.NB *) image[DORA,intersection[BIJ,FINITE]] := composite[inverse[CARD],id[omega],CARD] (* derived 2006 January 1 in RAVS-UBX.NB *) image[DORA,intersection[complement[set[0]],P[cart[V,V]]]] := cart[complement[set[0]],complement[set[0]]] (* derived 2006 June 9 in UNARY.NB *) image[DORA,INVOL] := Id (* added 2002 February 5 based on DORA.NB *) image[DORA,P[cart[x_,y_]]] := union[cart[set[0],set[0]], cart[intersection[complement[set[0]],P[x]],intersection[complement[set[0]],P[y]]]] (* derived 2005 November 22 in IMDORARS.NB *) image[DORA,P[composite[Id,x_]]] := image[DORA,P[x]] (* added 2001 December 18 based on DORA.NB *) image[DORA,P[Id]] := Id (* added 2003 May 18 based on ACL-SQ.NB *) image[DORA,P[id[x_]]] := id[P[x]] (* derived 2005 November 22 in IMDORARS.NB *) image[DORA,P[inverse[x_]]] := inverse[image[DORA,P[x]]] (* derived 2008 September 28 in PERMS.NB *) image[DORA,PERMS] := Id (* derived 2004 July 26 in IMAGDORA.NB *) image[DORA,PO] := Id (* derived 2006 June 10 in DORAPROJ.NB *) image[DORA,PROJ] := union[cart[set[0],set[0]],composite[id[complement[set[0]]],inverse[S]]] (* added 2001 December 23 based on DORA-3.NB *) image[DORA,range[CART]] := union[cart[set[0],set[0]],cart[complement[set[0]],complement[set[0]]]] (* derived 2006 October 28 in DORA.NB *) image[DORA,range[LAMBHULL]] := composite[ACLOSURE,inverse[IMAGE[inverse[S]]]] (* added 2003 February 4 based on PLUS-Q.NB *) image[DORA,range[PLUS]] := cart[set[omega],image[RC[omega],omega]] (* derived 2006 October 28 in DORA.NB *) image[DORA,range[RCF]] := id[range[POWER]] (* derived 2004 December 13 in DORA-REG.NB *) image[DORA,REGULAR] := union[cart[intersection[REGULAR,complement[set[0]]], intersection[REGULAR,complement[set[0]]]],cart[set[0],set[0]]] (* added 2001 December 23 based on DORA-2.NB *) image[DORA,RFX] := Id (* derived 2005 November 22 in IMDORARS.NB *) image[DORA,RS[x_]] := composite[IMAGE[x],id[P[domain[x]]]] (* derived 2008 January 3 in DORA-SEL.NB *) image[DORA,SELECT] := union[cart[complement[set[0]],complement[set[0]]],cart[set[0],set[0]]] (* added 2001 December 18 based on DORA.NB *) image[DORA,set[x_]] := cart[set[domain[x]],intersection[image[V,set[x]],set[range[x]]]] (* added 2001 December 23 based on DORA-2.NB *) image[DORA,SYM] := Id (* added 2001 December 23 based on DORA-3.NB *) image[DORA,TRV] := union[cart[set[0],set[0]],cart[complement[set[0]],complement[set[0]]]] (* derived 2006 June 10 in DORAPROJ.NB *) image[DORA,UNOPS] := union[cart[set[0],set[0]],composite[id[complement[set[0]]],inverse[S]]] (* derived 2007 November 13 in AC-IN-K.NB *) image[DORA,X[x_]] := cart[set[domain[x]],image[IMAGE[SECOND],X[x]]] (* Theorem DUP-IDX2 in DUP1 *) image[DUP,x_] := id[x] (* Theorem E-IM4 in E2 and Theorem PC-IM-E3 in PC0 *) image[E,x_] := complement[P[complement[x]]] (* see IMG-E in IMG2.DEM *) IMAGE[E] := cart[set[0],set[0]] (* added 2002 November 3 based on EQUIDIFF.NB *) image[EQUIDIFF,x_] := composite[SECOND, intersection[composite[inverse[NATADD],NATADD], composite[inverse[FIRST],inverse[x],FIRST]],inverse[SECOND]] (* derived 2004 May 12 in EQUIV.NB *) image[EQUIV,set[x_]] := intersection[image[V,set[x]],set[eqv[x]]] (* derived 2004 June 6 in EQV-TRV.NB *) image[eqv[x_],image[eqv[x_],y_]] := image[eqv[x],y] (* derived 2008 November 2 in IM-EQV.NB *) image[eqv[x_],intersection[y_,fix[eqv[x_]]]] := image[eqv[x],y] (* derived 2006 November 3 in EVAL-IM.NB *) image[eval[x_],y_] := image[U[image[FUNPART,y]],set[x]] (* derived 2005 August 7 in FACT-AP.NB *) image[FACTORIAL,set[x_]] := set[APPLY[FACTORIAL,x]] (* Theorem FIN-IMV in FINITE proved 2000 April 22 *) image[FINITE,x_] := image[V,x] (* added 2000 April 23 based on FINITE.NB *) IMAGE[FINITE] := cart[set[0],set[0]] (* Theorem 1ST-IM-2 *) image[FIRST,x_] := domain[x] (* derived 2008 September 4 in IN-2-SBV.NB *) image[fix[composite[inverse[SECOND],IMG]],P[x_]] := subvar[x] (* added 2000 September 9 based on SBV-2.NB *) image[fix[composite[inverse[SECOND],IMG]],set[x_]] := intersection[fix[IMAGE[x]],image[V,set[x]]] (* added 2000 September 9 based on SBV-2.NB *) image[fix[composite[inverse[SECOND],x_,IMG]],set[y_]] := intersection[fix[composite[x,IMAGE[y]]],image[V,set[y]]] (* derived 2004 July 28 in APPLY.NB *) image[funpart[z_],cart[set[x_],set[y_]]] := set[APPLY[funpart[z],PAIR[x,y]]] (* added 2000 February 5 based on FUNPART.NB *) image[funpart[x_],domain[x_]] := range[funpart[x]] (* derived 2008 June 21 in FUNP-RFX.NB *) image[FUNPART,EQV] := P[Id] (* derived 2006 November 28 in FUNPOOPT.NB *) image[funpart[x_],fix[composite[y_,funpart[x_]]]] := fix[composite[funpart[x],y]] (* added 2001 November 25 based on FUNP-1.NB *) image[FUNPART,FUNS] := FUNS (* derived 2006 November 3 in EVAL-IM.NB *) image[FUNPART,intersection[FUNS,x_]] := intersection[FUNS,x] (* added 2001 November 25 based on FUNP-1.NB *) image[FUNPART,P[Id]] := P[Id] (* derived 2008 June 21 in FP-FUNP.NB *) image[FUNPART,PO] := P[Id] (* derived 2006 March 30 in REG-FUNP.NB *) image[FUNPART,REGULAR] := intersection[FUNS,REGULAR] (* derived 2008 June 21 in FUNP-RFX.NB *) image[FUNPART,RFX] := P[Id] (* added 2000 September 8 based on FUNPART.NB *) image[FUNPART,set[x_]] := intersection[image[V,set[x]],set[funpart[x]]] (* added 2003 October 28 based on APPLY.NB *) image[funpart[x_],set[y_]] := set[APPLY[funpart[x],y]] (* derived 2005 September 27 in GLB-LUB.NB *) image[GLB[x_],set[y_]] := intersection[domain[x],image[V,set[y]],lb[x,y], ub[x,intersection[domain[x],lb[x,y]]]] /; expand (* derived 2007 February 20 in AP-GLBPO.NB *) image[GLB[DIV],set[x_]] := set[APPLY[GLB[DIV],x]] (* derived 2007 February 20 in AP-GLBPO.NB *) image[GLB[po[x_]],set[y_]] := set[APPLY[GLB[po[x]],y]] (* added 2003 January 30 based on OMEGA.NB *) (* variable-free reformulation of Corollary ON-SUC16 in ON7 *) image[GREATEST[composite[Di,SUCC]],omega] := set[0] (* added 2000 December 24 based on LT-CO-S *) image[GREATEST[x_],P[y_]] := intersection[y,fix[x]] (* derived 2004 February 19 in REPLACE2.NB *) image[GREATEST[x_],set[y_]] := intersection[y,image[V,set[y]],ub[x,y]] (* derived 2008 January 22 in HART-FU.NB *) image[HARTOGS,FINITE] := intersection[omega,complement[set[0]]] (* derived 2008 January 22 in HART-FU.NB *) image[HARTOGS,set[x_]] := intersection[image[V,set[x]],set[intersection[OMEGA,image[Q,P[x]]]]] (* added 2001 March 31 based on HF.NB *) image[HC,FULL] := FULL (* derived 2007 December 4 in IM-HC-TC.NB *) image[HC,image[HC,x_]] := image[HC,x] (* derived 2007 December 4 in IM-HC-TC.NB *) image[HC,image[TC,x_]] := image[TC,x] (* derived 2007 December 10 in IM-HC-TC.NB *) image[HC,intersection[FULL,x_]] := intersection[FULL,x] (* added 2003 January 18 based on HC-TC-OM.NB *) image[HC,omega] := omega (* added 2002 May 4 based on HC-OMEGA.NB *) image[HC,OMEGA] := OMEGA (* added 2002 May 4 based on HC-OMEGA.NB *) image[HC,P[OMEGA]] := OMEGA (* derived 2006 March 30 in REG-H.NB *) image[HC,REGULAR] := intersection[FULL,REGULAR] (* Theorem HC-VS in HC proved 2001 April 6 *) image[HC,set[x_]] := intersection[image[V,set[x]],set[H[x]]] (* derived 2008 May 8 in AP-HIST.NB *) image[history[x_,y_],set[z_]] := set[APPLY[history[x,y],z]] (* added 2001 May 15 based on HULL-1.NB *) image[HULL[x_],complement[image[inverse[S],x_]]] := 0 (* derived 2008 December 4 in HULL-EQV.NB *) image[HULL[TRV],intersection[RFX,SYM]] := EQV (* derived 2004 July 16 on TRV-SYM.NB *) image[HULL[EQV],SYM] := EQV (* derived 2004 October 7 in HULL-I.NB *) image[HULL[EQV],TRV] := EQV (* derived 2004 October 7 in HULL-I.NB *) image[HULL[x_],fix[HULL[intersection[x_,y_]]]] := fix[HULL[intersection[x,y]]] (* derived 2004 October 7 in HULL-I.NB *) image[HULL[intersection[x_,y_]],fix[HULL[x_]]] := fix[HULL[intersection[x,y]]] (* derived 2007 June 9 in HULL-PO.NB *) image[HULL[RFX],intersection[ANTISYM,TRV]] := PO (* derived 2007 May 9 in RFX.NB *) image[HULL[RFX],PO] := PO (* derived 2006 February 16 in HULL-RFX.NB *) image[HULL[RFX],TRV] := intersection[RFX,TRV] (* revised 2004 March 29 based on HULL.NB *) image[HULL[x_],set[y_]] := set[hull[x,y]] (* derived 2004 October 7 in HULL-I.NB *) image[HULL[SYM],EQV] := EQV (* derived 2004 June 14 in TP-SYM.NB *) image[HULL[SYM],SYM] := SYM (* added 2003 October 15 based on ACYCLIC.NB *) image[HULL[TRV],ACYCLIC] := intersection[TRV,P[Di]] (* derived 2004 October 7 in HULL-I.NB *) image[HULL[TRV],EQV] := EQV (* derived 2008 November 4 in RFX-TRV.NB *) image[HULL[TRV],intersection[x_,P[cart[V,V]]]] := image[HULL[TRV],x] (* derived 2008 November 4 in RFX-TRV.NB *) image[HULL[TRV],intersection[RFX,TRV]] := intersection[RFX,TRV] (* added 2003 April 8 based on ACY-TRV.NB *) image[HULL[TRV],intersection[TRV,P[Di]]] := intersection[TRV,P[Di]] (* added 2002 February 13 based on HULL-TRV.NB *) image[HULL[TRV],P[composite[Id,x_]]] := image[HULL[TRV],P[x]] (* added 2002 February 13 based on HULL-TRV.NB *) image[HULL[TRV],P[Id]] := P[Id] (* added 2002 February 13 based on HULL-TRV.NB *) image[HULL[TRV],P[id[x_]]] := P[id[x]] (* derived 2008 November 4 in RFX-TRV.NB *) image[HULL[TRV],RFX] := intersection[RFX,TRV] (* added 2003 November 6 based on HULL-EQV.NB *) image[HULL[TRV],SYM] := EQV (* added 2003 September 29 based on WF.NB *) image[HULL[TRV],WF] := intersection[TRV,WF] (* derived 2007 May 26 in COREHULL.NB *) image[HULL[x_],Uclosure[y_]] := fix[composite[HULL[x],CORE[y]]] (* derived 2006 September 24 in INTLEQ.NB *) image[HULL[Z],range[PLUS]] := range[PLUS] (* added 2003 August 7 based on EQDFHULZ.NB *) image[HULL[Z],Z] := Z (* Theorem ID-5P in ID3 *) image[Id,x_] := x (* see IMG-ID in IMG2.DEM *) IMAGE[Id] := Id (* Theorem IDX-IM-1 in IDX2 *) image[id[x_],y_] := intersection[x,y] (* added 2003 July 16 based on LAMBPAIR.NB *) IMAGE[id[complement[image[V,x_]]]] := union[cart[V,intersection[image[V,x],set[0]]], id[complement[image[V,x]]]] (* added 2003 July 16 based on LAMBPAIR.NB *) IMAGE[id[image[V,x_]]] := union[cart[V,intersection[complement[image[V,x]],set[0]]],id[image[V,x]]] (* derived 2008 August 17 in IVR-CUP.NB *) image[idem[x_],image[idem[x_],y_]] := image[idem[x],y] (* added 2001 September 30 based on FP-ACL.NB *) image[IMAGE[BIGCAP],fix[UCLOSURE]] := fix[ACLOSURE] (* added 2001 May 10 based on UCLOS-4.NB *) image[IMAGE[BIGCAP],range[POWER]] := fix[ACLOSURE] (* added 2001 September 30 based on ACL-3.NB *) image[IMAGE[BIGCUP],fix[UCLOSURE]] := fix[UCLOSURE] (* added 2002 January 23 based on IM-IMG.NB *) image[IMAGE[BIGCUP],P[P[x_]]] := P[Uclosure[x]] (* added 2001 October 2 based on ACL-UCL.NB *) image[IMAGE[BIGCUP],P[range[POWER]]] := V image[IMAGE[BIGCUP],P[range[SINGLETON]]] := V (* added 2001 May 10 based on UCLOS-4.NB *) image[IMAGE[BIGCUP],range[POWER]] := fix[UCLOSURE] image[IMAGE[BIGCUP],range[SINGLETON]] := range[SINGLETON] (* derived 2006 March 21 in IMIN-REG.NB *) image[IMAGE[BIGCUP],REGULAR] := REGULAR (* derived 2008 April 30 in TOPS.NB *) image[IMAGE[CAP],image[CART,cart[range[SINGLETON],TOPS]]] :=TOPS (* derived 2006 October 17 in CLIQ-XFM.NB *) image[IMAGE[CART],image[IMAGE[DUP],cliques[union[DISJOINT,Id]]]] := intersection[cliques[union[DISJOINT,Id]],P[image[CART,Id]]] (* derived 2007 May 5 in REPLACE.NB *) image[IMAGE[CART],image[IMAGE[DUP],chains[S]]] := intersection[chains[S],P[image[CART,Id]]] (* derived 2008 November 4 in EQV.NB *) image[IMAGE[CART],image[IMAGE[DUP],intersection[x_,cliques[union[DISJOINT,Id]]]]] := intersection[cliques[union[DISJOINT,Id]],image[IMAGE[CART],image[IMAGE[DUP],x]]] (* added 2001 October 29 based on CARTSQ.NB *) image[IMAGE[CART],P[Id]] := P[image[CART,Id]] (* added 2001 October 29 based on CARTSQ.NB *) image[IMAGE[CART],P[id[x_]]] := P[image[CART,id[x]]] (* derived 2006 June 20 in UOBCLCPS.NB *) image[IMAGE[COMPOSE],image[CART,id[image[MAP,Id]]]] := image[MAP,Id] (* derived 2004 August 11 in RS-4.NB *) image[IMAGE[composite[id[cart[V,y_]],inverse[FIRST]]],P[x_]] := RS[cart[x,y]] (* derived 2006 October 19 in EQV-RAVS.NB *) image[IMAGE[composite[id[E],inverse[SECOND]]],cliques[union[DISJOINT,Id]]] := image[VS,EQV] (* derived 2008 January 4 in PO-RS.NB *) image[IMAGE[composite[id[inverse[S]],inverse[FIRST]]],fix[IMAGE[inverse[S]]]] := intersection[PO,RS[inverse[S]]] (* derived 2008 May 5 in FU-REC.NB *) image[IMAGE[composite[id[rec[funpart[x_],thinpart[inverse[wf[y_]]]]],inverse[FIRST]]], invar[thinpart[inverse[wf[y_]]]]] := partrec[funpart[x],thinpart[inverse[wf[y]]]] (* derived 2008 August 19 in RS-S-PO.NB *) image[IMAGE[composite[id[S],inverse[SECOND]]],fix[IMAGE[inverse[S]]]] := intersection[PO,image[INVERSE,RS[inverse[S]]]] (* derived 2008 August 19 in RS-S-CL.NB *) image[IMAGE[composite[id[S],inverse[SECOND]]],range[POWER]] := intersection[CL,image[INVERSE,RS[inverse[S]]]] (* derived 2008 June 28 in TRFM-S.NB *) image[IMAGE[cross[FIRST,FIRST]],image[IMAGE[id[composite[inverse[SECOND],inverse[S],SECOND]]], image[CART,id[BIJ]]]] := PO (* derived 2008 June 28 in TRFM-S.NB *) image[IMAGE[cross[FIRST,FIRST]],image[IMAGE[id[composite[inverse[SECOND],S,SECOND]]], image[CART,id[BIJ]]]] := PO (* derived 2006 December 16 in PLUSTIME.NB *) image[IMAGE[cross[Id,composite[INVERSE,PLUS]]],binhom[NATADD,NATADD]] := image[MIXTIMES,image[INVERSE,range[PLUS]]] (* derived 2006 December 16 in BHNATINT.NB *) image[IMAGE[cross[Id,INVERSE]],binhom[NATADD,INTADD]] := binhom[NATADD,INTADD] (* derived 2006 December 19 in ENDZ-INV.NB *) image[IMAGE[cross[Id,INVERSE]],binhom[INTADD,INTADD]] := binhom[INTADD,INTADD] (* derived 2008 November 7 in U-IM-VS.NB *) image[IMAGE[cross[Id,inverse[E]]],image[VS,x_]] := image[IMAGE[id[cart[V,V]]],x] (* derived 2004 August 9 in RS-2.NB *) image[IMAGE[cross[Id,x_]],P[funpart[y_]]] := RS[composite[x,funpart[y]]] (* derived 2004 August 7 in RS-1.NB *) image[IMAGE[cross[Id,x_]],P[Id]] := RS[x] (* derived 2004 August 9 in RS-2.NB *) image[IMAGE[cross[id[y_],x_]],P[Id]] := RS[composite[x,id[y]]] (* derived 2004 August 9 in RS-2.NB *) image[IMAGE[cross[Id,x_]],P[id[y_]]] := RS[composite[x,id[y]]] (* derived 2006 December 16 in PLUSTIME.NB *) image[IMAGE[cross[Id,PLUS]],binhom[NATADD,NATADD]] := image[MIXTIMES,range[PLUS]] (* derived 2004 August 9 in RS-2.NB *) image[IMAGE[cross[Id,x_]],RS[y_]] := RS[composite[x,thinpart[y]]] (* derived 2006 December 18 in BNCL-INT.NB *) image[IMAGE[cross[inverse[DUP],INTADD]],image[CROSS, cart[binhom[INTADD,INTADD],binhom[INTADD,INTADD]]]] := binhom[INTADD,INTADD] (* derived 2006 December 18 in BNCL-NAT.NB *) image[IMAGE[cross[inverse[DUP],NATADD]],image[CROSS, cart[binhom[NATADD,NATADD],binhom[NATADD,NATADD]]]] := binhom[NATADD,NATADD] (* derived 2006 July 4 in MAP-Q.NB *) image[IMAGE[cross[oopart[u_],oopart[v_]]], map[domain[oopart[u_]],domain[oopart[v_]]]] := map[range[oopart[u]],range[oopart[v]]] (* derived 2004 December 7 in ASV-DIV.NB *) image[IMAGE[cross[SECOND,Id]],ASSOCIATIVE] := image[IMAGE[cross[FIRST,Id]],ASSOCIATIVE] (* derived 2008 June 28 in TRFM-S.NB *) image[IMAGE[cross[SECOND,SECOND]],image[IMAGE[id[composite[inverse[FIRST],inverse[S],FIRST]]], image[CART,id[BIJ]]]] := PO (* derived 2008 June 27 in TRFM-S.NB *) image[IMAGE[cross[SECOND,SECOND]],image[IMAGE[id[composite[inverse[FIRST],S,FIRST]]], image[CART,id[BIJ]]]] := PO (* derived 2004 December 7 in ASV-DIV.NB *) image[IMAGE[cross[SWAP,Id]],ASSOCIATIVE] := ASSOCIATIVE (* derived 2006 June 17 in BIN-UNOP *) image[IMAGE[cross[SWAP,Id]],BINOPS] := BINOPS (* derived 2008 December 1 in RIF-QG.NB *) image[IMAGE[cross[SWAP,Id]],fix[IMAGE[ROT]]] := fix[IMAGE[ROT]] (* derived 2008 December 6 in FLIP-GPS.NB *) image[IMAGE[cross[SWAP,Id]],GROUPS] := GROUPS (* derived 2008 October 4 in IMAG-ROT.NB *) image[IMAGE[cross[SWAP,Id]],image[IMAGE[cross[SWAP,Id]],x_]] := image[IMAGE[id[cart[cart[V,V],V]]],x] (* derived 2008 October 4 in IMAG-ROT.NB *) image[IMAGE[cross[SWAP,Id]],image[IMAGE[inverse[ROT]],x_]] := image[IMAGE[ROT],image[IMAGE[cross[SWAP,Id]],x]] (* derived 2008 October 4 in IMAG-ROT.NB *) image[IMAGE[cross[SWAP,Id]],image[IMAGE[ROT],x_]] := image[IMAGE[inverse[ROT]],image[IMAGE[cross[SWAP,Id]],x]] (* derived 2006 November 11 in FLIP-MAP.NB *) image[IMAGE[cross[SWAP,Id]],map[cart[x_,y_],z_]] := map[cart[y,x],z] (* derived 2008 December 31 in CAT-MON.NB *) image[IMAGE[cross[SWAP,Id]],MONOIDS] := MONOIDS (* derived 2008 October 7 in QUASIGPS.NB *) image[IMAGE[cross[SWAP,Id]],QUASIGPS] := QUASIGPS (* derived 2008 December 6 in FLIP-GPS.NB *) image[IMAGE[cross[SWAP,Id]],SEMIGPS] := SEMIGPS (* derived 2008 June 28 in TRFM-S.NB *) image[IMAGE[cross[SWAP,SWAP]],image[CART,x_]] := image[CART,composite[IMAGE[SWAP],x,inverse[IMAGE[SWAP]]]] (* derived 2004 July 26 in DORAFUNS.NB *) image[image[DORA,FUNS],set[0]] := set[0] (* derived 2008 June 7 in LB-UB-E.NB *) image[image[DORA,P[x_]],set[0]] := set[0] (* derived 2004 January 10 in FIN-IDX.NB *) image[IMAGE[DUP],FINITE] := intersection[FINITE,P[Id]] (* derived 2007 September 4 in UCL-IDP.NB *) image[IMAGE[DUP],image[IMAGE[inverse[DUP]],x_]] := image[IMAGE[id[Id]],x] (* derived 2004 December 21 in SBCOMMUT.NB *) image[IMAGE[DUP],invar[x_]] := intersection[P[Id],subcommutant[x]] (* Theorem IDP-IM-2 in IDP proved 1998 December 17 *) image[IMAGE[DUP],P[x_]] := P[id[x]] image[IMAGE[DUP],range[SINGLETON]] := image[SINGLETON,Id] image[IMAGE[DUP],REGULAR] := P[id[REGULAR]] (* added 2002 November 16 based on INTEGER.NB *) image[IMAGE[EQUIDIFF],Z] := Z (* derived 2008 April 30 in ACYCLIC.NB *) image[IMAGE[FIRST],ACYCLIC] := V (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[FIRST],ANTISYM] := V (* revised 2000 September 9 based on REPLACE.NB *) image[IMAGE[FIRST],BIJ] := V (* derived 2006 December 20 in ENDZ-DO.NB *) image[IMAGE[FIRST],binhom[INTADD,INTADD]] := set[Z] (* derived 2006 December 9 in FIX-BH.NB *) image[IMAGE[FIRST],binhom[NATADD,INTADD]] := set[omega] (* derived 2006 October 28 in DORA.NB *) image[IMAGE[FIRST],binhom[NATADD,NATADD]] := set[omega] (* derived 2006 July 9 in DORA-BO.NB *) image[IMAGE[FIRST],BINOPS] := image[CART,Id] (* derived 2006 September 19 in COMMTIVE.NB *) image[IMAGE[FIRST],COMMUTATIVE] := SYM (* derived 2006 June 9 in CNSTDORA.NB *) image[IMAGE[FIRST],CONST] := V (* derived 2004 December 13 in DORA-EQV.NB *) image[IMAGE[FIRST],EQV] := V (* derived 2004 January 10 in FIN-IDX.NB *) image[IMAGE[FIRST],FINITE] := FINITE image[IMAGE[FIRST],FUNS] := V (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[FIRST],IDEM] := V (* derived 2006 September 21 *) image[IMAGE[FIRST],image[CART,x_]] := union[image[inverse[x],complement[set[0]]],intersection[range[x],set[0]]] (* derived 2006 January 25 in PO-XFORM.NB *) image[IMAGE[FIRST],image[IMAGE[id[cart[V,inverse[S]]]],image[CROSS,id[BIJ]]]] := PO (* derived 2006 January 26 in PO-I-XFM.NB *) image[IMAGE[FIRST],image[IMAGE[id[cart[V,S]]],image[CROSS,id[BIJ]]]] := PO (* derived 2006 January 25 in IMAGSWAP.NB *) image[IMAGE[FIRST],image[IMAGE[SWAP],x_]] := image[IMAGE[SECOND],x] (* derived 2004 November 13 in AC1-A8.NB *) image[IMAGE[FIRST],image[inverse[DORA],UB[x_]]] := image[inverse[UB[x]],complement[set[0]]] (* derived 2008 October 29 in PARTN.NB *) image[IMAGE[FIRST],image[VS,x_]] := image[IMAGE[FIRST],x] (* derived 2005 August 7 in DORA-FIN.NB *) image[IMAGE[FIRST],intersection[BIJ,FINITE]] := FINITE (* added 2000 June 14 based on IMAGE-Q.NB *) image[IMAGE[FIRST],intersection[BIJ,image[inverse[IMAGE[SECOND]],x_]]] := image[Q,x] (* derived 2005 January 31 in X4210.NB *) image[IMAGE[FIRST],intersection[FINITE,FUNS]] := FINITE (* derived 2008 August 27 in INVOL.NB *) image[IMAGE[FIRST],INVOL] := V (* added 2003 May 14 based on LIST-DEF.NB *) image[IMAGE[FIRST],LISTS] := omega (* derived 2006 November 4 in CONSTMAP.NB *) image[IMAGE[FIRST],map[x_,y_]] := union[intersection[complement[image[V,x]],set[x]], intersection[image[V,y],set[x]]] (* added 2002 February 5 based on DORA.NB *) image[IMAGE[FIRST],P[cart[x_,y_]]] := union[intersection[image[V,y],P[x]],set[0]] (* derived 2006 December 20 in DO-PC-CP.NB *) image[IMAGE[FIRST],P[complement[cart[x_,y_]]]] := union[image[V,complement[y]],P[complement[x]]] (* derived 2004 August 4 in THIN-RA.NB *) image[IMAGE[FIRST],P[composite[Id,x_]]] := image[IMAGE[FIRST],P[x]] (* derived 2008 June 7 in LB-UB-E.NB *) image[IMAGE[FIRST],P[E]] := V image[IMAGE[FIRST],P[Id]] := V (* added 2003 May 18 based on ACL-SQ.NB *) image[IMAGE[FIRST],P[id[x_]]] := P[x] (* derived 2004 August 4 in THIN-RA.NB *) image[IMAGE[FIRST],P[inverse[x_]]] := image[IMAGE[SECOND],P[x]] (* derived 2008 June 7 in LB-UB-E.NB *) image[IMAGE[FIRST],P[S]] := V (* derived 2004 August 4 in THIN-DO.NB *) image[IMAGE[FIRST],P[thinpart[x_]]] := P[domain[thinpart[x]]] (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[FIRST],PO] := V (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[FIRST],PROJ] := V (* derived 2006 September 21 *) image[IMAGE[FIRST],range[CART]] := V (* added 2003 October 21 based on LAMHUL-2.NB *) image[IMAGE[FIRST],range[LAMBHULL]] := fix[IMAGE[inverse[S]]] (* added 2003 May 13 based on DO-RA-Z.NB *) image[IMAGE[FIRST],range[PLUS]] := set[omega] image[IMAGE[FIRST],range[SINGLETON]] := union[range[SINGLETON],set[0]] (* derived 2004 December 13 in DORA-REG.NB *) image[IMAGE[FIRST],REGULAR] := REGULAR (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[FIRST],RFX] := V (* derived 2004 August 10 in RS-3.NB *) image[IMAGE[FIRST],RS[x_]] := P[intersection[domain[x],domain[VERTSECT[x]]]] (* derived 2008 January 3 in DORA-SEL.NB *) image[IMAGE[FIRST],SELECT] := V (* derived 2006 September 19 in IMG-X.NB *) image[IMAGE[FIRST],subvar[cross[x_,Id]]] := subvar[x] (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[FIRST],SYM] := V (* derived 2004 December 13 in DORA-TRV.NB *) image[IMAGE[FIRST],TRV] := V (* derived 2008 August 27 in UNOPS.NB *) image[IMAGE[FIRST],UNOPS] := V (* derived 2007 November 13 in AC-IN-K.NB *) image[IMAGE[FIRST],X[x_]] := intersection[image[V,X[x]],set[domain[x]]] (* added 2003 May 13 based on DO-RA-Z.NB *) image[IMAGE[FIRST],Z] := image[RC[omega],omega] (* derived 2004 August 6 in CONSTANT.NB *) image[IMAGE[funpart[x_]],P[setpart[y_]]] := P[image[funpart[x],setpart[y]]] (* added 2001 May 8 based on MORESAME.NB *) image[IMAGE[id[x_]],BIJ] := intersection[BIJ,P[x]] (* derived 2004 December 7 in ASV-DIV.NB *) image[IMAGE[id[cart[cart[V,V],V]]],ASSOCIATIVE] := ASSOCIATIVE (* derived 2006 June 17 in BIN-UNOP *) image[IMAGE[id[cart[cart[V,V],V]]],BINOPS] := BINOPS (* derived 2008 December 1 in RIF-QG.NB *) image[IMAGE[id[cart[cart[V,V],V]]],fix[IMAGE[ROT]]] := fix[IMAGE[ROT]] (* derived 2008 December 6 in FLIP-GPS.NB *) image[IMAGE[id[cart[cart[V,V],V]]],GROUPS] := GROUPS (* derived 2008 October 4 in IMAG-ROT.NB *) image[IMAGE[id[cart[cart[V,V],V]]],image[IMAGE[inverse[ROT]],x_]] := image[IMAGE[inverse[ROT]],x] (* derived 2008 October 4 in IMAG-ROT.NB *) image[IMAGE[id[cart[cart[V,V],V]]],image[IMAGE[ROT],x_]] := image[IMAGE[ROT],x] (* derived 2006 November 11 in FLIP-MAP.NB *) image[IMAGE[id[cart[cart[V,V],V]]],map[cart[x_,y_],z_]] := map[cart[x,y],z] (* derived 2008 December 31 in CAT-MON.NB *) image[IMAGE[id[cart[cart[V,V],V]]],MONOIDS] := MONOIDS (* derived 2008 October 7 in QUASIGPS.NB *) image[IMAGE[id[cart[cart[V,V],V]]],QUASIGPS] := QUASIGPS (* derived 2008 December 6 in FLIP-GPS.NB *) image[IMAGE[id[cart[cart[V,V],V]]],SEMIGPS] := SEMIGPS (* derived 2006 December 18 in BNCL-NAT.NB *) image[IMAGE[id[cart[omega,omega]]],binhom[NATADD,NATADD]] := binhom[NATADD,NATADD] (* derived 2006 November 4 in RS-CART.NB *) image[IMAGE[id[cart[x_,V]]],image[CART,cart[V,y_]]] := image[CART,cart[P[x],y]] (* derived 2006 August 19 in MAP-DJU.NB *) image[IMAGE[id[cart[x_,V]]],map[x_,y_]] := map[x,y] (* derived 2006 December 19 in ENDZ-INV.NB *) image[IMAGE[id[cart[V,P[cart[V,V]]]]],binhom[INTADD,INTADD]] := binhom[INTADD,INTADD] (* derived 2004 August 9 in RS-2.NB *) image[IMAGE[id[cart[x_,V]]],RS[y_]] := RS[composite[y,id[x]]] (* added 2003 October 15 based on ACYCLIC.NB *) image[IMAGE[id[cart[V,V]]],ACYCLIC] := ACYCLIC (* derived 2004 March 14 in WF-WO.NB *) image[IMAGE[id[cart[V,V]]],ANTISYM] := ANTISYM (* derived 2008 October 28 in ASSOCTIV.NB *) image[IMAGE[id[cart[V,V]]],ASSOCIATIVE] := ASSOCIATIVE (* derived 2005 October 6 in CL.NB *) image[IMAGE[id[cart[V,V]]],CL] := CL (* derived 2004 December 21 in COMUTANT.NB *) image[IMAGE[id[cart[V,V]]],commutant[x_]] := intersection[commutant[x],P[cart[V,V]]] (* added 2001 October 28 based on EQV.NB *) image[IMAGE[id[cart[V,V]]],EQV] := EQV (* derived 2004 December 14 in IDEMPROJ.NB *) image[IMAGE[id[cart[V,V]]],IDEM] := IDEM (* added 2002 November 30 based on INVERSE.NB *) image[IMAGE[id[cart[V,V]]],image[INVERSE,x_]] := image[INVERSE,x] (* derived 2006 February 18 in DORA-DJ.NB *) image[IMAGE[id[cart[V,V]]],image[inverse[DORA],x_]] := intersection[image[inverse[DORA],x],P[cart[V,V]]] (* added 2003 October 15 based on ACYCLIC.NB *) image[IMAGE[id[cart[V,V]]],image[inverse[HULL[TRV]],x_]] := image[inverse[HULL[TRV]],x] (* derived 2005 November 29 in AC.NB *) image[IMAGE[id[cart[V,V]]],image[inverse[IMAGE[SWAP]],x_]] := image[INVERSE,x] (* derived 2006 October 19 in IMVS-EQV.NB *) image[IMAGE[id[cart[V,V]]],image[VS,x_]] := image[VS,x] (* derived 2007 July 17 in U-EQV.NB *) image[IMAGE[id[cart[V,V]]],intersection[RFX,SYM]] := intersection[RFX,SYM] (* derived 2007 October 8 in UCL-DORA.NB *) image[IMAGE[id[cart[V,V]]],invar[composite[DUP,SECOND]]] := intersection[invar[composite[DUP,SECOND]],P[cart[V,V]]] (* derived 2007 May 9 in IVR-SWAP.NB *) image[IMAGE[id[cart[V,V]]],invar[SWAP]] := SYM (* derived 2008 October 21 in LISTS.NB *) image[IMAGE[id[cart[V,V]]],LISTS] := LISTS (* derived 2006 November 11 in CO-MAP.NB *) image[IMAGE[id[cart[V,V]]],map[x_,y_]] := map[x,y] (* derived 2008 September 28 in PERMS.NB *) image[IMAGE[id[cart[V,V]]],PERMS] := PERMS (* derived 2004 March 14 in WF-WO.NB *) image[IMAGE[id[cart[V,V]]],PO] := PO (* derived 2004 December 14 in IDEMPROJ.NB *) image[IMAGE[id[cart[V,V]]],PROJ] := PROJ (* added 2002 November 30 based on INVERSE.NB *) image[IMAGE[id[cart[V,V]]],range[PLUS]] := range[PLUS] (* added 2001 October 8 based on RFX-IN.NB *) image[IMAGE[id[cart[V,V]]],RFX] := RFX (* derived 2004 December 25 in SELCO-LT.NB *) image[IMAGE[id[cart[V,V]]],SELECT] := intersection[SELECT,P[cart[V,V]]] (* derived 2004 June 24 in SBCOMTNT.NB *) image[IMAGE[id[cart[V,V]]],subcommutant[x_]] := intersection[P[cart[V,V]],subcommutant[x]] (* derived 2004 September 21 in WF-X.NB *) image[IMAGE[id[cart[V,V]]],subvar[cross[x_,y_]]] := subvar[cross[x,y]] (* added 2001 October 10 based on SYM-1.NB *) image[IMAGE[id[cart[V,V]]],SYM] := SYM (* derived 2004 February 10 in TO.NB *) image[IMAGE[id[cart[V,V]]],TO] := TO (* added 2001 October 9 based on TRV-1.NB *) image[IMAGE[id[cart[V,V]]],TRV] := TRV (* derived 2006 November 11 in CO-MAP.NB *) image[IMAGE[id[cart[V,V]]],UNOPS] := UNOPS (* derived 2004 March 14 in WF-WO.NB *) image[IMAGE[id[cart[V,V]]],WF] := WF (* derived 2004 March 14 in WF-WO.NB *) image[IMAGE[id[cart[V,V]]],WO] := WO (* derived 2006 December 19 in ENDZ-INV.NB *) image[IMAGE[id[cart[V,Z]]],binhom[INTADD,INTADD]] := binhom[INTADD,INTADD] (* derived 2006 December 18 in BNCL-INT.NB *) image[IMAGE[id[cart[Z,Z]]],binhom[INTADD,INTADD]] := binhom[INTADD,INTADD] (* derived 2007 May 6 in CHNBASIC.NB *) image[IMAGE[id[x_]],chains[y_]] := intersection[chains[y],P[x]] (* added 2001 May 8 based on IMINS.NB *) image[IMAGE[id[x_]],cliques[y_]] := intersection[cliques[y],P[x]] (* derived 2007 December 12 in COREDESC.NB *) image[IMAGE[id[complement[REGULAR]]],FUND] := intersection[FUND,P[complement[REGULAR]]] (* derived 2004 October 10 in COMPACT0.NB *) image[IMAGE[id[complement[set[0]]]],COMPACT] := intersection[COMPACT,P[complement[set[0]]]] (* derived 2004 December 27 in TRV-RS.NB *) image[IMAGE[id[composite[Id,x_]]],image[CART,y_]] := image[IMAGE[id[x]],image[CART,y]] (* derived 2004 December 28 in TRV-RS.NB *) image[IMAGE[id[composite[Id,x_]]],range[CART]] := image[IMAGE[id[x]],range[CART]] (* derived 2004 May 4 in ACY-WF.NB *) image[IMAGE[id[Di]],ACYCLIC] := ACYCLIC (* derived 2008 February 9 in ASYM.NB *) image[IMAGE[id[Di]],ANTISYM] := fix[composite[DISJOINT,INVERSE]] (* added 2002 January 19 based on PO.NB *) image[IMAGE[id[Di]],intersection[ANTISYM,TRV]] := intersection[TRV,P[Di]] (* added 2003 September 24 based on PO-FACTS.NB *) image[IMAGE[id[Di]],PO] := intersection[TRV,P[Di]] (* derived 2004 May 4 in ACY-WF.NB *) image[IMAGE[id[Di]],WF] := WF (* added 2001 May 8 based on IMINS.NB *) image[IMAGE[id[x_]],FINITE] := intersection[FINITE,P[x]] (* derived 2006 June 18 in REIF-PO.NB *) image[IMAGE[id[funpart[x_]]],range[CART]] := P[funpart[x]] (* added 2001 May 8 based on IMINS.NB *) image[IMAGE[id[x_]],FUNS] := intersection[FUNS,P[x]] (* added 2001 May 8 based on MORESAME.NB *) image[IMAGE[id[x_]],H[FINITE]] := intersection[H[FINITE],P[x]] (* added 2002 November 30 based on CUT.NB *) image[IMAGE[id[x_]],image[IMAGE[id[y_]],z_]] := image[IMAGE[id[intersection[x,y]]],z] (* added 2002 November 30 based on CUT.NB *) image[IMAGE[id[x_]],image[IMAGE[SWAP],y_]] := image[IMAGE[SWAP],image[IMAGE[id[inverse[x]]],y]] (* added 2001 May 8 based on IMINS.NB *) image[IMAGE[id[x_]],image[inverse[S],y_]] := intersection[image[inverse[S],y],P[x]] (* added 2001 August 30 based on BC-BA-RC.NB *) image[IMAGE[id[x_]],image[RC[x_],y_]] := image[RC[x],y] (* derived 2004 January 1 in COFIN-T1.NB *) image[IMAGE[id[x_]],image[SINGLETON,x_]] := image[SINGLETON,x] (* added 2001 August 30 based on RC.NB *) image[IMAGE[id[x_]],intersection[y_,P[x_]]] := intersection[y,P[x]] (* derived 2004 October 29 in A8-SIMP.NB *) image[IMAGE[id[intersection[z_,U[x_]]]],x_] := image[IMAGE[id[z]],x] (* added 2002 June 4 based on CORE.NB *) image[IMAGE[id[omega]],FULL] := succ[omega] (* added 2002 May 4 based on HC-OMEGA.NB *) image[IMAGE[id[OMEGA]],FULL] := OMEGA (* derived 2008 August 6 in WF-PC-ON.NB *) image[IMAGE[id[omega]],omega] := omega (* added 2002 May 4 based on HC-OMEGA.NB *) image[IMAGE[id[OMEGA]],OMEGA] := OMEGA (* Theorem CUT-PC in CUT1 proved 1999 April 13 *) image[IMAGE[id[x_]],P[y_]] := P[intersection[x,y]] (* derived 2008 September 17 in FNCH-CUT.NB *) image[IMAGE[id[P[x_]]],range[POWER]] := image[POWER,P[x]] image[IMAGE[id[x_]],REGULAR] := P[intersection[REGULAR,x]] (* derived 2007 December 8 in IMGIDREG.NB *) image[IMAGE[id[REGULAR]],omega] := omega (* derived 2007 December 8 in IMGIDREG.NB *) image[IMAGE[id[REGULAR]],OMEGA] := OMEGA (* derived 2008 September 17 in FNCH-CUT.NB *) image[IMAGE[id[REGULAR]],range[POWER]] := intersection[REGULAR,range[POWER]] (* derived 2005 February 10 in X3614.NB *) image[IMAGE[id[RUSSELL]],OMEGA] := OMEGA (* added 2001 April 30 based on CUT-SC.NB *) image[IMAGE[id[U[x_]]],x_] := x (* added 2003 June 24 based on INTERIOR.NB *) image[IMAGE[id[U[t_]]],Uclosure[t_]] := Uclosure[t] (* added 2003 May 24 based on CAPCL-OO.NB *) image[IMAGE[IMAGE[id[x_]]],binclosed[CAP]] := intersection[binclosed[CAP],P[P[x]]] (* derived 2004 January 1 in SUB-T1.NB *) image[IMAGE[IMAGE[id[x_]]],binclosed[CUP]] := intersection[binclosed[CUP],P[P[x]]] (* added 2003 March 16 based on CORE-UCL.NB *) image[IMAGE[IMAGE[id[x_]]],fix[UCLOSURE]] := intersection[fix[UCLOSURE],P[P[x]]] (* derived 2004 January 1 in SUB-T1.NB *) image[IMAGE[IMAGE[id[x_]]],intersection[y_,P[P[x_]]]] := intersection[y,P[P[x]]] (* derived 2004 January 1 in SUB-T1.NB *) image[IMAGE[IMAGE[id[x_]]],T1] := intersection[T1,P[P[x]]] (* added 2003 March 16 based on REL-TOP.NB *) image[IMAGE[IMAGE[id[x_]]],TOPS] := intersection[TOPS,P[P[x]]] (* derived 2008 September 23 in IMIMGIMG.NB *) image[IMAGE[IMAGE[x_]],P[setpart[y_]]] := P[image[IMAGE[x],setpart[y]]] (* derived 2006 June 20 in MAP-RASG.NB *) image[IMAGE[x_],image[SINGLETON,y_]] := image[VERTSECT[x],y] (* derived 2008 April 30 in TOPS.NB *) image[IMAGE[IMG],image[CART,cart[image[SINGLETON,BIJ],TOPS]]] := TOPS (* derived 2005 February 5 in X2894.NB *) image[IMAGE[x_],intersection[y_,P[domain[VERTSECT[x_]]]]] := image[IMAGE[x],y] (* derived 2008 February 16 in CAP.NB *) image[image[inverse[CAP],x_],image[inverse[S],y_]] := image[S,intersection[x,image[inverse[S],y]]] (* derived 2008 February 16 in CAP.NB *) image[image[inverse[CAP],x_],P[y_]] := image[inverse[IMAGE[id[y]]],image[S,x]] (* added 2001 May 4 based on PAIRSET.NB *) image[image[inverse[CAP],z_],set[x_]] := intersection[image[V,set[x]],image[inverse[IMAGE[id[x]]],z]] (* added 2001 May 4 based on PAIRSET.NB *) image[image[inverse[CUP],y_],set[x_]] := image[inverse[ADJOIN[x]],y] (* added 1999 December 24 based on ONCEMORE.NB *) image[image[inverse[COMPOSE],x_],set[y_]] := intersection[image[V,set[y]],image[inverse[IMAGE[cross[Id,y]]],x]] (* derived 2004 May 11 in IMG-IMAG.NB *) image[image[inverse[DIF],x_],set[y_]] := image[inverse[IMAGE[id[y]]],image[RC[y],x]] (* derived 2008 April 30 in ACYCLIC.NB *) image[IMAGE[inverse[DUP]],ACYCLIC] := set[0] (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[inverse[DUP]],ANTISYM] := V (* derived 2004 December 13 in BIJ-RA.NB *) image[IMAGE[inverse[DUP]],BIJ] := V (* derived 2004 December 13 in DORA-EQV.NB *) image[IMAGE[inverse[DUP]],EQV] := V (* derived 2004 January 10 in FIN-IDX.NB *) image[IMAGE[inverse[DUP]],FINITE] := FINITE (* added 2003 May 7 based on IM-FUNS.NB *) image[IMAGE[inverse[DUP]],FUNS] := V (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[inverse[DUP]],IDEM] := V (* derived 2006 September 21 *) image[IMAGE[inverse[DUP]],image[CART,x_]] := image[CAP,x] (* derived 2008 May 17 in FIX-WO.NB *) image[IMAGE[inverse[DUP]],image[IMAGE[cross[oopart[x_],oopart[x_]]],y_]] := image[IMAGE[oopart[x]],image[IMAGE[inverse[DUP]],y]] (* derived 2007 September 4 in UCL-IDP.NB *) image[IMAGE[inverse[DUP]],image[IMAGE[DUP],x_]] := x (* derived 2008 May 17 in FIX-WO.NB *) image[IMAGE[inverse[DUP]],image[IMAGE[id[S]],image[CART,id[OMEGA]]]] := OMEGA (* derived 2008 April 30 in TO-FP.NB *) image[IMAGE[inverse[DUP]],image[inverse[S],TO]] := image[IMAGE[inverse[DUP]],TO] (* derived 2008 August 27 in INVOL.NB *) image[IMAGE[inverse[DUP]],INVOL] := V (* Theorem FIX-IM-3 in FIX1 proved 1998 December 19 *) image[IMAGE[inverse[DUP]],P[x_]] := P[fix[x]] (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[inverse[DUP]],PO] := V (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[inverse[DUP]],PROJ] := V (* derived 2004 December 13 in DORA-TRV.NB *) image[IMAGE[inverse[DUP]],range[CART]] := V (* derived 2007 June 26 in HULL.NB *) image[IMAGE[inverse[DUP]],range[LAMBHULL]] := fix[ACLOSURE] image[IMAGE[inverse[DUP]],range[SINGLETON]] := union[set[0],range[SINGLETON]] image[IMAGE[inverse[DUP]],REGULAR] := REGULAR (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[inverse[DUP]],RFX] := V (* derived 2008 January 3 in DORA-SEL.NB *) image[IMAGE[inverse[DUP]],SELECT] := V (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[inverse[DUP]],SYM] := V (* derived 2004 December 13 in DORA-TRV.NB *) image[IMAGE[inverse[DUP]],TRV] := V (* derived 2008 August 27 in UNOPS.NB *) image[IMAGE[inverse[DUP]],UNOPS] := V (* derived 2004 September 25 in LAMB-WF.NB *) image[IMAGE[inverse[DUP]],WF] := set[0] (* added 2000 September 28 based on APPLY.NB *) image[x_,image[inverse[funpart[x_]],y_]] := intersection[y,range[funpart[x]]] (* derived 2004 May 11 in IMG-IMAG.NB *) image[image[inverse[IMG],x_],set[y_]] := intersection[image[V,set[y]],image[inverse[IMAGE[y]],x]] (* derived 2006 December 9 in MISC.NB *) image[image[inverse[INTADD],x_],set[id[omega]]] := intersection[x,Z] (* derived 2007 January 18 in IMINZADD.NB *) image[image[inverse[INTADD],set[x_]],set[y_]] := intersection[ complement[image[V,intersection[y,complement[cart[V,V]]]]],set[intadd[x,inverse[y]]]] (* derived 2008 November 5 in MAP-FIN.NB *) image[image[inverse[MAP],FINITE],complement[set[0]]] := FINITE (* derived 2007 March 2 in LD-1.NB *) image[image[inverse[NATADD],image[DIV,set[x_]]],image[DIV,set[y_]]] := ld[x,y] (* derived 2007 April 12 in LD-4.NB *) image[image[inverse[NATADD],ld[x_,y_]],ld[x_,y_]] := ld[x,y] (* derived 2004 May 11 in IMG-IMAG.NB *) image[image[inverse[NATADD],x_],set[y_]] := image[inverse[plus[y]],x] (* derived 2006 August 13 in IM-MUL.NB *) image[image[inverse[NATMUL],x_],set[y_]] := image[inverse[times[y]],x] (* added 2001 December 20 based on Q-POW.NB *) image[IMAGE[inverse[x_]],P[range[x_]]] := range[IMAGE[inverse[x]]] (* derived 2008 July 4 in ZORN-PO.NB *) image[IMAGE[inverse[po[setpart[x_]]]],chains[po[setpart[x_]]]] := Uchains[image[VERTSECT[inverse[po[setpart[x]]]],fix[po[setpart[x]]]]] (* derived 2009 July 11 in CHN-S.NB *) image[IMAGE[inverse[POWER]],chains[S]] := chains[S] (* derived 2008 October 4 in IMAG-ROT.NB *) image[IMAGE[inverse[ROT]],image[IMAGE[id[cart[cart[V,V],V]]],x_]] := image[IMAGE[inverse[ROT]],x] (* derived 2008 October 4 in IMAG-ROT.NB *) image[IMAGE[inverse[ROT]],image[IMAGE[inverse[ROT]],x_]] := image[IMAGE[ROT],x] (* derived 2008 October 4 in IMAG-ROT.NB *) image[IMAGE[inverse[ROT]],image[IMAGE[ROT],x_]] := image[IMAGE[id[cart[cart[V,V],V]]],x] (* derived 2008 October 7 in QUASIGPS.NB *) image[IMAGE[inverse[ROT]],QUASIGPS] := QUASIGPS (* derived 2007 June 26 in HULL.NB *) image[IMAGE[inverse[S]],fix[ACLOSURE]] := fix[IMAGE[inverse[S]]] (* derived 2007 September 3 in IMS-P-U.NB *) image[IMAGE[inverse[S]],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := range[POWER] (* added 2000 January 11 based on HER-FIX1.NB *) image[IMAGE[inverse[S]],fix[IMAGE[inverse[S]]]] := fix[IMAGE[inverse[S]]] (* derived 2007 August 3 in TOPS.NB *) image[IMAGE[inverse[S]],fix[UCLOSURE]] := range[POWER] (* derived 2007 December 4 in HER-H.NB *) image[IMAGE[inverse[S]],FULL] := intersection[FULL,fix[IMAGE[inverse[S]]]] (* derived 2007 August 3 in TOPS.NB *) image[IMAGE[inverse[S]],range[CLIQUES]] := range[CLIQUES] (* added 2001 September 23 based on IM-BC.NB *) image[IMAGE[inverse[S]],range[POWER]] := range[POWER] (* derived 2007 August 3 in TOPS.NB *) image[IMAGE[inverse[S]],range[SUBVAR]] := range[POWER] (* derived 2007 December 20 in FUND-X.NB *) image[IMAGE[inverse[S]],REGULAR] := intersection[REGULAR,fix[IMAGE[inverse[S]]]] (* derived 2007 November 4 in FP-IM-PS.NB *) image[IMAGE[inverse[S]],subvar[inverse[PS]]] := fix[IMAGE[inverse[PS]]] (* derived 2007 August 3 in TOPS.NB *) image[IMAGE[inverse[S]],TOPS] := range[POWER] (* added 1999 December 2 based on SYMDIF-4.NB *) image[image[inverse[SYMDIF],x_],y_] := image[SYMDIF,cart[x,y]] (* derived 2004 August 6 in CONSTANT.NB *) image[IMAGE[LEFT[x_]],P[y_]] := P[cart[set[x],y]] (* derived 2005 November 5 in IMIMG-OO.NB *) image[IMAGE[oopart[x_]],P[y_]] := P[image[oopart[x],y]] (* added 2001 December 20 based on Q-POW.NB *) image[IMAGE[x_],P[domain[x_]]] := range[IMAGE[x]] (* derived 2008 July 4 in ZORN-PO.NB *) image[IMAGE[po[setpart[x_]]],chains[po[setpart[x_]]]] := Uchains[image[VERTSECT[po[setpart[x]]],fix[po[setpart[x]]]]] (* derived 2008 July 8 in CHN-TFM.NB *) image[IMAGE[po[thinpart[x_]]],chains[po[thinpart[x_]]]] := Uchains[image[VERTSECT[po[thinpart[x]]],fix[po[thinpart[x]]]]] (* added 2002 May 22 based on ITERATE.NB *) image[image[power[x_],z_],y_] := image[iterate[x,y],z] (* derived 2008 July 8 in CHN-TFM.NB *) image[IMAGE[POWER],chains[S]] := intersection[chains[S],P[range[POWER]]] (* added 2002 May 20 based on ITERCOID.NB *) image[IMAGE[x_],range[SINGLETON]] := range[VERTSECT[x]] (* derived 2007 July 4 in IMAGRANK.NB *) image[IMAGE[RANK],P[OMEGA]] := P[OMEGA] (* derived 2004 August 6 in CONSTANT.NB *) image[IMAGE[RIGHT[x_]],P[y_]] := P[cart[y,set[x]]] (* derived 2008 October 4 in IMAG-ROT.NB *) image[IMAGE[ROT],image[IMAGE[id[cart[cart[V,V],V]]],x_]] := image[IMAGE[ROT],x] (* derived 2008 October 4 in IMAG-ROT.NB *) image[IMAGE[ROT],image[IMAGE[inverse[ROT]],x_]] := image[IMAGE[id[cart[cart[V,V],V]]],x] (* derived 2008 October 4 in IMAG-ROT.NB *) image[IMAGE[ROT],image[IMAGE[ROT],x_]] := image[IMAGE[inverse[ROT]],x] (* derived 2008 October 7 in QUASIGPS.NB *) image[IMAGE[ROT],QUASIGPS] := QUASIGPS (* derived 2006 March 30 in REG-ROT.NB *) image[IMAGE[ROT],REGULAR] := P[cart[cart[REGULAR,REGULAR],REGULAR]] (* derived 2008 April 30 in ACYCLIC.NB *) image[IMAGE[SECOND],ACYCLIC] := V (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[SECOND],ANTISYM] := V (* derived 2004 December 13 in BIJ-RA.NB *) image[IMAGE[SECOND],BIJ] := V (* derived 2006 October 28 in DORA.NB *) image[IMAGE[SECOND],binhom[NATADD,NATADD]] := image[VERTSECT[DIV],omega] (* derived 2006 July 9 in DORA-BO.NB *) image[IMAGE[SECOND],BINOPS] := V (* derived 2006 September 19 in COMMTIVE.NB *) image[IMAGE[SECOND],COMMUTATIVE] := V (* derived 2006 June 9 in CNSTDORA.NB *) image[IMAGE[SECOND],CONST] := union[range[SINGLETON],set[0]] (* derived 2004 December 13 in DORA-EQV.NB *) image[IMAGE[SECOND],EQV] := V (* derived 2004 January 10 in FIN-IDX.NB *) image[IMAGE[SECOND],FINITE] := FINITE (* added 2003 May 7 based on IM-FUNS.NB *) image[IMAGE[SECOND],FUNS] := V (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[SECOND],IDEM] := V (* derived 2006 September 21 *) image[IMAGE[SECOND],image[CART,x_]] := union[image[x,complement[set[0]]],intersection[domain[x],set[0]]] (* derived 2006 October 19 in EQV-RAVS.NB *) image[IMAGE[SECOND],image[IMAGE[composite[id[E],inverse[SECOND]]],x_]] := image[IMAGE[id[complement[set[0]]]],x] (* derived 2007 June 26 in HULL.NB *) image[IMAGE[SECOND],image[IMAGE[cross[Id,inverse[S]]],x_]] := image[IMAGE[inverse[S]],image[IMAGE[SECOND],x]] (* derived 2006 January 25 in PO-XFORM.NB *) image[IMAGE[SECOND],image[IMAGE[id[cart[inverse[S],V]]],image[CROSS,id[BIJ]]]] := PO (* derived 2006 January 26 in PO-I-XFM.NB *) image[IMAGE[SECOND],image[IMAGE[id[cart[S,V]]],image[CROSS,id[BIJ]]]] := PO (* derived 2006 January 25 in IMAGSWAP.NB *) image[IMAGE[SECOND],image[IMAGE[SWAP],x_]] := image[IMAGE[FIRST],x] (* derived 2006 October 19 in EQV-RAVS.NB *) image[IMAGE[SECOND],image[VS,EQV]] := intersection[cliques[union[DISJOINT,Id]],P[complement[set[0]]]] (* derived 2005 August 7 in DORA-FIN.NB *) image[IMAGE[SECOND],intersection[BIJ,FINITE]] := FINITE (* derived 2008 July 8 in UBD-RA.NB *) image[IMAGE[SECOND],intersection[FUNS,P[cart[V,complement[set[0]]]]]] := P[complement[set[0]]] (* derived 2004 July 26 in IMAGDORA.NB *) image[IMAGE[SECOND],intersection[x_,image[inverse[IMAGE[FIRST]],y_]]] := image[image[DORA,x],y] (* derived 2008 August 27 in INVOL.NB *) image[IMAGE[SECOND],INVOL] := V (* added 2002 February 5 based on DORA.NB *) image[IMAGE[SECOND],P[cart[x_,y_]]] := union[intersection[image[V,x],P[y]],set[0]] (* added 2001 December 18 based on DORA-RA.NB *) image[IMAGE[SECOND],P[complement[cart[V,V]]]] := set[0] (* derived 2004 August 4 in THIN-RA.NB *) image[IMAGE[SECOND],P[composite[Id,x_]]] := image[IMAGE[SECOND],P[x]] (* derived 2005 November 8 in RA-IMG.NB *) image[IMAGE[SECOND],P[funpart[x_]]] := range[IMAGE[funpart[x]]] image[IMAGE[SECOND],P[Id]] := V (* added 2003 May 18 based on ACL-SQ.NB *) image[IMAGE[SECOND],P[id[x_]]] := P[x] (* derived 2004 August 4 in THIN-RA.NB *) image[IMAGE[SECOND],P[inverse[x_]]] := image[IMAGE[FIRST],P[x]] (* derived 2008 June 7 in LB-UB-E.NB *) image[IMAGE[SECOND],P[thinpart[x_]]] := image[inverse[S],range[IMAGE[x]]] (* derived 2008 June 7 in LB-UB-E.NB *) image[IMAGE[SECOND],P[ZN]] := V (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[SECOND],PO] := V (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[SECOND],PROJ] := V (* derived 2006 September 21 *) image[IMAGE[SECOND],range[CART]] := V (* derived 2006 October 28 in DORA.NB *) image[IMAGE[SECOND],range[LAMBHULL]] := fix[ACLOSURE] (* added 2003 May 13 based on DO-RA-Z.NB *) image[IMAGE[SECOND],range[PLUS]] := image[RC[omega],omega] image[IMAGE[SECOND],range[SINGLETON]] := union[range[SINGLETON],set[0]] (* derived 2004 December 13 in DORA-REG.NB *) image[IMAGE[SECOND],REGULAR] := REGULAR (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[SECOND],RFX] := V (* derived 2004 August 10 in RS-3.NB *) image[IMAGE[SECOND],RS[x_]] := range[IMAGE[x]] (* derived 2008 January 3 in DORA-SEL.NB *) image[IMAGE[SECOND],SELECT] := V (* derived 2006 September 19 in IMG-X.NB *) image[IMAGE[SECOND],subvar[cross[Id,x_]]] := subvar[x] (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[SECOND],SYM] := V (* derived 2004 December 13 in DORA-TRV.NB *) image[IMAGE[SECOND],TRV] := V (* derived 2008 August 27 in UNOPS.NB *) image[IMAGE[SECOND],UNOPS] := V (* added 2003 May 13 based on DO-RA-Z.NB *) image[IMAGE[SECOND],Z] := image[RC[omega],omega] (* Theorem IM-AP2 in IMG2 proved 1999 April 11 *) image[IMAGE[x_],set[y_]] := intersection[set[image[x,y]],image[V,set[y]]] image[IMAGE[SINGLETON],range[SINGLETON]] := image[SINGLETON,range[SINGLETON]] (* added 2003 October 15 based on ACYCLIC.NB *) image[IMAGE[SWAP],ACYCLIC] := ACYCLIC (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[SWAP],ANTISYM] := ANTISYM (* Theorem BIJ-4 in BIJ proved 2000 April 25 *) image[IMAGE[SWAP],BIJ] := BIJ (* derived 2008 October 1 in BIJ-CO.NB *) image[IMAGE[SWAP],bij[x_,y_]] := bij[y,x] (* derived 2006 July 20 in BINHOM-3.NB *) image[IMAGE[SWAP],binhom[x_,y_]] := image[INVERSE,binhom[x,y]] (* derived 2005 October 6 in CL.NB *) image[IMAGE[SWAP],CL] := CL (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[SWAP],EQV] := EQV (* derived 2006 September 19 in IMG-X.NB *) image[IMAGE[SWAP],fix[IMAGE[cross[x_,y_]]]] := fix[IMAGE[cross[y,x]]] (* added 2001 September 7 based on BIJ-NORM.NB *) image[IMAGE[SWAP],FUNS] := image[INVERSE,FUNS] (* derived 2004 December 14 in IDEMPROJ.NB *) image[IMAGE[SWAP],IDEM] := IDEM (* derived 2006 September 21 *) image[IMAGE[SWAP],image[CART,x_]] := image[CART,inverse[x]] (* derived 2006 January 25 in IMAGSWAP.NB *) image[IMAGE[SWAP],image[CROSS,id[BIJ]]] := image[CROSS,id[BIJ]] (* added 2002 November 30 based on CUT.NB *) image[IMAGE[SWAP],image[IMAGE[SWAP],x_]] := image[IMAGE[id[cart[V,V]]],x] (* derived 2006 December 18 in INTDIV-0.NB *) image[IMAGE[SWAP],image[INTDIV,x_]] := image[INTDIV,x] (* added 2002 November 30 based on INVERSE.NB *) image[IMAGE[SWAP],image[INVERSE,x_]] := intersection[x,P[cart[V,V]]] (* derived 2006 December 18 in INTDIV-0.NB *) image[IMAGE[SWAP],image[inverse[INTDIV],x_]] := image[inverse[INTDIV],x] (* added 2003 October 7 based on WF-IND.NB *) image[IMAGE[SWAP],intersection[x_,P[cart[V,V]]]] := image[INVERSE,x] (* derived 2006 August 1 in ZBCLHULL.NB *) image[IMAGE[SWAP],intersection[x_,Z]] := intersection[Z,image[INVERSE,x]] (* derived 2008 September 28 in INVOL.NB *) image[IMAGE[SWAP],INVOL] := INVOL (* added 1999 November 6 based on CO-2.LOG *) image[IMAGE[SWAP],P[x_]] := P[inverse[x]] (* derived 2008 September 28 in PERMS.NB *) image[IMAGE[SWAP],PERMS] := PERMS (* derived 2004 December 14 in DORA-PID.NB *) image[IMAGE[SWAP],PO] := PO (* derived 2006 September 21 *) image[IMAGE[SWAP],range[CART]] := range[CART] (* added 2002 November 30 based on INVERSE.NB *) image[IMAGE[SWAP],range[PLUS]] := image[INVERSE,range[PLUS]] (* restored 1999 October 13 based on NEWRULES.1 *) image[IMAGE[SWAP],range[SINGLETON]] := union[image[SINGLETON,cart[V,V]],set[0]] (* derived 2006 March 30 in REG-IN.NB *) image[IMAGE[SWAP],REGULAR] := P[cart[REGULAR,REGULAR]] (* added 2001 October 8 based on RFX-IN.NB *) image[IMAGE[SWAP],RFX] := RFX (* derived 2006 October 18 in RS-IN.NB *) image[IMAGE[SWAP],RS[x_]] := image[INVERSE,RS[x]] (* derived 2004 September 21 in WF-X.NB *) image[IMAGE[SWAP],subvar[cross[x_,y_]]] := subvar[cross[y,x]] (* added 2001 October 10 based on SYM-1.NB *) image[IMAGE[SWAP],SYM] := SYM (* derived 2004 February 10 in TO.NB *) image[IMAGE[SWAP],TO] := TO (* added 2001 October 9 based on TRV-1.NB *) image[IMAGE[SWAP],TRV] := TRV (* added 2002 November 16 based on INTEGER.NB *) image[IMAGE[SWAP],Z] := Z (* derived 2005 November 6 in IMG-THIN.NB *) image[IMAGE[thinpart[x_]],P[y_]] := image[IMAGE[x],P[y]] (* Theorem IM-IM-V2 in IM2 *) image[image[V,x_],y_] := intersection[image[V,x],image[V,y]] (* Theorem IM-IM-V1 in IM2 *) image[x_,image[V,y_]] := intersection[range[x],image[V,y]] (* derived 2007 July 4 in NAT-ORD.NB *) image[IMAGE[ZN],nat[x_]] := image[IMAGE[inverse[RANK]],nat[x]] (* derived 2006 April 11 in ZN-OM.NB *) image[IMAGE[ZN],omega] := image[IMAGE[inverse[RANK]],omega] (* derived 2007 July 4 in NAT-ORD.NB *) image[IMAGE[ZN],ord[x_]] := image[IMAGE[inverse[RANK]],ord[x]] (* derived 2004 December 14 in DORA-PID.NB *) image[IMG,cart[ANTISYM,V]] := V (* derived 2008 May 17 in FIX-WO.NB *) image[IMG,cart[BIJ,x_]] := image[Q,image[inverse[S],x]] (* derived 2004 December 13 in DORA-EQV.NB *) image[IMG,cart[EQV,V]] := V (* derived 2005 October 17 in IMG-FIN.NB *) image[IMG,cart[FUNS,FINITE]] := FINITE (* derived 2004 December 13 in DORA-FIN.NB *) image[IMG,cart[FINITE,V]] := FINITE (* derived 2006 June 9 in FUN-RASG.NB *) image[IMG,cart[FUNS,range[SINGLETON]]] := union[range[SINGLETON],set[0]] (* derived 2004 December 13 in BIJ-RA.NB *) image[IMG,cart[FUNS,V]] := V (* derived 2004 December 13 in DORA-EQV.NB *) image[IMG,cart[image[CART,Id],V]] := V (* derived 2005 January 17 in BIJ-PO.NB *) image[IMG,cart[image[CROSS,id[BIJ]],ANTISYM]] := ANTISYM (* derived 2004 December 27 in FUN-TRV.NB *) image[IMG,cart[image[CROSS,id[BIJ]],EQV]] := EQV (* derived 2005 October 15 in OO-FIN.NB *) image[IMG,cart[image[CROSS,id[BIJ]],FINITE]] := intersection[FINITE,P[cart[V,V]]] (* derived 2008 June 29 in PO-EQN.NB *) image[IMG,cart[image[CROSS,id[BIJ]],image[IMAGE[id[S]],image[CART,Id]]]] := PO (* derived 2005 January 17 in BIJ-PO.NB *) image[IMG,cart[image[CROSS,id[BIJ]],PO]] := PO (* derived 2005 January 17 in BIJ-PO.NB *) image[IMG,cart[image[CROSS,id[BIJ]],RFX]] := RFX (* derived 2005 October 11 in TO-OO.NB *) image[IMG,cart[image[CROSS,id[BIJ]],TO]] := TO (* derived 2004 December 27 in FUN-TRV.NB *) image[IMG,cart[image[CROSS,id[BIJ]],TRV]] := TRV (* derived 2005 October 13 in WO-OO.NB *) image[IMG,cart[image[CROSS,id[BIJ]],WO]] := WO (* derived 2004 December 27 in FUN-TRV.NB *) image[IMG,cart[image[CROSS,id[image[INVERSE,FUNS]]],EQV]] := EQV (* derived 2005 January 16 in FUN-RFX.NB *) image[IMG,cart[image[CROSS,id[image[INVERSE,FUNS]]],RFX]] := RFX (* derived 2004 December 27 in FUN-TRV.NB *) image[IMG,cart[image[CROSS,id[image[INVERSE,FUNS]]],TRV]] := TRV (* derived 2005 October 11 in WF-XFORM.NB *) image[IMG,cart[image[CROSS,id[image[INVERSE,FUNS]]],WF]] := WF (* derived 2006 May 2 in RFX-XFM.NB *) image[IMG,cart[image[CROSS,Id],RFX]] := RFX (* derived 2008 May 8 in RESTRICT.NB *) image[IMG,cart[image[IMAGE[composite[id[inverse[FIRST]],inverse[SECOND]]],FUNS],V]] := FUNS (* derived 2005 October 11 in TO-RS.NB *) image[IMG,cart[image[IMAGE[DUP],x_],y_]] := image[CAP,cart[x,y]] (* derived 2008 May 15 in IMG-IDP.NB *) image[IMG,cart[P[DIV],V]] := P[omega] (* added 1999 December 25 based on IMG-IDX.TXT *) image[IMG,cart[P[Id],x_]] := image[inverse[S],x] (* derived 2005 September 15 in UCL-RAVS.NB *) image[IMG,cart[P[id[x_]],V]] := P[x] (* derived 2004 December 13 in DORA-REG.NB *) image[IMG,cart[REGULAR,V]] := REGULAR (* discovered 1999 December 16 in IMG.NB *) image[IMG,cart[set[x_],y_]] := intersection[image[V,set[x]],image[IMAGE[x],y]] (* discovered 1999 December 16 in IMG.NB *) image[IMG,cart[x_,set[y_]]] := intersection[image[V,set[y]],image[IMAGE[SECOND],image[IMAGE[id[cart[y,V]]],x]]] (* added 1999 November 26 based on IM-IMG.NB *) image[IMG,cart[set[0],V]] := set[0] (* added 1999 November 14 based on IMG2.NB *) image[IMG,cart[set[x_],set[y_]]] := intersection[image[V,set[x]],image[V,set[y]],set[image[x,y]]] (* derived 2004 December 13 in DORA-TRV.NB *) image[IMG,cart[TRV,V]] := V (* derived 2004 December 14 in IM-IMG.NB *) image[IMG,cart[V,x_]] := union[image[V,intersection[x,complement[set[0]]]],intersection[image[V,x],set[0]]] (* added 1999 November 26 based on IM-IMG.NB *) image[IMG,cart[V,set[0]]] := set[0] (* derised 2008 August 11 in BC-SBV.NB *) image[IMG,composite[BIGCUP,SUBVAR]] := V (* added 2000 September 28 based on IMG.NB *) image[IMG,composite[DISJOINT,IMAGE[FIRST]]] := set[0] (* added 1999 November 26 based on IM-IMG.NB *) image[IMG,composite[Id,x_]] := image[IMG,x] (* derived 2008 November 1 in PARTN.NB *) image[IMG,composite[IMAGE[FIRST],id[x_],inverse[VS]]] := image[IMAGE[SECOND],image[VS,x]] (* derived 2008 November 1 in PARTN.NB *) image[IMG,composite[IMAGE[inverse[DUP]],id[EQV],inverse[VS]]] := intersection[cliques[union[DISJOINT,Id]],P[complement[set[0]]]] (* derived 2006 June 9 in FUN-RASG.NB *) image[IMG,composite[inverse[E],IMAGE[SINGLETON],IMAGE[FIRST],id[FUNS]]] := range[SINGLETON] (* derived 2008 November 1 in IMG-IDP.NB *) image[IMG,composite[x_,inverse[IMAGE[DUP]]]] := image[CAP,x] (* derived 2007 December 6 in IVR-HULL.NB *) image[IMG,inverse[IMAGE[DUP]]] := V (* added 1999 November 26 based on IM-IMG.NB *) image[IMG,set[0]] := 0 (* derived 2006 August 6 in EVEN.NB *) image[INTADD,cart[image[INTADD,Id],image[INTADD,Id]]] := image[INTADD,Id] (* derived 2006 December 18 in INTDIV.NB *) image[INTADD,cart[image[INTDIV,set[x_]],image[INTDIV,set[x_]]]] := image[INTDIV,set[x]] (* derived 2006 December 18 in Z-IND.NB *) image[INTADD,cart[intersection[x_,P[cart[V,V]]],y_]] := image[INTADD,cart[x,y]] (* derived 2006 December 18 in Z-IND.NB *) image[INTADD,cart[x_,intersection[y_,P[cart[V,V]]]]] := image[INTADD,cart[x,y]] (* derived 2006 August 5 in BINHOM-7.NB *) image[INTADD,cart[intersection[x_,Z],y_]] := image[INTADD,cart[x,y]] (* derived 2006 August 5 in BINHOM-7.NB *) image[INTADD,cart[x_,intersection[y_,Z]]] := image[INTADD,cart[x,y]] (* derived 2007 January 11 in INTLEQ.NB *) image[INTADD,cart[x_,range[PLUS]]] := image[INTLEQ,x] (* derived 2007 January 11 in INTLEQ.NB *) image[INTADD,cart[range[PLUS],x_]] := image[INTLEQ,x] (* derived 2007 January 11 in INTLEQ.NB *) image[INTADD,cart[set[id[omega]],x_]] := intersection[x,Z] (* derived 2007 January 11 in INTLEQ.NB *) image[INTADD,cart[x_,set[id[omega]]]] := intersection[x,Z] (* added 2003 August 9 based on INTADDXY.NB *) image[INTADD,cart[set[x_],set[y_]]] := set[intadd[x,y]] (* derived 2008 September 13 in INTADD.NB *) image[INTADD,cart[x_,V]] := intersection[Z,image[V,intersection[x,Z]]] (* derived 2008 September 13 in INTADD.NB *) image[INTADD,cart[V,x_]] := intersection[Z,image[V,intersection[x,Z]]] (* derived 2006 August 6 in EVEN.NB *) image[INTADD,id[Z]] := image[INTADD,Id] (* derived 2007 January 21 in ZADDSWAP.NB *) image[INTADD,inverse[x_]] := image[INTADD,x] (* derived 2007 January 10 in INTDIV.NB *) image[INTDIV,image[INTDIV,x_]] := image[INTDIV,x] (* derived 2006 December 18 in INTDIV-0.NB *) image[INTDIV,intersection[x_,Z]] := image[INTDIV,x] (* derived 2006 December 18 in INTDIV.NB *) image[INTDIV,set[composite[id[omega],SUCC]]] := Z (* derived 2006 November 27 in BH-IDEMP.NB *) image[INTDIV,set[id[omega]]] := set[id[omega]] (* derived 2007 January 10 in INTDIV.NB *) image[INTDIV,set[inverse[plus[x_]]]] := image[INTDIV,set[plus[x]]] image[intersection[x_,y_],z_] := fix[composite[x,id[z],inverse[y]]] image[z_,intersection[x_,complement[domain[z_]]]] := 0 image[z_,intersection[x_,domain[z_]]] := image[z,x] image[x_,intersection[y_,image[V,z_]]] := intersection[image[x,y],image[V,z]] (* added 1998 January 23 *) image[x_,intersection[y_,complement[image[V,z_]]]] := intersection[image[x,y],complement[image[V,z]]] (* derived 2007 January 11 in INTLEQ.NB *) image[INTLEQ,image[INTLEQ,x_]] := image[INTLEQ,x] (* derived 2007 January 11 in INTLEQ.NB *) image[INTLEQ,range[PLUS]] := range[PLUS] (* derived 2007 January 11 in INTLEQ.NB *) image[INTLEQ,set[id[omega]]] := range[PLUS] (* derived 2006 December 29 in INTMUL-3.NB *) image[INTMUL,cart[x_,intersection[y_,Z]]] := image[INTMUL,cart[x,y]] (* derived 2007 January 5 based on INTMUL-5.NB *) image[INTMUL,cart[set[x_],set[y_]]] := set[intmul[x,y]] (* derived 2007 January 10 in INTDIV.NB *) image[INTMUL,cart[V,x_]] := image[INTDIV,x] (* derived 2007 January 10 in INTDIV.NB *) image[INTMUL,cart[x_,V]] := image[INTDIV,x] (* derived 2008 September 15 in INTTIMES.NB *) image[inttimes[x_],image[INTDIV,set[y_]]] := image[INTDIV,set[intmul[x,y]]] (* derived 2008 September 15 in REPLACE.NB *) image[INTTIMES,set[x_]] := intersection[image[V,intersection[Z,set[x]]],set[inttimes[x]]] (* derived 2008 September 15 in INTTIMES.NB *) image[inttimes[x_],set[y_]] := set[intmul[x,y]] (* added 2002 April 10 based on INVAR.NB *) IMAGE[INVAR] := cart[set[0],set[0]] (* added 2002 April 10 based on INVAR-S.NB *) image[INVAR,P[x_]] := V (* derived 2006 March 26 in IMIN-REG.NB *) image[INVAR,REGULAR] := V (* added 2002 April 10 based on INVAR.NB *) image[INVAR,set[x_]] := intersection[image[V,set[x]],invar[x]] (* added 2003 May 23 based on CORE-BCL.NB *) image[inverse[ACLOSURE],binclosed[CAP]] := V (* derived 2007 May 5 in REPLACE.NB *) image[inverse[ACLOSURE],chains[S]] := chains[S] (* derived 2004 January 8 in FIN-FU.NB *) image[inverse[ACLOSURE],FINITE] := FINITE (* derived 2004 January 23 in P-FINITE.NB *) image[inverse[ACLOSURE],P[FINITE]] := P[FINITE] (* derived 2007 July 11 in CONSTHUL.NB *) image[inverse[ACLOSURE],range[SINGLETON]] := range[SINGLETON] (* derived 2006 March 21 in IMIN-REG.NB *) image[inverse[ACLOSURE],REGULAR] := REGULAR (* added 2001 May 10 based on UCLOS-1.NB *) image[inverse[ACLOSURE],set[0]] := set[0] (* added 2003 October 15 based on ACYCLIC.NB *) image[INVERSE,ACYCLIC] := ACYCLIC (* derived 2004 October 10 in COMPACT0.NB *) image[inverse[ADJOIN[set[0]]],COMPACT] := COMPACT (* derived 2003 December 27 in T1.NB *) image[inverse[ADJOIN[set[0]]],T1] := T1 (* derived 2003 December 30 in T2.NB *) image[inverse[ADJOIN[set[0]]],T2] := T2 (* added 2002 January 19 based on INVERSE.NB *) image[INVERSE,ANTISYM] := ANTISYM (* added 1999 October 13 based on SESSION.2 *) image[inverse[ASSOC],x_] := rotate[inverse[x]] (* added 2001 February 24 based on NEW.NB *) IMAGE[inverse[BIGCAP]] := cart[set[0], union[intersection[P[complement[set[0]]], set[set[0]]],set[0]]] (* Theorem FIN-SC7 in FINITE proved 2000 April 16 *) image[inverse[BIGCUP],FINITE] := intersection[FINITE,P[FINITE]] (* Theorem BC-IM-9 in BIGCUP/BC proved 1998 October 25 *) image[inverse[BIGCUP],P[x_]] := P[P[x]] (* Theorem BC-REG-2 in BIGCUP/BC proved 1999 March 4 *) image[inverse[BIGCUP],REGULAR] := REGULAR (* revised 2002 April 18 based on REPLACE.NB *) image[inverse[BIGCUP],set[0]] := succ[set[0]] (* derived 2007 December 26 in COARSER.NB *) image[inverse[BIGCUP],set[set[0]]] := set[set[set[0]],succ[set[0]]] (* derived 2007 December 26 in COARSER.NB *) image[inverse[BIGCUP],succ[set[0]]] := P[succ[set[0]]] (* added 2000 September 4 based on NEW.M *) image[INVERSE,BIJ] := BIJ (* derived 2008 September 29 in BIJ.NB *) image[INVERSE,bij[x_,y_]] := bij[y,x] (* added 2002 February 3 based on CUPCLOSED.NB *) IMAGE[inverse[CAP]] := cart[set[0],set[0]] (* added 1999 December 21 based on IMINROT2.NB *) image[inverse[CAP],image[S,x_]] := composite[S,id[x],inverse[S]] (* added 1999 October 8 based on CAP-LOG.1 and CAP-LOG.2 *) image[inverse[CAP],P[x_]] := composite[DISJOINT,IMAGE[id[complement[x]]]] (* added 1999 August 12 based on session DISJOINT.LOG *) image[inverse[CAP],set[0]] := DISJOINT (* added 2002 May 28 based on FINITE.NB *) image[inverse[CARD],FINITE] := FINITE (* added 2002 May 28 based on FINITE.NB *) image[inverse[CARD],omega] := FINITE (* added 2001 December 4 based on ON-WO.NB *) image[inverse[CARD],OMEGA] := image[Q,OMEGA] (* derived 2005 November 19 in REGULAR.NB *) image[inverse[CARD],REGULAR] := image[Q,OMEGA] (* added 2001 December 8 based on EMPTY-2.NB *) image[inverse[CARD],set[0]] := set[0] (* derived 2006 March 12 in DENUM.NB *) image[inverse[CARD],set[omega]] := image[Q,set[omega]] (* derived 2003 December 22 in LOW-CARD.NB *) image[inverse[CARD],set[set[0]]] := range[SINGLETON] (* derived 2003 December 22 in LOW-CARD.NB *) image[inverse[CARD],set[succ[set[0]]]] := image[PAIRSET,Di] (* derived 2006 March 12 in DENUM.NB *) image[inverse[CARD],succ[omega]] := image[Q,succ[omega]] (* added 2003 October 15 based on ACYCLIC.NB *) image[inverse[CART],ACYCLIC] := DISJOINT (* derived 2005 January 17 in CP-PO.NB *) image[inverse[CART],ANTISYM] := union[DISJOINT,image[inverse[CAP],range[SINGLETON]]] (* added 2001 December 22 based on DORA-2.NB *) image[inverse[CART],BIJ] := union[cart[V,set[0]],cart[range[SINGLETON],range[SINGLETON]],cart[set[0],V]] (* derived 2006 June 11 in CONSTOPS.NB *) image[inverse[CART],BINOPS] := union[cart[V,set[0]],cart[set[0],V], composite[inverse[E],IMAGE[SINGLETON],inverse[DUP],inverse[CART]]] (* derived 2006 June 15 in IMINCART.NB *) image[inverse[CART],CL] := id[range[SINGLETON]] (* added 2001 November 7 based on PAIRSET.NB *) image[inverse[CART],cliques[complement[cross[x_,y_]]]] := union[cart[V,cliques[complement[y]]],cart[cliques[complement[x]],V]] (* derived 2006 June 14 in IMINCART.NB *) image[inverse[CART],CONST] := union[cart[V,union[range[SINGLETON],set[0]]],cart[set[0],V]] (* added 2001 October 28 based on EQV-I.NB *) image[inverse[CART],EQV] := union[Id,cart[V,set[0]],cart[set[0],V]] (* added 2000 October 1 based on FIN-CART.NB *) image[inverse[CART],FINITE] := union[cart[FINITE,FINITE],cart[V,set[0]],cart[set[0],V]] (* added 2001 December 22 based on DORA-2.NB *) image[inverse[CART],FUNS] := union[cart[V,union[range[SINGLETON],set[0]]],cart[set[0],V]] (* derived 2006 June 14 in IMINCART.NB *) image[inverse[CART],IDEM] := union[cart[V,set[0]],cart[set[0],V],composite[E,inverse[E]]] (* added 1999 December 22 based on IMINROT2.NB *) image[inverse[CART],image[DISJOINT,x_]] := composite[DISJOINT,IMG,id[cart[x,V]],inverse[SECOND]] (* derived 2006 June 18 in REIF-PO.NB *) image[inverse[CART],image[inverse[IMAGE[id[inverse[E]]]],x_]] := composite[inverse[IMAGE[DUP]],inverse[image[inverse[COMPOSE],x]],IMAGE[composite[id[inverse[E]],inverse[FIRST]]]] (* derived 2006 June 14 in IMINCART.NB *) image[inverse[CART],image[inverse[IMAGE[inverse[DUP]]],x_]] := image[inverse[CAP],x] (* added 1999 December 22 based on IMINROT2.NB *) image[inverse[CART],image[S,x_]] := composite[S,IMAGE[SECOND],id[intersection[x,P[cart[V,V]]]],inverse[IMAGE[FIRST]],inverse[S]] (* derived 2006 June 14 in IMINCART.NB *) image[inverse[CART],image[SINGLETON,x_]] := composite[id[range[SINGLETON]],LB[LB[x]],id[range[SINGLETON]]] (* derived 2006 June 13 in CART-SG.NB *) image[inverse[CART],INVOL] := union[cart[V,set[0]],cart[set[0],V],id[range[SINGLETON]]] (* derived 2006 November 4 in CONSTMAP.NB *) image[inverse[CART],map[x_,y_]] := union[cart[V,intersection[complement[image[V,x]],set[0]]], cart[set[0],complement[image[V,x]]],cart[set[x],image[SINGLETON,y]]] (* added 2000 December 23 based on LB-LB.NB *) image[inverse[CART],P[x_]] := LB[LB[x]] (* derived 2005 January 17 in CP-PO.NB *) image[inverse[CART],PO] := union[cart[V,set[0]],cart[set[0],V],id[range[SINGLETON]]] (* derived 2006 June 14 in IMINCART.NB *) image[inverse[CART],PROJ] := union[cart[V,set[0]],cart[set[0],V],composite[inverse[E],IMAGE[SINGLETON]]] (* derived 2006 June 15 in IMINCART.NB *) image[inverse[CART],range[PLUS]] := 0 (* derived 2006 June 15 in IMINCART.NB *) image[inverse[CART],range[RCF]] := cart[set[set[0]],set[set[0]]] (* added 2000 July 18 based on SG-CART.NB *) image[inverse[CART],range[SINGLETON]] := cart[range[SINGLETON],range[SINGLETON]] (* derived 2006 March 30 in REG-CART.NB *) image[inverse[CART],REGULAR] := union[cart[REGULAR,REGULAR],cart[V,set[0]],cart[set[0],V]] (* added 2001 October 8 based on RFX.NB *) image[inverse[CART],RFX] := union[Id,cart[V,set[0]],cart[set[0],V]] (* derived 2004 August 11 in RS-4.NB *) image[inverse[CART],RS[x_]] := union[cart[V,set[0]],intersection[composite[S,IMAGE[x]],LB[LB[x]]]] (* derived 2004 November 2 in SELECT.NB *) image[inverse[CART],SELECT] := cart[V,V] (* added 1999 October 5 based on CARTINIM.LOG *) image[inverse[CART],set[0]] := union[cart[V,set[0]],cart[set[0],V]] (* added 2001 October 10 based on SYM-1.NB *) image[inverse[CART],SYM] := union[Id,cart[V,set[0]],cart[set[0],V]] (* derived 2006 June 14 in IMINCART.NB *) image[inverse[CART],TO] := union[cart[V,set[0]],cart[set[0],V],id[range[SINGLETON]]] (* added 2001 October 9 based on TRV-1.NB *) image[inverse[CART],TRV] := cart[V,V] (* derived 2006 June 11 in CONSTOPS.NB *) image[inverse[CART],UNOPS] := union[cart[V,set[0]],cart[set[0],V],composite[inverse[E],IMAGE[SINGLETON]]] (* added 2003 October 7 based on WF-IND.NB *) image[inverse[CART],WF] := DISJOINT (* derived 2006 June 15 in IMINCART.NB *) image[inverse[CART],WO] := union[cart[V,set[0]],cart[set[0],V],id[range[SINGLETON]]] (* derived 2006 June 14 in IMINCART.NB *) image[inverse[CART],Z] := 0 (* derived 2007 May 8 in FINITE.NB *) image[inverse[CHAINS],FINITE] := image[inverse[IMAGE[inverse[DUP]]],FINITE] (* derived 2006 September 7 in CO-IMS-Z.NB *) image[INVERSE,cliques[EQUIDIFF]] := cliques[EQUIDIFF] (* derived 2008 January 2 in FINCHR-1.NB *) image[inverse[CLIQUES],FINCHAR] := V (* derived 2006 October 20 in CLIQ-FIN.NB *) image[inverse[CLIQUES],FINITE] := image[inverse[IMAGE[inverse[DUP]]],FINITE] (* derived 2006 August 15 in CLOCK-AP.NB *) image[inverse[clock[x_]],set[y_]] := set[APPLY[inverse[clock[x]],y]] (* derived 2004 February 7 in COMPACT.NB *) image[inverse[COARSER],COMPACT] := COMPACT (* derived 2007 December 28 in COARSER.NB *) image[inverse[COARSER],complement[set[0]]] := V (* derived 2007 December 28 in COARSER.NB *) image[inverse[COARSER],complement[succ[set[0]]]] := complement[succ[set[0]]] (* derived 2004 February 7 in COMPACT.NB *) image[inverse[COARSER],FINITE] := FINITE (* derived 2008 January 5 in COARSER.NB *) image[inverse[COARSER],image[COARSER,x_]] := image[inverse[BIGCUP],image[BIGCUP,x]] (* derived 2008 January 5 in COARSER.NB *) image[inverse[COARSER],image[inverse[COARSER],x_]] := image[inverse[COARSER],x] (* derived 2007 May 27 in COARSER.NB *) image[inverse[COARSER],image[inverse[S],x_]] := image[inverse[S],x] (* derived 2007 May 27 in COARSER.NB *) image[inverse[COARSER],P[x_]] := P[x] (* derived 2007 May 27 in COARSER.NB *) image[inverse[COARSER],PointClosed] := V (* derived 2006 March 26 in IMIN-REG.NB *) image[inverse[COARSER],REGULAR] := REGULAR (* derived 2007 December 26 in COARSER.NB *) image[inverse[COARSER],set[0]] := set[0] (* derived 2007 December 26 in COARSER.NB *) image[inverse[COARSER],set[omega]] := intersection[complement[FINITE],P[omega]] (* derived 2007 December 26 in COARSER.NB *) image[inverse[COARSER],set[set[0]]] := succ[set[0]] (* derived 2007 December 26 in COARSER.NB *) image[inverse[COARSER],set[succ[set[0]]]] := set[set[set[0]],succ[set[0]]] (* derived 2007 December 28 in COARSER.NB *) image[inverse[COARSER],succ[set[0]]] := succ[set[0]] (* derived 2007 May 27 in COARSER.NB *) image[inverse[COARSER],T1] := V (* derived 2007 May 27 in COARSER.NB *) image[inverse[COARSER],T2] := V (* derived 2004 February 17 in SU-IM-C.NB *) image[inverse[x_],complement[image[x_,complement[image[inverse[x_],y_]]]]] := image[inverse[x],y] image[inverse[x_],complement[range[x_]]] := 0 (* derived 2006 June 18 in REIF-PO.NB *) image[inverse[COMPOSE],image[inverse[IMAGE[FIRST]],x_]] := composite[inverse[IMAGE[SWAP]],inverse[image[inverse[IMG],x]],IMAGE[FIRST]] (* derived 2006 June 18 in REIF-PO.NB *) image[inverse[COMPOSE],image[inverse[IMAGE[SECOND]],x_]] := composite[inverse[IMAGE[SECOND]],image[inverse[IMG],x]] (* derived 2004 November 17 in RS-IN-CO.NB *) image[inverse[COMPOSE],intersection[x_,P[cart[V,V]]]] := image[inverse[COMPOSE],x] (* added 2002 January 3 based on REPLACE.NB *) image[inverse[COMPOSE],P[x_]] := composite[LB[LB[complement[cross[complement[inverse[x]],Id]]]],IMAGE[SWAP]] (* added 1999 December 4 based on COMPOSE.NB *) image[inverse[COMPOSE],set[0]] := composite[inverse[IMAGE[SECOND]],DISJOINT,IMAGE[FIRST]] (* derived 2007 December 12 in COREDESC.NB *) image[inverse[CORE[x_]],image[inverse[CORE[x_]],y_]] := image[inverse[CORE[x]],y] (* derived 2007 December 12 in COREDESC.NB *) image[inverse[CORE[x_]],image[S,intersection[x,complement[set[0]]]]] := image[S,intersection[x,complement[set[0]]]] (* added 2001 October 25 based on COREHULL.NB *) image[inverse[CORE[x_]],P[U[x_]]] := V (* derived 2007 May 7 in IMV-SET.NB *) image[inverse[CORE[x_]],set[0]] := complement[image[S,intersection[x,complement[set[0]]]]] (* added 2002 January 2 based on CRSRULES.NB *) image[inverse[CROSS],intersection[x_,P[cart[V,V]]]] := image[inverse[CROSS],x] (* added 2002 January 2 based on CRSRULES.NB *) image[inverse[CROSS],P[x_]] := composite[inverse[IMAGE[id[cart[V,V]]]],LB[LB[twist[x]]],IMAGE[id[cart[V,V]]]] (* added 2000 September 28 based on CROSS.NB *) image[inverse[CROSS],set[0]] := union[cart[V,P[complement[cart[V,V]]]],cart[P[complement[cart[V,V]]],V]] (* derived 2007 May 8 in PAIRSET.NB *) image[inverse[CUP],chains[x_]] := composite[inverse[S],id[chains[x]],S] (* derived 2004 October 2 in CLIQ-EQV.NB *) image[inverse[CUP],cliques[x_]] := composite[inverse[S],id[cliques[x]],S] (* added 2002 January 8 based on FINITE.NB *) image[inverse[CUP],FINITE] := cart[FINITE,FINITE] (* added 1999 December 21 based on IMINROT2.NB *) image[inverse[CUP],image[DISJOINT,x_]] := composite[DISJOINT,id[x],DISJOINT] (* derived 2008 August 23 in IMBCFUNS.NB *) image[inverse[CUP],image[inverse[BIGCUP],FUNS]] := composite[inverse[S],id[image[inverse[BIGCUP],FUNS]],S] (* added 1999 December 21 based on IMINROT2.NB *) image[inverse[CUP],image[inverse[S],x_]] := composite[inverse[S],id[x],S] (* added 1999 December 23 based on IMINRULE.NB *) image[inverse[CUP],image[S,set[x_]]] := composite[S,RC[x],IMAGE[id[x]]] (* added 1999 October 8 based on CUP-LOG.1 *) image[inverse[CUP],P[x_]] := cart[P[x],P[x]] (* added 2002 January 8 based on REGULAR.NB *) image[inverse[CUP],REGULAR] := cart[REGULAR,REGULAR] (* added 1999 December 19 based on RC-5.NB *) image[inverse[CUP],set[x_]] := composite[id[P[x]],S,RC[x]] (* derived 2006 November 21 in CUR-BO.NB *) image[inverse[CURRY],map[x_,map[x_,y_]]] := map[cart[x,x],y] (* derived 2006 November 5 in CURRY.NB *) image[inverse[CURRY],set[x_]] := set[APPLY[inverse[CURRY],x]] (* added 1999 December 21 based on IMINROT2.NB *) image[inverse[DIF],image[S,x_]] := composite[DISJOINT,id[x],inverse[S]] (* added 1999 October 26 based on IMIN-DIF.2 *) image[inverse[DIF],P[x_]] := composite[S,IMAGE[id[complement[x]]]] (* added 2001 March 8 based on IMIMG.NB *) image[inverse[DIF],set[x_]] := composite[id[P[complement[x]]],S,IMAGE[id[complement[x]]],id[image[S,set[x]]]] (* derived 2006 August 16 in EVOD-MUL.NB *) image[inverse[DIV],even] := omega (* derived 2005 February 22 in DIVRULES.NB *) image[inverse[DIV],intersection[omega,x_]] := image[inverse[DIV],x] (* derived 2006 August 16 in EVOD-MUL.NB *) image[inverse[DIV],odd] := odd (* added 2002 September 3 based on DIV-ZERO.NB *) image[inverse[DIV],set[0]] := omega (* added 2002 September 3 based on DIV-ONE.NB *) image[inverse[DIV],set[set[0]]] := set[set[0]] (* derived 2005 January 27 in DIV.NB *) image[inverse[DIV],set[succ[set[0]]]] := set[set[0],succ[set[0]]] (* derived 2007 January 27 in IM-DIV.NB *) image[inverse[DIV],set[succ[succ[set[0]]]]] := set[set[0],succ[succ[set[0]]]] (* derived 2005 May 5 in IMIN-DIV.NB *) image[inverse[DIV],succ[nat[x_]]] := omega (* derived 2008 December 25 in COD-DOM.NB *) image[inverse[domain[x_]],ids[x_]] := domain[dom[x]] (* added 2001 December 19 based on INV-DORA.NB *) image[inverse[DORA],cart[x_,y_]] := intersection[image[inverse[IMAGE[FIRST]],x], image[inverse[IMAGE[SECOND]],y]] (* derived 2007 September 10 in UCH-BO.NB *) image[inverse[DORA],composite[complement[inverse[S]],IMAGE[inverse[DUP]]]] := complement[image[inverse[DORA],composite[inverse[S],IMAGE[inverse[DUP]]]]] (* added 2001 December 31 based on DORA-DJ.NB *) image[inverse[DORA],composite[E,inverse[E]]] := complement[image[inverse[DORA],DISJOINT]] (* added 2001 December 18 based on DORA.NB *) image[inverse[DORA],composite[Id,x_]] := image[inverse[DORA],x] (* Theorem DUP-FP-2 in DUP *) image[inverse[DUP],x_] := fix[x] (* Theorem SC-8 in SC1 *) image[inverse[E],x_] := U[x] (* see IMG-BC-3 in IMG4.DEM *) IMAGE[inverse[E]] := BIGCUP (* added 2002 January 19 based on INVERSE.NB *) image[INVERSE,EQV] := EQV (* derived 2006 December 13 in FACT.NB *) image[inverse[FACTORIAL],P[complement[set[0]]]] := 0 (* derived 2005 April 23 in FACT-S.NB *) image[inverse[FACTORIAL],set[0]] := 0 (* derived 2008 August 25 in IMINFACT.NB *) image[inverse[FACTORIAL],set[set[0]]] := succ[set[0]] (* Theorem 1ST-IN-2 *) image[inverse[FIRST],x_] := cart[x,V] (* see IMG-1ST in IMG2.DEM *) IMAGE[inverse[FIRST]] := cart[set[0],set[0]] (* derived 2007 October 7 in FPCO-DUP.NB *) image[INVERSE,fix[composite[inverse[S],COMPOSE,DUP]]] := fix[composite[inverse[S],COMPOSE,DUP]] (* derived 2006 September 19 in IMG-X.NB *) image[INVERSE,fix[IMAGE[cross[x_,y_]]]] := fix[IMAGE[cross[y,x]]] (* derived 2005 January 31 in X4210.NB *) image[inverse[FUNPART],image[inverse[IMAGE[FIRST]],FINITE]] := image[inverse[FUNPART],FINITE] (* derived 2006 November 24 in CO-EVAL.NB *) image[inverse[FUNPART],P[complement[cart[set[x_],V]]]] := complement[domain[eval[x]]] (* derived 2004 November 2 in SELECT.NB *) image[inverse[FUNPART],SELECT] := V (* added 2001 May 31 based on SUBVAR.NB *) image[inverse[GREATEST[complement[x_]]],y_] := complement[subvar[union[x,id[complement[y]]]]] (* added 2000 November 19 based on IM-SS.NB *) image[inverse[GREATEST[x_]],set[y_]] := intersection[ complement[P[complement[set[y]]]],P[image[inverse[x],set[y]]]] (* derived 2007 December 4 in IM-HC-TC.NB *) image[inverse[HC],image[inverse[HC],x_]] := image[inverse[HC],x] (* derived 2007 December 4 in IM-HC-TC.NB *) image[inverse[HC],image[inverse[TC],x_]] := image[inverse[HC],x] (* derived 2007 December 10 in IM-HC-TC.NB *) image[inverse[HC],intersection[FULL,x_]] := image[inverse[HC],x] (* added 2003 February 21 based on IDEMHULL.NB *) image[inverse[HULL[x_]],image[inverse[S],x_]] := image[inverse[S],x] (* derived 2006 March 30 in REG-A.NB *) image[inverse[HULL[reg[x_]]],REGULAR] := image[inverse[S],reg[x]] (* derived 2005 October 5 in GLB-DIV.NB *) image[inverse[HULL[x_]],set[0]] := intersection[complement[image[V,A[x]]],set[0]] (* added 2003 October 15 based on ACYCLIC.NB *) image[inverse[HULL[TRV]],ACYCLIC] := ACYCLIC (* derived 2008 November 4 in RFX-TRV.NB *) image[inverse[HULL[TRV]],intersection[x_,P[cart[V,V]]]] := image[inverse[HULL[TRV]],x] (* added 2003 October 15 based on ACYCLIC.NB *) image[inverse[HULL[TRV]],P[Di]] := ACYCLIC (* added 2003 October 15 based on ACYCLIC.NB *) image[inverse[HULL[TRV]],P[union[Di,complement[cart[V,V]]]]] := ACYCLIC (* added 2003 September 29 based on WF.NB *) image[inverse[HULL[TRV]],WF] := WF (* derived 2004 December 14 in IDEMPROJ.NB *) image[INVERSE,IDEM] := IDEM (* derived 2006 March 21 in IMIN-REG.NB *) image[inverse[IMAGE[BIGCUP]],REGULAR] := REGULAR (* added 2003 May 3 based on SQUARE.NB *) image[INVERSE,image[CART,x_]] := image[CART,inverse[x]] (* derived 2006 March 21 in IMIN-REG.NB *) image[inverse[IMAGE[COARSER]],REGULAR] := REGULAR (* added 2003 July 25 based on CPS-ZXZ.NB *) image[INVERSE,image[COMPOSE,cart[x_,y_]]] := image[COMPOSE,cart[image[IMAGE[SWAP],y],image[IMAGE[SWAP],x]]] (* added 2002 November 17 based on CLIQ-DJ.NB *) image[inverse[IMAGE[composite[id[E],inverse[SECOND]]]],FUNS] := cliques[union[DISJOINT,Id]] (* derived 2007 December 10 in FUND.NB *) image[inverse[IMAGE[composite[id[E],inverse[SECOND]]]],WF] := FUND (* derived 2004 September 30 in EQV-THNP.NB *) image[inverse[IMAGE[composite[id[eqv[x_]],inverse[FIRST]]]],EQV] := invar[eqv[x]] (* derived 2004 December 6 in FIN-CP.NB *) image[inverse[IMAGE[composite[id[inverse[E]],inverse[FIRST]]]],FINITE] := intersection[FINITE,P[FINITE]] (* derived 2008 January 4 in PO-RS.NB *) image[inverse[IMAGE[composite[id[inverse[S]],inverse[FIRST]]]],PO] := fix[IMAGE[inverse[S]]] (* derived 2008 March 1 in WO-RS-S.NB *) image[inverse[IMAGE[composite[id[PS],inverse[SECOND]]]],WF] := fix[image[inverse[CART],image[inverse[IMAGE[id[PS]]],WF]]] (* derived 2008 August 19 in RS-S-CL.NB *) image[inverse[IMAGE[composite[id[S],inverse[SECOND]]]],CL] := range[POWER] (* derived 2008 August 19 in RS-S-PO.NB *) image[inverse[IMAGE[composite[id[S],inverse[SECOND]]]],PO] := fix[IMAGE[inverse[S]]] (* derived 2004 September 30 in EQV-THNP.NB *) image[inverse[IMAGE[composite[id[trv[x_]],inverse[FIRST]]]],TRV] := P[domain[VERTSECT[trv[x]]]] (* derived 2008 October 4 in BIN-NORM.NB *) image[inverse[IMAGE[cross[SWAP,Id]]],image[inverse[IMAGE[ROT]],FUNS]] := image[inverse[IMAGE[inverse[ROT]]],FUNS] (* derived 2007 January 27 in IM-DIV.NB *) image[inverse[IMAGE[DIV]],set[omega]] := complement[P[complement[set[set[0]]]]] (* derived 2004 July 26 in DORAFUNS.NB *) image[inverse[image[DORA,FUNS]],set[0]] := set[0] (* derived 2005 December 28 in IMIN-DUP.NB *) image[inverse[IMAGE[DUP]],ACYCLIC] := set[0] (* derived 2005 December 28 in IMIN-DUP.NB *) image[inverse[IMAGE[DUP]],CL] := range[SINGLETON] (* derived 2004 December 21 in COMUTANT.NB *) image[inverse[IMAGE[DUP]],commutant[x_]] := intersection[invar[x],invar[inverse[x]]] (* derived 2004 January 10 in FIN-IDX.NB *) image[inverse[IMAGE[DUP]],FINITE] := FINITE (* derived 2006 June 11 in CART-PID.NB *) image[inverse[IMAGE[DUP]],image[CART,Id]] := union[range[SINGLETON],set[0]] (* derived 2007 September 3 in CHN-SQR.NB *) image[inverse[IMAGE[DUP]],image[inverse[IMAGE[CART]],chains[S]]] := chains[S] (* derived 2008 November 4 in EQV.NB *) image[inverse[IMAGE[DUP]],image[inverse[IMAGE[CART]],cliques[union[DISJOINT,Id]]]] := cliques[union[DISJOINT,Id]] (* derived 2006 February 4 in INVOL.NB *) image[inverse[IMAGE[DUP]],INVOL] := V (* derived 2006 June 16 in UB-I-CAP.NB *) image[inverse[IMAGE[DUP]],lb[image[inverse[IMG],x_],y_]] := ub[image[inverse[CAP],x],y] (* derived 2008 September 28 in PERMS.NB *) image[inverse[IMAGE[DUP]],PERMS] := V (* added 2002 February 9 based on IDEM.NB *) image[inverse[IMAGE[DUP]],PROJ] := V (* derived 2006 June 11 in CART-PID.NB *) image[inverse[IMAGE[DUP]],range[CART]] := union[range[SINGLETON],set[0]] (* derived 2007 July 7 in LAMBHULL.NB *) image[inverse[IMAGE[DUP]],range[LAMBHULL]] := fix[IMAGE[inverse[S]]] (* derived 2004 January 13 in RA-RCF.NB *) image[inverse[IMAGE[DUP]],range[RCF]] := set[set[0]] (* derived 2006 March 26 in IMIN-REG.NB *) image[inverse[IMAGE[DUP]],REGULAR] := REGULAR (* added 2001 October 8 based on RFX-ID.NB *) image[inverse[IMAGE[DUP]],RFX] := V (* derived 2004 November 16 in XS.NB *) image[inverse[IMAGE[DUP]],SELECT] := V (* derived 2004 June 24 in SBCOMTNT.NB *) image[inverse[IMAGE[DUP]],subcommutant[x_]] := invar[x] (* added 2001 October 10 based on SYM-1.NB *) image[inverse[IMAGE[DUP]],SYM] := V (* derived 2005 January 15 in TO-ID.NB *) image[inverse[IMAGE[DUP]],TO] := union[range[SINGLETON],set[0]] (* added 2001 October 9 based on TRV-1.NB *) image[inverse[IMAGE[DUP]],TRV] := V (* derived 2005 December 28 in IMIN-DUP.NB *) image[inverse[IMAGE[DUP]],WF] := set[0] (* derived 2005 January 5 in WO-ID.NB *) image[inverse[IMAGE[DUP]],WO] := union[range[SINGLETON],set[0]] (* derived 2005 December 28 in IMIN-DUP.NB *) image[inverse[IMAGE[DUP]],Z] := set[omega] (* derived 2004 December 21 in COMUTANT.NB *) image[inverse[IMAGE[id[cart[V,V]]]],commutant[x_]] := commutant[x] (* added 2002 January 17 based on CLIQSWAP.NB *) image[inverse[IMAGE[id[cart[V,V]]]],fix[composite[DISJOINT,IMAGE[SWAP]]]] := fix[composite[DISJOINT,IMAGE[SWAP]]] (* added 2003 April 30 based on SCARTDUP.NB *) image[inverse[IMAGE[id[cart[V,V]]]],fix[composite[S,CART,DUP,IMAGE[FIRST]]]] := fix[composite[S,CART,DUP,IMAGE[FIRST]]] (* added 2003 April 30 based on SCARTDUP.NB *) image[inverse[IMAGE[id[cart[V,V]]]],fix[composite[S,CART,DUP,IMAGE[SECOND]]]] := fix[composite[S,CART,DUP,IMAGE[SECOND]]] (* added 2000 September 22 based on REMOVED2.NB *) image[inverse[IMAGE[id[cart[V,V]]]],image[INVERSE,x_]] := image[inverse[IMAGE[SWAP]],x] (* derived 2006 February 18 in DORA-DJ.NB *) image[inverse[IMAGE[id[cart[V,V]]]],image[inverse[DORA],x_]] := image[inverse[DORA],x] (* derived 2007 October 8 in UCL-DORA.NB *) image[inverse[IMAGE[id[cart[V,V]]]],invar[composite[DUP,SECOND]]] := invar[composite[DUP,SECOND]] (* derived 2007 October 18 in BINCL.NB *) image[inverse[IMAGE[id[cart[V,V]]]],range[CART]] := fix[composite[S,CART,DORA]] (* derived 2004 November 2 in SELECT.NB *) image[inverse[IMAGE[id[cart[V,V]]]],SELECT] := SELECT (* derived 2004 June 24 in SBCOMTNT.NB *) image[inverse[IMAGE[id[cart[V,V]]]],subcommutant[x_]] := subcommutant[x] (* added 2001 October 10 based on SYM-1.NB *) image[inverse[IMAGE[id[cart[V,V]]]],SYM] := invar[SWAP] (* derived 2007 December 12 in COREDESC.NB *) image[inverse[IMAGE[id[complement[REGULAR]]]],FUND] := FUND (* derived 2004 October 10 in COMPACT0.NB *) image[inverse[IMAGE[id[complement[set[0]]]]],COMPACT] := COMPACT (* derived 2008 October 25 in AC-KUR.NB *) image[inverse[IMAGE[id[complement[set[0]]]]], image[IMAGE[FIRST],intersection[FUNS,P[inverse[E]]]]] := image[inverse[IMAGE[composite[id[inverse[E]],inverse[FIRST]]]],SELECT] (* added 2002 January 17 based on ANTISYM2.NB *) image[inverse[IMAGE[id[Di]]],fix[composite[DISJOINT,INVERSE]]] := image[inverse[IMAGE[id[cart[V,V]]]],ANTISYM] (* added 2002 January 19 based on PO.NB *) image[inverse[IMAGE[id[Di]]],RFX] := P[union[Id,complement[cart[V,V]]]] (* added 2002 January 19 based on TRV-DI.NB *) image[inverse[IMAGE[id[Di]]],TRV] := image[inverse[IMAGE[id[cart[V,V]]]],intersection[ANTISYM,TRV]] (* added 2001 November 7 based on PAIRSET.NB *) image[inverse[IMAGE[id[x_]]],image[inverse[IMAGE[id[y_]]],z_]] := image[inverse[IMAGE[id[intersection[x,y]]]],z] (* added 2002 January 2 based on CRSRULES.NB *) image[inverse[IMAGE[id[x_]]],intersection[y_,P[x_]]] := image[inverse[IMAGE[id[x]]],y] (* derived 2006 March 25 in REG-DESC.NB *) image[inverse[IMAGE[id[REGULAR]]],DESCENDING] := P[complement[REGULAR]] (* From 1999 April 10 SESSION2.LOG *) image[inverse[IMAGE[id[x_]]],set[y_]] := intersection[complement[image[V,intersection[y,complement[x]]]], image[S,set[y]],P[union[y,complement[x]]]] (* derived 2006 October 19 in IMVS-EQV.NB *) image[INVERSE,image[IMAGE[SWAP],x_]] := image[IMAGE[id[cart[V,V]]],x] (* derived 2006 August 6 in EVEN.NB *) image[INVERSE,image[INTADD,Id]] := image[INTADD,Id] (* derived 2006 December 18 in INTDIV-0.NB *) image[INVERSE,image[INTDIV,x_]] := image[INTDIV,x] (* added 2001 September 7 based on BIJ-NORM.NB *) image[INVERSE,image[INVERSE,x_]] := intersection[x,P[cart[V,V]]] (* derived 2006 March 21 in IMIN-REG.NB *) image[inverse[IMAGE[inverse[BIGCUP]]],REGULAR] := REGULAR (* added 2001 March 5 based on K-SS.NB *) image[inverse[image[inverse[DIF],x_]],set[y_]] := intersection[image[V,set[y]],image[inverse[IMAGE[id[complement[y]]]],x]] (* derived 2008 November 17 in SS-ID.NB *) image[inverse[IMAGE[inverse[DUP]]],image[S,set[x_]]] := image[S,set[id[x]]] (* derived 2008 July 29 in EVAL-DO.NB *) image[inverse[image[inverse[IMG],range[SINGLETON]]],set[set[x_]]] := domain[eval[x]] (* derived 2006 December 18 in INTDIV-0.NB *) image[INVERSE,image[inverse[INTDIV],x_]] := image[inverse[INTDIV],x] (* derived 2008 November 5 in CHAR-FIN.NB *) image[inverse[image[inverse[MAP],FINITE]],set[succ[set[0]]]] := FINITE (* derived 2006 August 13 in IM-MOD.NB *) image[inverse[image[inverse[NATMOD],x_]],set[y_]] := image[inverse[modulo[y]],x] (* derived 2005 January 19 in GRAPH.NB *) image[inverse[IMAGE[inverse[PAIRSET]]],SYM] := V (* derived 2004 October 17 in CMPCTCOA.NB *) image[inverse[IMAGE[inverse[S]]],FINITE] := intersection[FINITE,P[FINITE]] (* derived 2007 November 4 in FP-IM-PS.NB *) image[inverse[IMAGE[inverse[S]]],fix[IMAGE[inverse[PS]]]] := subvar[inverse[PS]] (* added 1999 December 25 based on HERED.NB *) image[inverse[IMAGE[inverse[S]]],fix[IMAGE[inverse[S]]]] := V (* derived 2007 September 3 in IMS-P-U.NB *) image[inverse[IMAGE[inverse[S]]],range[POWER]] := fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]] (* derived 2005 November 19 in REGULAR.NB *) image[inverse[IMAGE[inverse[S]]],REGULAR] := REGULAR (* derived 2007 November 4 in FP-IM-PS.NB *) image[inverse[IMAGE[inverse[S]]],subvar[inverse[PS]]] := subvar[inverse[PS]] (* Corollary of Theorem IMG-DJ-2 in IMG2 proved 1998 September 17 *) image[inverse[IMAGE[x_]],P[y_]] := intersection[P[domain[VERTSECT[x]]], P[complement[image[inverse[x],complement[y]]]]] (* derived 2007 May 5 in REPLACE.NB *) image[inverse[IMAGE[POWER]],chains[S]] := chains[S] (* derived 2006 March 21 in FINITE.NB *) image[inverse[IMAGE[POWER]],FINITE] := FINITE (* derived 2007 June 14 in THIN-PO.NB *) image[inverse[IMAGE[POWER]],fix[composite[E,BIGCAP]]] := fix[composite[E,BIGCAP]] (* derived 2007 June 14 in THIN-PO.NB *) image[inverse[IMAGE[POWER]],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]] (* derived 2007 June 12 in IMPOW-SG.NB *) image[inverse[IMAGE[POWER]],range[SINGLETON]] := range[SINGLETON] (* derived 2005 November 19 in REGULAR.NB *) image[inverse[IMAGE[POWER]],REGULAR] := REGULAR image[inverse[IMAGE[z_]],set[0]] := P[complement[domain[z]]] (* derived 2006 March 21 in FINITE.NB *) image[inverse[IMAGE[SINGLETON]],FINITE] := FINITE (* derived 2006 March 21 in IMIN-REG.NB *) image[inverse[IMAGE[SINGLETON]],REGULAR] := REGULAR (* derived 2003 December 28 in PTCLOSED.NB *) image[inverse[IMAGE[SINGLETON]],succ[set[0]]] := set[0] (* added 2003 October 15 based on ACYCLIC.NB *) image[inverse[IMAGE[SWAP]],ACYCLIC] := image[inverse[IMAGE[id[cart[V,V]]]],ACYCLIC] (* added 2001 February 8 based on CLIQUES2.NB *) image[inverse[IMAGE[SWAP]],cliques[complement[cross[x_,y_]]]] := cliques[complement[cross[y,x]]] (* derived 2007 October 8 in UCL-DORA.NB *) image[inverse[IMAGE[SWAP]],fix[composite[inverse[S],COMPOSE,DUP]]] := image[inverse[IMAGE[id[cart[V,V]]]],fix[composite[inverse[S],COMPOSE,DUP]]] (* added 2003 April 30 based on SCARTDUP.NB *) image[inverse[IMAGE[SWAP]], fix[composite[S,CART,DUP,IMAGE[FIRST]]]] := fix[composite[S,CART,DUP,IMAGE[SECOND]]] (* added 2003 April 30 based on SCARTDUP.NB *) image[inverse[IMAGE[SWAP]], fix[composite[S,CART,DUP,IMAGE[SECOND]]]] := fix[composite[S,CART,DUP,IMAGE[FIRST]]] (* added 2001 May 15 based on BIJ.NB *) image[inverse[IMAGE[SWAP]],image[inverse[IMAGE[id[cart[V,V]]]],x_]] := image[inverse[IMAGE[SWAP]],x] (* derived 2004 December 21 in COMUTANT.NB *) image[inverse[IMAGE[SWAP]],image[inverse[IMAGE[SWAP]],x_]] := image[inverse[IMAGE[id[cart[V,V]]]],x] (* derived 2004 June 17 in X1366.NB *) image[inverse[IMAGE[SWAP]],invar[cross[x_,y_]]] := invar[cross[y,x]] (* added 2002 February 9 based on IDEM-BIJ.NB *) image[inverse[IMAGE[SWAP]],invar[composite[DUP,FIRST]]] := invar[composite[DUP,SECOND]] (* added 2002 February 9 based on IDEM-BIJ.NB *) image[inverse[IMAGE[SWAP]],invar[composite[DUP,SECOND]]] := invar[composite[DUP,FIRST]] (* added 2001 October 8 based on RFX-IN.NB *) image[inverse[IMAGE[SWAP]],RFX] := image[inverse[IMAGE[id[cart[V,V]]]],RFX] (* added 2001 October 10 based on SYM-1.NB *) image[inverse[IMAGE[SWAP]],SYM] := invar[SWAP] (* added 2001 October 9 based on TRV-1.NB *) image[inverse[IMAGE[SWAP]],TRV] := image[inverse[IMAGE[id[cart[V,V]]]],TRV] (* derived 2008 July 3 in BC-IMGVS.NB *) image[inverse[IMAGE[VERTSECT[x_]]],image[inverse[BIGCUP],y_]] := image[inverse[IMAGE[thinpart[x]]],y] (* added 1999 November 26 based on IMIN-IMG.NB *) image[inverse[IMG],P[x_]] := composite[DISJOINT,IMAGE[FIRST],IMAGE[id[cart[V,complement[x]]]]] (* added 1999 November 26 based on IMIN-IMG.NB *) image[inverse[IMG],set[0]] := composite[DISJOINT,IMAGE[FIRST]] (* derived 2006 September 24 in INTLEQ.NB *) image[inverse[INTADD],image[INVERSE,range[PLUS]]] := composite[INVERSE,INTLEQ] (* derived 2006 August 5 in BINHOM-7.NB *) image[inverse[INTADD],intersection[x_,Z]] := image[inverse[INTADD],x] (* derived 2006 September 24 in INTLEQ.NB *) image[inverse[INTADD],range[PLUS]] := composite[INTLEQ,INVERSE] (* added 2003 August 12 based on RO-ZADD.NB *) image[inverse[INTADD],set[id[omega]]] := composite[id[Z],INVERSE] (* derived 2007 January 10 in INTDIV.NB *) image[inverse[INTDIV],image[inverse[INTDIV],x_]] := image[inverse[INTDIV],x] (* derived 2006 December 18 in INTDIV-0.NB *) image[inverse[INTDIV],intersection[x_,Z]] := image[inverse[INTDIV],x] (* derived 2006 December 18 in INTDIV-0.NB *) image[inverse[INTDIV],set[id[omega]]] := Z (* derived 2007 January 10 in INTDIV.NB *) image[inverse[INTDIV],set[inverse[plus[x_]]]] := image[inverse[INTDIV],set[plus[x]]] (* derived 2006 June 11 in FU-FIN.NB *) image[INVERSE,intersection[BIJ,FINITE]] := intersection[BIJ,FINITE] image[inverse[x_],intersection[y_,complement[range[x_]]]] := 0 (* derived 2007 January 1 in INTMUL-4.NB *) image[inverse[INTMUL],set[id[omega]]] := union[cart[Z,set[id[omega]]],cart[set[id[omega]],Z]] (* derived 2007 January 1 in INTMUL-4.NB *) image[inverse[INTTIMES],BIJ] := intersection[Z,complement[set[id[omega]]]] (* derived 2006 December 23 in ZTIMES-3.NB *) image[inverse[INTTIMES],set[x_]] := set[APPLY[inverse[INTTIMES],x]] (* added 2002 December 19 based on SUC-Z.NB *) image[INVERSE,invar[cross[x_,y_]]] := intersection[invar[cross[y,x]],P[cart[V,V]]] (* added 2002 May 1 based on INVAR-V.NB *) image[inverse[INVAR],range[SINGLETON]] := V (* added 2002 April 10 based on INVAR-S.NB *) image[inverse[INVAR],set[x_]] := intersection[image[V,set[x]],P[complement[cart[x,complement[x]]]]] (* derived 2008 September 28 in INVOL.NB *) image[INVERSE,INVOL] := INVOL (* derived 2006 May 16 in DO-ITER.NB *) image[inverse[iterate[x_,y_]],domain[x_]] := U[domain[iterate[x,y]]] (* derived 2008 October 22 in WORDS.NB *) image[inverse[JOIN],P[cart[omega,x_]]] := cart[intersection[LISTS,P[cart[omega,x]]],intersection[LISTS,P[cart[omega,x]]]] (* derived 2008 October 24 in JOIN-FP.NB *) image[inverse[JOIN],set[0]] := cart[set[0],set[0]] (* derived 2005 February 4 in DK-K.NB *) image[inverse[K],DEDEKIND] := DEDEKIND (* Theorem FIN-K-IN in FINITE proved 2000 May 30 *) image[inverse[K],FINITE] := FINITE (* derived 2007 November 6 in FUNS-MAX.NB *) image[inverse[K],FUNS] := FUNS (* added 2000 May 16 based on K-SR.NB *) image[inverse[K],set[0]] := 0 (* derived 2006 March 4 in KURA.NB *) image[inverse[KURA],image[SINGLETON,x_]] := id[image[inverse[SINGLETON],x]] (* derived 2006 March 4 in KURA.NB *) image[inverse[KURA],range[SINGLETON]] := Id (* derived 2006 March 26 in IMIN-REG.NB *) image[inverse[KURA],P[P[x_]]] := cart[x,x] (* derived 2006 March 26 in IMIN-REG.NB *) image[inverse[KURA],REGULAR] := cart[REGULAR,REGULAR] (* derived 2005 January 31 in X4210.NB *) image[inverse[LAMBHULL],FINITE] := intersection[FINITE,P[FINITE]] (* derived 2006 January 24 in RALAMHUL.NB *) image[inverse[LAMBHULL],PROJ] := V (* derived 2008 July 4 in UB-SU-RA.NB *) image[inverse[LB[x_]],complement[domain[x_]]] := intersection[image[V,complement[domain[x]]],set[0]] (* added 2003 June 9 based on BOUNDED.NB *) image[inverse[LB[x_]],domain[VERTSECT[x_]]] := image[inverse[S],range[VERTSECT[x]]] (* added 2000 November 19 based on IM-SS.NB *) image[inverse[LB[x_]],set[y_]] := intersection[image[V,set[y]],P[image[x,set[y]]]] (* added 2002 June 26 based on REIFY.NB *) image[inverse[LEAST[complement[x_]]],y_] := complement[subvar[union[id[complement[y]],inverse[x]]]] (* added 2000 November 19 based on IM-SS.NB *) image[inverse[LEAST[x_]],set[y_]] := intersection[complement[P[complement[set[y]]]],P[image[x,set[y]]]] (* added 1999 August 16 based on session IM-L-R *) image[inverse[LEFT[x_]],y_] := image[y,set[x]] (* added 1999 November 6 based on IMG-INLR.LOG *) IMAGE[inverse[LEFT[x_]]] := composite[IMAGE[SECOND],IMAGE[id[cart[set[x],V]]]] (* added 2003 May 8 based on MAP-0.NB *) image[inverse[MAP],set[0]] := cart[complement[set[0]],set[0]] (* derived 2006 December 3 in MIXDIV.NB *) image[inverse[MIXDIV],set[id[omega]]] := omega (* derived 2006 December 16 in ZEROPROD.NB *) image[inverse[MIXMUL],set[id[omega]]] := union[cart[Z,set[0]],cart[set[id[omega]],omega]] (* derived 2006 December 5 in MIXTIMES.NB *) image[inverse[MIXTIMES],set[x_]] := set[APPLY[inverse[MIXTIMES],x]] (* derived 2006 August 13 in IM-MOD.NB *) image[inverse[modulo[x_]],set[0]] := image[DIV,set[x]] (* derived 2006 August 16 in EVOD-ADD.NB *) image[inverse[NATADD],even] := union[cart[even,even],cart[odd,odd]] (* added 2002 July 5 based on NATADD-2.NB *) image[inverse[NATADD],intersection[omega,x_]] := image[inverse[NATADD],x] (* derived 2006 August 16 in EVOD-ADD.NB *) image[inverse[NATADD],odd] := union[cart[even,odd],cart[odd,even]] (* added 2002 June 13 based on NATIMIN0.NB *) image[inverse[NATADD],set[0]] := cart[set[0],set[0]] (* added 2002 July 30 based on REVERSAL.NB *) image[inverse[NATADD],set[set[0]]] := union[cart[set[0],set[set[0]]],cart[set[set[0]],set[0]]] (* derived 2006 November 28 in NATEXP-5.NB *) image[inverse[NATEXP],intersection[omega,x_]] := image[inverse[NATEXP],x] (* derived 2006 November 30 in EXPIDEMP.NB *) image[inverse[NATEXP],P[complement[set[0]]]] := cart[set[0],intersection[omega,complement[set[0]]]] (* derived 2006 November 30 in EXPIDEMP.NB *) image[inverse[NATEXP],P[complement[set[set[0]]]]] := union[cart[omega,set[0]],cart[succ[set[0]],omega]] (* derived 2006 November 28 in NATEXP-5.NB *) image[inverse[NATEXP],set[0]] := cart[set[0],intersection[omega,complement[set[0]]]] (* derived 2006 November 30 in EXPIDEMP.NB *) image[inverse[NATEXP],set[set[0]]] := union[cart[omega,set[0]],cart[set[set[0]],omega]] (* derived 2006 November 30 in EXPIDEMP.NB *) image[inverse[NATEXP],succ[set[0]]] := union[cart[omega,set[0]],cart[succ[set[0]],omega]] (* derived 2005 May 17 based on NATMOD.NB *) image[inverse[NATMOD],set[0]] := inverse[DIV] (* derived 2006 August 16 in EVOD-MUL.NB *) image[inverse[NATMUL],even] := union[cart[even,omega],cart[omega,even]] (* derived 2006 November 21 in NATMUL.NB *) image[inverse[NATMUL],intersection[omega,x_]] := image[inverse[NATMUL],x] (* derived 2006 August 16 in EVOD-MUL.NB *) image[inverse[NATMUL],odd] := cart[odd,odd] (* added 2002 September 3 based on DIV-ZERO.NB *) image[inverse[NATMUL],set[0]] := union[cart[omega,set[0]],cart[set[0],omega]] (* added 2002 September 3 based on DIV-ONE.NB *) image[inverse[NATMUL],set[set[0]]] := cart[set[set[0]],set[set[0]]] (* derived 2006 November 28 in FUNPOOPT.NB *) image[inverse[oopart[x_]],fix[composite[oopart[x_],y_]]] := fix[composite[y,oopart[x]]] (* derived 2006 May 28 in OOPART.NB *) image[inverse[oopart[x_]],set[y_]] := set[APPLY[inverse[oopart[x]],y]] (* derived 2006 May 29 in OL-DO.NB *) image[inverse[ordlist[x_]],U[intersection[OMEGA,x_]]] := U[domain[ordlist[x]]] (* added 2001 April 28 based on IM-INV.NB *) image[INVERSE,P[x_]] := P[inverse[x]] (* revised 2003 May23 based on DEF-CLOS.NB *) image[inverse[PAIRSET],binclosed[CAP]] := union[S,inverse[S]] (* added 2003 May 23 based on REPLACE.NB *) image[inverse[PAIRSET],binclosed[CUP]] := union[S,inverse[S]] (* derived 2007 May 8 in PAIRSET.NB *) image[inverse[PAIRSET],chains[x_]] := union[inverse[rfx[x]],rfx[x]] (* added 2001 October 23 based on CHAINS.NB *) image[inverse[PAIRSET],cliques[x_]] := composite[id[fix[x]],intersection[x,inverse[x]],id[fix[x]]] (* derived 2006 May 4 in DIRECTED.NB *) image[inverse[PAIRSET],domain[LB[x_]]] := composite[x,inverse[x]] (* derived 2006 May 4 in DIRECTED.NB *) image[inverse[PAIRSET],domain[UB[x_]]] := composite[inverse[x],x] (* added 2001 August 23 based on FINITE.NB *) image[inverse[PAIRSET],FINITE] := cart[V,V] (* derived 2004 April 10 in UP-RULES.NB *) image[inverse[PAIRSET],FUNS] := composite[id[cart[V,V]],complement[cross[Id,Di]],id[cart[V,V]]] (* added 1999 October 17 based on STRANGE.4 *) image[inverse[PAIRSET],image[inverse[S],x_]]:= composite[inverse[E],id[x],E] (* derived 2004 June 14 in TP-SYM.NB *) image[inverse[PAIRSET],image[PAIRSET,x_]] := union[composite[Id,x],inverse[x]] (* derived 2007 November 10 in ALL-MAX.NB *) image[inverse[PAIRSET],image[SINGLETON,x_]] := id[x] (* added 1999 October 17 based on PAIRSET.1 *) image[inverse[PAIRSET],P[x_]] := cart[x,x] (* added 1999 October 18 based on PAIRSET.3 *) image[inverse[PAIRSET],range[SINGLETON]] := Id (* derived 2004 April 10 in UP-RULES.NB *) image[inverse[PAIRSET],REGULAR] := cart[REGULAR,REGULAR] (* added 1999 October 6 based on CAP.1 *) image[inverse[PAIRSET],set[0]] := 0 (* derived 2004 January 17 in SBV-PSSG.NB *) image[inverse[PAIRSET],subvar[PS]] := 0 (* added 2001 October 30 based on SYM-CORE.NB *) image[inverse[PAIRSET],SYM] := union[SWAP,cart[Id,Id]] (* derived 2003 December 25 in TOPSDEFN.NB *) image[inverse[PAIRSET],TOPS] := union[cart[V,set[0]],cart[set[0],V]] (* derived 2008 September 28 in PERMS.NB *) image[INVERSE,PERMS] := PERMS (* added 2002 November 29 based on PLUS.NB *) image[inverse[PLUS],BIJ] := omega (* derived 2006 September 7 in CO-IMS-Z.NB *) image[inverse[PLUS],cliques[EQUIDIFF]] := omega (* derived 2005 January 31 in X4210.NB *) image[inverse[PLUS],FINITE] := 0 (* derived 2006 September 5 in RA-PLUS.NB *) image[inverse[PLUS],FUNS] := omega (* derived 2005 May 22 in DIV-ADD.NB *) image[inverse[plus[x_]],image[DIV,set[x_]]] := image[DIV,set[x]] (* added 2003 August 8 based on REPLACE.NB *) image[inverse[plus[x_]],set[y_]] := set[natsub[y,x]] (* added 2003 July 5 based on PLUS-ISO.NB *) image[inverse[PLUS],set[0]] := 0 (* derived 2006 December 15 in MIXDIV.NB *) image[inverse[PLUS],set[id[omega]]] := set[0] (* derived 2006 January 26 in Z-TRV.NB *) image[inverse[PLUS],TRV] := set[0] (* derived 2006 June 10 in REPLACE.NB *) image[inverse[PLUS],UNOPS] := omega (* added 2002 November 29 based on PLUS.NB *) image[inverse[PLUS],Z] := omega (* added 2002 January 19 based on INVERSE.NB *) image[INVERSE,PO] := PO (* derived 2008 January 4 in C-FP-PO.NB *) image[inverse[po[x_]],complement[fix[po[x_]]]] := 0 (* derived 2007 December 29 in PO-RULES.NB *) image[inverse[po[x_]],image[inverse[po[x_]],y_]] := image[inverse[po[x]],y] (* derived 2007 December 29 in PO-RULES.NB *) image[inverse[po[x_]],intersection[y_,fix[po[x_]]]] := image[inverse[po[x]],y] (* derived 2008 August 13 in ALL-UB.NB *) image[inverse[POWER],allclosed[id[P[x_]]]] := allclosed[id[x]] (* revised 2003 May23 based on DEF-CLOS.NB *) image[inverse[POWER],binclosed[CAP]] := V (* derived 2004 March 21 in TRV-WRAP.NB *) image[inverse[POWER],binclosed[COMPOSE]] := image[inverse[IMAGE[id[cart[V,V]]]],TRV] (* revised 2003 May23 based on DEF-CLOS.NB *) image[inverse[POWER],binclosed[CUP]] := V (* revised 2003 May23 based on DEF-CLOS.NB *) image[inverse[POWER],binclosed[DIF]] := V (* added 2002 June 24 based on THIN-TRV.NB *) image[inverse[power[x_]],cart[y_,V]] := domain[iterate[x,y]] (* derived 2004 February 7 in COMPACT.NB *) image[inverse[POWER],COMPACT] := FINITE (* derived 2005 February 6 in DESCEND.NB *) image[inverse[POWER],DESCENDING] := 0 (* added 2001 March 27 based on HF-SS.NB *) image[inverse[POWER],FINITE] := FINITE (* derived 2007 July 3 in FIX-BC.NB *) image[inverse[POWER],fix[BIGCUP]] := 0 (* added 2002 January 21 based on VS-IN-BC.TXT *) image[inverse[POWER],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := V (* derived 2007 May 27 in COARSER.NB *) image[inverse[POWER],fix[IMAGE[COARSER]]] := range[POWER] (* derived 2007 May 27 in COARSER.NB *) image[inverse[POWER],fix[IMAGE[inverse[COARSER]]]] := V (* Theorem FUL-POW1 in FUL3 proved 1998 September 17 *) image[inverse[POWER],FULL] := FULL (* added 2001 March 27 based on HF-SS.NB *) image[inverse[POWER],H[FINITE]] := H[FINITE] (* derived 2008 January 5 in COARSER.NB *) image[inverse[POWER],image[COARSER,x_]] := image[BIGCUP,x] (* derived 2008 January 13 in MAX-FUNS.NB *) image[inverse[POWER],image[inverse[IMAGE[id[FUNS]]],subvar[inverse[PS]]]] := complement[SELECT] (* derived 2005 January 9 in PC-CARD2.NB *) image[inverse[POWER],image[PAIRSET,Di]] := range[SINGLETON] (* added 1998 November 10 *) image[inverse[POWER],image[S,set[x_]]] := image[S,set[U[x]]] (* derived 2005 January 15 in H-FIN.NB *) image[inverse[POWER],intersection[REGULAR,x_]] := intersection[REGULAR,image[inverse[POWER],x]] (* derived 2007 July 3 in INVAR.NB *) image[inverse[POWER],invar[BIGCAP]] := FULL (* derived 2007 June 23 in ALLCLOSED.NB *) image[inverse[POWER],invar[BIGCUP]] := FULL (* derived 2007 August 5 in INVAR.NB *) image[inverse[POWER],invar[IMAGE[x_]]] := invar[thinpart[x]] (* derived 2007 July 3 in INVAR.NB *) image[inverse[POWER],invar[POWER]] := 0 (* derived 2007 July 3 in INVAR.NB *) image[inverse[POWER],invar[SINGLETON]] := 0 (* derived 2008 April 1 in IVR-SUCC.NB *) image[inverse[POWER],invar[SUCC]] := 0 (* added 2002 May 13 based on OM-PC.NB *) image[inverse[POWER],omega] := succ[set[0]] (* derived 2007 May 17 in CORE-ON.NB *) image[inverse[POWER],OMEGA] := succ[set[0]] (* Theorem POW-PC in POW3 *) image[inverse[POWER],P[x_]] := complement[image[S,complement[x]]] (* derived 2005 January 9 in PC-CARD2.NB *) image[inverse[POWER],range[PAIRSET]] := union[range[SINGLETON],set[0]] (* added 2001 November 11 based on IMIN-SG.NB *) image[inverse[POWER],range[SINGLETON]] := set[0] (* Theorem POW-REG1 in POW3 proved 1999 March 4 *) image[inverse[POWER],REGULAR] := REGULAR (* added 2003 June 6 based on RUSSELL.NB *) image[inverse[POWER],RUSSELL] := V (* added 2001 February 24 based on NEW.NB *) image[inverse[POWER],set[x_]] := intersection[ complement[image[S,complement[x]]],image[S,set[U[x]]]] (* derived 2007 July 4 in SBV-INE.NB *) image[inverse[POWER],subvar[inverse[E]]] := 0 (* derived 2007 November 1 in IN-PS-PC.TXT *) image[inverse[POWER],subvar[inverse[PS]]] := 0 (* derived 2004 January 17 in SBV-PSSG.NB *) image[inverse[POWER],subvar[PS]] := 0 (* added 2001 October 23 based on TOPS.NB *) image[inverse[POWER],TOPS] := V (* derived 2007 June 23 in ALLCLOSED.NB *) image[inverse[POWER],transvar[x_,inverse[E]]] := allclosed[x] (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],binclosed[CAP]] := V (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],binclosed[CUP]] := V (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],binclosed[DIF]] := V (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],EQV] := P[cart[V,V]] (* derived 2007 October 30 in IMIN-PS.NB *) image[inverse[PS],FINITE] := FINITE (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],FULL] := V (* derived 2007 November 6 in FUNS-MAX.NB *) image[inverse[PS],FUNS] := FUNS (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],IDEM] := P[cart[V,V]] (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],image[CART,Id]] := P[cart[V,V]] (* derived 2007 October 30 in IMIN-PS.NB *) image[inverse[PS],image[inverse[S],x_]] := image[inverse[PS],x] (* derived 2007 November 1 in MAX-ON.NB *) image[inverse[PS],intersection[OMEGA,fix[BIGCUP]]] := P[OMEGA] (* derived 2007 November 3 in RFX-TRV.NB *) image[inverse[PS],intersection[RFX,TRV]] := P[cart[V,V]] (* derived 2007 October 30 in IMIN-PS.NB *) image[inverse[PS],omega] := image[inverse[S],omega] (* derived 2007 November 1 in MAX-ON.NB *) image[inverse[PS],OMEGA] := P[OMEGA] (* derived 2007 November 1 in IN-PS-PC.TXT *) image[inverse[PS],P[x_]] := intersection[complement[set[x]],P[x]] (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],PointClosed] := V (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],PRIMES] := image[inverse[S],omega] (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],range[CART]] := P[cart[V,V]] (* derived 2007 November 1 in IN-PS-PC.TXT *) image[inverse[PS],REGULAR] := REGULAR (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],RFX] := P[cart[V,V]] (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],RUSSELL] := V (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],SELECT] := V (* derived 2007 November 1 in IN-PS-PC.TXT *) image[inverse[PS],set[x_]] := intersection[complement[set[x]],image[V,set[x]],P[x]] (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],SYM] := P[cart[V,V]] (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],T1] := V (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],T2] := V (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],TOPS] := V (* derived 2007 November 3 in IMIN-PS.NB *) image[inverse[PS],TRV] := P[cart[V,V]] image[inverse[x_],range[x_]] := domain[x] (* derived 2004 February 3 in FIN-RANK.NB *) image[inverse[RANK],FINITE] := intersection[REGULAR,H[FINITE]] (* derived 2006 March 14 in ZN-ON.NB *) image[inverse[RANK],image[inverse[S],ord[x_]]] := image[inverse[RANK],ord[x]] (* derived 2006 April 11 in IMINRANK.NB *) image[inverse[RANK],intersection[OMEGA,x_]] := image[inverse[RANK],x] (* derived 2004 February 3 in FIN-RANK.NB *) image[inverse[RANK],omega] := intersection[REGULAR,H[FINITE]] (* derived 2008 August 15 in SU-H.NB *) image[inverse[RANK],P[H[x_]]] := image[inverse[RANK],P[x]] (* derived 2007 July 4 in NAT-ORD.NB *) image[inverse[RANK],P[nat[x_]]] := P[image[inverse[RANK],nat[x]]] (* derived 2006 March 14 in ZN-ON.NB *) image[inverse[RANK],P[ord[x_]]] := P[image[inverse[RANK],ord[x]]] (* added 2002 January 26 based on IMV.NB *) image[inverse[RANK],set[0]] := set[0] (* derived 2003 December 21 in LOW-RANK.NB *) image[inverse[RANK],set[set[0]]] := set[set[0]] (* derived 2005 January 3 in RANK-TWO.NB *) image[inverse[RANK],set[succ[set[0]]]] := set[set[set[0]],succ[set[0]]] (* derived 2005 December 7 in LOW-RANK.NB *) image[inverse[RANK],set[succ[succ[set[0]]]]] := intersection[complement[P[succ[set[0]]]],P[P[succ[set[0]]]]] (* derived 2007 July 4 in NAT-ORD.NB *) image[inverse[RANK],succ[nat[x_]]] := P[image[inverse[RANK],nat[x]]] (* derived 2005 December 7 in LOW-RANK.NB *) image[inverse[RANK],succ[ord[x_]]] := P[image[ZN,ord[x]]] (* derived 2003 December 21 in LOW-RANK.NB *) image[inverse[RANK],succ[set[0]]] := succ[set[0]] (* derived 2005 December 7 in LOW-RANK.NB *) image[inverse[RANK],succ[succ[set[0]]]] := P[succ[set[0]]] (* derived 2005 December 7 in LOW-RANK.NB *) image[inverse[RANK],succ[succ[succ[set[0]]]]] := P[P[succ[set[0]]]] (* added 2002 February 4 based on RCF-NORM.NB *) image[inverse[RCF],BIJ] := V (* derived 2004 January 13 in RA-RCF.NB *) image[inverse[RCF],cliques[complement[cross[inverse[S],complement[S]]]]] := V (* derived 2005 January 31 in X4210.NB *) image[inverse[RCF],FINITE] := FINITE (* derived 2004 January 13 in RA-RCF.NB *) image[inverse[RCF],FUNS] := V (* derived 2006 February 4 in INVOL.NB *) image[inverse[RCF],INVOL] := V (* derived 2004 January 13 in RA-RCF.NB *) image[inverse[RCF],P[Id]] := set[0] (* added 2003 October 20 based on MONOPLUS.NB *) image[inverse[RCF],P[RC[x_]]] := set[x] (* derived 2008 September 28 in PERMS.NB *) image[inverse[RCF],PERMS] := V (* added 2002 February 4 based on RCF-NORM.NB *) image[inverse[RCF],set[0]] := 0 (* derived 2004 January 13 in RA-RCF.NB *) image[inverse[RCF],SYM] := V (* derived 2006 March 26 in IMIN-REG.NB *) image[INVERSE,REGULAR] := P[cart[REGULAR,REGULAR]] (* added 2003 May 31 based on RS-CO.NB *) image[inverse[RESTRICT],x_] := image[inverse[image[inverse[COMPOSE],x]],P[Id]] (* added 2001 October 8 based on RFX-IN.NB *) image[INVERSE,RFX] := RFX (* added 2001 January 20 based on RIF-2.NB *) image[inverse[RIF],x_] := composite[SWAP,cross[Id,x]] (* added 1999 August 16 based on session IM-L-R *) image[inverse[RIGHT[x_]],y_] := image[inverse[y],set[x]] (* added 1999 November 6 based on IMG-INLR.LOG *) IMAGE[inverse[RIGHT[x_]]] := composite[IMAGE[FIRST],IMAGE[id[cart[V,set[x]]]]] (* revised 1999 November 30 based on ROT-SWAP.LOG *) image[inverse[ROT],x_] := composite[rotate[composite[x,SWAP]],SWAP] (* added 1999 October 12 based on ROT.4 *) image[inverse[rotate[x_]],y_] := composite[FIRST,id[cart[V,y]],inverse[x]] (* added 2001 October 16 based on IMS-ACL.NB *) image[inverse[S],Aclosure[x_]] := image[inverse[S],x] (* added 2003 October 15 based on ACYCLIC.NB *) image[inverse[S],ACYCLIC] := ACYCLIC (* added 2002 January 19 based on ANTISYM.NB *) image[inverse[S],ANTISYM] := ANTISYM (* Theorem BIJ-HER in BIJ proved 2000 April 25 *) image[inverse[S],BIJ] := BIJ (* added 2003 September 14 based on IMIN-S-V.NB *) image[inverse[S],binclosed[CAP]] := V (* added 2003 September 14 based on IMIN-S-V.NB *) image[inverse[S],binclosed[CUP]] := V (* added 2003 September 14 based on IMIN-S-V.NB *) image[inverse[S],binclosed[DIF]] := V (* derived 2007 May 6 in CHNBASIC.NB *) image[inverse[S],chains[x_]] := chains[x] (* added 2000 December 9 based on CLIQUES.NB *) image[inverse[S],cliques[x_]] := cliques[x] (* added 1999 December 25 based on HERED.NB *) image[inverse[S],complement[image[S,x_]]] := complement[image[S,x]] image[inverse[S],complement[P[x_]]] := image[V,complement[x]] (* derived 2007 November 23 in C-RA-SG.NB *) image[inverse[S],complement[range[SINGLETON]]] := V (* Theorem REG-C-SR in REG2 proved 1999 March 18 *) image[inverse[S],complement[REGULAR]] := image[V,complement[REGULAR]] image[inverse[S],complement[set[0]]] := V (* derived 2006 June 7 in CONST.NB *) image[inverse[S],CONST] := CONST (* derived 2005 January 27 in DK-SU.NB *) image[inverse[S],DEDEKIND] := DEDEKIND (* added 2003 June 9 based on BOUNDED.NB *) image[inverse[S],domain[LB[x_]]] := domain[LB[x]] (* added 2003 June 9 based on BOUNDED.NB *) image[inverse[S],domain[UB[x_]]] := domain[UB[x]] (* derived 2005 October 13 in INS-EQV.NB *) image[inverse[S],EQV] := P[cart[V,V]] (* derived 2008 January 2 in FINCHR-1.NB *) image[inverse[S],FINCHAR] := V (* Theorem FIN-HER in FINITE proved 2000 March 10 *) image[inverse[S],FINITE] := FINITE (* added 2002 January 23 based on HULL-ACL.TXT *) image[inverse[S],fix[ACLOSURE]] := V (* derived 2007 October 12 in DJ-IM-IM.NB *) image[inverse[S],fix[composite[DISJOINT,IMAGE[x_]]]] := fix[composite[DISJOINT,IMAGE[x]]] (* derived 2008 February 9 in ASYM.NB *) image[inverse[S],fix[composite[DISJOINT,INVERSE]]] := fix[composite[DISJOINT,INVERSE]] (* added 2003 September 14 based on IMIN-S-V.NB *) image[inverse[S],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := V (* derived 2007 October 12 in DJ-IM-IM.NB *) image[inverse[S],fix[composite[inverse[IMAGE[x_]],DISJOINT,IMAGE[y_]]]] := fix[composite[inverse[IMAGE[x]],DISJOINT,IMAGE[y]]] (* derived 2007 October 18 in BINCL.NB *) image[inverse[S],fix[composite[S,CART,DORA]]] := V (* added 2003 September 5 based on FIXHULL.NB *) image[inverse[S],fix[HULL[x_]]] := image[inverse[S],x] (* derived 2007 June 5 in COA-ZN.NB *) image[inverse[S],fix[IMAGE[COARSER]]] := V (* derived 2007 June 6 in HLTRVRFX.NB *) image[inverse[S],fix[IMAGE[DIV]]] := P[omega] (* derived 2007 June 6 in HLTRVRFX.NB *) image[inverse[S],fix[IMAGE[INTDIV]]] := P[Z] (* derived 2007 June 6 in HLTRVRFX.NB *) image[inverse[S],fix[IMAGE[INTLEQ]]] := P[Z] (* derived 2008 March 1 in WO-RS-S.NB *) image[inverse[S],fix[image[inverse[CART],image[inverse[IMAGE[id[PS]]],WF]]]] := fix[image[inverse[CART],image[inverse[IMAGE[id[PS]]],WF]]] (* derived 2008 February 12 in REFLEXIV.NB *) image[inverse[S],fix[image[inverse[CART],image[inverse[IMAGE[id[x_]]],RFX]]]] := fix[image[inverse[CART],image[inverse[IMAGE[id[x]]],RFX]]] (* derived 2008 March 1 in WO-RS-S.NB *) image[inverse[S],fix[image[inverse[CART],image[inverse[IMAGE[id[S]]],WO]]]] := fix[image[inverse[CART],image[inverse[IMAGE[id[S]]],WO]]] (* derived 2007 June 5 in COA-ZN.NB *) image[inverse[S],fix[IMAGE[inverse[COARSER]]]] := V (* added 2002 June 2 based on HER-HULL.NB *) image[inverse[S],fix[IMAGE[inverse[S]]]] := V (* derived 2007 June 5 in COA-ZN.NB *) image[inverse[S],fix[IMAGE[inverse[ZN]]]] := P[domain[VERTSECT[inverse[ZN]]]] (* derived 2007 June 6 in HLTRVRFX.NB *) image[inverse[S],fix[IMAGE[po[x_]]]] := P[fix[thinpart[po[x]]]] (* derived 2005 January 26 in REMOVED.NB *) image[inverse[S],fix[IMAGE[ZN]]] := range[thinpart[ZN]] (* derived 2007 June 25 in UCH-HULL.NB *) image[inverse[S],fix[UCHAINS]] := V (* added 2002 January 23 based on HULL-UCL.NB *) image[inverse[S],fix[UCLOSURE]] := V (* revised 2000 October 24 *) image[inverse[S],FULL] := V (* derived 2007 December 10 in FUND.NB *) image[inverse[S],FUND] := FUND (* added 1999 December 25 based on FUNS.NB *) image[inverse[S],FUNS] := FUNS (* Theorem HF-HER in HF proved 2001 March 26 *) image[inverse[S],H[FINITE]] := H[FINITE] (* derived 2007 December 4 in HER-H.NB *) image[inverse[S],H[image[inverse[S],x_]]] := H[image[inverse[S],x]] (* derived 2008 July 15 in H-RUS.NB *) image[inverse[S],H[RUSSELL]] := H[RUSSELL] (* derived 2005 October 13 in INS-EQV.NB *) image[inverse[S],IDEM] := P[cart[V,V]] (* derived 2008 February 16 in CAP.NB *) image[inverse[S],image[CAP,x_]] := fix[composite[inverse[S],x,S]] (* added 1999 November 28 based on CART-DUP.NB *) image[inverse[S],image[CART,Id]] := P[cart[V,V]] (* derived 2008 January 5 in COARSER.NB *) image[inverse[S],image[COARSER,FINITE]] := V (* added 1998 November 10 *) image[inverse[S],image[Di,x_]] := image[V,x] (* added 1999 December 21 based on IMAGEROT.NB *) image[inverse[S],image[DIF,cart[x_,y_]]] := intersection[image[DISJOINT,y],image[inverse[S],x]] (* added 1998 November 10 *) image[inverse[S],image[DISJOINT,x_]] := image[DISJOINT,x] (* derived 2007 December 10 in IM-HC-TC.NB *) image[inverse[S],image[HC,x_]] := image[inverse[TC],image[inverse[S],x]] (* derived 2008 October 25 in AC-KUR.NB *) image[inverse[S],image[IMAGE[FIRST],intersection[FUNS,P[x_]]]] := image[IMAGE[FIRST],intersection[FUNS,P[x]]] (* derived 2005 November 8 in RA-IMG.NB *) image[inverse[S],image[IMAGE[FIRST],P[x_]]] := image[IMAGE[FIRST],P[x]] (* derived 2004 August 6 in CONSTANT.NB *) image[inverse[S],image[IMAGE[funpart[x_]],P[y_]]] := image[IMAGE[funpart[x]],P[y]] (* added 2001 May 8 based on IMINS.NB *) image[inverse[S],image[IMAGE[id[x_]],y_]] := intersection[image[inverse[S],y],P[x]] (* derived 2008 September 23 in IMIMGIMG.NB *) image[inverse[S],image[IMAGE[IMAGE[x_]],P[y_]]] := image[IMAGE[IMAGE[x]],P[y]] (* derived 2008 April 30 in TO-FP.NB *) image[inverse[S],image[IMAGE[inverse[DUP]],TO]] := image[IMAGE[inverse[DUP]],TO] (* derived 2008 May 17 in FIX-WO.NB *) image[inverse[S],image[IMAGE[inverse[DUP]],WO]] := image[IMAGE[inverse[DUP]],WO] (* derived 2006 April 16 in UCL-IREG.NB *) image[inverse[S],image[IMAGE[inverse[RANK]],omega]] := intersection[REGULAR,H[FINITE]] (* derived 2007 September 4 in U-CHAINS.NB *) image[inverse[S],image[IMAGE[inverse[RANK]],OMEGA]] := REGULAR (* derived 2005 November 8 in RA-IMG.NB *) image[inverse[S],image[IMAGE[SECOND],P[x_]]] := image[IMAGE[SECOND],P[x]] (* derived 2004 May 2 in ZN.NB *) image[inverse[S],image[IMAGE[ZN],REGULAR]] := REGULAR (* derived 2008 May 15 in IMG-IDP.NB *) image[inverse[S],image[IMG,cart[P[x_],V]]] := image[IMG,cart[P[x],V]] (* derived 2008 August 23 in IMBCFUNS.NB *) image[inverse[S],image[inverse[BIGCUP],FUNS]] := image[inverse[BIGCUP],FUNS] (* derived 2008 January 5 in COARSER.NB *) image[inverse[S],image[inverse[COARSER],x_]] := image[inverse[S],x] (* derived 2007 December 6 in IVR-HULL.NB *) image[inverse[S],image[inverse[HULL[x_]],image[inverse[S],y_]]] := image[inverse[HULL[x]],image[inverse[S],y]] (* added 2003 October 15 based on ACYCLIC.NB *) image[inverse[S],image[inverse[HULL[TRV]],P[x_]]] := image[inverse[HULL[TRV]],P[x]] (* added 2003 October 15 based on ACYCLIC.NB *) image[inverse[S],image[inverse[IMAGE[id[cart[V,V]]]],ACYCLIC]] := image[inverse[IMAGE[id[cart[V,V]]]],ACYCLIC] (* added 2000 January 8 based on FUNS.NB *) image[inverse[S],image[inverse[IMAGE[id[cart[V,V]]]],FUNS]] := image[inverse[IMAGE[id[cart[V,V]]]],FUNS] (* derived 2007 October 30 in IMIN-PS.NB *) image[inverse[S],image[inverse[PS],x_]] := image[inverse[PS],x] (* SR-IM-3B in SR3 *) image[inverse[S],image[inverse[S],x_]] := image[inverse[S],x] (* derived 2008 January 5 in SMALLER.NB *) image[inverse[S],image[inverse[SMALLER],x_]] := image[inverse[SMALLER],x] (* derived 2005 February 20 in CARD-TWO.NB *) image[inverse[S],image[PAIRSET,Di]] := union[range[PAIRSET],set[0]] (* derived 2007 November 15 in ZORN-LEM.NB *) image[inverse[S],image[POWER,x_]] := image[inverse[BIGCUP],image[inverse[S],x]] (* derived 2008 September 18 in IM-RC-OM.NB *) image[inverse[S],image[RC[omega],omega]] := P[omega] (* added 2001 May 8 based on MORESAME.NB *) image[inverse[S],image[Q,x_]] := image[Q,image[inverse[S],x]] (* Added 1998 August 16. Corollary of CO-IM7 and SR-CO9 *) image[inverse[S],image[S,x_]] := image[V,x] (* derived 2007 May 31 in HULL-ID.NB *) image[inverse[S],image[SINGLETON,x_]] := union[image[SINGLETON,x],intersection[image[V,x],set[0]]] (* derived 2005 September 16 in HULL-DIV.NB *) image[inverse[S],image[VERTSECT[DIV],omega]] := P[omega] (* derived 2005 December 7 in ZN-ORD.NB *) image[inverse[S],image[ZN,x_]] := image[ZN,x] (* derived 2007 October 12 in DJ-IM-IM.NB *) image[inverse[S],intersection[cliques[x_],P[y_]]] := intersection[cliques[x],P[y]] (* derived 2007 November 29 in REGULAR.NB *) image[inverse[S],intersection[FULL,REGULAR]] := REGULAR (* added 2001 May 8 based on IMINS.NB *) image[inverse[S],intersection[FUNS,P[x_]]] := intersection[FUNS,P[x]] (* derived 2007 May 23 in SU-ON.NB *) image[inverse[S],intersection[OMEGA,complement[fix[BIGCUP]]]] := P[OMEGA] (* derived 2007 May 22 in SU-OM.NB *) image[inverse[S],intersection[omega,complement[nat[x_]]]] := image[inverse[S],omega] (* derived 2007 May 23 in SU-ON.NB *) image[inverse[S],intersection[OMEGA,complement[ord[x_]]]] := P[OMEGA] (* derived 2007 May 23 in SU-ON.NB *) image[inverse[S],intersection[OMEGA,fix[BIGCUP]]] := P[OMEGA] (* derived 2005 January 19 in H-FIN.NB *) image[inverse[S],intersection[REGULAR,H[FINITE]]] := intersection[REGULAR,H[FINITE]] (* derived 2007 November 3 in RFX-TRV.NB *) image[inverse[S],intersection[RFX,TRV]] := P[cart[V,V]] (* derived 2004 October 7 in BC-IM-PC.NB *) image[inverse[S],intersection[T2,TOPS]] := V (* derived 2007 November 3 in ACY-TRV.NB *) image[inverse[S],intersection[TRV,P[Di]]] := ACYCLIC (* derived 2004 June 6 in EQV-TRV.NB *) image[inverse[S],invar[x_]] := P[domain[VERTSECT[trv[x]]]] (* derived 2007 October 16 in INS-MAP.NB *) image[inverse[S],map[x_,y_]] := union[intersection[complement[image[V,x]],set[0]], intersection[FUNS,image[V,y],image[V,set[x]],P[cart[x,y]]]] (* derived 2007 July 4 in IMS-OM.NB *) image[inverse[S],nat[x_]] := intersection[image[V,nat[x]],P[U[nat[x]]]] (* Theorem ON-HER-3 in ON6 added 1998 August 11 *) image[inverse[S],OMEGA] := P[OMEGA] (* SR-IM-3C in SR3 *) image[inverse[S],P[x_]] := P[x] (* added 2003 September 14 based on IMIN-S-V.NB *) image[inverse[S],PointClosed] := V (* derived 2005 August 8 in NEXTPRIM.NB *) image[inverse[S],PRIMES] := image[inverse[S],omega] (* added 1999 October 6 based on CART.4 *) image[inverse[S],range[CART]] := P[cart[V,V]] (* derived 2006 October 14 in HULLCLIQ.NB *) image[inverse[S],range[CLIQUES]] := V (* derived 2005 February 20 in CARD-TWO.NB *) image[inverse[S],range[PAIRSET]] := union[range[PAIRSET],set[0]] (* added 1998 August 7 *) image[inverse[S],range[POWER]] := V (* Theorem SG-RA6 in SG2 added 1998 August 6 *) image[inverse[S],range[SINGLETON]] := union[set[0],range[SINGLETON]] (* derived 2004 December 23 in RA-SBV.NB *) image[inverse[S],range[SUBVAR]] := V (* derived 2005 September 16 in HULL-DIV.NB *) image[inverse[S],range[VERTSECT[DIV]]] := P[omega] (* Theorem REG-HER in REG2 *) image[inverse[S],REGULAR] := REGULAR (* added 2001 October 27 based on IMS.NB *) image[inverse[S],RFX] := P[cart[V,V]] (* derived 2004 August 10 in RS-3.NB *) image[inverse[S],RS[x_]] := P[thinpart[x]] (* Theorem RUS-S-IM in RUS2 added 1998 August 4 *) image[inverse[S],RUSSELL] := V (* derived 2004 November 2 in SELECT.NB *) image[inverse[S],SELECT] := V (* added 1996 June 29 Theorem PC-5-COR in SR1 *) image[inverse[S],set[x_]] := intersection[P[x],image[V,set[x]]] (* added 2003 January 17 based on SBV-IN-E.NB *) image[inverse[S],subvar[inverse[E]]] := V (* derived 2007 July 8 in IMS-ENS.NB *) image[inverse[S],succ[x_]] := union[image[inverse[S],x],intersection[image[V,set[x]],P[x]]] (* derived 2006 January 17 in IMS-INS.NB *) image[inverse[S],succ[nat[x_]]] := P[nat[x]] (* derived 2004 April 24 in BA-BC.NB *) image[inverse[S],succ[omega]] := P[omega] (* derived 2006 January 17 in IMS-INS.NB *) image[inverse[S],succ[ord[x_]]] := P[ord[x]] (* derived 2007 May 17 in CORE-ON.NB *) image[inverse[S],succ[set[0]]] := succ[set[0]] (* added 2001 October 27 based on IMS.NB *) image[inverse[S],SYM] := P[cart[V,V]] (* added 2003 September 14 based on IMIN-S-V.NB *) image[inverse[S],T1] := V (* added 2003 September 14 based on IMIN-S-V.NB *) image[inverse[S],T2] := V (* derived 2005 November 12 in UCL-INS.NB *) image[inverse[S],top[x_]] := P[U[top[x]]] (* added 2003 September 14 based on IMIN-S-V.NB *) image[inverse[S],TOPS] := V (* added 2001 October 27 based on IMS.NB *) image[inverse[S],TRV] := P[cart[V,V]] (* added 2003 September 29 based on WF.NB *) image[inverse[S],WF] := WF (* added 2002 November 17 based on HER-Z.NB *) image[inverse[S],Z] := cliques[EQUIDIFF] (* Theorem 2ND-IN-2 *) image[inverse[SECOND],x_] := cart[V,x] (* see IMG-2ND in IMG2.DEM *) IMAGE[inverse[SECOND]] := cart[set[0],set[0]] (* added 1999 October 12 based on INVERSE.5 *) image[INVERSE,set[x_]] := intersection[ complement[image[V,intersection[x,complement[cart[V,V]]]]], image[V,set[x]],set[inverse[x]]] (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],ANTISYM] := cart[V,V] (* added 2001 October 16 based on IM-IN-SG.NB *) image[inverse[SINGLETON],BIJ] := cart[V,V] (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],binclosed[x_]] := complement[fix[composite[Di,x,DUP]]] (* derived 2008 August 16 in SGPS-SS.NB *) image[inverse[SINGLETON],BINOPS] := inverse[DUP] (* derived 2005 December 27 in IM-SG.NB *) image[inverse[SINGLETON],CL] := Id (* derived 2007 May 8 in PAIRSET.NB *) image[inverse[SINGLETON],chains[x_]] := fix[x] (* added 2001 October 10 based on REPLACE.NB *) image[inverse[SINGLETON],cliques[x_]] := fix[x] (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],COMPACT] := V (* derived 2006 June 9 in CONST-SS.NB *) image[inverse[SINGLETON],CONST] := cart[V,V] (* added 2001 October 16 based on IM-IN-SG.NB *) image[inverse[SINGLETON],DEDEKIND] := V (* added 2001 October 16 based on IM-IN-SG.NB *) image[inverse[SINGLETON],DESCENDING] := fix[E] (* derived 2004 February 23 in DO-UB-SG.NB *) image[inverse[SINGLETON],domain[GREATEST[x_]]] := fix[x] (* derived 2004 February 23 in DO-UB-SG.NB *) image[inverse[SINGLETON],domain[LB[x_]]] := range[x] (* derived 2004 February 23 in DO-UB-SG.NB *) image[inverse[SINGLETON],domain[LEAST[x_]]] := fix[x] (* derived 2004 February 23 in DO-UB-SG.NB *) image[inverse[SINGLETON],domain[UB[x_]]] := domain[x] (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],EQV] := Id (* derived 2008 January 2 in FINCHR-1.NB *) image[inverse[SINGLETON],FINCHAR] := set[0] (* added 2001 October 16 based on IM-IN-SG.NB *) image[inverse[SINGLETON],FINITE] := V (* added 2001 October 15 based on ACL-UCL.NB *) image[inverse[SINGLETON],fix[ACLOSURE]] := V (* added 2002 January 21 based on VS-IN-BC.TXT *) image[inverse[SINGLETON],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := V (* added 2002 April 18 based on FIX-FUNP.NB *) image[inverse[SINGLETON],fix[IMAGE[x_]]] := fix[funpart[x]] (* derived 2007 July 11 in FP-UCH.NB *) image[inverse[SINGLETON],fix[UCHAINS]] := set[0] (* added 2001 October 15 based on ACL-UCL.NB *) image[inverse[SINGLETON],fix[UCLOSURE]] := set[0] (* derived 2007 December 10 in FUND.NB *) image[inverse[SINGLETON],FUND] := RUSSELL (* added 2001 October 16 based on IM-IN-SG.NB *) image[inverse[SINGLETON],FUNS] := cart[V,V] (* derived 2008 December 10 in SS-GPS.NB *) image[inverse[SINGLETON],GROUPS] := inverse[DUP] (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],IDEM] := Id (* derived 2006 June 13 in CART-SG.NB *) image[inverse[SINGLETON],image[CART,x_]] := composite[inverse[SINGLETON],x,SINGLETON] (* derived 2006 June 18 in REIF-PO.NB *) image[inverse[SINGLETON],image[inverse[BIGCUP],x_]] := x (* derived 2008 July 29 in IM-IN-VS.NB *) image[inverse[SINGLETON],image[inverse[IMAGE[x_]],y_]] := image[inverse[VERTSECT[x]],y] (* derived 2007 August 2 in HULL-SG.NB *) image[inverse[SINGLETON],image[inverse[S],x_]] := U[x] (* derived 2004 September 18 in SSIM-PRS.NB *) image[inverse[SINGLETON],image[PAIRSET,x_]] := fix[x] (* added 2001 October 16 based on UCL-IMSG.NB *) image[inverse[SINGLETON],image[SINGLETON,x_]] := x (* derived 2008 July 29 in FUNAPPLY.NB *) image[inverse[SINGLETON],image[VERTSECT[x_],domain[x_]]] := range[funpart[x]] (* derived 2007 August 2 in HULL-SG.NB *) image[inverse[SINGLETON],intersection[x_,complement[set[0]]]] := image[inverse[SINGLETON],x] (* derived 2006 June 13 in CART-SG.NB *) image[inverse[SINGLETON],intersection[image[CART,x_],image[SINGLETON,y_]]] := intersection[y,composite[inverse[SINGLETON],x,SINGLETON]] (* added 2003 June 11 based on VS.NB *) image[inverse[SINGLETON],intersection[x_,P[y_]]] := intersection[y,image[inverse[SINGLETON],x]] (* added 2003 June 11 based on VS.NB *) image[inverse[SINGLETON],intersection[x_,complement[P[y_]]]] := intersection[complement[y],image[inverse[SINGLETON],x]] (* added 2002 May 1 based on INVAR-V.NB *) image[inverse[SINGLETON],invar[x_]] := complement[fix[composite[Di,x]]] (* derived 2004 February 19 in REPLACE2.NB *) image[inverse[SINGLETON],lb[INVAR,x_]] := complement[composite[complement[inverse[E]],id[x],E]] (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],LISTS] := cart[set[0],V] (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],map[x_,y_]] := cart[intersection[x,complement[image[Di,x]]],y] (* added 2002 June 15 based on OM-NAT.NB *) image[inverse[SINGLETON],omega] := set[0] (* added 2001 October 16 based on IM-IN-SG.NB *) image[inverse[SINGLETON],OMEGA] := set[0] (* added 2001 October 16 based on RA-SG.NB *) image[inverse[SINGLETON],P[x_]] := x (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],PO] := Id (* derived 2003 December 28 in PTCLOSED.NB *) image[inverse[SINGLETON],PointClosed] := set[0] (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],PROJ] := Id (* derived 2008 December 10 in SS-GPS.NB *) image[inverse[SINGLETON],QUASIGPS] := inverse[DUP] (* derived 2007 June 27 in RA=CLIQ.NB *) image[inverse[SINGLETON],range[CLIQUES]] := set[0] (* derived 2006 June 13 in CART-SG.NB *) image[inverse[SINGLETON],range[CART]] := cart[V,V] (* derived 2006 June 20 in MAP-RASG.NB *) image[inverse[SINGLETON],range[MAP]] := CONST (* added 2002 January 22 based on EQ-PC.NB *) image[inverse[SINGLETON],range[POWER]] := set[0] (* derived 2007 July 17 in RA-SBV.NB *) image[inverse[SINGLETON],range[SUBVAR]] := set[0] (* derived 2008 July 29 in FUNAPPLY.NB *) image[inverse[SINGLETON],range[VERTSECT[x_]]] := range[funpart[x]] (* derived 2004 April 10 in UP-RULES.NB *) image[inverse[SINGLETON],REGULAR] := REGULAR (* added 2001 October 16 based on IM-IN-SG.NB *) image[inverse[SINGLETON],RFX] := Id (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],RS[x_]] := funpart[x] (* derived 2004 November 2 in SELECT.NB *) image[inverse[SINGLETON],SELECT] := V (* derived 2008 August 16 in SGPS-SS.NB *) image[inverse[SINGLETON],SEMIGPS] := inverse[DUP] (* added 2001 October 14 based on IM-IN-SG.NB *) image[inverse[SINGLETON],set[x_]] := intersection[x,complement[image[Di,x]]] (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],subvar[x_]] := fix[x] (* added 2001 October 16 based on IM-IN-SG.NB *) image[inverse[SINGLETON],SYM] := Id (* derived 2003 December 27 in T1.NB *) image[inverse[SINGLETON],T1] := union[range[SINGLETON],set[0]] (* derived 2003 December 30 in T2.NB *) image[inverse[SINGLETON],T2] := union[range[SINGLETON],set[0]] (* derived 2005 December 27 in IM-SG.NB *) image[inverse[SINGLETON],TO] := Id (* added 2001 October 23 based on CHAINS.NB *) image[inverse[SINGLETON],TOPS] := set[0] (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],transvar[x_,y_]] := complement[fix[composite[complement[inverse[y]],x]]] (* added 2001 October 16 based on IM-IN-SG.NB *) image[inverse[SINGLETON],TRV] := cart[V,V] (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],Uclosure[x_]] := image[inverse[SINGLETON],x] (* added 2003 October 7 based on WF-IND.NB *) image[inverse[SINGLETON],WF] := Di (* derived 2005 August 1 in IMIN-S.NB *) image[inverse[SINGLETON],WO] := Id (* derived 2008 January 5 in SMALLER.NB *) image[inverse[SMALLER],FINITE] := FINITE (* derived 2008 January 5 in SMALLER.NB *) image[inverse[SMALLER],image[inverse[S],x_]] := image[inverse[SMALLER],x] (* derived 2008 January 5 in SMALLER.NB *) image[inverse[SMALLER],image[Q,x_]] := image[inverse[SMALLER],x] (* derived 2008 January 5 in SMALLER.NB *) image[inverse[SMALLER],omega] := FINITE (* derived 2004 April 6 in SMALLER.NB *) image[inverse[SMALLER],set[0]] := 0 (* derived 2008 August 10 in SMALLFIN.NB *) image[inverse[SMALLER],set[omega]] := FINITE (* added 2002 December 27 based on SBCOMMUT.NB *) image[inverse[SUBCOMMUTE],set[x_]] := intersection[image[V,set[x]], image[inverse[IMAGE[SWAP]],subcommutant[inverse[x]]]] (* derived 2006 September 19 in IMG-X.NB *) image[INVERSE,subvar[cross[x_,y_]]] := subvar[cross[y,x]] (* added 2000 December 30 based on FOUNDED.NB *) image[inverse[SUBVAR],set[0]] := 0 (* derived 2004 March 14 in WF-WO.NB *) image[inverse[SUBVAR],set[set[0]]] := image[inverse[IMAGE[id[cart[V,V]]]],WF] (* derived 2004 April 28 in WF.NB *) image[inverse[SUBVAR],succ[set[0]]] := image[inverse[IMAGE[id[cart[V,V]]]],WF] (* derived 2006 May 16 in DO-ITER.NB *) image[inverse[SUCC],domain[iterate[x_,y_]]] := U[domain[iterate[x,y]]] (* derived 2006 May 29 in OL-DO.NB *) image[inverse[SUCC],domain[ordlist[x_]]] := U[domain[ordlist[x]]] (* derived 2006 August 15 in EVEN-ODD.NB *) image[inverse[SUCC],even] := odd (* added 2001 August 23 based on FINITE.NB *) image[inverse[SUCC],FINITE] := FINITE (* derived 2007 December 4 in H-FIN.NB *) image[inverse[SUCC],H[FINITE]] := H[FINITE] (* derived 2006 August 15 in CLOCK-AP.NB *) image[inverse[SUCC],image[DIV,set[succ[nat[x_]]]]] := image[inverse[modulo[succ[nat[x]]]],set[nat[x]]] (* derived 2006 March 12 in FIN-SUC.NB *) image[inverse[SUCC],image[inverse[IMAGE[id[x_]]],FINITE]] := image[inverse[IMAGE[id[x]]],FINITE] (* derived 2006 March 7 in HULL-ON.NB *) image[inverse[SUCC],image[inverse[S],intersection[OMEGA,x_]]] := U[intersection[OMEGA,x]] (* derived 2005 August 17 in PRIMESEQ.NB *) image[inverse[SUCC],image[inverse[S],omega]] := omega (* derived 2006 May 16 in DO-ITER.NB *) image[inverse[SUCC],intersection[omega,x_]] := intersection[omega,image[inverse[SUCC],x]] (* added 2002 May 22 based on EXAMPLES.NB *) image[inverse[SUCC],intersection[omega,complement[set[0]]]] := omega (* derived 2006 March 7 in HULL-ON.NB *) image[inverse[SUCC],intersection[OMEGA,image[inverse[S],intersection[OMEGA,x_]]]] := U[intersection[OMEGA,x]] (* derived 2005 February 17 in X3741-49.NB *) image[inverse[SUCC],nat[x_]] := U[nat[x]] (* derived 2006 August 15 in EVEN-ODD.NB *) image[inverse[SUCC],odd] := even (* Theorem OM-SUC11 in OM3 added 1998 August 11 *) image[inverse[SUCC],omega] := omega (* Theorem ON-5F in ON6 added 1998 August 11 *) image[inverse[SUCC],OMEGA] := OMEGA (* derived 2006 March 14 in ORDRULES.NB *) image[inverse[SUCC],ord[x_]] := U[ord[x]] (* added 2002 April 18 based on SUCC.NB *) image[inverse[SUCC],REGULAR] := REGULAR (* added 1999 October 21 based on VERTSECT.NB *) image[inverse[SUCC],P[x_]] := intersection[x,P[x]] image[inverse[SUCC],set[0]] := 0 (* added 2002 May 21 based on NILPOT.NB *) image[inverse[SUCC],set[set[0]]] := set[0] (* added 2002 July 30 based on REVERSAL.NB *) image[inverse[SUCC],set[succ[set[0]]]] := set[set[0]] (* derived 2007 May 22 in SU-OM.NB *) image[inverse[SUCC],succ[nat[x_]]] := nat[x] (* added 2001 October 10 based on SYM-1.NB *) image[INVERSE,SYM] := SYM (* derived 2006 June 10 in SYMDIF.NB *) image[inverse[SYMDIF],P[x_]] := composite[inverse[IMAGE[id[complement[x]]]],IMAGE[id[complement[x]]]] (* added 1999 December 2 based on SYMDIF-4.NB *) image[inverse[SYMDIF],set[0]] := Id (* derived 2007 December 14 in CANTOR.NB *) image[inverse[TC],FUND] := REGULAR (* derived 2007 December 8 in IMGIDREG.NB *) image[inverse[TC],H[FULL]] := P[H[FULL]] (* derived 2008 July 15 in H-RUS.NB *) image[inverse[TC],H[RUSSELL]] := H[RUSSELL] (* derived 2007 December 4 in IM-HC-TC.NB *) image[inverse[TC],image[inverse[HC],x_]] := image[inverse[TC],x] (* derived 2007 December 4 in IM-HC-TC.NB *) image[inverse[TC],image[inverse[TC],x_]] := image[inverse[TC],x] (* derived 2007 December 10 in IM-HC-TC.NB *) image[inverse[TC],intersection[FULL,x_]] := image[inverse[TC],x] (* added 2003 January 18 based on HC-TC-OM.NB *) image[inverse[TC],omega] := image[inverse[S],omega] (* added 2002 May 4 based on HC-OMEGA.NB *) image[inverse[TC],OMEGA] := P[OMEGA] (* added 2001 March 17 based on TC-H.NB *) image[inverse[TC],P[x_]] := P[H[x]] (* added 2001 March 17 based on TC-I-FUL.NB *) image[inverse[TC],REGULAR] := REGULAR (* added 2002 January 26 based on IMV.NB *) image[inverse[TC],set[0]] := set[0] (* added 2002 January 26 based on IMV.NB *) image[inverse[TC],succ[set[0]]] := succ[set[0]] (* derived 2005 November 19 in REGULAR.NB *) image[inverse[thinpart[ZN]],REGULAR] := domain[VERTSECT[ZN]] (* derived 2007 January 1 in INTMUL-4.NB *) image[inverse[TIMES],BIJ] := intersection[omega,complement[set[0]]] (* derived 2006 November 25 *) image[inverse[TIMES],P[cart[V,V]]] := omega (* derived 2007 February 4 in NATDIV-1.NB *) image[inverse[times[x_]],set[y_]] := union[intersection[omega,complement[image[V,x]], complement[image[V,y]]],set[natdiv[y,x]]] (* derived 2004 February 10 in TO.NB *) image[INVERSE,TO] := TO (* derived 2005 October 22 in TO-C.NB *) image[inverse[to[x_]],complement[fix[to[x_]]]] := 0 (* derived 2008 March 13 in TO-RULES.NB *) image[inverse[to[x_]],intersection[y_,fix[to[x_]]]] := image[inverse[to[x]],y] (* added 2001 October 9 based on TRV-1.NB *) image[INVERSE,TRV] := TRV (* added 2002 November 2 based on TWIST-IM.NB *) image[inverse[twist[x_]],y_] := composite[FIRST, intersection[x,composite[inverse[SECOND],y,SECOND]],inverse[FIRST]] (* derived 2008 July 4 in UB-SU-RA.NB *) image[inverse[UB[x_]],complement[range[x_]]] := intersection[image[V,complement[range[x]]],set[0]] (* derived 2004 November 13 in AC1-A8.NB *) image[inverse[UB[image[inverse[CAP],range[SINGLETON]]]], complement[set[0]]] := domain[UB[image[inverse[CAP],range[SINGLETON]]]] (* added 2000 November 19 based on IM-SS.NB *) image[inverse[UB[x_]],set[y_]] := intersection[image[V,set[y]],P[image[inverse[x],set[y]]]] (* derived 2008 July 5 in UBD-DEFN.NB *) image[inverse[UBD],set[0]] := 0 (* derived 2007 September 26 in IMIN-UCH.NB *) image[inverse[UCHAINS],FINITE] := FINITE (* derived 2007 September 26 in IMIN-UCH.NB *) image[inverse[UCHAINS],REGULAR] := REGULAR (* added 2003 May 23 based on CORE-BCL.NB *) image[inverse[UCLOSURE],binclosed[CUP]] := V (* derived 2007 May 5 in REPLACE.NB *) image[inverse[UCLOSURE],chains[S]] := chains[S] (* derived 2008 November 8 in UCL-CLIQ.NB *) image[inverse[UCLOSURE],cliques[COMMUTE]] := cliques[COMMUTE] (* derived 2004 January 8 in FIN-FU.NB *) image[inverse[UCLOSURE],FINITE] := FINITE (* added 2001 October 23 based on TOPS.NB *) image[inverse[UCLOSURE],P[complement[set[0]]]] := 0 (* derived 2004 January 23 in P-FINITE.NB *) image[inverse[UCLOSURE],P[FINITE]] := intersection[FINITE,P[FINITE]] (* derived 2003 December 30 in PTCLOSED.NB *) image[inverse[UCLOSURE],PointClosed] := T1 (* derived 2006 March 26 in IMIN-REG.NB *) image[inverse[UCLOSURE],REGULAR] := REGULAR (* added 2001 May 10 based on UCLOS-1.NB *) image[inverse[UCLOSURE],set[0]] := 0 (* derived 2003 December 27 in T1.NB *) image[inverse[UCLOSURE],T1] := T1 (* derived 2003 December 30 in T2.NB *) image[inverse[UCLOSURE],T2] := T2 (* added 2003 June 9 based on VS-CLIQ.NB *) image[inverse[VERTSECT[x_]],cliques[y_]] := intersection[ complement[fix[composite[inverse[x],complement[inverse[y]],x]]], domain[VERTSECT[x]]] (* added 1999 July 13 based on session VERTSECT.1 *) image[inverse[VERTSECT[x_]],complement[set[0]]] := intersection[domain[x],domain[VERTSECT[x]]] (* derived 2008 November 5 in MAP-FIN.NB *) image[inverse[VERTSECT[composite[id[cart[x_,V]],inverse[SECOND]]]],map[x_,y_]] := union[complement[image[V,x]],intersection[y,image[V,set[x]]]] (* derived 2006 October 26 in CARDARTH.NB *) image[inverse[VERTSECT[DIV]],FINITE] := union[complement[omega],set[0]] (* derived 2006 October 26 in CARDARTH.NB *) image[inverse[VERTSECT[DIV]],image[Q,set[omega]]] := intersection[omega,complement[set[0]]] (* derived 2005 October 5 in GLB-DIV.NB *) image[inverse[VERTSECT[DIV]],image[VERTSECT[DIV],omega]] := omega (* derived 2007 January 27 in IM-DIV.NB *) image[inverse[VERTSECT[DIV]],set[omega]] := set[set[0]] (* added 2003 August 17 based on EQDF-SUB.NB *) image[inverse[VERTSECT[EQUIDIFF]],range[PLUS]] := composite[id[omega],S,id[omega]] (* added 2002 December 16 based on EQUIDIFF.NB *) image[inverse[VERTSECT[EQUIDIFF]],Z] := cart[omega,omega] (* added 2003 June 9 based on VS-FUNS.NB *) image[inverse[VERTSECT[x_]],FUNS] := intersection[complement[fix[composite[inverse[x],cross[Id,Di],x]]], complement[image[inverse[x],complement[cart[V,V]]]],domain[VERTSECT[x]]] (* derived 2007 January 6 in IVR-INV.NB *) image[inverse[VERTSECT[INTDIV]],fix[IMAGE[INVERSE]]] := V (* derived 2004 October 28 in AC2.NB *) image[inverse[VERTSECT[x_]],intersection[y_,complement[set[0]]]] := intersection[domain[x],image[inverse[VERTSECT[x]],y]] (* derived 2006 October 26 in CARDARTH.NB *) image[inverse[VERTSECT[inverse[DIV]]],FINITE] := complement[set[0]] (* definition of PRIMES introduced 2005 February 22 in PRIMES.NB *) image[inverse[VERTSECT[inverse[DIV]]],image[PAIRSET,Di]] := PRIMES (* added 2002 December 16 based on REPLACE.NB *) image[inverse[VERTSECT[x_]],P[y_]] := intersection[complement[image[inverse[x],complement[y]]],domain[VERTSECT[x]]] (* added 2000 February 12 based on FUNPART.NB *) image[inverse[VERTSECT[x_]],range[SINGLETON]] := domain[funpart[x]] (* added 1999 July 13 based on session VERTSECT.1 *) image[inverse[VERTSECT[x_]],set[0]] := complement[domain[x]] (* derived 2004 September 5 in WF-REC-4.NB *) image[inverse[VERTSECT[ZN]],set[set[0]]] := set[0] (* derived 2006 October 16 in EQV-PROJ.NB *) image[inverse[VS],P[E]] := invar[composite[DUP,FIRST]] (* derived 2004 August 21 in VS-RS.NB *) image[inverse[VS],set[0]] := P[complement[cart[V,V]]] (* derived 2005 October 22 in WO-DI.NB *) image[inverse[wo[x_]],complement[fix[wo[x_]]]] := 0 (* derived 2008 March 13 in WO-RULES.NB *) image[inverse[wo[x_]],intersection[y_,fix[wo[x_]]]] := image[inverse[wo[x]],y] (* derived 2004 November 16 in XS.NB *) image[inverse[XS],set[0]] := complement[SELECT] (* derived 2004 November 26 in XS-SS-0.NB *) image[inverse[XS],set[set[0]]] := P[complement[cart[V,V]]] (* added 2002 December 1 based on Z-PC-S.NB *) image[INVERSE,Z] := Z (* added 2001 July 15 based on ZN-AGAIN.NB *) image[inverse[ZN],P[x_]] := V (* added 2001 July 15 based on ZN-AGAIN.NB *) image[inverse[ZN],REGULAR] := V (* added 2001 July 15 based on ZN-AGAIN.NB *) image[inverse[ZN],set[0]] := V (* added 2001 July 15 based on ZN-AGAIN.NB *) image[inverse[ZN],set[set[0]]] := complement[set[0]] (* derived 2003 December 18 in RA-ITER.NB *) image[iterate[x_,y_],complement[set[0]]] := image[trv[x],y] (* derived 2006 February 14 in ITERATE.NB *) image[iterate[funpart[x_],set[y_]],set[z_]] := set[APPLY[iterate[funpart[x],set[y]],z]] (* added 2002 June 13 based on LOOPING.NB *) image[iterate[x_,y_],intersection[omega,z_]] := image[iterate[x,y],z] (* added 2002 April 15 based on ITERATE.NB *) image[iterate[x_,y_],set[0]] := y (* added 2002 May 20 based on ITERCOID.NB *) image[iterate[x_,y_],set[set[0]]] := image[x,y] (* added 2002 May 17 based on TC.NB *) image[iterate[x_,y_],set[succ[z_]]] := image[x,image[iterate[x,y],set[z]]] (* derived 2008 October 22 in JOIN-RS.NB *) image[JOIN,cart[intersection[LISTS,x_],y_]] := image[JOIN,cart[x,y]] (* derived 2008 October 22 in JOIN-RS.NB *) image[JOIN,cart[x_,intersection[LISTS,y_]]] := image[JOIN,cart[x,y]] (* derived 2008 October 22 in WORDS.NB *) image[JOIN,cart[P[cart[omega,x_]],P[cart[omega,x_]]]] := intersection[LISTS,P[cart[omega,x]]] (* derived 2008 October 21 in JOIN.NB *) image[JOIN,cart[set[x_],set[y_]]] := set[APPLY[JOIN,PAIR[x,y]]] (* derived 2008 October 24 in SUFX-PO.NB *) image[JOIN,cart[V,set[0]]] := LISTS (* added 2000 May 24 based on VS-K.NB *) IMAGE[K] := cart[set[0],set[0]] (* derived 2007 August 21 in CO-K-PS.NB *) image[K,complement[set[0]]] := intersection[complement[range[SINGLETON]],complement[set[0]]] (* derived 2005 February 4 in DK-K.NB *) image[K,DEDEKIND] := intersection[DEDEKIND,complement[set[0]]] (* Theorem FIN-K-3 in FINITE proved 2000 May 30 *) image[K,FINITE] := intersection[FINITE,complement[set[0]]] (* derived 2003 December 22 in LOW-CARD.NB *) image[K,range[SINGLETON]] := image[PAIRSET,Di] (* added 2001 March 5 based on K-SS.NB *) image[K,set[0]] := range[SINGLETON] (* derived 2008 July 27 in PRS-REG.NB *) image[KURA,x_] := image[PAIRSET,composite[PAIRSET,id[x],inverse[FIRST],inverse[SINGLETON]]] (* added 2003 May 10 based on LAMBHULL.NB *) image[LAMBHULL,set[x_]] := set[HULL[x]] (* derived 2004 February 20 in REPLACE1.NB *) image[LB[x_],complement[set[0]]] := domain[x] (* derived 2004 March 30 in CO-ES-ID.NB *) image[LB[x_],image[S,y_]] := image[LB[x],y] (* added 2000 December 24 based on LT-CO-S *) image[LB[x_],P[y_]] := V (* derived 2006 March 26 in IMIN-REG.NB *) image[LB[x_],REGULAR] := V (* derived 2004 February 19 in REPLACE2.NB *) image[LB[x_],set[y_]] := intersection[image[V,set[y]],lb[x,y]] (* added 2000 December 24 based on LT-CO-S *) image[LEAST[x_],P[y_]] := intersection[y,fix[x]] (* derived 2004 February 19 in REPLACE2.NB *) image[LEAST[x_],set[y_]] := intersection[y,image[V,set[y]],lb[x,y]] (* added 1999 August 16 based on session IM-L-R *) image[LEFT[x_],y_] := cart[set[x],y] (* new PairV rules added 1998 January 24 *) image[LeftPairV,set[x_]] := intersection[set[pair[V,x]],image[V,set[x]]] (* derived 2005 September 27 in GLB-LUB.NB *) image[LUB[x_],set[y_]] := intersection[image[V,set[y]],lb[x,intersection[range[x], ub[x,y]]],range[x],ub[x,y]] /; expand (* derived 2007 February 20 in AP-GLBPO.NB *) image[LUB[DIV],set[x_]] := set[APPLY[LUB[DIV],x]] (* derived 2007 February 20 in AP-GLBPO.NB *) image[LUB[po[x_]],set[y_]] := set[APPLY[LUB[po[x]],y]] (* derived 2007 November 15 in XS-CART.NB *) image[MAP,cart[complement[set[0]],set[0]]] := set[0] (* derived 2006 June 20 in MAP-RASG.NB *) image[MAP,cart[set[0],V]] := set[set[0]] (* added 2001 April 28 based on MAP-INS.NB *) image[MAP,cart[set[x_],set[y_]]] := intersection[set[map[x,y]],image[V,set[x]],image[V,set[y]]] (* derived 2006 June 20 in MAP-RASG.NB *) image[MAP,cart[V,range[SINGLETON]]] := image[SINGLETON,CONST] (* derived 2006 June 20 in MAP-RASG.NB *) image[MAP,cart[V,set[0]]] := succ[set[0]] (* derived 2008 August 17 in OPS-1.NB *) image[MAP,id[range[SINGLETON]]] := image[SINGLETON,image[SINGLETON,Id]] (* derived 2007 November 15 in XS-CART.NB *) image[MAP,set[set[0]]] := 0 (* added 2000 November 19 based on IM-SS.NB *) image[MAXIMAL[x_],set[y_]] := intersection[y,complement[fix[composite[Di,id[y],x]]],image[V,set[y]]] (* added 2000 November 19 based on IM-SS.NB *) image[MINIMAL[x_],set[y_]] := intersection[y,complement[fix[composite[x,id[y],Di]]],image[V,set[y]]] (* derived 2007 January 10 in INTDIV.NB *) image[MIXDIV,set[x_]] := image[INTDIV,set[plus[x]]] (* derived 2008 July 17 in MIXMUL.NB *) image[MIXMUL,cart[set[x_],set[y_]]] := set[intmul[x,plus[y]]] (* derived 2006 December 9 in SIMPLIFY.NB *) image[MIXMUL,cart[V,x_]] := image[MIXDIV,x] (* derived 2006 December 9 in AP-MIX.NB *) image[MIXTIMES,set[x_]] := intersection[image[V,intersection[Z,set[x]]], set[composite[MIXMUL,LEFT[x]]]] (* derived 2006 July 11 in SGP-MOD.NB *) image[modulo[x_],image[NATADD,cart[x_,x_]]] := nat[x] (* derived 2006 July 11 in SGP-MOD.NB *) image[modulo[x_],image[NATMUL,cart[x_,x_]]] := nat[x] (* derived 2005 July 22 in MOD-ASS.NB *) image[modulo[nat[x_]],nat[x_]] := nat[x] (* derived 2005 July 18 in MODULO.NB *) image[modulo[x_],set[y_]] := set[natmod[y,x]] (* derived 2006 August 16 in EVOD-ADD.NB *) image[NATADD,cart[even,even]] := even (* derived 2006 August 16 in EVOD-ADD.NB *) image[NATADD,cart[even,odd]] := odd (* derived 2005 March 26 in DIVDSTRB.NB *) image[NATADD,cart[image[DIV,set[x_]],image[DIV,set[x_]]]] := image[DIV,set[x]] (* derived 2006 August 16 in EVOD-ADD.NB *) image[NATADD,cart[odd,even]] := odd (* derived 2004 May 11 in IMG-IMAG.NB *) image[NATADD,cart[set[x_],y_]] := image[plus[x],y] (* derived 2004 May 11 in IMG-IMAG.NB *) image[NATADD,cart[x_,set[y_]]] := image[plus[y],x] (* added 2002 July 5 based on NATADD-2.NB *) image[NATADD,cart[x_,V]] := intersection[omega,image[S,intersection[omega,x]]] (* added 2002 July 5 based on NATADD-2.NB *) image[NATADD,cart[V,x_]] := intersection[omega,image[S,intersection[omega,x]]] (* derived 2006 August 16 in EVOD-ADD.NB *) image[NATADD,composite[id[omega],SUCC]] := odd (* derived 2006 August 15 in EVEN-ODD.NB *) image[NATADD,id[omega]] := even (* derived 2006 August 15 in EVEN-ODD.NB *) image[NATADD,Id] := even (* added 2002 July 5 based on NATADD-1.NB *) image[NATADD,inverse[x_]] := image[NATADD,x] (* added 2002 August 29 based on BINHOM.NB *) image[NATADD,set[x_]] := set[natadd[first[x],second[x]]] (* derived 2006 November 28 in NATEXP-5.NB *) image[NATEXP,cart[set[0],intersection[omega,complement[set[0]]]]] := set[0] (* derived 2006 June 27 in NATEXP-1.NB *) image[NATEXP,cart[set[x_],set[y_]]] := set[natexp[x,y]] (* derived 2006 August 16 in ODD-EXP.NB *) image[NATEXP,cart[x_,set[set[0]]]] := intersection[omega,x] (* derived 2006 August 16 in ODD-EXP.NB *) image[NATEXP,cart[odd,omega]] := odd (* derived 2006 June 27 in NATEXP-1.NB *) image[NATEXP,set[pair[x_,y_]]] := set[natexp[x,y]] (* derived 2007 April 12 in LD-4.NB *) image[NATMOD,cart[image[DIV,set[x_]],image[DIV,set[x_]]]] := image[DIV,set[x]] (* derived 2007 April 12 in LD-4.NB *) image[NATMOD,cart[ld[x_,y_],ld[x_,y_]]] := ld[x,y] (* derived 2006 August 13 in IM-MOD.NB *) image[NATMOD,cart[x_,set[y_]]] := image[modulo[y],x] (* derived 2005 June 24 in MOD-FIX.NB *) image[NATMOD,cart[V,x_]] := union[intersection[omega,image[V,intersection[x,set[0]]]],U[intersection[omega,x]]] (* derived 2005 May 21 in MOD-DUP.NB *) image[NATMOD,inverse[DIV]] := set[0] (* derived 2006 August 16 in EVOD-MUL.NB *) image[NATMUL,cart[even,odd]] := even (* added 2002 December 21 based on DIV.NB *) image[NATMUL,cart[x_,intersection[omega,y_]]] := image[NATMUL,cart[x,y]] (* added 2002 December 21 based on DIV.NB *) image[NATMUL,cart[intersection[omega,x_],y_]] := image[NATMUL,cart[x,y]] (* derived 2007 April 12 in LD-4.NB *) image[NATADD,cart[ld[x_,y_],ld[x_,y_]]] := ld[x,y] (* derived 2006 August 16 in EVOD-MUL.NB *) image[NATMUL,cart[odd,even]] := even (* derived 2006 August 16 in EVOD-MUL.NB *) image[NATMUL,cart[odd,odd]] := odd (* added 2002 December 21 based on DIV.NB *) image[NATMUL,cart[x_,omega]] := image[DIV,x] (* added 2002 December 21 based on DIV.NB *) image[NATMUL,cart[omega,x_]] := image[DIV,x] (* derived 2006 August 13 in IM-MUL.NB *) image[NATMUL,cart[x_,set[y_]]] := image[times[y],x] (* derived 2006 August 13 in IM-MUL.NB *) image[NATMUL,cart[set[x_],y_]] := image[times[x],y] (* added 2002 September 2 based on IMAGEDIV.NB *) image[NATMUL,cart[x_,V]] := image[DIV,x] (* added 2002 September 2 based on IMAGEDIV.NB *) image[NATMUL,cart[V,x_]] := image[DIV,x] (* derived 2007 February 8 in COMPOS-1.NB *) image[NATMUL,complement[image[inverse[NATMUL],x_]]] := intersection[omega,complement[x]] (* derived 2007 February 8 in COMPOS-1.NB *) image[NATMUL,composite[id[omega],x_]] := image[NATMUL,x] (* derived 2007 February 8 in COMPOS-1.NB *) image[NATMUL,composite[x_,id[omega]]] := image[NATMUL,x] (* derived 2006 August 27 in CARDOMSQ.NB *) image[NATMUL,id[omega]] := image[NATMUL,Id] (* added 2002 August 29 based on MULASSOC.NB *) image[NATMUL,set[x_]] := set[natmul[first[x],second[x]]] (* added 1999 December 20 based on IMAGE.NB *) IMAGE[omega] := cart[V,set[0]] (* added 1999 December 20 based on IMAGE.NB *) IMAGE[OMEGA] := cart[V,set[0]] (* derived 2006 November 28 in FUNPOOPT.NB *) image[oopart[x_],fix[composite[y_,oopart[x_]]]] := fix[composite[oopart[x],y]] (* derived 2006 March 30 in REG-FUNP.NB *) image[OOPART,REGULAR] := intersection[BIJ,REGULAR] (* derived 2004 May 9 in OOPART.NB *) image[OOPART,set[x_]] := intersection[image[V,set[x]],set[oopart[x]]] (* derived 2006 May 28 in OOPART.NB *) image[oopart[x_],set[y_]] := set[APPLY[oopart[x],y]] (* derived 2006 March 12 in OLIST-OO.NB *) image[ordlist[x_],omega] := range[ordlist[x]] (* derived 2006 April 30 in OL-MONO.NB *) image[ordlist[x_],set[y_]] := set[APPLY[ordlist[x],y]] (* derived 2006 March 7 in ORDLIST.NB *) image[ordlist[x_],set[0]] := set[A[intersection[OMEGA,x]]] (* revised 2002 April 18 based on REPLACE.NB *) image[PAIRSET,cart[set[x_],set[y_]]] := intersection[image[V,set[x]],image[V,set[y]],set[set[x,y]]] (* added 2001 October 23 based on CAPCLOS.NB *) image[PAIRSET,cart[set[0],V]] := image[ADJOIN[set[0]],range[SINGLETON]] (* derived 2003 December 25 in TOPSDEFN.NB *) image[PAIRSET,cart[V,set[0]]] := image[ADJOIN[set[0]],range[SINGLETON]] (* added 1999 October 18 based on PAIRSET.3 *) image[PAIRSET,complement[cart[V,V]]] := 0 (* added 1999 November 6 based on CO-1.LOG *) image[PAIRSET,composite[Id,x_]] := image[PAIRSET,x] (* added 1999 October 6 based on PAIRSET.2 *) image[PAIRSET,Id] := range[SINGLETON] (* added 1999 November 6 based on CO-1.LOG *) image[PAIRSET,id[x_]] := image[SINGLETON,x] (* added 1999 November 6 based on CO-1.LOG *) image[PAIRSET,inverse[x_]] := image[PAIRSET,x] (* added 2002 January 10 based on PAIRSET.NB *) image[PAIRSET,set[x_]] := intersection[image[V,set[first[x]]],set[set[first[x],second[x]]]] (* derived 2004 April 10 in UP-RULES.NB *) image[PAIRSET,set[pair[x_,y_]]] := intersection[image[V,set[x]],image[V,set[y]],set[set[x,y]]] (* derived 2006 January 30 in I-Z.NB *) image[PLUS,intersection[omega,x_]] := image[PLUS,x] (* derived 2005 July 16 in DBLCOUNT.NB *) image[plus[nat[x_]],intersection[omega,complement[nat[y_]]]] := intersection[omega,complement[natadd[nat[x],nat[y]]]] (* derived 2005 July 16 in DBLCOUNT.NB *) image[plus[nat[x_]],nat[y_]] := intersection[complement[nat[x]],natadd[nat[x],nat[y]]] (* added 2003 August 7 based on PLUS.NB *) image[PLUS,set[x_]] := intersection[image[V,intersection[omega,set[x]]],set[plus[x]]] (* added 2003 August 7 based on PLUS.NB *) image[plus[x_],set[y_]] := set[natadd[x,y]] (* derived 2008 January 4 in C-FP-PO.NB *) image[po[x_],complement[fix[po[x_]]]] := 0 (* derived 2006 January 17 in PO-RS.NB *) image[po[x_],image[po[x_],y_]] := image[po[x],y] (* derived 2007 December 29 in PO-RULES.NB *) image[po[x_],intersection[y_,fix[po[x_]]]] := image[po[x],y] (* added 2002 June 11 based on TRV.NB *) image[power[x_],complement[set[0]]] := trv[x] (* derived 2004 January 4 in VS-IMIN.NB *) image[POWER,FINITE] := intersection[FINITE,range[POWER]] (* derived 2004 August 15 in ZN-FACTS.NB *) image[POWER,fix[IMAGE[ZN]]] := range[VERTSECT[ZN]] (* Theorem FUL-POW3 in FUL3 proved 1998 September 18 *) image[POWER,FULL] := intersection[FULL,range[POWER]] (* derived 2005 January 15 in H-FIN.NB *) image[POWER,H[FINITE]] := intersection[H[FINITE],range[POWER]] (* derived 2007 July 5 in PC-TOWER.NB *) image[POWER,image[IMAGE[inverse[RANK]],omega]] := intersection[complement[set[0]],image[IMAGE[inverse[RANK]],omega]] (* derived 2006 March 30 in ZN-SU.NB *) image[POWER,image[IMAGE[ZN],REGULAR]] := image[VERTSECT[ZN],REGULAR] (* derived 2004 March 23 in TRV-K.NB *) image[power[x_],image[inverse[S],omega]] := union[Id,trv[x]] (* added 2002 June 5 based on ITERITER.NB *) image[power[x_],intersection[omega,y_]] := image[power[x],y] (* derived 2005 January 15 in H-FIN.NB *) image[POWER,intersection[REGULAR,x_]] := intersection[REGULAR,image[POWER,x]] (* Theorem POW-REG2 in POW5 proved 1999 March 4 *) image[POWER,REGULAR] := intersection[REGULAR,range[POWER]] (* Theorem POW-IM1 in POW3 added 1998 August 7 *) image[POWER,set[x_]] := set[P[x]] (* added 2002 May 21 based on POWER.NB *) image[power[x_],set[0]] := Id (* added 2002 May 21 based on POWER.NB *) image[power[x_],set[set[0]]] := composite[Id,x] (* added 2002 May 21 based on POWER.NB *) image[power[x_],set[succ[y_]]] := composite[x,image[power[x],set[y]]] (* derived 2007 May 17 in CORE-ON.NB *) image[POWER,succ[set[0]]] := set[set[0],succ[set[0]]] (* derived 2005 August 17 in PRIMESEQ.NB *) image[PRIMESEQ,set[x_]] := set[APPLY[PRIMESEQ,x]] (* derived 2005 August 17 in PRIMESEQ.NB *) image[PRIMESEQ,succ[x_]] := union[image[PRIMESEQ,x],set[APPLY[PRIMESEQ,x]]] (* from IMG-PS.LOG 1999 April 16 *) IMAGE[PS] := cart[set[0],set[0]] (* Theorem FIN-PS1 proved 2000 April 15 *) image[PS,complement[FINITE]] := complement[FINITE] (* derived 2004 August 8 in UP-PC.NB *) image[PS,complement[set[0]]] := intersection[complement[range[SINGLETON]],complement[set[0]]] (* added 2000 June 2 based on Q-S.NB *) image[PS,FINITE] := complement[set[0]] (* derived 2008 March 4 in IM-PS-S.NB *) image[PS,image[S,x_]] := image[PS,x] (* added 2000 May 25 based on K.NB *) image[PS,P[x_]] := complement[set[0]] (* derived 2008 July 15 in H-RUS.NB *) image[PS,REGULAR] := complement[set[0]] (* added 2000 May 16 based on K-SR.NB *) image[PS,set[0]] := complement[set[0]] (* added 2000 September 29 based on VS-K-IN.NB *) image[PS,set[x_]] := intersection[complement[set[x]],image[S,set[x]]] (* added 2002 May 2 based on IMAGE-Q.NB *) IMAGE[Q] := union[cart[set[0],set[0]], cart[set[set[0]],set[set[0]]]] (* Theorem DK-Q in DEDEKIND proved 2000 May 26 *) image[Q,DEDEKIND] := DEDEKIND (* Theorem FIN-Q-1 in FINITE proved 2000 April 28 *) image[Q,FINITE] := FINITE (* added 2001 December 17 based on Q-HAT.NB *) image[Q,fix[CARD]] := image[Q,OMEGA] (* derived 2007 July 8 in FP-Q-K.NB *) image[Q,fix[composite[Q,K]]] := fix[composite[Q,K]] (* derived 2008 May 17 in FIX-WO.NB *) image[Q,image[IMAGE[inverse[DUP]],WO]] := image[IMAGE[inverse[DUP]],WO] (* derived 2007 December 19 in ACL-FUND.NB *) image[Q,image[inverse[S],omega]] := FINITE (* derived 2008 January 5 in SMALLER.NB *) image[Q,image[inverse[SMALLER],x_]] := image[inverse[SMALLER],x] (* derived 2005 February 20 in CARD-TWO.NB *) image[Q,image[PAIRSET,Di]] := image[PAIRSET,Di] (* added 2000 June 12 based on Q.NB *) image[Q,image[Q,x_]] := image[Q,x] (* derived 2008 January 5 in SMALLER.NB *) image[Q,image[SMALLER,x_]] := image[SMALLER,x] (* Theorem FIN-Q-OM in FINITE proved 2000 April 30 *) image[Q,omega] := FINITE (* derived 2006 August 16 in OL-SU-OM.NB *) image[Q,P[omega]] := image[Q,succ[omega]] (* Theorem Q-RA-SG2 in Q proved 2000 April 27 *) image[Q,range[SINGLETON]] := range[SINGLETON] (* Theorem Q-0-IM in Q proved 2000 April 27 *) image[Q,set[0]] := set[0] (* derived 2006 August 17 in CTBL-U.NB *) image[Q,set[even]] := image[Q,set[omega]] (* derived 2006 August 17 in CTBL-U.NB *) image[Q,set[odd]] := image[Q,set[omega]] (* added 2001 November 22 based on VS-Q.NB *) image[Q,set[set[0]]] := range[SINGLETON] (* derived 2003 December 22 in LOW-CARD.NB *) image[Q,set[succ[set[0]]]] := image[PAIRSET,Di] (* derived 2008 November 26 in AP-QUAGP.NB *) image[quasigp[x_],cart[set[y_],set[z_]]] := set[APPLY[quasigp[x],PAIR[y,z]]] (* derived 2008 October 18 in QG-RL.NB *) image[quasigp[x_],cart[set[y_],V]] := intersection[image[V,intersection[range[quasigp[x]],set[y]]],range[quasigp[x]]] (* derived 2008 October 18 in QG-RL.NB *) image[quasigp[x_],cart[V,set[y_]]] := intersection[image[V,intersection[range[quasigp[x]],set[y]]],range[quasigp[x]]] (* derived 2008 October 9 in QUASIGP.NB *) image[quasigp[x_],cart[V,V]] := range[quasigp[x]] (* derived 2004 August 27 in IVR-TRV.NB *) image[x_,range[iterate[x_,y_]]] := image[trv[x],y] (* added 2001 August 12 based on RANK-1.NB *) image[RANK,FULL] := OMEGA (* derived 2004 February 3 in FIN-RANK.NB *) image[RANK,H[FINITE]] := omega (* derived 2007 December 8 in IMGIDREG.NB *) image[RANK,image[TC,x_]] := image[RANK,x] (* derived 2007 July 4 in IMAGRANK.NB *) image[RANK,intersection[OMEGA,x_]] := intersection[OMEGA,x] (* derived 2003 December 20 in RK-TC-3.NB *) image[RANK,intersection[REGULAR,x_]] := image[RANK,x] (* derived 2007 December 8 in RANK-ORD.NB *) image[RANK,nat[x_]] := nat[x] (* derived 2004 February 3 in FIN-RANK.NB *) image[RANK,omega] := omega (* added 2001 August 1 based on RK-TC.NB *) image[RANK,OMEGA] := OMEGA (* derived 2007 July 4 in IMAGRANK.NB *) image[RANK,ord[x_]] := ord[x] (* derived 2007 December 8 in IMGIDREG.NB *) image[RANK,P[omega]] := succ[omega] (* derived 2007 July 4 in IMAGRANK.NB *) image[RANK,P[OMEGA]] := OMEGA (* derived 2007 December 8 in RANK-ORD.NB *) image[RANK,P[ord[x_]]] := succ[ord[x]] (* derived 2007 August 6 in RK-RA-OL.NB *) image[RANK,range[ordlist[x_]]] := range[ordlist[x]] (* added 2001 July 12 based on RANK-1.NB *) image[RANK,set[x_]] := set[rank[x]] (* derived 2007 December 8 in IMGIDREG.NB *) image[RANK,succ[omega]] := succ[omega] (* derived 2007 December 8 in RANK-ORD.NB *) image[RANK,succ[ord[x_]]] := succ[ord[x]] (* added 2001 August 30 based on BC-BA-RC.NB *) image[RC[x_],image[RC[x_],y_]] := intersection[y,image[V,set[x]],P[x]] (* added 2001 August 30 based on RC.NB *) image[RC[x_],intersection[y_,P[x_]]] := image[RC[x],y] (* derived 2008 March 20 in RC-OM.NB *) image[RC[omega],intersection[omega,complement[set[0]]]] := intersection[complement[set[omega]],image[RC[omega],omega]] (* added 2002 May 14 based on IND-C.NB *) image[RC[omega],invar[SUCC]] := succ[omega] (* derived 2004 October 12 in CMPCT-OM.NB *) image[RC[omega],succ[omega]] := union[image[RC[omega],omega],set[0]] (* added 2003 June 22 based on HULL-RC.NB *) image[RC[x_],P[y_]] := intersection[image[S,set[intersection[x,complement[y]]]], image[V,set[x]],P[x]] (* added 1999 October 29 based on RC-VS.LOG *) image[RC[x_],set[y_]] := intersection[complement[image[V,intersection[y,complement[x]]]], image[V,set[x]],image[V,set[y]],set[intersection[x,complement[y]]]] (* derived 2007 May 8 in FINITE.NB *) image[RCF,FINITE] := intersection[FINITE,range[RCF]] (* added 2002 February 3 based on RCF.NB *) image[RCF,set[x_]] := intersection[image[V,set[x]],set[RC[x]]] (* Theorem REG-IM in REG2 proved 1999 March 15 *) image[REGULAR,x_] := intersection[REGULAR,image[V,intersection[REGULAR,x]]] (* Theorem IMG-REG2 in IMG2 proved 1999 March 15 *) IMAGE[REGULAR] := cart[P[U[DESCENDING]],set[0]] (* added 2003 May 30 based on RESTRICT.NB *) image[RESTRICT,x_] := image[COMPOSE,cart[x,P[Id]]] (* added 2001 January 20 based on RIF-2.NB *) image[RIF,x_] := composite[FIRST,intersection[x, composite[inverse[SECOND],FIRST]],inverse[SECOND]] (* added 1999 August 16 based on session IM-L-R *) image[RIGHT[x_],y_] := cart[y,set[x]] (* new PairV rules added 1998 January 24 *) image[RightPairV,set[x_]] := intersection[set[pair[x,V]], image[V,set[x]]] (* added 1999 September 3 based on ROTATE.2 *) image[ROT,x_] := rotate[x] (* added 1999 October 12 based on ROT.3 *) image[rotate[x_],y_] := range[fix[composite[inverse[FIRST],y,x]]] (* added 1999 November 27 based on VS-ROT-E.LOG *) IMAGE[rotate[E]] := composite[BIGCUP,IMAGE[IMG],IMAGE[cross[Id,SINGLETON]]] (* see IMG-SR in IMG2.DEM *) IMAGE[S] := cart[set[0],set[0]] (* added 2003 February 25 based on Z.NB *) image[S,cliques[x_]] := V (* derived 2005 March 26 in U-CMPCT.NB *) image[S,COMPACT] := V (* added 2003 October 15 based on ACYCLIC.NB *) image[S,complement[ACYCLIC]] := complement[ACYCLIC] (* derived 2008 January 15 in IMS-C.NB *) image[S,complement[ANTISYM]] := complement[ANTISYM] (* derived 2008 January 15 in IMS-BIJ.NB *) image[S,complement[BIJ]] := complement[BIJ] (* derived 2007 September 3 in CHN-SQR.NB *) image[S,complement[chains[x_]]] := complement[chains[x]] (* derived 2007 September 3 in CHN-SQR.NB *) image[S,complement[cliques[x_]]] := complement[cliques[x]] (* derived 2008 January 15 in IMS-C.NB *) image[S,complement[CONST]] := complement[CONST] (* derived 2008 January 15 in IMS-C.NB *) image[S,complement[DEDEKIND]] := complement[DEDEKIND] (* derived 2008 January 6 in SUBVAR.NB *) image[S,complement[DESCENDING]] := complement[P[fix[E]]] (* added 2000 April 5 based on FIN-HER.LOG *) image[S,complement[FINITE]] := complement[FINITE] (* derived 2008 July 13 in FP-DJINV.NB *) image[S,complement[fix[composite[DISJOINT,INVERSE]]]] := complement[fix[composite[DISJOINT,INVERSE]]] (* derived 2007 December 10 in FUND.NB *) image[S,complement[FUND]] := complement[FUND] (* added 1999 December 25 based on FUNS.NB *) image[S,complement[FUNS]] := complement[FUNS] (* added 1999 December 25 based on IM-DJ.NB *) image[S,complement[image[DISJOINT,x_]]] := complement[image[DISJOINT,x]] (* added 2003 October 15 based on ACYCLIC.NB *) image[S,complement[image[inverse[HULL[TRV]],P[x_]]]] := complement[image[inverse[HULL[TRV]],P[x]]] (* added 2000 January 8 based on FUNS.NB *) image[S,complement[image[inverse[IMAGE[id[cart[V,V]]]],FUNS]]] := complement[image[inverse[IMAGE[id[cart[V,V]]]],FUNS]] (* added 1999 December 25 based on HERED.NB *) image[S,complement[image[inverse[S],x_]]] := complement[image[inverse[S],x]] (* derived 2008 January 15 in IMS-C.NB *) image[S,complement[image[ZN,x_]]] := complement[image[ZN,x]] (* derived 2008 September 17 in IMS-C-OM.NB *) image[S,complement[omega]] := complement[succ[set[0]]] (* derived 2007 May 17 in CORE-ON.NB *) image[S,complement[OMEGA]] := complement[succ[set[0]]] (* Theorem SR-IM-E in SR3 proved 1998 October 6 *) image[S,complement[P[x_]]] := complement[P[x]] image[S,complement[REGULAR]] := complement[REGULAR] (* added 1999 December 25 based on HERED.NB *) image[S,complement[set[x_]]] := union[complement[set[0]],image[V,x]] (* derived 2008 January 6 in SUBVAR.NB *) image[S,complement[subvar[x_]]] := complement[P[fix[x]]] (* derived 2008 January 6 in SUBVAR.NB *) image[S,complement[SYM]] := complement[P[Id]] (* derived 2007 November 29 in WF-IDX-E.NB *) image[S,complement[WF]] := complement[WF] (* added 2000 June 2 based on DK-C3.NB *) image[S,DEDEKIND] := V (* derived 2004 September 24 in COREDESC.NB *) image[S,DESCENDING] := V (* added 2000 June 2 based on Q-S.NB *) image[S,FINITE] := V (* added 2002 November 21 based on UCLFPIMG.NB *) image[S,fix[IMAGE[x_]]] := V (* From session REPLACE1.LOG added 1999 February 18 *) image[S,FULL] := V (* added 2001 November 20 based on FIX-FUNP.NB *) image[S,FUNS] := V (* derived 2008 August 7 in FIN-PP1.NB *) image[S,image[BIGCUP,x_]] := image[inverse[POWER],image[S,x]] (* derived 2008 January 5 in COARSER.NB *) image[S,image[COARSER,x_]] := image[S,x] (* added 1999 December 21 based on IMAGEROT.NB *) image[S,image[CUP,cart[x_,y_]]] := intersection[image[S,x],image[S,y]] (* added 1998 November 10 *) image[S,image[DISJOINT,x_]] := image[V,x] (* derived 2007 March 2 in LD-1.NB *) image[S,image[DIV,x_]] := image[V,intersection[omega,x]] (* derived 2008 August 7 in FIN-PP1.NB *) image[S,image[inverse[POWER],image[S,x_]]] := image[inverse[POWER],image[S,x]] (* added 1998 August 16. Corollary of SR-CO7 and CO-IM7 *) image[S,image[inverse[S],x_]] := image[V,x] (* added 2000 December 9 based on REPLACE.NB *) image[S,image[PAIRSET,x_]] := complement[cliques[complement[x]]] (* derived 2008 March 4 in IM-PS-S.NB *) image[S,image[PS,x_]] := image[PS,x] (* SR-IM-3A in SR3 *) image[S,image[S,x_]] := image[S,x] image[S,image[SINGLETON,x_]] := complement[P[complement[x]]] (* derived 2008 January 5 in SMALLER.NB *) image[S,image[SMALLER,x_]] := image[SMALLER,x] (* derived 2007 December 10 in IM-HC-TC.NB *) image[S,image[TC,x_]] := image[inverse[HC],image[S,x]] (* derived 2008 March 1 in WO-RS-S.NB *) image[S,intersection[complement[fix[composite[E,BIGCAP]]],complement[set[0]]]] := complement[fix[image[inverse[CART],image[inverse[IMAGE[id[S]]],WO]]]] (* derived 2007 December 10 in FUND.NB *) image[S,intersection[DESCENDING,complement[set[0]]]] := complement[FUND] (* derived 2008 September 17 in TUKEY.NB *) image[S,intersection[FINITE,complement[ANTISYM]]] := complement[ANTISYM] (* derived 2008 September 17 in TUKEY.NB *) image[S,intersection[FINITE,complement[BIJ]]] := complement[BIJ] (* derived 2008 January 2 in FINCHR-1.NB *) image[S,intersection[FINITE,complement[chains[x_]]]] := complement[chains[x]] (* derived 2008 January 2 in FINCHR-1.NB *) image[S,intersection[FINITE,complement[cliques[x_]]]] := complement[cliques[x]] (* derived 2008 September 17 in TUKEY.NB *) image[S,intersection[FINITE,complement[CONST]]] := complement[CONST] (* derived 2008 January 2 in FINCHR-1.NB *) image[S,intersection[FINITE,complement[FUNS]]] := complement[FUNS] (* derived 2008 September 18 in FIN-P-OM.NB *) image[S,intersection[FINITE,complement[omega]]] := complement[succ[set[0]]] (* derived 2008 September 18 in FIN-P-OM.NB *) image[S,intersection[FINITE,complement[OMEGA]]] := complement[succ[set[0]]] (* derived 2008 January 2 in FINCHR-1.NB *) image[S,intersection[FINITE,complement[P[x_]]]] := complement[P[x]] (* derived 2008 September 17 in TUKEY.NB *) image[S,intersection[FINITE,complement[range[SINGLETON]],complement[set[0]]]] := intersection[complement[range[SINGLETON]],complement[set[0]]] (* derived 2008 January 2 in FINCHR-1.NB *) image[S,intersection[FINITE,complement[REGULAR]]] := complement[REGULAR] (* derived 2004 April 25 in STRANGE.NB *) image[S,intersection[image[S,x_],Uclosure[x_]]] := image[S,x] (* added 2003 October 15 based on ACYCLIC.NB *) image[S,intersection[x_,P[y_]]] := image[inverse[IMAGE[id[y]]],image[S,x]] (* see: IVR-IMSR session 1999 January 10 *) image[S,invar[x_]] := V (* derived 2007 May 31 in IMS-ORD.NB *) image[S,nat[x_]] := image[V,nat[x]] (* derived 2005 November 2 in S-RS.NB *) image[S,omega] := V (* added 2000 December 30 based on LUB.NB *) image[S,OMEGA] := V (* derived 2007 May 31 in IMS-ORD.NB *) image[S,ord[x_]] := image[V,ord[x]] (* Corollary SR-IM-PC in SR/1 proved 1998 May 14 *) image[S,P[x_]] := V (* derived 2003 December 28 in PTCLOSED.NB *) image[S,PointClosed] := V (* derived 2007 September 3 in CLQ-PC.NB *) image[S,range[CLIQUES]] := complement[P[complement[set[0]]]] (* added 2000 September 28 based on CROSS.NB *) image[S,range[CROSS]] := V (* added 1999 October 17 based on STRANGE.1 *) image[S,range[PAIRSET]] := complement[set[0]] (* Theorem POW-RA11 in POW5 proved 1999 January 21 *) image[S,range[POWER]] := complement[P[complement[set[0]]]] image[S,range[SINGLETON]] := complement[set[0]] (* Theorem REG-IMS in REG2 proved 1999 March 15 *) image[S,REGULAR] := V (* derived 2004 November 2 in SELECT.NB *) image[S,SELECT] := V (* special case of SR-IM-PC when x = 0 *) image[S,set[0]] := V (* Theorem SP-SR-PC in SP3 proved 1999 January 19 *) image[S,set[complement[P[x_]]]] := complement[image[V,complement[x]]] (* Theorem SR-SS-SS in SR-C proved 1998 October 17 *) image[S,set[set[x_]]] := union[complement[image[V,set[x]]], complement[P[complement[set[x]]]]] (* derived 2004 September 24 in COREDESC.NB *) image[S,subvar[x_]] := V (* added 2001 October 23 based on TOPS.NB *) image[S,succ[set[0]]] := V (* derived 2003 December 27 in T1.NB *) image[S,T1] := V (* derived 2003 December 30 in T2.NB *) image[S,T2] := V (* added 2001 September 30 based on ACL-1.NB *) image[S,Uclosure[x_]] := V (* Theorem 2ND-IM-2 *) image[SECOND,x_] := range[x] (* derived 2008 November 26 in AP-SEMGP.NB *) image[semigp[x_],cart[set[y_],set[z_]]] := set[APPLY[semigp[x],PAIR[y,z]]] (* derived 2008 October 19 in SEMIGP.NB *) image[semigp[x_],cart[V,V]] := range[semigp[x]] (* derived 2005 January 11 in FIN-SET.NB *) image[x_,set[y_,z__]] := union[image[x,set[y]],image[x,set[z]]] (* derived 2004 April 10 in UP-RULES.NB *) image[set[x_,y_],z_] := union[intersection[image[V,intersection[z,set[first[x]]]],set[second[x]]], intersection[image[V,intersection[z,set[first[y]]]],set[second[y]]]] (* added 2001 November 27 based on IM-SS.NB *) image[set[x_],y_] := intersection[image[V,intersection[y,set[first[x]]]],set[second[x]]] (* added 2001 November 27 based on IM-SS.NB *) image[set[pair[x_,y_]],z_] := intersection[image[V,intersection[z,set[x]]],set[y]] (* added 1999 October 5 based on SGIMCPSS.LOG *) image[SINGLETON,cart[set[x_],set[y_]]] := intersection[image[V,set[x]],image[V,set[y]],set[cart[set[x],set[y]]]] image[SINGLETON,REGULAR] := intersection[REGULAR,range[SINGLETON]] (* 1998 August 25 *) image[SINGLETON,set[x_]] := intersection[set[set[x]],image[V,set[x]]] (* derived 2005 January 11 in SET-SUCC.NB *) image[SINGLETON,succ[set[0]]] := succ[set[set[0]]] (* derived 2008 January 5 in SMALLER.NB *) image[SMALLER,COMPACT] := complement[set[0]] (* derived 2008 January 5 in SMALLER.NB *) image[SMALLER,FINITE] := complement[set[0]] (* derived 2008 January 5 in SMALLER.NB *) image[SMALLER,image[Q,x_]] := image[SMALLER,x] (* derived 2008 January 5 in SMALLER.NB *) image[SMALLER,image[S,x_]] := image[SMALLER,x] (* derived 2008 January 5 in SMALLER.NB *) image[SMALLER,omega] := complement[set[0]] (* derived 2008 January 5 in SMALLER.NB *) image[SMALLER,OMEGA] := complement[set[0]] (* derived 2008 January 5 in SMALLER.NB *) image[SMALLER,P[x_]] := complement[set[0]] (* derived 2004 April 6 in SMALLER.NB *) image[SMALLER,set[0]] := complement[set[0]] (* added 2002 December 27 based on SBCOMMUT.NB *) image[SUBCOMMUTE,set[x_]] := intersection[image[V,set[x]],subcommutant[x]] (* derived 2008 June 21 in IM-SBV.NB *) image[SUBVAR,EQV] := range[POWER] (* derived 2004 December 23 in RA-SBV.NB *) image[SUBVAR,P[Id]] := range[POWER] (* derived 2008 June 21 in IM-SBV.NB *) image[SUBVAR,PO] := range[POWER] (* derived 2007 October 30 in PROJ-SBV.NB *) image[SUBVAR,PROJ] := range[POWER] (* derived 2008 June 21 in IM-SBV.NB *) image[SUBVAR,RFX] := range[POWER] (* added 2000 February 15 based on SUBVAR2.LOG *) image[SUBVAR,set[x_]] := intersection[image[V,set[x]],set[subvar[x]]] (* derived 2006 March 1 in ACY-FIN.NB *) image[SUBVAR,WF] := set[set[0]] (* derived 2006 August 15 in EVEN-ODD.NB *) image[SUCC,even] := odd (* derived 2006 March 12 in FIN-SUC.NB *) image[SUCC,FINITE] := intersection[FINITE,range[SUCC]] (* derived 2006 March 12 in FIN-SUC.NB *) image[SUCC,image[inverse[IMAGE[id[x_]]],FINITE]] := intersection[image[inverse[IMAGE[id[x]]],FINITE],range[SUCC]] (* added 2002 June 13 based on ITOMSUCC.NB *) image[SUCC,intersection[omega,x_]] := intersection[omega,image[SUCC,x]] (* derived 2005 February 17 in X3741-49.NB *) image[SUCC,nat[x_]] := intersection[complement[set[0]],succ[nat[x]]] (* Theorem OM-SUC-6 in OM3 *) image[SUCC,omega] := intersection[omega,complement[set[0]]] (* revised 2003 June 1 based on REPLACE.NB *) image[SUCC,OMEGA] := intersection[OMEGA,complement[fix[BIGCUP]]] (* added 2002 April 18 based on SUCC.NB *) image[SUCC,REGULAR] := intersection[REGULAR,range[SUCC]] (* Theorem SUC-AP2 in SUC-REL proved 1999 October 3 *) image[SUCC,set[x_]] := set[succ[x]] (* derived 2007 May 22 in SU-OM.NB *) image[SUCC,U[nat[x_]]] := intersection[complement[set[0]],nat[x]] (* Theorem SW-IM-2 in SW3 *) image[SWAP,x_] := inverse[x] (* added 2000 January 5 based on APSYMDIF.NB *) image[SYMDIF,x_] := image[DIF,composite[CAP,id[x],inverse[CUP]]] (* added 1999 December 2 based on SYMDIF-4.NB *) image[SYMDIF,cart[set[0],x_]] := x (* added 1999 December 2 based on SYMDIF-4.NB *) image[SYMDIF,cart[x_,set[0]]] := x (* added 1999 December 2 based on SYMDIF-2.NB *) image[SYMDIF,cart[set[x_],set[y_]]] := intersection[image[V,set[x]],image[V,set[y]], set[union[intersection[x,complement[y]],intersection[y,complement[x]]]]] (* added 1999 December 24 based on SYMDIF-2.NB *) image[SYMDIF,cart[set[x_],V]] := image[V,set[x]] (* added 1999 December 24 based on SYMDIF-2.NB *) image[SYMDIF,cart[V,set[x_]]] := image[V,set[x]] (* added 1999 December 23 based on SYMDIF.NB *) image[SYMDIF,composite[Id,x_]] := image[SYMDIF,x] (* added 1999 December 7 based on RESTRICT.NB *) image[SYMDIF,DISJOINT] := V (* added 1999 December 2 based on SYMDIF-4.NB *) image[SYMDIF,Id] := set[0] (* added 1999 December 2 based on SYMDIF-4.NB *) image[SYMDIF,id[x_]] := intersection[image[V,x],set[0]] (* added 1999 December 2 based on SYMDIF-4.NB *) image[SYMDIF,inverse[x_]] := image[SYMDIF,x] (* added 1999 December 7 based on RESTRICT.NB *) image[SYMDIF,S] := V (* derived 2007 December 10 in IM-HC-TC.NB *) image[TC,complement[P[x_]]] := intersection[FULL,complement[P[x]]] (* added 2001 March 31 based on HF.NB *) image[TC,FULL] := FULL (* derived 2007 December 8 in IMGIDREG.NB *) image[TC,H[FULL]] := H[FULL] (* derived 2008 July 15 in H-RUS.NB *) image[TC,H[RUSSELL]] := intersection[FULL,H[RUSSELL]] (* derived 2007 December 4 in IM-HC-TC.NB *) image[TC,image[HC,x_]] := image[HC,x] (* added 2003 January 18 based on HC-TC-OM.NB *) image[TC,image[inverse[S],omega]] := omega (* derived 2007 December 8 in IMGIDREG.NB *) image[TC,image[RANK,x_]] := image[RANK,x] (* derived 2007 December 10 in IM-HC-TC.NB *) image[TC,image[S,x_]] := intersection[FULL,image[S,x]] (* derived 2007 December 4 in IM-HC-TC.NB *) image[TC,image[TC,x_]] := image[TC,x] (* derived 2007 December 8 in IMGIDREG.NB *) image[TC,intersection[FULL,x_]] := intersection[FULL,x] (* added 2003 January 18 based on HC-TC-OM.NB *) image[TC,omega] := omega (* added 2001 August 1 based on RK-TC.NB *) image[TC,OMEGA] := OMEGA (* derived 2005 December 6 in ORDINAL.NB *) image[TC,ord[x_]] := ord[x] (* derived 2007 December 8 in IMGIDREG.NB *) image[TC,P[H[x_]]] := intersection[FULL,P[x]] (* derived 2007 December 8 in IMGIDREG.NB *) image[TC,P[omega]] := succ[omega] (* added 2002 May 4 based on HC-OMEGA.NB *) image[TC,P[OMEGA]] := OMEGA (* derived 2007 December 8 in RANK-ORD.NB *) image[TC,P[ord[x_]]] := succ[ord[x]] (* added 2001 August 16 based on TC-REG.NB *) image[TC,REGULAR] := intersection[FULL,REGULAR] (* Theorem TC-VS in TC3 proved 2001 January 4 *) image[TC,set[x_]] := set[tc[x]] (* derived 2007 December 8 in IMGIDREG.NB *) image[TC,succ[omega]] := succ[omega] (* derived 2007 September 4 in U-CHAINS.NB *) image[thinpart[ZN],OMEGA] := REGULAR (* derived 2005 November 19 in REGULAR.NB *) image[thinpart[ZN],REGULAR] := REGULAR (* derived 2006 August 13 in REPLACE.NB *) image[times[x_],domain[iterate[iterate[SUCC,set[x_]],set[0]]]] := image[DIV,set[x]] (* derived 2007 April 12 in LD-4.NB *) image[times[x_],image[DIV,set[y_]]] := image[DIV,set[natmul[x,y]]] (* derived 2007 April 12 in LD-4.NB *) image[times[x_],ld[y_,z_]] := ld[natmul[x,y],natmul[x,z]] (* derived 2006 September 23 in TIMES.NB *) image[TIMES,set[x_]] := intersection[image[V,intersection[omega,set[x]]],set[times[x]]] (* derived 2005 July 17 in TIMES.NB *) image[times[x_],set[y_]] := set[natmul[x,y]] (* derived 2005 October 22 in TO-C.NB *) image[to[x_],complement[fix[to[x_]]]] := 0 (* derived 2006 January 17 in PO-RS.NB *) image[to[x_],image[to[x_],y_]] := image[to[x],y] (* derived 2008 March 20 in IVR-VSTO.NB *) image[to[x_],intersection[complement[set[y_]],image[to[x_],set[y_]]]] := intersection[complement[set[y]],image[to[x],set[y]]] (* derived 2008 March 13 in TO-RULES.NB *) image[to[x_],intersection[y_,fix[to[x_]]]] := image[to[x],y] (* derived 2004 March 21 in TRV-WRAP.NB *) image[trv[cross[Id,x_]],composite[Id,y_]] := composite[trv[x],y] (* added 2003 October 7 based on WF-IND.NB *) image[trv[x_],image[trv[x_],y_]] := image[x,image[trv[x],y]] (* derived 2004 March 23 in TRV-K.NB *) image[trv[K],set[0]] := intersection[FINITE,complement[set[0]]] (* derived 2005 January 29 in TRV-SUCC.NB *) image[trv[SUCC],set[0]] := intersection[omega,complement[set[0]]] (* revised 2001 January 19 based on TWIST-1.NB *) image[TWIST,x_] := twist[x] (* added 2002 November 2 based on TWIST-IM.NB *) image[twist[x_],y_] := composite[SECOND, intersection[x,composite[inverse[FIRST],y,FIRST]],inverse[SECOND]] (* Theorem TW-X in TWIST proved 2000 August 6 *) image[TWIST,cart[x_,y_]] := cross[x,y] (* Theorem TW-IM-X in TWIST proved 2000 August 6 *) image[TWIST,cross[x_,y_]] := cart[composite[Id,x],composite[Id,y]] (* Theorem SBV-SC2 proved 2000 March 10 *) image[x_,U[subvar[x_]]] := U[subvar[x]] (* added 2003 September 29 based on WF.NB *) image[x_,U[subvar[trv[x_]]]] := U[subvar[trv[x]]] (* added 2001 October 20 based on UB-LB.NB *) image[UB[x_],complement[P[y_]]] := image[x,complement[y]] (* derived 2004 February 14 in LUB-SET.NB *) image[UB[x_],complement[set[0]]] := range[x] (* derived 2004 March 30 in CO-ES-ID.NB *) image[UB[x_],image[S,y_]] := image[UB[x],y] (* derived 2007 February 10 in EX-8.NB *) image[UB[x_],intersection[complement[FUNS],P[cart[V,V]]]] := fix[composite[x,cross[Id,Di],inverse[x]]] (* derived 2007 February 10 in EX-8.NB *) image[UB[x_],intersection[complement[image[INVERSE,FUNS]],P[cart[V,V]]]] := fix[composite[x,cross[Di,Id],inverse[x]]] (* added 2000 December 24 based on LT-CO-S *) image[UB[x_],P[y_]] := V (* derived 2006 March 26 in IMIN-REG.NB *) image[UB[x_],REGULAR] := V (* derived 2004 February 19 in REPLACE2.NB *) image[UB[x_],set[y_]] := intersection[image[V,set[y]],ub[x,y]] (* derived 2008 July 5 in UBD-DEFN.NB *) image[UBD,set[x_]] := intersection[image[V,set[x]],set[domain[UB[x]]]] (* derived 2007 September 26 in UCH-ORD.NB *) image[UCHAINS,chains[S]] := image[UCLOSURE,chains[S]] (* derived 2007 September 26 in IMIN-UCH.NB *) image[UCHAINS,FINITE] := intersection[FINITE,range[UCHAINS]] (* derived 2007 September 26 in UCH-ORD.NB *) image[UCHAINS,OMEGA] := intersection[OMEGA,complement[fix[BIGCUP]]] (* derived 2007 September 26 in IMIN-UCH.NB *) image[UCHAINS,REGULAR] := intersection[REGULAR,range[UCHAINS]] (* derived 2007 June 25 in UCH-HULL.NB *) image[UCHAINS,set[x_]] := set[Uchains[x]] (* revised 2003 May 24 based on TOP-BASE.NB *) image[UCLOSURE,binclosed[CAP]] := TOPS (* derived 2008 November 8 in UCL-CLIQ.NB *) image[UCLOSURE,chains[S]] := intersection[chains[S],fix[UCLOSURE]] (* derived 2008 November 8 in UCL-CLIQ.NB *) image[UCLOSURE,cliques[COMMUTE]] := intersection[cliques[COMMUTE],fix[UCLOSURE]] (* derived 2004 January 8 in FIN-FU.NB *) image[UCLOSURE,FINITE] := intersection[FINITE,fix[UCLOSURE]] (* added 2002 February 9 based in UCL-FULL.NB *) image[UCLOSURE,FULL] := intersection[FULL,fix[UCLOSURE]] (* added 2003 March 18 based on UCL-IMSG *) image[UCLOSURE,image[SINGLETON,x_]] := image[ADJOIN[set[0]],image[SINGLETON,x]] (* derived 2004 December 23 in UCLA-SBV.NB *) image[UCLOSURE,image[SUBVAR,x_]] := image[SUBVAR,x] (* derived 2004 October 12 in CMPCT-OM.NB *) image[UCLOSURE,omega] := intersection[omega,complement[set[0]]] (* derived 2003 December 24 in UCL-ON.NB *) image[UCLOSURE,OMEGA] := intersection[OMEGA,complement[fix[BIGCUP]]] (* added 2003 March 16 based on CORE-UCL.NB *) image[UCLOSURE,P[P[x_]]] := intersection[fix[UCLOSURE],P[P[x]]] (* added 2001 September 23 based on IM-BC.NB *) image[UCLOSURE,range[POWER]] := range[POWER] (* added 2003 March 18 based on UCL-IMSG *) image[UCLOSURE,range[SINGLETON]] := image[ADJOIN[set[0]],range[SINGLETON]] (* derived 2006 March 30 in REG-ACL.NB *) image[UCLOSURE,REGULAR] := intersection[REGULAR,fix[UCLOSURE]] (* added 2001 October 2 based on REPLACE.NB *) image[UCLOSURE,set[x_]] := set[Uclosure[x]] (* derived 2003 December 27 in T1.NB *) image[UCLOSURE,T1] := intersection[T1,fix[UCLOSURE]] (* derived 2003 December 30 in T2.NB *) image[UCLOSURE,T2] := intersection[T2,fix[UCLOSURE]] (* added 2003 April 10 based on TOP-BASE.NB *) image[UCLOSURE,TOPS] := TOPS (* Theorem IM-6C in IM2 *) image[z_,union[x_,y_]] := union[image[z,x],image[z,y]] (* Theorem IM-6D in IM2 *) image[union[x_,y_],z_] := union[image[x,z],image[y,z]] (* derived 2004 December 20 in IMG-U.NB *) IMAGE[union[x_,y_]] := composite[CUP,intersection[composite[inverse[FIRST],IMAGE[x]],composite[inverse[SECOND],IMAGE[y]]]] (* Theorem IN-5A in IM2 *) image[x_,V] := range[x] (* related to IMG-V in IMG2.DEM *) IMAGE[V] := cart[set[0],set[0]] (* various non-empty classes *) (* revised 2003 September 7 based on FIX-HULL.NB *) image[V,Aclosure[x_]] := image[V,x] (* derived 2008 October 24 in JOIN-FP.NB *) image[V,APPLY[JOIN,PAIR[list[x_],list[y_]]]] := union[image[V,list[x]],image[V,list[y]]] (* Theorem BC-IM-V in BIGCUP/BC proved 1998 July 5 *) image[V,BIGCUP] := V (* added 1996 June 29 Theorem IM-V-I in IM2 proved 1998 July 4 *) image[V,cart[x_,y_]] := intersection[image[V,x],image[V,y]] (* Theorem SP-C-A-V in SP3 proved 1998 July 5 *) image[V,complement[A[x_]]] := image[V,x] (* added 2003 October 28 based on APPLY.NB *) image[V,complement[APPLY[x_,y_]]] := image[V,intersection[domain[x],set[y]]] image[V,complement[cart[x_,y_]]] := V (* Corollary SR-0-IM3 in SR1 proved 1998 August 17 *) image[V,complement[image[S,x_]]] := complement[image[V,intersection[set[0],x]]] image[V,complement[P[x_]]] := image[V,complement[x]] (* derived 2004 December 15 in LB-UB-RS.NB *) image[V,complement[setpart[x_]]] := V (* Corollary SC-4-IMV proved 1998 July 17 in SC1 *) image[V,complement[set[x_]]] := V (* added 1996 June 29 *) image[V,composite[x_,y_]] := image[V,intersection[domain[x],range[y]]] (* derived 2007 May 7 in IMV-SET.NB *) image[V,core[x_,y_]] := image[V,intersection[x,complement[set[0]],P[y]]] (* Theorem X-IMV proved 1998 October 14 *) image[V,cross[x_,y_]] := intersection[image[V,domain[x]],image[V,domain[y]]] (* Theorem DI-0 in DI added 1998 July 2 *) image[V,Di] := V image[V,DISJOINT] := V (* derived 2008 October 8 in BINOP-0.NB *) image[V,domain[binop[x_]]] := image[V,binop[x]] (* derived 2008 October 8 in BINOP-0.NB *) image[V,domain[funpart[x_]]] := image[V,funpart[x]] (* derived 2008 October 8 in BINOP-0.NB *) image[V,domain[oopart[x_]]] := image[V,oopart[x]] (* derived 2008 October 8 in BINOP-0.NB *) image[V,domain[thinpart[x_]]] := image[V,thinpart[x]] (* derived 2008 October 8 in BINOP-0.NB *) image[V,domain[VERTSECT[x_]]] := image[V,VERTSECT[x]] image[V,DUP] := V image[V,E] := V image[V,FIRST] := V (* derived 2008 October 8 in BINOP-0.NB *) image[V,fix[domain[binop[x_]]]] := image[V,binop[x]] (* added 2003 September 7 based on FIX-HULL.NB *) image[V,fix[HULL[x_]]] := image[V,x] (* From session REPLACE1.LOG added 1999 February 18 *) image[V,FULL] := V (* derived 2007 May 7 in IMV-SET.NB *) image[V,hull[x_,y_]] := union[image[V,y],image[V,A[x]]] image[V,id[x_]] := image[V,x] image[V,Id] := V image[V,image[x_,y_]] := image[V,intersection[domain[x],y]] (* derived 2008 October 7 in BNP-WRAP.NB *) image[V,intersection[binop[x_],set[y_]]] := intersection[image[V,intersection[BINOPS,set[x]]],image[V,intersection[x,set[y]]]] (* definition of CL introduced 2005 October 6 in CL.NB *) image[V,intersection[CL,set[x_]]] := intersection[complement[ image[V,intersection[complement[domain[GLB[x]]],P[fix[x]]]]],image[V,intersection[PO,set[x]]]] (* derived 2008 November 18 in INTEGER.NB *) image[V,intersection[complement[cart[V,V]],intadd[x_,y_]]] := union[complement[image[V,intersection[Z,set[x]]]],complement[image[V,intersection[Z,set[y]]]]] (* derived 2008 November 18 in INTEGER.NB *) image[V,intersection[complement[cart[V,V]],intmul[x_,y_]]] := union[complement[image[V,intersection[Z,set[x]]]],complement[image[V,intersection[Z,set[y]]]]] (* added 2001 November 22 based on MISC.NB *) image[V,intersection[x_,complement[image[Di,x_]]]] := image[V,intersection[range[SINGLETON],set[x]]] (* derived 2005 June 17 in DF.NB *) image[V,intersection[complement[nat[x_]],nat[y_]]] := image[V,intersection[nat[y],set[nat[x]]]] (* derived 2007 March 6 in IMV-MOD.NB *) image[V,intersection[complement[x_],natmod[x_,y_]]] := union[intersection[complement[image[V,intersection[omega,set[x]]]],image[V,complement[x]]], intersection[complement[image[V,intersection[omega,set[y]]]],image[V,complement[x]]]] (* added 2002 June 26 based on OMEGA.NB *) image[V,intersection[complement[P[complement[set[0]]]],invar[SUCC], P[complement[set[x_]]]]] := complement[image[V,intersection[omega,set[x]]]] (* derived 2005 February 18 in MUL-NORM.NB *) image[V,intersection[complement[P[complement[set[y_]]]],P[cart[omega,V]], subvar[union[cart[cart[set[0],set[0]],cart[set[0],set[0]]],cross[SUCC,x_]]]]] := image[V,intersection[iterate[x,set[0]],set[y]]] (* derived 2005 October 17 in TO-FIN.NB *) image[V,intersection[complement[P[complement[set[x_]]]],subvar[PS]]] := intersection[complement[image[V,intersection[FINITE,set[x]]]],image[V,set[x]]] image[V,intersection[complement[x_],set[u_]]] := intersection[image[V,set[u]],complement[image[V,intersection[x,set[u]]]]] (* added 2003 September 7 based on FIX-HULL.NB *) image[V,intersection[complement[set[0]],P[x_]]] := image[V,x] image[V,intersection[composite[x_,y_],z_]] := image[V,fix[composite[y,inverse[z],x]]] (* derived 2005 December 8 in REG.NB *) image[V,intersection[DESCENDING,complement[P[complement[set[x_]]]]]] := intersection[complement[image[V,intersection[REGULAR,set[x]]]],image[V,set[x]]] (* derived 2005 February 6 in DESCEND.NB *) image[V,intersection[DESCENDING,set[x_]]] := intersection[complement[image[V,intersection[x,P[complement[x]]]]],image[V,set[x]]] (* derived 2005 October 17 in TO-FIN.NB *) image[V,intersection[fin[x_],set[y_]]] := intersection[image[V,intersection[FINITE,set[x]]],image[V,intersection[x,set[y]]]] (* added 2000 October 24 based on TC.NB *) image[V,intersection[FULL,image[S,set[x_]]]] := image[V,set[x]] (* derived 2005 May 17 in DIVRULES.NB *) image[V,intersection[image[DIV,set[x_]],set[0]]] := image[V,intersection[omega,set[x]]] (* derived 2007 March 6 in MUL-DIV.NB *) image[V,intersection[image[DIV,set[x_]],set[natmul[x_,y_]]]] := intersection[image[V,intersection[omega,set[x]]],image[V,intersection[omega,set[y]]]] (* derived 2007 March 4 in IMV-NAT.NB *) image[V,intersection[image[DIV,set[y_]],set[natsub[x_,natmod[x_,y_]]]]] := intersection[image[V,intersection[omega,set[x]]],image[V,intersection[omega,set[y]]]] image[V,intersection[x_,image[inverse[z_],y_]]] := image[V,intersection[y,image[z,x]]] (* added 1999 December 20 based on CUP-C9.NB *) image[V,intersection[image[S,x_],set[y_]]] := intersection[image[V,intersection[x,P[y]]],image[V,set[y]]] (* derived 2008 August 18 in CL-S.NB *) image[V,intersection[image[S,set[union[y_,core[image[S,set[y_]],x_]]]],P[x_]]] := intersection[complement[image[V,intersection[y,complement[x]]]],image[V,set[x]]] image[V,intersection[inverse[x_],y_]] := image[V,fix[composite[x,y]]] (* definition of list wrapper introduced 2008 October 20 in LIST.NB *) image[V,intersection[list[x_],set[y_]]] := intersection[image[V,intersection[LISTS,set[x]]],image[V,intersection[x,set[y]]]] (* definition of MONOIDS introduced 2008 December 29 in MONOIDS.NB *) image[V,intersection[MONOIDS,set[x_]]] := intersection[image[V,ids[x]], image[V,intersection[ASSOCIATIVE,set[x]]],image[V,intersection[BINOPS,set[x]]]] (* derived 2005 February 18 in MUL-NORM.NB *) image[V,intersection[NATMUL,set[x_]]] := intersection[image[V,intersection[omega,set[first[first[x]]]]], image[V,intersection[iterate[iterate[SUCC,set[first[first[x]]]],set[0]],set[pair[second[first[x]],second[x]]]]]] (* derived 2005 February 18 in MUL-NORM.NB *) image[V,intersection[NATMUL,set[pair[pair[x_,y_],z_]]]] := intersection[image[V,intersection[omega,set[x]]], image[V,intersection[iterate[iterate[SUCC,set[x]],set[0]],set[pair[y,z]]]]] (* added 2002 June 26 based on OMEGA.NB *) image[V,intersection[omega,set[succ[x_]]]] := image[V,intersection[omega,set[x]]] (* added 1999 December 20 based on CUP-C9.NB *) image[V,intersection[P[x_],set[y_]]] := intersection[complement[image[V,intersection[y,complement[x]]]],image[V,set[y]]] (* derived 2005 February 22 in PRIMES.NB *) image[V,intersection[PRIMES,set[x_]]] := image[V,intersection[image[PAIRSET,Di],set[image[inverse[DIV],set[x]]]]] (* definition of quasigp[x] introduced 2008 October 9 in QUASIGP.NB *) image[V,intersection[quasigp[x_],set[y_]]] := intersection[image[V,intersection[BINOPS,set[x]]], image[V,intersection[BINOPS,set[rotate[x]]]], image[V,intersection[BINOPS,set[rotate[composite[x,SWAP]]]]], image[V,intersection[x,set[y]]]] (* definition of QUASIGPS introduced 2008 October 7 in QUASIGPS.NB *) image[V,intersection[QUASIGPS,set[x_]]] := intersection[image[V,intersection[BINOPS,set[x]]], image[V,intersection[BINOPS,set[rotate[composite[x,SWAP]]]]], image[V,intersection[BINOPS,set[rotate[x]]]]] image[V,intersection[REGULAR,complement[set[x_]]]] := V (* derived 2006 March 30 in REG-A.NB *) image[V,intersection[REGULAR,set[A[reg[x_]]]]] := image[V,reg[x]] (* definition of semigp wrapper introduced 2008 October 19 in SEMIGP.NB *) image[V,intersection[semigp[x_],set[y_]]] := intersection[image[V,intersection[ASSOCIATIVE,set[x]]], image[V,intersection[BINOPS,set[x]]],image[V,intersection[x,set[y]]]] (* definition of SEMIGPS introduced 2006 July 8 in SEMIGPS.NB *) image[V,intersection[SEMIGPS,set[x_]]] := intersection[image[V,intersection[ASSOCIATIVE,set[x]]],image[V,intersection[BINOPS,set[x]]]] (* added 2002 October 31 based on REPLACE.NB *) image[V,intersection[x_,y_,set[z_]]] := intersection[image[V,intersection[x,set[z]]],image[V,intersection[y,set[z]]]] (* definition of NATEXP introduced 2006 June 27 in NATEXP-1.NB *) image[V,intersection[set[x_],NATEXP]] := intersection[image[V,intersection[omega,set[first[first[x]]]]], image[V,intersection[iterate[times[first[first[x]]],set[set[0]]],set[pair[second[first[x]],second[x]]]]]] (* added 2003 June 29 based on TWIST.NB *) image[V,intersection[set[x_],twist[y_]]] := image[V,intersection[image[image[y, cart[set[first[first[x]]],set[first[second[x]]]]],set[second[first[x]]]],set[second[second[x]]]]] (* derived 2004 May 4 in REPLACE.NB *) image[V,intersection[set[x_],Uclosure[y_]]] := intersection[ complement[image[V,intersection[x,complement[core[y,x]]]]],image[V,set[x]]] (* derived 2006 December 16 in PLUSTIME.NB *) image[V,intersection[Z,set[inverse[plus[x_]]]]] := image[V,intersection[omega,set[x]]] (* derived 2006 December 16 in PLUSTIME.NB *) image[V,intersection[Z,set[plus[x_]]]] := image[V,intersection[omega,set[x]]] (* see: IVR-IMSR session 1999 January 10 *) image[V,invar[x_]] := V (* added 1996 June 29 *) image[V,inverse[x_]] := image[V,domain[x]] (* added 2002 September 11 based on ITERATE.NB *) image[V,iterate[x_,y_]] := image[V,y] (* derived 2007 March 6 in IMV-MAP.NB *) image[V,map[x_,y_]] := union[complement[image[V,x]],intersection[image[V,y],image[V,set[x]]]] (* derived 2007 March 6 in IMV-ADD.NB *) image[V,natadd[x_,y_]] := union[image[V,x],image[V,y]] (* derived 2007 March 6 in IMV-EXP.NB *) image[V,natexp[x_,y_]] := union[complement[image[V,y]], complement[image[V,intersection[omega,set[y]]]],image[V,x]] (* derived 2007 March 6 in IMV-MOD.NB *) image[V,natmod[x_,y_]] := complement[image[V,intersection[image[DIV,set[y]],set[x]]]] (* derived 2005 June 17 in DF.NB *) image[V,natsub[x_,y_]] := union[complement[image[V,intersection[omega,set[x]]]], image[V,intersection[x,complement[y]]],image[V,intersection[y,complement[x]]]] image[V,omega] := V (* added 1996 June 29 *) image[V,P[x_]] := V (* added 1996 June 29 *) image[V,range[x_]] := image[V,domain[x]] (* Theorem REG-IMV in REG2 proved 1999 March 15 *) image[V,REGULAR] := V (* added 2002 October 27 based on NATMUL.NB *) image[V,rotate[x_]] := image[V,domain[domain[x]]] image[V,S] := V image[V,SECOND] := V (* Theorem SP-A-IMV in SP2 proved 1998 September 26 *) image[V,set[A[x_]]] := image[V,x] (* added 2002 January 26 based on IMV-ACL.NB *) image[V,set[Aclosure[x_]]] := image[V,set[x]] (* added 2003 October 28 based on APPLY.NB *) image[V,set[APPLY[x_,y_]]] := image[V,intersection[domain[x],set[y]]] (* added 2002 January 26 based on IMV.NB *) image[V,set[card[x_]]] := image[V,intersection[OMEGA,image[Q,set[x]]]] (* added 1999 February 7 on basis of session IMV-SSCP *) image[V,set[cart[x_,y_]]] := union[complement[image[V,x]],complement[image[V,y]], intersection[image[V,set[x]],image[V,set[y]]]] (* derived 2007 May 7 in APCHAINS.NB *) image[V,set[chains[x_]]] := image[V,set[fix[x]]] (* derived 2007 May 7 in IMV-SET.NB *) image[V,set[cliques[x_]]] := image[V,set[fix[x]]] (* added 2000 September 28 based on SUBST.NB *) image[V,set[complement[image[V,x_]]]] := image[V,x] (* Theorem RP-CO-EQ in RP1 proved 1999 February 7 *) image[V,set[composite[x_,y_]]] := intersection[image[V,set[image[x,range[y]]]], image[V,set[image[inverse[y],domain[x]]]]] (* derived 2004 April 17 in REPLACE.NB *) image[V,set[core[x_,y_]]] := image[V,set[intersection[x,P[y]]]] (* Added 1999 February 7 based on session CO-X-V.LOG *) image[V,set[cross[x_,y_]]] := union[complement[image[V,domain[x]]],complement[image[V,domain[y]]], intersection[image[V,set[domain[x]]], image[V,set[domain[y]]],image[V,set[range[x]]], image[V,set[range[y]]]]] (* derived 2007 May 7 in IMV-SET.NB *) image[V,set[DESCENDING]] := complement[image[V,complement[REGULAR]]] (* derived 2008 November 18 in INTEGER.NB *) image[V,set[domain[intadd[x_,y_]]]] := intersection[image[V,intersection[Z,set[x]]],image[V,intersection[Z,set[y]]]] (* derived 2008 November 18 in INTEGER.NB *) image[V,set[domain[intmul[x_,y_]]]] := intersection[image[V,intersection[Z,set[x]]],image[V,intersection[Z,set[y]]]] (* derived 2004 March 29 based on HULL.NB *) image[V,set[hull[x_,y_]]] := image[V,intersection[x,image[S,set[y]]]] (* added 1996 June 29 *) image[V,set[id[x_]]] := image[V,set[x]] (* corollary of Corollary IMG-V-SS in IMG2 proved 1999 February 6 *) image[V,set[IMAGE[x_]]] := image[V,set[domain[VERTSECT[x]]]] (* added 2001 May 10 based on UCLOS-1.NB *) image[V,set[image[BIGCUP,x_]]] := image[V,set[x]] (* added 2000 September 8 based on IMV-DI.NB *) image[V,set[image[Di,x_]]] := complement[image[V,x]] (* derived 2006 November 9 in DOAP-CUR.NB *) image[V,set[image[IMAGE[SWAP],x_]]] := intersection[image[V,set[domain[U[x]]]],image[V,set[range[U[x]]]]] (* Theorem RP-8-DEM in RP2 proved 1998 November 11 *) image[V,set[image[inverse[S],x_]]] := image[V,set[x]] (* added 2003 August 9 based on REIFZADD.NB *) image[V,set[intadd[x_,y_]]] := intersection[image[V,intersection[Z,set[x]]],image[V,intersection[Z,set[y]]]] (* added 1999 February 7 on basis of session IMV-I.LOG *) image[V,set[intersection[x_,image[V,y_]]]] := union[complement[image[V,y]],image[V,set[x]]] (* derived 2007 January 9 in INTMUL.NB *) image[V,set[intmul[x_,y_]]] := intersection[image[V,intersection[Z,set[x]]],image[V,intersection[Z,set[y]]]] (* derived 2007 March 6 in IMV-MAP.NB *) image[V,set[map[x_,y_]]] := union[complement[image[V,x]],complement[image[V,set[x]]],image[V,set[y]]] (* derived 2005 February 13 in NAT.NB *) image[V,set[nat[x_]]] := V (* added 2002 July 28 based on ADD-NAT.NB *) image[V,set[natadd[x_,y_]]] := intersection[image[V,intersection[omega,set[x]]], image[V,intersection[omega,set[y]]]] (* derived 2007 March 4 in NTDV-Q1.TXT *) image[V,set[natdiv[x_,y_]]] := image[V,intersection[image[DIV,set[y]],set[x]]] (* derived 2006 July 2 in IMV-EXP.NB *) image[V,set[natexp[x_,y_]]] := intersection[image[V,intersection[omega,set[x]]], image[V,intersection[omega,set[y]]]] (* derived 2005 July 18 in MODULO.NB *) image[V,set[natmod[x_,y_]]] := intersection[image[V,intersection[omega,set[x]]], image[V,intersection[omega,set[y]]]] (* added 2002 August 21 based on NATMUL.NB *) image[V,set[natmul[x_,y_]]] := intersection[image[V,intersection[omega,set[x]]], image[V,intersection[omega,set[y]]]] (* derived 2007 March 6 in IMV-SUB.NB *) image[V,set[natsub[x_,y_]]] := intersection[complement[image[V,intersection[y,complement[x]]]], image[V,intersection[omega,set[x]]],image[V,intersection[omega,set[y]]]] image[V,set[P[x_]]] := image[V,set[x]] (* added 2002 January 1 based on PAIR-MEM.NB *) image[V,set[PAIR[x_,y_]]] := intersection[image[V,set[x]],image[V,set[y]]] (* derived 2008 November 18 in INTEGER.NB *) image[V,set[range[intadd[x_,y_]]]] := intersection[image[V,intersection[Z,set[x]]],image[V,intersection[Z,set[y]]]] (* derived 2008 November 18 in INTEGER.NB *) image[V,set[range[intmul[x_,y_]]]] := intersection[image[V,intersection[Z,set[x]]],image[V,intersection[Z,set[y]]]] (* derived 2004 December 11 in OO-Q.NB *) image[V,set[range[oopart[x_]]]] := image[V,set[domain[oopart[x]]]] (* added 2002 January 26 based on IMV.NB *) image[V,set[rank[x_]]] := image[V,intersection[REGULAR,set[x]]] (* added 2001 November 17 based on 1ST-2ND.NB *) image[V,set[second[x_]]] := image[V,set[first[x]]] (* added 2002 January 26 based on IMV.NB *) image[V,set[succ[x_]]] := image[V,set[x]] (* added 2000 October 26 based on TC-8.NB *) image[V,set[tc[x_]]] := image[V,set[x]] image[V,set[U[x_]]] := image[V,set[x]] (* derived 2007 June 25 in UCH-HULL.NB *) image[V,set[Uchains[x_]]] := image[V,set[x]] (* added 2002 January 26 based on IMV.NB *) image[V,set[Uclosure[x_]]] := image[V,set[x]] image[V,set[union[x_,y_]]] := intersection[image[V,set[x]],image[V,set[y]]] image[V,SINGLETON] := V image[V,SUCC] := V image[V,SWAP] := V (* added 1996 June 29 *) image[V,U[x_]] := image[V,intersection[x,complement[set[0]]]] (* added 1999 October 23 based on VSPAIR.LOG *) image[VERTSECT[x_],cart[set[y_],set[z_]]] := intersection[image[V,set[y]],image[V,set[z]],set[image[x,cart[set[y],set[z]]]]] (* derived 2006 January 1 in RAVS-UBX.NB *) image[VERTSECT[x_],complement[domain[x_]]] := intersection[image[V,intersection[complement[domain[x]],domain[VERTSECT[x]]]],set[0]] (* derived 2008 November 5 in MAP-FIN.NB *) image[VERTSECT[composite[id[cart[x_,V]],inverse[SECOND]]],y_] := image[CART,cart[set[x],image[SINGLETON,y]]] (* added 2003 February 4 based on PLUS-Q.NB *) image[VERTSECT[composite[id[omega],S]],omega] := image[RC[omega],omega] (* derived 2007 August 1 in TO-CHN-S.NB *) image[VERTSECT[composite[id[OMEGA],S]],OMEGA] := 0 (* derived 2006 January 1 in RAVS-UBX.NB *) image[VERTSECT[cross[UB[setpart[x_]],UB[setpart[y_]]]],cart[complement[set[0]],complement[set[0]]]] := image[CART,cart[range[VERTSECT[UB[setpart[x]]]],range[VERTSECT[UB[setpart[y]]]]]] (* added 2002 November 16 based on INTEGER.NB *) image[VERTSECT[EQUIDIFF],cart[omega,omega]] := Z (* added 2002 November 30 based on POS-NEG.NB *) image[VERTSECT[EQUIDIFF],cart[set[0],omega]] := range[PLUS] (* added 2002 November 30 based on POS-NEG.NB *) image[VERTSECT[EQUIDIFF],composite[id[omega],inverse[S],id[omega]]] := image[INVERSE,range[PLUS]] (* added 2002 November 30 based on POS-NEG.NB *) image[VERTSECT[EQUIDIFF],composite[id[omega],S,id[omega]]] := range[PLUS] (* derived 2007 September 4 in U-CHAINS.NB *) image[VERTSECT[GREATEST[union[S,inverse[S]]]],range[SINGLETON]] := range[SINGLETON] (* added 2002 November 29 based on PLUS.NB *) image[VERTSECT[inverse[rotate[NATADD]]],omega] := image[INVERSE,range[PLUS]] (* derived 2006 July 20 in BINHOM-3.NB *) image[VERTSECT[inverse[rotate[NATMUL]]],complement[omega]] := set[0] (* derived 2006 July 20 in BINHOM-3.NB *) image[VERTSECT[inverse[rotate[NATMUL]]],omega] := image[INVERSE,binhom[NATADD,NATADD]] (* 1999 July 12 SESSION2.LOG *) image[VERTSECT[x_],set[y_]] := intersection[image[V,set[y]],set[image[x,set[y]]]] (* derived 2005 December 31 in VS-UB.NB *) image[VERTSECT[UB[x_]],intersection[y_,complement[set[0]]]] := image[VERTSECT[UB[x]],y] (* derived 2007 September 4 in U-CHAINS.NB *) image[VERTSECT[ZN],OMEGA] := image[POWER,image[IMAGE[inverse[RANK]],OMEGA]] (* derived 2006 November 21 in CUR-BO.NB *) image[VS,image[IMAGE[ASSOC],BINOPS]] := image[CURRY,BINOPS] (* derived 2006 June 29 in IM-VS-PC.NB *) image[VS,P[cart[x_,y_]]] := intersection[FUNS,P[cart[x,intersection[complement[set[0]],P[y]]]]] (* derived 2004 August 21 in VS-RS.NB *) image[VS,P[funpart[x_]]] := P[composite[SINGLETON,funpart[x]]] (* derived 2004 August 21 in VS-RS.NB *) image[VS,P[Id]] := P[SINGLETON] (* derived 2005 September 15 in UCL-RAVS.NB *) image[VS,P[id[x_]]] := P[composite[SINGLETON,id[x]]] (* derived 2004 August 21 in VS-RS.NB *) image[VS,RS[x_]] := P[composite[VERTSECT[x],id[domain[x]]]] (* added 2003 June 11 based on VS.NB *) image[VS,set[x_]] := intersection[image[V,set[x]],set[composite[VERTSECT[x],id[domain[x]]]]] (* derived 2004 September 25 in LAMB-WF.NB *) image[WFPART,set[x_]] := intersection[image[V,set[x]],set[wf[x]]] (* derived 2004 September 25 in LAMB-WF.NB *) image[WFPART,WF] := WF (* derived 2005 October 22 in WO-DI.NB *) image[wo[x_],complement[fix[wo[x_]]]] := 0 (* derived 2008 March 9 in WO.NB *) image[wo[x_],image[wo[x_],y_]] := image[wo[x],y] (* derived 2008 March 9 in WO.NB *) image[wo[x_],intersection[y_,fix[wo[x_]]]] := image[wo[x],y] (* derived 2007 November 15 in XS-CART.NB *) image[XS,CONST] := image[SINGLETON,CONST] (* derived 2004 November 26 in XS-SS-0.NB *) image[XS,P[complement[cart[V,V]]]] := set[set[0]] (* derived 2007 November 15 in XS-CART.NB *) image[XS,range[CART]] := intersection[complement[set[0]],range[MAP]] (* derived 2004 November 16 in XS.NB *) image[XS,set[x_]] := intersection[image[V,set[x]],set[X[x]]] (* derived 2007 December 8 in IMGIDREG.NB *) image[ZN,FULL] := V (* derived 2005 December 7 in ZN-ORD.NB *) image[ZN,image[inverse[S],x_]] := image[ZN,x] (* added 2002 May 17 based on ZN.NB *) image[ZN,image[ZN,x_]] := image[ZN,x] (* derived 2007 July 4 in NAT-ORD.NB *) image[ZN,nat[x_]] := image[inverse[RANK],nat[x]] (* Theorem HF-ZN-5 in HF3 proved 2001 August 28 *) image[ZN,omega] := intersection[REGULAR,H[FINITE]] (* Theorem RK-DO5' in RANK6 proved 2001 August 11 *) image[ZN,OMEGA] := REGULAR (* derived 2006 March 14 in ZN-ON.NB *) image[ZN,ord[x_]] := image[inverse[RANK],ord[x]] (* Theorem RK-ON-PC in RANK6 proved 2001 August 11 *) image[ZN,P[OMEGA]] := image[ZN,OMEGA] (* derived 2005 December 7 in ZN-ORD.NB *) image[ZN,P[ord[x_]]] := P[image[ZN,ord[x]]] (* Theorem ZN-REG1 in ZN4 proved 2001 July 19 *) image[ZN,REGULAR] := REGULAR (* added 2001 July 14 based on ZN-IMG.NB *) image[ZN,set[x_]] := intersection[image[V,set[x]],P[image[ZN,x]]] (* added 2002 May 17 based on TC.NB *) image[ZN,tc[x_]] := image[ZN,x] (* definition of implication *) implies[p_,q_] := or[not[p],q] (* Quaife's definition of INDUCTIVE *) INDUCTIVE[x_] := and[member[0,x],subclass[image[SUCC,x],x]] (* derived 2008 November 29 in INT-WRAP.NB *) int[x_] := x /; member[x,Z] (* derived 2008 November 29 in INT-WRAP.NB *) int[composite[Id,x_]] := int[x] (* derived 2008 November 29 in INT-WRAP.NB *) int[inverse[x_]] := inverse[int[x]] (* derived 2008 November 29 in INT-WRAP.NB *) int[plus[x_]] := plus[nat[x]] (* added 2003 August 9 based on INTADDXY.NB *) intadd[0,x_] := V (* derived 2006 August 1 in BCL-ZADD.NB *) intadd[x_,composite[id[omega],SUCC]] := union[complement[image[V,intersection[Z,set[x]]]],composite[x,SUCC]] (* added 2003 August 10 based on ADD-ZERO.NB *) intadd[x_,id[omega]] := union[x,complement[image[V,intersection[Z,set[x]]]]] (* added 2003 August 12 based on RO-ZADD.NB *) intadd[x_,inverse[x_]] := union[complement[image[V,intersection[Z,set[x]]]],id[omega]] (* derived 2006 September 30 in ZADDPLUS.NB *) intadd[inverse[plus[nat[x_]]],inverse[plus[nat[y_]]]] := inverse[plus[natadd[nat[x],nat[y]]]] (* derived 2006 September 30 in ZADDPLUS.NB *) intadd[inverse[plus[nat[x_]]],plus[nat[y_]]] := composite[inverse[plus[nat[x]]],plus[nat[y]]] (* derived 2006 September 30 in ZADDPLUS.NB *) intadd[plus[nat[x_]],plus[nat[y_]]] := plus[natadd[nat[x],nat[y]]] (* added 2003 August 12 based on RO-ZADD.NB *) intadd[x_,union[y_,complement[image[V,z_]]]] := union[complement[image[V,z]],intadd[x,y]] (* Theorem I-6 in I *) intersection[x_,x_] := x (* introduced 1996 March 7 in INTERSEC.M based on Theorem I-4 in I *) intersection[0,x_] := 0 (* added 2002 June 12 based on ABSORB.NB *) intersection[A[x_],A[intersection[x_,y_]]] := A[x] intersection[A[complement[x_]],A[x_]] := 0 (* added 2000 January 5 based on AP-DIF.NB *) intersection[A[x_],complement[image[V,x_]]] := complement[image[V,x]] (* added 2000 January 5 based on A-SC-0.NB *) intersection[A[x_],complement[U[x_]]] := complement[image[V,x]] (* derived 2007 May 26 in A-HULL.NB *) intersection[A[x_],hull[x_,y_]] := A[x] (* derived 2004 May 4 in CRHL-FIX.NB *) intersection[x_,Aclosure[x_]] := x (* added 2001 May 10 based on ACLOSURE.NB *) intersection[ACLOSURE,complement[S]] := 0 (* added 2002 May 6 based on FIX-HULL.NB *) intersection[Aclosure[x_],fix[HULL[x_]]] := Aclosure[x] (* derived 2006 January 30 in ACY-I.NB *) intersection[ACYCLIC,ANTISYM] := ACYCLIC (* derived 2006 January 30 in ACY-I.NB *) intersection[ACYCLIC,CL] := 0 (* derived 2006 January 30 in ACY-I.NB *) intersection[ACYCLIC,EQV] := set[0] (* derived 2006 February 14 in ACYFINOP.NB *) intersection[ACYCLIC,FINITE,image[inverse[DORA],inverse[S]]] := set[0] (* derived 2006 June 10 in REPLACE.NB *) intersection[ACYCLIC,FINITE,UNOPS] := set[0] (* derived 2008 February 10 in TRICH-I.NB *) intersection[ACYCLIC,fix[composite[inverse[HULL[SYM]],S,IMAGE[id[Di]],CART,DUP,CUP,DORA]]] := intersection[ACYCLIC,fix[composite[inverse[HULL[SYM]],IMAGE[id[Di]],CART,DUP,CUP,DORA]]] (* derived 2006 February 1 in WO-I.NB *) intersection[ACYCLIC,IDEM] := intersection[IDEM,P[Di]] (* derived 2006 February 8 in INVOL-I.NB *) intersection[ACYCLIC,INVOL] := set[0] (* added 2003 October 15 based on ACYCLIC.NB *) intersection[ACYCLIC,P[cart[V,V]]] := ACYCLIC (* derived 2004 May 4 in ACY-WF.NB *) intersection[ACYCLIC,P[Di]] := ACYCLIC (* derived 2006 January 30 in ACY-I.NB *) intersection[ACYCLIC,P[Id]] := set[0] (* derived 2006 January 24 in I-PO.NB *) intersection[ACYCLIC,PO] := set[0] (* derived 2006 January 28 in PROJ.NB *) intersection[ACYCLIC,PROJ] := set[0] (* derived 2006 January 30 in ACY-I.NB *) intersection[ACYCLIC,RFX] := set[0] (* derived 2006 January 30 in ACY-I.NB *) intersection[ACYCLIC,SYM] := set[0] (* derived 2006 January 30 in ACY-I.NB *) intersection[ACYCLIC,TO] := set[0] (* added 2003 October 15 based on ACYCLIC.NB *) intersection[ACYCLIC,TRV] := intersection[TRV,P[Di]] (* derived 2006 January 30 in ACY-I.NB *) intersection[ACYCLIC,WF] := WF (* derived 2006 January 30 in ACY-I.NB *) intersection[ACYCLIC,WO] := set[0] (* derived 2006 January 30 in I-Z.NB *) intersection[ACYCLIC,Z] := intersection[Z,complement[set[id[omega]]]] (* Theorem ADJ-I-1 in ADJOIN proved 1999 April 15 *) intersection[ADJOIN[x_],inverse[S]] := id[image[S,set[x]]] (* derived 2004 January 16 in ADJ-UIDK.NB *) intersection[ADJOIN[set[x_]],composite[PS,PS]] := 0 (* derived 2007 June 23 in ALLCLOSED.NB *) intersection[allclosed[x_],complement[image[S,complement[domain[VERTSECT[x_]]]]]] := allclosed[x] (* derived 2008 January 2 in FINCHR-1.NB *) intersection[allclosed[composite[inverse[POWER],inverse[IMAGE[id[FINITE]]]]], fix[IMAGE[inverse[S]]]] := FINCHAR (* derived 2008 January 2 in FINCHR-1.NB *) intersection[allclosed[composite[inverse[POWER],inverse[IMAGE[id[FINITE]]]]], invar[composite[id[FINITE],inverse[S]]]] := FINCHAR (* derived 2007 June 23 in ALLCLOSED.NB *) intersection[allclosed[x_],fix[composite[complement[E],x_]]] := 0 (* derived 2007 June 23 in ALLCLOSED.NB *) intersection[allclosed[x_],image[S,complement[domain[VERTSECT[x_]]]]] := 0 (* derived 2006 January 31 in ANTISYMI.NB *) intersection[ANTISYM,CL] := CL (* derived 2006 February 1 in WO-I.NB *) intersection[ANTISYM,IDEM,P[Di]] := intersection[IDEM,P[Di]] (* derived 2006 January 31 in ANTISYMI.NB *) intersection[ANTISYM,EQV] := P[Id] (* added 2002 January 17 based on ANTISYM2.NB *) intersection[ANTISYM,image[inverse[IMAGE[id[cart[V,V]]]],x_]] := intersection[ANTISYM,x] (* derived 2006 June 13 in CART-SG.NB *) intersection[ANTISYM,image[SINGLETON,x_]] := image[SINGLETON,composite[Id,x]] (* derived 2006 February 8 in INVOL-I.NB *) intersection[ANTISYM,INVOL] := P[Id] (* added 2002 January 17 based on ANTISYM1.NB *) intersection[ANTISYM,P[cart[V,V]]] := ANTISYM (* derived 2006 January 31 in ANTISYMI.NB *) intersection[ANTISYM,P[Id]] := P[Id] (* derived 2006 January 24 in I-PO.NB *) intersection[ANTISYM,PO] := PO (* derived 2006 January 28 in PROJ.NB *) intersection[ANTISYM,PROJ] := PROJ (* derived 2006 June 13 in CART-SG.NB *) intersection[ANTISYM,range[SINGLETON]] := image[SINGLETON,cart[V,V]] (* added 2002 January 19 based on PO.NB *) intersection[ANTISYM,RFX,TRV] := PO (* added 2002 January 17 based on ANTISYM1.NB *) intersection[ANTISYM,SYM] := P[Id] (* derived 2006 January 31 in ANTISYMI.NB *) intersection[ANTISYM,TO] := TO (* derived 2008 February 5 in TOT-RELN.NB *) intersection[ANTISYM,TRV,fix[composite[inverse[HULL[SYM]],CART,DUP,CUP,DORA]]] := TO (* derived 2008 January 29 in TO.NB *) intersection[ANTISYM,TRV,fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]]] := TO (* derived 2006 February 1 in WO-I.NB *) intersection[ANTISYM,TRV,P[Di]] := intersection[TRV,P[Di]] (* derived 2006 January 30 in WF-I.NB *) intersection[ANTISYM,WF] := WF (* derived 2006 January 31 in ANTISYMI.NB *) intersection[ANTISYM,WO] := WO (* derived 2006 January 30 in I-Z.NB *) intersection[ANTISYM,Z] := Z (* derived 2006 July 8 in SEMIGPS.NB *) intersection[ASSOCIATIVE,BINOPS] := SEMIGPS (* derived 2008 December 5 in GROUPS.NB *) intersection[ASSOCIATIVE,GROUPS] := GROUPS (* derived 2004 December 7 in ASV-DIV.NB *) intersection[ASSOCIATIVE,P[cart[cart[V,V],V]]] := ASSOCIATIVE (* derived 2008 December 5 in GROUPS.NB *) intersection[ASSOCIATIVE,QUASIGPS] := union[GROUPS,set[0]] (* derived 2006 July 13 in SGPS-I.NB *) intersection[ASSOCIATIVE,SEMIGPS] := SEMIGPS (* derived 2006 March 26 in I-BC.NB *) intersection[BIGCUP,x_] := composite[BIGCUP,id[fix[composite[inverse[BIGCUP],x]]]] (* derived 2009 January 2 in I-FUNS.NB *) intersection[BIJ,bij[x_,y_]] := bij[x,y] (* derived 2006 January 31 in BIJ-I.NB *) intersection[BIJ,CL] := image[SINGLETON,Id] (* derived 2006 June 17 in CONST-I.NB *) intersection[BIJ,CONST] := union[image[SINGLETON,cart[V,V]],set[0]] (* derived 2006 January 31 in BIJ-I.NB *) intersection[BIJ,EQV] := P[Id] (* added 2002 February 9 based on IDEM-BIJ.NB *) intersection[BIJ,FUNS] := BIJ (* derived 2004 December 14 in IDEMPROJ.NB *) intersection[BIJ,IDEM] := P[Id] (* derived 2008 September 28 in PERMS.NB *) intersection[BIJ,image[inverse[DORA],Id]] := PERMS (* derived 2009 January 2 in I-FUNS.NB *) intersection[bij[x_,x_],image[inverse[DORA],Id]] := bij[x,x] (* derived 2008 September 28 in INVOL.NB *) intersection[BIJ,image[INVERSE,FUNS]] := BIJ (* derived 2006 June 11 in FU-FIN.NB *) intersection[BIJ,image[inverse[IMAGE[FIRST]],FINITE]] := intersection[BIJ,FINITE] (* derived 2008 September 29 in MAP.NB *) intersection[BIJ,image[inverse[IMAGE[FIRST]],set[x_]]] := intersection[BIJ,map[x,V]] (* derived 2006 June 11 in FU-FIN.NB *) intersection[BIJ,image[inverse[IMAGE[SECOND]],FINITE]] := intersection[BIJ,FINITE] (* derived 2008 September 29 in BIJ.NB *) intersection[BIJ,image[inverse[IMAGE[SECOND]],set[y_]],map[x_,y_]] := bij[x,y] (* derived 2008 September 29 in BIJ.NB *) intersection[BIJ,image[inverse[IMAGE[SECOND]],set[y_]],map[x_,V]] := bij[x,y] (* derived 2006 January 31 in BIJ-I.NB *) intersection[BIJ,image[SINGLETON,x_]] := image[SINGLETON,composite[Id,x]] (* derived 2006 February 4 in INVOL.NB *) intersection[BIJ,INVOL] := INVOL (* derived 2008 September 29 in BIJ.NB *) intersection[bij[x_,y_],map[x_,y_]] := bij[x,y] (* derived 2008 September 29 in BIJ.NB *) intersection[bij[x_,y_],map[x_,V]] := bij[x,y] (* added 2000 April 27 based on BIJ.NB *) intersection[BIJ,P[cart[V,V]]] := BIJ (* added 2000 April 27 based on BIJ.NB *) intersection[BIJ,P[complement[cart[V,V]]]] := set[0] (* derived 2006 January 31 in BIJ-I.NB *) intersection[BIJ,P[Id]] := P[Id] (* derived 2009 January 2 in I-FUNS.NB *) intersection[BIJ,PERMS] := PERMS (* derived 2006 January 24 in I-PO.NB *) intersection[BIJ,PO] := P[Id] (* added 2002 February 9 based on IDEM-BIJ.NB *) intersection[BIJ,PROJ] := P[Id] (* added 2001 December 22 based on DORA-2.NB *) intersection[BIJ,range[CART]] := union[image[SINGLETON,cart[V,V]],set[0]] (* derived 2008 September 28 in UNOPS-Z.NB *) intersection[BIJ,range[PLUS]] := range[PLUS] (* added 2001 October 16 based on IM-IN-SG.NB *) intersection[BIJ,range[SINGLETON]] := image[SINGLETON,cart[V,V]] (* derived 2006 January 31 in BIJ-I.NB *) intersection[BIJ,RFX] := P[Id] (* derived 2006 February 4 in INVOL.NB *) intersection[BIJ,SYM] := INVOL (* derived 2006 January 31 in BIJ-I.NB *) intersection[BIJ,TO] := union[image[SINGLETON,Id],set[0]] (* derived 2006 January 31 in BIJ-I.NB *) intersection[BIJ,WO] := union[image[SINGLETON,Id],set[0]] (* derived 2006 January 24 in I-PO.NB *) intersection[BIJ,Z] := Z (* revised 2003 May23 based on DEF-CLOS.NB *) intersection[binclosed[CAP],fix[UCLOSURE]] := TOPS (* added 2003 May 23 based on REPLACE.NB *) intersection[binclosed[CAP],image[PAIRSET,S]] := image[PAIRSET,S] (* added 2003 May 23 based on REPLACE.NB *) intersection[binclosed[CAP],range[PAIRSET]] := image[PAIRSET,S] (* added 2003 May 23 based on REPLACE.NB *) intersection[binclosed[CAP],range[POWER]] := range[POWER] (* revised 2003 May23 based on DEF-CLOS.NB *) intersection[binclosed[CAP],range[SINGLETON]] := range[SINGLETON] (* added 2003 May 21 based on BINCLOSE.NB *) intersection[binclosed[x_],cliques[domain[VERTSECT[x_]]]] := binclosed[x] (* added 2003 May 23 based on REPLACE.NB *) intersection[binclosed[CUP],image[PAIRSET,S]] := image[PAIRSET,S] (* added 2003 May 23 based on REPLACE.NB *) intersection[binclosed[CUP],range[PAIRSET]] := image[PAIRSET,S] (* revised 2003 May23 based on DEF-CLOS.NB *) intersection[binclosed[CUP],range[POWER]] := range[POWER] (* revised 2003 May23 based on DEF-CLOS.NB *) intersection[binclosed[CUP],range[SINGLETON]] := range[SINGLETON] (* revised 2003 May 24 based on DIFCL-0.NB *) intersection[binclosed[DIF],P[complement[set[0]]]] := set[0] (* revised 2003 May23 based on DEF-CLOS.NB *) intersection[binclosed[DIF],range[POWER]] := range[POWER] (* revised 2003 May23 based on DEF-CLOS.NB *) intersection[binclosed[DIF],range[SINGLETON]] := set[set[0]] (* derived 2005 September 8 in RAVS-DIV.NB *) intersection[binclosed[NATADD],binclosed[rotate[NATADD]],P[omega]] := range[VERTSECT[DIV]] (* derived 2006 December 20 in ENDZ-DO.NB *) intersection[binhom[INTADD,INTADD],complement[P[complement[cart[set[z_],V]]]]] := intersection[binhom[INTADD,INTADD],image[V,intersection[Z,set[z]]]] (* derived 2006 December 19 in ZTIMES-1.NB *) intersection[binhom[INTADD,INTADD], domain[eval[composite[id[omega],SUCC]]]] := binhom[INTADD,INTADD] (* derived 2007 January 5 based on INTMUL-5.NB *) intersection[binhom[INTADD,INTADD],image[inverse[eval[composite[id[omega],SUCC]]],x_]] := image[INTTIMES,x] (* derived 2006 December 18 in BNCL-INT.NB *) intersection[binhom[INTADD,INTADD],P[cart[Z,Z]]] := binhom[INTADD,INTADD] (* derived 2006 December 20 in ENDZ-DO.NB *) intersection[binhom[INTADD,INTADD],P[complement[cart[set[z_],V]]]] := intersection[binhom[INTADD,INTADD],complement[image[V,intersection[Z,set[z]]]]] (* derived 2006 December 6 in MIXMUL-1.NB *) intersection[binhom[x_,y_],map[fix[domain[x_]],fix[domain[y_]]]] := binhom[x,y] (* derived 2006 December 5 in MIXTIMES.NB *) intersection[binhom[NATADD,INTADD],complement[P[complement[cart[set[set[0]],V]]]]] := binhom[NATADD,INTADD] (* derived 2006 December 5 in MIXTIMES.NB *) intersection[binhom[NATADD,INTADD],domain[eval[set[0]]]] := binhom[NATADD,INTADD] (* derived 2008 October 31 in PERMS.NB *) intersection[binhom[NATADD,NATADD],image[inverse[DORA],Id]] := set[id[omega]] (* derived 2006 December 5 in MIXTIMES.NB *) intersection[binhom[NATADD,INTADD],P[complement[cart[set[set[0]],V]]]] := 0 (* derived 2006 December 18 in BNCL-NAT.NB *) intersection[binhom[NATADD,NATADD],P[cart[omega,omega]]] := binhom[NATADD,NATADD] (* derived 2008 October 31 in PERMS.NB *) intersection[binhom[NATADD,NATADD],range[PLUS]] := set[id[omega]] (* derived 2006 July 20 in BINHOM-3.NB *) intersection[binhom[x_,y_],P[cart[V,V]]] := binhom[x,y] (* derived 2008 October 19 in SEMIGP.NB *) intersection[binop[x_],image[V,intersection[ASSOCIATIVE,set[x_]]]] := semigp[x] (* derived 2008 October 9 in QUASIGP.NB *) intersection[binop[x_],image[V,intersection[BINOPS,set[rotate[x_]]]], image[V,intersection[BINOPS,set[rotate[composite[x_,SWAP]]]]]] := quasigp[x] (* derived 2008 December 2 in RIF-QG.NB *) intersection[BINOPS,fix[IMAGE[ROT]]] := intersection[QUASIGPS,fix[IMAGE[ROT]]] (* derived 2008 December 5 in GROUPS.NB *) intersection[BINOPS,GROUPS] := GROUPS (* derived 2006 June 10 in BINOPS.NB *) intersection[BINOPS,FUNS] := BINOPS (* derived 2008 October 7 in QUASIGPS.NB *) intersection[BINOPS,image[inverse[IMAGE[ROT]],BINOPS], image[inverse[IMAGE[inverse[ROT]]],BINOPS]] := QUASIGPS (* derived 2008 December 2 in RIF-QG.NB *) intersection[BINOPS,invar[ROT]] := intersection[QUASIGPS,fix[IMAGE[ROT]]] (* derived 2006 June 10 in BINOPS.NB *) intersection[BINOPS,P[cart[cart[V,V],V]]] := BINOPS (* derived 2006 July 9 in DORA-BO.NB *) intersection[BINOPS,P[cart[V,V]]] := BINOPS (* derived 2008 October 17 in QG-SU.NB *) intersection[BINOPS,QUASIGPS] := QUASIGPS (* derived 2006 June 11 in CONSTOPS.NB *) intersection[BINOPS,range[CART]] := intersection[BINOPS,CONST] (* derived 2008 August 16 in SGPS-SS.NB *) intersection[BINOPS,range[SINGLETON]] := image[SINGLETON,inverse[DUP]] (* derived 2006 July 13 in SGPS-I.NB *) intersection[BINOPS,SEMIGPS] := SEMIGPS (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CAP,composite[DISJOINT,CUP]] := cart[DISJOINT,set[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CAP,composite[DISJOINT,DIF]] := CAP (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CAP,composite[DISJOINT,FIRST]] := cart[DISJOINT,set[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CAP,composite[DISJOINT,SECOND]] := cart[DISJOINT,set[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CAP,composite[inverse[S],CUP]] := CAP (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CAP,composite[inverse[S],DIF]] := cart[DISJOINT,set[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CAP,composite[inverse[S],FIRST]] := CAP (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CAP,composite[inverse[S],SECOND]] := CAP (* added 1999 December 7 based on RESTRICT.NB *) intersection[CAP,composite[inverse[S],SYMDIF]] := cart[DISJOINT,set[0]] (* added 1999 December 7 based on RESTRICT.NB *) intersection[CAP,composite[S,CUP]] := inverse[DUP] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CAP,composite[S,DIF]] := composite[FIRST,id[S]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CAP,composite[S,FIRST]] := composite[FIRST,id[S]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CAP,composite[S,SECOND]] := composite[SECOND,id[inverse[S]]] (* added 1999 December 7 based on RESTRICT.NB *) intersection[CAP,composite[S,SYMDIF]] := inverse[DUP] (* added 1999 December 7 based on FLIPRULE.NB *) intersection[CAP,composite[x_,SWAP]] := composite[intersection[CAP,x],SWAP] (* added 1999 July 24 based on session CAP-CUP *) intersection[CAP,CUP] := inverse[DUP] (* added 1999 October 26 based on DIF1.NB *) intersection[CAP,DIF] := cart[cart[set[0],V],set[0]] (* Theorem CAP-I-1 in CAP proved 2000 July 31 *) intersection[CAP,FIRST] := composite[FIRST,id[S]] (* Theorem CAP-I-2 in CAP proved 2000 July 31 *) intersection[CAP,SECOND] := composite[SECOND,id[inverse[S]]] (* added 2002 May 28 based on CARD-OM.NB *) intersection[CARD,Q] := CARD intersection[cart[x_,y_],z_] := composite[id[y],z,id[x]] (* derived 2008 August 1 in THM-63.NB *) intersection[chains[complement[x_]],chains[union[Id,x_]], complement[image[S,intersection[complement[set[0]], subvar[intersection[Di,complement[inverse[x_]]]]]]]] := intersection[chains[union[Id,x]],complement[image[S,intersection[complement[set[0]],subvar[x]]]]] (* derived 2007 June 13 in IMGVSDIV.NB *) intersection[chains[DIV],P[omega]] := chains[DIV] (* derived 2007 August 23 in CLQ-IMSG.NB *) intersection[chains[x_],image[SINGLETON,y_]] := image[SINGLETON,intersection[y,fix[x]]] (* derived 2007 May 6 in CHNBASIC.NB *) intersection[chains[x_],P[fix[x_]]] := chains[x] (* derived 2007 May 8 in PAIRSET.NB *) intersection[chains[x_],range[SINGLETON]] := image[SINGLETON,fix[x]] (* derived 2008 March 1 in WO-RS-S.NB *) intersection[chains[S],fix[image[inverse[CART],image[inverse[IMAGE[id[PS]]],WF]]]] := fix[image[inverse[CART],image[inverse[IMAGE[id[S]]],WO]]] (* derived 2007 September 26 in UCH-ORD.NB *) intersection[chains[S],P[spine[S,x_]]] := P[spine[S,x]] (* derived 2007 August 23 in UCH-Z.NB *) intersection[chains[S],P[Z]] := union[image[SINGLETON,Z],set[0]] (* derived 2007 May 5 in REPLACE.NB *) intersection[chains[S],range[PAIRSET]] := image[PAIRSET,S] (* derived 2006 June 11 in CART-PID.NB *) intersection[CL,CONST] := image[SINGLETON,Id] (* derived 2006 January 31 in CL-I.NB *) intersection[CL,EQV] := image[SINGLETON,Id] (* derived 2006 January 31 in CL-I.NB *) intersection[CL,FUNS] := image[SINGLETON,Id] (* derived 2006 January 31 in CL-I.NB *) intersection[CL,IDEM] := CL (* derived 2006 June 13 in CART-SG.NB *) intersection[CL,image[CART,x_]] := image[SINGLETON,id[image[inverse[SINGLETON],fix[x]]]] (* derived 2006 January 31 in CL-I.NB *) intersection[CL,image[SINGLETON,Id]] := image[SINGLETON,Id] (* derived 2006 February 8 in INVOL-I.NB *) intersection[CL,INVOL] := image[SINGLETON,Id] (* derived 2006 January 31 in CL-I.NB *) intersection[CL,P[Di]] := 0 (* derived 2006 January 28 in PROJ.NB *) intersection[CL,P[Id]] := image[SINGLETON,Id] (* derived 2006 January 24 in I-PO.NB *) intersection[CL,PO] := CL (* derived 2006 January 28 in PROJ.NB *) intersection[CL,PROJ] := image[SINGLETON,Id] (* derived 2006 June 11 in CART-PID.NB *) intersection[CL,range[CART]] := image[SINGLETON,Id] (* derived 2006 January 31 in CL-I.NB *) intersection[CL,RFX] := CL (* derived 2006 January 31 in CL-I.NB *) intersection[CL,SYM] := image[SINGLETON,Id] (* derived 2006 January 26 in Z-TRV.NB *) intersection[CL,TRV] := CL (* derived 2006 June 11 in UNOPS-I.NB *) intersection[CL,UNOPS] := image[SINGLETON,Id] (* derived 2006 January 30 in WF-I.NB *) intersection[CL,WF] := 0 (* derived 2006 January 30 in I-Z.NB *) intersection[CL,Z] := 0 (* added 2000 December 17 based on Q.NB *) intersection[cliques[x_],cliques[complement[x_]]] := set[0] (* derived 2007 October 12 in DJ-IM-IM.NB *) intersection[cliques[complement[composite[inverse[x_],y_]]], P[intersection[domain[VERTSECT[x_]],domain[VERTSECT[y_]]]]] := fix[composite[inverse[IMAGE[x]],DISJOINT,IMAGE[y]]] (* derived 2006 January 7 in ZERMELO.NB *) intersection[cliques[complement[cross[S,complement[S]]]],map[P[x_],P[x_]],P[Di]] := 0 (* added 2000 December 17 based on Q.NB *) intersection[cliques[x_],complement[domain[GREATEST[x_]]]] := set[0] (* added 2000 December 17 based on CLIQUES.NB *) intersection[cliques[complement[x_]],domain[GREATEST[x_]]] := 0 (* added 2002 January 18 based on CLIQUES.NB *) intersection[cliques[complement[x_]],P[domain[VERTSECT[x_]]]] := fix[composite[DISJOINT,IMAGE[x]]] (* added 2000 December 17 based on Q.NB *) intersection[cliques[complement[x_]],subvar[x_]] := set[0] (* derived 2007 August 23 in CLQ-IMSG.NB *) intersection[cliques[x_],image[SINGLETON,y_]] := image[SINGLETON,intersection[y,fix[x]]] (* added 2002 December 21 based on IVR-EQDF.NB *) intersection[cliques[x_],invar[x_]] := intersection[cliques[x],fix[IMAGE[x]]] (* derived 2006 October 10 in CLIQ-RFX.NB *) intersection[cliques[x_],P[fix[x_]]] := cliques[x] (* added 2001 November 11 based on IMIN-SG.NB *) intersection[cliques[x_],range[SINGLETON]] := image[SINGLETON,fix[x]] (* added 2000 December 9 based on CLIQUES.NB *) intersection[cliques[x_],set[0]] := set[0] (* added 2000 December 9 based on IM-CP-0.NB *) intersection[cliques[x_],subvar[x_]] := cliques[x] (* derived 2008 February 12 in REFLEXIV.NB *) intersection[cliques[union[cart[fix[x_],V],complement[x_]]], cliques[union[cart[fix[x_],V],complement[inverse[x_]]]]] := fix[image[inverse[CART],image[inverse[IMAGE[id[x]]],RFX]]] (* derived 2004 June 26 in X1457.NB *) intersection[cliques[union[Id,composite[inverse[FIRST],Di,FIRST]]],P[cart[V,V]]] := FUNS (* added 2003 July 4 based on COARSER.NB *) intersection[COARSER,composite[inverse[BIGCUP],inverse[POWER],S]] := COARSER (* added 2003 July 4 based on COARSER.NB *) intersection[COARSER,inverse[COARSER]] := Id (* derived 2003 December 31 in COARSER.NB *) intersection[COARSER,inverse[S]] := Id (* derived 2003 December 31 in COARSER.NB *) intersection[COARSER,S] := COARSER (* derived 2006 September 21 in CMTVNORM.NB *) intersection[COMMUTATIVE,fix[composite[x_,IMAGE[id[complement[cart[cart[V,V],V]]]]]]] := intersection[COMMUTATIVE,image[x,set[0]]] (* derived 2006 September 19 in COMMTIVE.NB *) intersection[COMMUTATIVE,P[cart[cart[V,V],V]]] := COMMUTATIVE (* derived 2006 September 21 in CMTVNORM.NB *) intersection[COMMUTATIVE,subvar[union[x_,cross[SWAP,Id]]]] := COMMUTATIVE (* derived 2004 February 7 in COMPACT.NB *) intersection[COMPACT,P[FINITE]] := intersection[FINITE,P[FINITE]] (* Theorem C-3A in C1 *) intersection[complement[x_],x_] := 0 intersection[complement[cart[x_,y_]],complement[cart[x_,z_]]] := complement[cart[x,union[y,z]]] intersection[complement[cart[x_,z_]],complement[cart[y_,z_]]] := complement[cart[union[x,y],z]] (* added 2000 February 5 based on FUNPART.NB *) intersection[complement[cart[V,V]],complement[composite[x_,y_]]] := complement[cart[V,V]] (* derived 2005 January 4 in ORDINAL.NB *) intersection[complement[x_],complement[set[x_]]] := complement[succ[x]] (* derived 2004 March 9 in IDEMLTGT.NB *) intersection[complement[composite[complement[x_],GREATEST[x_]]],GREATEST[x_]] := GREATEST[x] (* added 1999 October 26 based on VS-RULE.1 *) intersection[complement[composite[x_,complement[inverse[E]]]], complement[composite[complement[x_],inverse[E]]]] := union[complement[cart[V,V]],inverse[VERTSECT[inverse[x]]]] (* added 2000 November 7 based on VS.NB *) intersection[complement[composite[x_,complement[inverse[E]]]],UB[x_]] := inverse[VERTSECT[inverse[x]]] (* derived 2004 March 9 in IDEMLTGT.NB *) intersection[complement[composite[complement[inverse[x_]],LEAST[x_]]],LEAST[x_]] := LEAST[x] (* derived 2008 July 18 in RANK-1.NB *) intersection[complement[composite[complement[inverse[S]],x_]], composite[S,VERTSECT[complement[composite[complement[inverse[E]],x_]]]]] := VERTSECT[complement[composite[complement[inverse[E]],x]]] (* derived 2007 August 14 in UCH-SPIN.NB *) intersection[complement[composite[complement[S],x_]], composite[inverse[S],BIGCUP,VERTSECT[x_]]] := composite[BIGCUP,VERTSECT[x]] (* added 1999 October 24 based on FUNRULE.LOG *) intersection[x_,complement[composite[Di,x_]]] := union[funpart[x],intersection[x,complement[cart[V,V]]]] (* derived 2006 May 28 in OOPART.NB *) intersection[x_,complement[composite[x_,Di]]] := union[intersection[x,complement[cart[V,V]]],inverse[funpart[inverse[x]]]] (* added 2000 February 5 based on REVISIT.NB *) intersection[complement[composite[Di,x_]],funpart[x_]] := funpart[x] (* derived 2004 May 7 in OOPART.NB *) intersection[complement[composite[x_,Di]],funpart[x_]] := oopart[x] (* derived 2008 July 9 in C-CO-C-E.NB *) intersection[complement[composite[E,complement[x_]]],composite[S,VERTSECT[x_]]] := VERTSECT[x] (* derived 2008 July 9 in C-CO-C-E.NB *) intersection[complement[composite[E,x_]],composite[S,VERTSECT[complement[x_]]]] := VERTSECT[complement[x]] (* derived 2004 March 6 in IMAGE.NB *) intersection[complement[composite[E,UB[complement[x_]]]],composite[S,IMAGE[x_]]] := IMAGE[x] (* added 2000 November 7 based on VS.NB *) intersection[complement[composite[inverse[x_],complement[inverse[E]]]],LB[x_]] := inverse[VERTSECT[x]] (* based on 1999 December 10 session FUNPART.1 *) intersection[complement[composite[inverse[x_],Di]],inverse[x_]] := inverse[funpart[x]] (* added 1999 October 26 based on VS-RULE.1 *) intersection[complement[composite[x_,inverse[E]]], complement[composite[complement[x_],complement[inverse[E]]]]] := union[complement[cart[V,V]],inverse[VERTSECT[complement[inverse[x]]]]] (* added 2000 December 7 based on GOBACK.NB *) intersection[complement[composite[x_,inverse[E]]],inverse[E]] := GREATEST[complement[x]] (* derived 2004 April 22 in PSM-VS.NB *) intersection[complement[composite[inverse[PS],inverse[S]]],inverse[S]] := Id (* derived 2004 June 17 at X2096.NB *) intersection[complement[composite[PS,inverse[POWER],S]],composite[inverse[POWER],S]] := BIGCUP (* derived 2004 April 6 in SMALLER.NB *) intersection[complement[composite[Q,inverse[S]]],composite[Q,S]] := SMALLER (* derived 2004 April 6 in SMALLER.NB *) intersection[complement[composite[Q,S]],composite[Q,inverse[S]]] := inverse[SMALLER] (* added 2001 April 24 based on MAP.NB *) intersection[complement[cross[x_,z_]],cross[y_,z_]] := cross[intersection[y,complement[x]],z] (* added 2001 April 24 based on MAP.NB *) intersection[complement[cross[x_,y_]],cross[x_,z_]] := cross[x,intersection[z,complement[y]]] (* derived 2006 March 25 in REG-DESC.NB *) intersection[complement[DESCENDING],complement[P[complement[REGULAR]]]] := complement[P[complement[REGULAR]]] (* derived 2006 March 25 in PC-ON-A.NB *) intersection[complement[DESCENDING],P[OMEGA]] := intersection[complement[set[0]],P[OMEGA]] (* derived 2008 December 23 in IDS.NB *) intersection[complement[domain[domain[x_]]],ids[x_]] := 0 (* derived 2007 October 12 in DJ-IM-IM.NB *) intersection[complement[domain[x_]],domain[VERTSECT[x_]]] := complement[domain[x]] (* derived 2009 January 13 in CAT-IDS.NB *) intersection[complement[domain[x_]],fix[composite[w_,x_]]] := 0 (* derived 2008 December 16 in IDS.NB *) intersection[complement[domain[fix[composite[inverse[SECOND],Di,x_]]]], complement[range[fix[composite[inverse[FIRST],Di,x_]]]],fix[domain[x_]]] := ids[x] (* derived 2004 June 14 in FU-F-O.NB *) intersection[complement[domain[funpart[x_]]],domain[x_]] := fix[composite[inverse[x],Di,x]] (* derived 2004 February 20 in REPLACE1.NB *) intersection[complement[domain[x_]],lb[x_,V]] := 0 (* added 1999 December 24 based on VERTSECT.NB *) intersection[complement[domain[VERTSECT[x_]]],domain[x_]] := complement[domain[VERTSECT[x]]] (* added 2002 June 2 based on S-SUCC.NB *) intersection[complement[E],composite[S,SUCC]] := 0 (* added 2002 May 31 based on ALEPH-0.NB *) intersection[complement[FINITE],fix[CARD]] := intersection[complement[omega],fix[CARD]] (* derived 2006 March 12 in DENUM.NB *) intersection[complement[FINITE],image[Q,set[omega]]] := image[Q,set[omega]] (* derived 2006 March 12 in DENUM.NB *) intersection[complement[FINITE],image[Q,succ[omega]]] := image[Q,set[omega]] (* derived 2009 January 13 in CAT-IDS.NB *) intersection[complement[fix[composite[complement[fix[composite[inverse[FIRST],cat[x_]]]], inverse[domain[cat[x_]]]]]],range[cat[x_]]] := ids[cat[x]] (* derived 2007 June 10 in SPINE.NB *) intersection[y_,complement[fix[composite[complement[x_],id[y_],complement[x_]]]]] := spine[x,y] (* added 2002 April 18 based on FIX-FUNP.NB *) intersection[complement[fix[composite[Di,x_]]],fix[x_]] := fix[funpart[x]] (* derived 2006 February 23 in DO-FUNP.NB *) intersection[complement[fix[composite[inverse[x_],Di,x_]]],domain[x_]] := domain[funpart[x]] (* derived 2009 January 13 in CAT-IDS.NB *) intersection[complement[fix[composite[inverse[domain[cat[x_]]], complement[fix[composite[inverse[SECOND],cat[x_]]]]]]],range[cat[x_]]] := ids[cat[x]] (* derived 2006 March 23 in PCON-FIN.NB *) intersection[complement[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]],P[OMEGA]] := intersection[P[OMEGA],subvar[inverse[E]]] (* added 1999 November 28 based on TRANSTIV.NB *) intersection[complement[fix[composite[inverse[SECOND],complement[E], fix[composite[inverse[SECOND],inverse[FIRST],FIRST, intersection[composite[inverse[E],FIRST,FIRST], composite[inverse[SECOND],FIRST, intersection[composite[inverse[E],FIRST,FIRST], composite[inverse[SECOND],SECOND,SECOND]]]]]]]]], composite[inverse[S],COMPOSE,DUP]] := composite[COMPOSE,DUP] (* added 2003 October 28 based on APPLY.NB *) intersection[complement[image[Di,image[x_,set[y_]]]],image[x_,set[y_]]] := set[APPLY[funpart[x],y]] (* derived 2006 May 28 in FUNPART.NB *) intersection[complement[image[inverse[x_],complement[set[y_]]]],image[inverse[x_],set[y_]]] := image[inverse[funpart[x]],set[y]] (* added 2003 October 15 based on ACYCLIC.NB *) intersection[complement[image[inverse[IMAGE[id[x_]]],y_]],P[x_]] := intersection[complement[y],P[x]] (* derived 2008 August 10 in SMALLFIN.NB *) intersection[complement[image[Q,set[omega]]],image[Q,succ[omega]]] := FINITE (* Theorem SG-IM-C4 in SG2 proved 1998 September 2 *) intersection[complement[image[SINGLETON,x_]],image[SINGLETON,y_]] := image[SINGLETON,intersection[complement[x],y]] (* derived 2007 August 6 in C-IMV.NB *) intersection[x_,complement[image[V,x_]]] := 0 (* added 1998 August 31 *) intersection[complement[image[V,complement[x_]]],image[V,set[x_]]] := 0 (* added 2003 July 16 based on LAMBPAIR.NB *) intersection[complement[image[V,x_]],composite[y_,z_]] := composite[y,z,id[complement[image[V,x]]]] (* derived 2007 June 6 in IDEMWRAP.NB *) intersection[x_,complement[image[V,fix[composite[complement[inverse[x_]],x_,x_]]]], complement[image[V,intersection[x_,complement[composite[x_,x_]]]]]] := idem[x] (* derived 2008 December 30 in CAT-WRAP.NB *) intersection[complement[image[V,fix[composite[x_,inverse[x_],Di]]]], complement[image[V,fix[composite[cross[Id,x_],ASSOC, complement[composite[cross[inverse[x_],Id],inverse[x_]]],x_]]]], complement[image[V,fix[composite[cross[x_,Id],inverse[ASSOC], complement[composite[cross[Id,inverse[x_]],inverse[x_]]],x_]]]], complement[image[V,fix[composite[inverse[FIRST],domain[x_], complement[inverse[domain[x_]]],x_]]]], complement[image[V,intersection[complement[cart[V,V]],x_]]], complement[image[V,intersection[complement[cart[V,range[x_]]],domain[x_]]]], complement[image[V,intersection[complement[cart[cart[V,V],V]],x_]]], complement[image[V,intersection[complement[cart[range[x_],V]],domain[x_]]]], complement[image[V,intersection[complement[domain[cod[x_]]],range[x_]]]], complement[image[V,intersection[complement[domain[dom[x_]]],range[x_]]]], complement[image[V,intersection[domain[domain[x_]], image[x_,complement[cart[V,V]]]]]],x_] := cat[x] (* derived 2008 October 20 in LIST.NB *) intersection[x_,complement[image[V,fix[composite[x_,inverse[x_],Di]]]], complement[image[V,intersection[x_,complement[cart[V,V]]]]], image[V,intersection[omega,set[domain[x_]]]]] := list[x] (* derived 2007 June 6 in IDEMWRAP.NB *) intersection[x_,complement[image[V,fix[composite[inverse[x_],inverse[x_],complement[x_]]]]], complement[image[V,intersection[x_,complement[composite[x_,x_]]]]]] := idem[x] intersection[complement[image[V,x_]],image[V,set[x_]]] := complement[image[V,x]] intersection[complement[image[V,complement[x_]]],set[x_]] := 0 (* added 2000 January 5 based on AP-DIF.NB *) intersection[complement[image[V,x_]],complement[U[x_]]] := complement[image[V,x]] (* derived 2004 November 17 in INTERVAL.NB *) intersection[complement[image[V,intersection[x_,complement[cart[V,V]]]]],image[S,set[x_]], P[union[complement[cart[domain[x_],V]],composite[Id,x_]]]] := image[inverse[image[inverse[COMPOSE],set[x]]],P[Id]] (* derived 2006 December 13 in INV-MXML.NB *) intersection[complement[image[V,intersection[x_,complement[cart[V,V]]]]], image[V,intersection[Z,set[x_]]]] := image[V,intersection[Z,set[x]]] (* added 1998 August 30: if subclass[x,set[y]],then x is a set *) intersection[complement[image[V,intersection[complement[set[y_]],x_]]], complement[image[V,set[x_]]]] := 0 (* derived 2005 January 4 in ORDINAL.NB *) intersection[complement[image[V,intersection[FULL,complement[succ[x_]],P[x_]]]],image[V,set[x_]]] := image[V,intersection[OMEGA,set[x]]] (* derived 2005 June 17 in DF.NB *) intersection[complement[image[V,intersection[nat[y_],set[nat[x_]]]]],natsub[nat[x_],nat[y_]]] := nat[natsub[nat[x],nat[y]]] (* added 1998 January 24 *) intersection[complement[image[V,set[x_]]],complement[image[Di,x_]]] := 0 (* added 2000 September 22 based on LEFT.NB *) intersection[complement[image[V,set[x_]]], set[complement[image[V,set[x_]]]]] := 0 (* derived 2007 September 15 in HULIVRSW.NB *) intersection[complement[inverse[E]],composite[complement[inverse[E]],IMAGE[SWAP]]] := composite[complement[inverse[E]],HULL[invar[SWAP]]] (* added 1999 October 31 based on INTINV.LOG *) intersection[complement[inverse[S]],inverse[PS]] := 0 (* derived 2008 January 24 in CARD-ON.NB *) intersection[complement[OMEGA],fix[CARD]] := 0 intersection[complement[P[complement[x_]]],image[V,x_]] := complement[P[complement[x]]] (* added 2001 December 31 based on DORA-DJ.NB *) intersection[complement[P[complement[x_]]],P[x_]] := intersection[complement[set[0]],P[x]] (* derived 2007 August 14 in FP-UCH.NB *) intersection[complement[P[complement[set[0]]]],fix[UCHAINS]] := fix[UCHAINS] (* derived 2005 January 11 in SET-SUCC.NB *) intersection[complement[P[complement[set[0]]]],P[succ[set[0]]]] := set[set[0],succ[set[0]]] (* added 2001 November 22 based on PC-I-SS.NB *) intersection[complement[P[complement[set[0]]]],succ[set[0]]] := set[set[0]] (* Theorem SG-IM-C3 in SG2 proved 1998 September 2 *) intersection[complement[P[x_]],image[SINGLETON,y_]] := image[SINGLETON,intersection[complement[x],y]] (* derived 2004 June 19 based on X1421-45.NB *) intersection[complement[P[x_]],range[SINGLETON]] := intersection[complement[image[SINGLETON,x]],range[SINGLETON]] (* derived 2004 April 7 in SMALLER.NB *) intersection[complement[Q],composite[Q,inverse[S]]] := inverse[SMALLER] (* derived 2004 April 7 in SMALLER.NB *) intersection[complement[Q],composite[Q,S]] := SMALLER (* added 2000 September 28 based on CROSS.NB *) intersection[complement[range[CROSS]],set[0]] := 0 (* derived 2008 December 23 in IDS.NB *) intersection[complement[range[domain[x_]]],ids[x_]] := 0 (* derived 2007 July 18 in SBV-DI.NB *) intersection[complement[range[SINGLETON]],P[succ[set[0]]]] := set[0,succ[set[0]]] (* derived 2005 January 8 in RA-PRS.NB *) intersection[complement[range[SINGLETON]],range[PAIRSET]] := image[PAIRSET,Di] (* added 2000 September 29 based on IM-DI-2.NB *) intersection[complement[range[SINGLETON]],set[0]] := set[0] (* added 2002 May 25 based on OM-INVAR.NB *) intersection[complement[range[SUCC]],set[0]] := set[0] (* derived 2004 February 20 in REPLACE1.NB *) intersection[complement[range[x_]],ub[x_,V]] := 0 (* added 2001 April 21 based on PT.NB *) intersection[complement[S],IMAGE[inverse[S]]] := 0 (* added 2000 May 16 based on K-SR.NB *) intersection[complement[S],inverse[PS]] := inverse[PS] (* added 1999 October 31 based on INTINV.LOG *) intersection[complement[S],inverse[S]] := inverse[PS] (* derived 2007 December 28 in COARSER.NB *) intersection[complement[set[0]],complement[succ[set[0]]]] := complement[succ[set[0]]] (* derived 2006 January 19 in VS-LUB.NB *) intersection[complement[set[0]],domain[VERTSECT[composite[id[range[x_]],UB[x_]]]]] := domain[VERTSECT[UB[x]]] (* derived 2007 July 5 in PC-TOWER.NB *) intersection[complement[set[0]],image[POWER,x_]] := image[POWER,x] (* derived 2007 July 5 in PC-TOWER.NB *) intersection[complement[set[0]],range[POWER]] := range[POWER] (* derived 2006 January 24 in VS-MEMB.NB *) intersection[complement[set[0]],range[VERTSECT[x_]]] := image[VERTSECT[x],domain[x]] intersection[complement[set[0]],set[set[0]]] := set[set[0]] (* added 2002 July 30 based on REVERSAL.NB *) intersection[complement[set[0]],succ[set[0]]] := set[set[0]] (* derived 2005 January 27 in DIV.NB *) intersection[complement[set[0]],succ[succ[set[0]]]] := set[set[0],succ[set[0]]] (* derived 2008 March 13 in LEAST.NB *) intersection[complement[set[nat[x_]]],nat[x_]] := nat[x] (* derived 2008 March 13 in LEAST.NB *) intersection[complement[set[ord[x_]]],ord[x_]] := ord[x] (* derived 2005 January 3 in RANK-TWO.NB *) intersection[complement[succ[set[0]]],P[succ[set[0]]]] := set[set[set[0]],succ[set[0]]] (* derived 2007 July 5 in PC-TOWER.NB *) intersection[complement[succ[succ[set[0]]]],P[succ[set[0]]]] := set[set[set[0]]] (* added 1999 December 7 based on FLIPRULE.NB *) intersection[composite[x_,CAP],composite[y_,SWAP]] := composite[intersection[y,composite[x,CAP]],SWAP] (* derived 2007 December 26 in SCHRODER.NB *) intersection[x_,composite[complement[composite[x_,y_]],inverse[y_]]] := 0 (* derived 2007 December 26 in SCHRODER.NB *) intersection[x_,composite[complement[composite[x_,inverse[y_]]],y_]] := 0 (* added 1999 December 2 based on PAIRSET.1 *) intersection[composite[complement[E],FIRST], composite[complement[E],SECOND]] := composite[DISJOINT,PAIRSET] (* derived 2007 June 10 in SPINE.NB *) intersection[composite[complement[x_],GREATEST[x_]],GREATEST[x_]] := 0 (* derived 2005 October 6 in GLB-I.NB *) intersection[composite[complement[x_],id[domain[x_]],LB[x_]],GLB[x_]] := 0 (* added 2000 December 29 based on SUPER.NB *) intersection[composite[complement[inverse[E]],x___,FIRST], composite[complement[inverse[E]],y___,SECOND]] := composite[complement[inverse[E]],CUP,cross[composite[x],composite[y]]] (* added 2000 September 5 based on CUP-S.NB *) intersection[composite[complement[inverse[E]],FIRST], composite[inverse[E],CAP]] := 0 (* added 2000 September 5 based on CUP-S.NB *) intersection[composite[complement[inverse[E]],FIRST], composite[inverse[E],DIF]] := 0 (* added 2000 December 29 based on SUPER.NB *) intersection[composite[complement[inverse[E]],x___,FIRST], composite[inverse[E],y___,SECOND]] := composite[inverse[E],DIF,SWAP,cross[composite[x],composite[y]]] (* added 2002 November 22 based on K.NB *) intersection[composite[complement[inverse[E]],IMAGE[inverse[PS]], VERTSECT[inverse[PS]]],inverse[PS]] := inverse[K] (* added 2000 September 5 based on CUP-S.NB *) intersection[composite[complement[inverse[E]],SECOND],composite[inverse[E],CAP]] := 0 (* derived 2005 October 6 in GLB-I.NB *) intersection[composite[complement[inverse[x_]],id[range[x_]],UB[x_]],LUB[x_]] := 0 (* added 2000 September 5 based on CAP-S.NB *) intersection[composite[complement[inverse[S]],FIRST],composite[inverse[S],CAP]] := 0 (* added 2000 September 5 based on CUP-S.NB *) intersection[composite[complement[inverse[S]],FIRST],composite[inverse[S],DIF]] := 0 (* added 1999 October 14 based on NORMAL.1 *) intersection[composite[complement[inverse[S]],SECOND],composite[inverse[S],CAP]] := 0 (* derived 2007 December 26 in SCHRODER.NB *) intersection[composite[complement[x_],LB[x_]],inverse[E]] := 0 (* derived 2006 August 23 in CHARBOOL.NB *) intersection[composite[cross[Id,inverse[FIRST]],FIRST],composite[cross[Id,inverse[SECOND]],SECOND]] := composite[cross[inverse[DUP],Id],TWIST] (* added 1999 October 14 based on NORMAL.1 *) intersection[composite[cross[Id,inverse[FIRST]],FIRST], composite[inverse[SECOND],inverse[SECOND],SECOND]] := ASSOC (* added 2000 August 31 based on ROT.NB *) intersection[composite[cross[Id,inverse[FIRST]],SECOND], composite[inverse[SECOND],inverse[SECOND],FIRST]] := composite[ASSOC,SWAP] (* added 2000 September 28 based on PERMUTE.NB *) intersection[composite[cross[inverse[FIRST],Id],FIRST], composite[inverse[FIRST],inverse[SECOND],SECOND]] := composite[inverse[ROT],cross[SWAP,Id]] intersection[composite[cross[inverse[FIRST],inverse[FIRST]],FIRST], composite[cross[inverse[SECOND],inverse[SECOND]],SECOND]] := TWIST (* added 2001 April 22 based on CROSS-2.NB *) intersection[composite[cross[inverse[FIRST],inverse[FIRST]],SECOND], composite[cross[inverse[SECOND],inverse[SECOND]],FIRST]] := composite[cross[SWAP,SWAP],TWIST] (* added 2003 August 17 based on EQDF-SUB.NB *) intersection[composite[cross[NATADD,NATADD],inverse[RIF]], composite[inverse[FIRST],S,FIRST]] := composite[cross[NATADD,NATADD],inverse[RIF]] (* added 2003 August 17 based on EQDF-SUB.NB *) intersection[composite[cross[NATADD,NATADD],inverse[RIF]], composite[inverse[SECOND],S,SECOND]] := composite[cross[NATADD,NATADD],inverse[RIF]] (* added 1999 December 7 based on FLIPRULE.NB *) intersection[composite[x_,CUP],composite[y_,SWAP]] := composite[intersection[y,composite[x,CUP]],SWAP] (* added 1999 October 5 based on PAIRSET.3 *) intersection[composite[Di,FIRST],composite[Di,SECOND]] := composite[complement[inverse[E]],PAIRSET] (* added 2000 February 5 based on REVISIT.NB *) intersection[composite[Di,x_],funpart[x_]] := 0 (* added 2002 January 18 based on FUNPART.NB *) intersection[x_,composite[Di,funpart[x_]]] := 0 (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DIF,SWAP],composite[DISJOINT,DIF]] := composite[DIF,SWAP] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DIF,SWAP],composite[inverse[S],DIF]] := cart[inverse[S],set[0]] (* added 1999 December 2 based on SYMDIF-5.NB *) intersection[composite[DISJOINT,CAP],composite[inverse[S],CUP]] := composite[inverse[S],SYMDIF] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,CAP],composite[inverse[S],SECOND]] := composite[inverse[S],DIF,SWAP] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,CAP],composite[inverse[S],SYMDIF]] := composite[inverse[S],SYMDIF] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,CAP],composite[S,FIRST]] := composite[S,FIRST,id[DISJOINT]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,CUP],composite[inverse[S],SYMDIF]] := cart[cart[V,V],set[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,CUP],composite[S,DIF]] := composite[DISJOINT,SECOND,id[S]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,CUP],composite[S,SYMDIF]] := composite[DISJOINT,inverse[DUP]] (* added 1999 December 2 based on SYMDIF-5.NB *) intersection[composite[DISJOINT,DIF],composite[DISJOINT,DIF,SWAP]] := composite[DISJOINT,SYMDIF] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,DIF],composite[S,CUP]] := composite[S,SECOND,id[S]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,DIF],composite[S,FIRST]] := composite[S,FIRST,id[S]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,FIRST],composite[S,DIF]] := composite[DISJOINT,FIRST,id[S]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,FIRST],composite[inverse[S],CUP]] := composite[inverse[S],DIF,SWAP] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,SECOND],composite[inverse[S],CUP]] := composite[inverse[S],DIF] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,SYMDIF],composite[inverse[S],CAP]] := composite[inverse[S],CAP] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,SYMDIF],composite[inverse[S],CUP]] := composite[inverse[S],CAP] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,SYMDIF],composite[inverse[S],DIF]] := cart[cart[V,V],set[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,SYMDIF],composite[inverse[S],FIRST]] := composite[inverse[S],CAP] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,SYMDIF],composite[inverse[S],SECOND]] := composite[inverse[S],CAP] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[DISJOINT,SYMDIF],composite[S,CUP]] := composite[S,inverse[DUP]] (* added 1999 October 12 to Normalize ROT *) intersection[composite[cross[inverse[SECOND],Id],FIRST], composite[inverse[FIRST],inverse[FIRST],SECOND]] := ROT (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,CAP],composite[DISJOINT,CUP]] := composite[DISJOINT,CUP] (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,CAP],composite[DISJOINT,DIF]] := composite[DISJOINT,FIRST] (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,CAP],composite[DISJOINT,FIRST]] := composite[DISJOINT,FIRST] (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,CAP],composite[DISJOINT,SECOND]] := composite[DISJOINT,SECOND] (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,CAP],composite[DISJOINT,SYMDIF]] := composite[DISJOINT,CUP] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,CAP],composite[inverse[S],DIF]] := composite[inverse[S],DIF] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,CAP],composite[inverse[S],FIRST]] := composite[inverse[S],DIF] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,CAP],composite[S,SECOND]] := composite[S,SECOND,id[DISJOINT]] (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,CUP],composite[DISJOINT,DIF]] := composite[DISJOINT,CUP] (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,CUP],composite[DISJOINT,FIRST]] := composite[DISJOINT,CUP] (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,CUP],composite[DISJOINT,SECOND]] := composite[DISJOINT,CUP] (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,CUP],composite[DISJOINT,SYMDIF]] := composite[DISJOINT,CUP] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,CUP],composite[inverse[S],CAP]] := cart[cart[V,V],set[0]] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,CUP],composite[inverse[S],DIF]] := cart[cart[V,V],set[0]] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,CUP],composite[inverse[S],FIRST]] := cart[cart[V,V],set[0]] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,CUP],composite[inverse[S],SECOND]] := cart[cart[V,V],set[0]] (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,DIF],composite[DISJOINT,FIRST]] := composite[DISJOINT,FIRST] (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,DIF],composite[DISJOINT,SECOND]] := composite[DISJOINT,CUP] (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,DIF],composite[DISJOINT,SYMDIF]] := composite[DISJOINT,SYMDIF] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,DIF],composite[inverse[S],CAP]] := composite[inverse[S],CAP] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,DIF],composite[inverse[S],CUP]] := composite[inverse[S],SECOND] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,DIF],composite[inverse[S],DIF,SWAP]] := composite[inverse[S],DIF,SWAP] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,DIF],composite[inverse[S],FIRST]] := composite[inverse[S],CAP] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,DIF],composite[inverse[S],SECOND]] := composite[inverse[S],SECOND] (* added 1999 December 7 based on REMOVED2.NB *) intersection[composite[DISJOINT,DIF],composite[inverse[S],SYMDIF]] := composite[inverse[S],DIF,SWAP] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,DIF,SWAP],composite[inverse[S],DIF]] := composite[inverse[S],DIF] (* added 1999 December 2 based on CUP-LOG.1 *) intersection[composite[DISJOINT,FIRST],composite[DISJOINT,SECOND]] := composite[DISJOINT,CUP] (* added 1999 October 26 based on DIF-SWAP.LOG *) intersection[composite[DISJOINT,FIRST],composite[inverse[S],SECOND]] := composite[inverse[S],DIF,SWAP] (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,FIRST],composite[DISJOINT,SYMDIF]] := composite[DISJOINT,CUP] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,FIRST],composite[inverse[S],CAP]] := cart[cart[V,V],set[0]] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,FIRST],composite[inverse[S],DIF]] := cart[cart[V,V],set[0]] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,FIRST],composite[S,CAP]] := composite[DISJOINT,FIRST,id[DISJOINT]] (* added 1999 December 5 based on I-DJ.NB *) intersection[composite[DISJOINT,SECOND],composite[DISJOINT,SYMDIF]] := composite[DISJOINT,CUP] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,SECOND],composite[inverse[S],CAP]] := cart[cart[V,V],set[0]] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,SECOND],composite[inverse[S],DIF]] := composite[inverse[S],DIF] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[DISJOINT,SECOND],composite[S,CAP]] := composite[DISJOINT,SECOND,id[DISJOINT]] (* derived 2005 December 30 in UB-THIN.NB *) intersection[composite[E,complement[x_],inverse[E]],VERTSECT[UB[x_]]] := 0 (* added 2002 April 10 based on INVAR.NB *) intersection[composite[E,FIRST],composite[complement[E],SECOND]] := composite[complement[INVAR],SINGLETON] (* added 2000 December 29 based on SUPER.NB *) intersection[composite[E,x___,FIRST],composite[E,y___,SECOND]] := composite[S,PAIRSET,cross[composite[x],composite[y]]] (* added 2003 June 23 based on INVAR.NB *) intersection[composite[E,SECOND],composite[complement[E],FIRST]] := composite[complement[INVAR],SINGLETON,SWAP] (* derived 2004 June 25 in X2870.NB *) intersection[composite[E,UB[complement[x_]]],IMAGE[x_]] := 0 (* derived 2005 April 23 in FACT-S.NB *) intersection[composite[FACTORIAL,S,inverse[FACTORIAL]],inverse[E]] := 0 (* added 2000 September 3 based on ROT.NB *) intersection[composite[x_,FIRST],composite[y_,inverse[DUP]]] := composite[intersection[x,y],inverse[DUP]] (* added 2000 August 30 based on SESSION1.LOG *) intersection[composite[x_,FIRST],composite[w_,SWAP,cross[y_,z_]]] := composite[intersection[composite[w,cross[z,y]],composite[x,SECOND]],SWAP] (* added 2003 July 1 based on IN-DUP.NB *) intersection[composite[x_,FIRST],inverse[DUP]] := composite[id[fix[x]],inverse[DUP]] (* Theorem AP-C-FU2 in AP2 proved 1999 July 9 *) intersection[composite[x_,funpart[z_]],complement[composite[y_,funpart[z_]]]] := composite[intersection[x,complement[y]],funpart[z]] intersection[composite[Id,x_],y_] := composite[Id,intersection[x,y]] intersection[composite[id[x_],y_],z_] := composite[id[x],intersection[y,z]] intersection[x_,composite[y_,id[z_]]] := composite[intersection[x,y],id[z]] (* added 2003 July 16 based on LAMBPAIR.NB *) intersection[composite[x_,y_],image[V,z_]] := composite[x,y,id[image[V,z]]] (* derived 2004 October 14 in REFINE.NB *) intersection[composite[inverse[BIGCUP],BIGCUP], composite[inverse[IMAGE[inverse[S]]],S]] := composite[inverse[IMAGE[inverse[S]]],COARSER] (* derived 2003 December 31 in COARSER.NB *) intersection[composite[inverse[BIGCUP],BIGCUP],inverse[S]] := inverse[COARSER] (* derived 2004 October 14 in REFINE.NB *) intersection[composite[inverse[BIGCUP],inverse[POWER],S], composite[inverse[S],POWER,BIGCUP]] := composite[inverse[BIGCUP],BIGCUP] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[BIGCUP],S],composite[inverse[S],POWER]] := inverse[BIGCUP] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[CAP],S], composite[inverse[SECOND],complement[S]]] := 0 (* derived 2005 November 5 in FIN-FU.NB *) intersection[composite[inverse[CARD],E,CARD],image[DORA,intersection[FINITE,FUNS]]] := 0 (* derived 2006 February 10 in PIGEON.NB *) intersection[composite[inverse[CARD],id[omega],CARD],inverse[S]] := id[FINITE] (* derived 2009 January 21 in HOM.NB *) intersection[composite[inverse[cod[x_]],SECOND],composite[inverse[dom[x_]],FIRST]] := hom[x] (* added 2003 May 5 based on IN-E-RCF.NB *) intersection[composite[inverse[CUP],inverse[S]], composite[inverse[FIRST],inverse[S]]] := composite[inverse[CUP],inverse[S]] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[CUP],inverse[S]], composite[inverse[SECOND],complement[inverse[S]]]] := 0 (* added 2003 May 5 based on IN-E-RCF.NB *) intersection[composite[inverse[CUP],inverse[S]], composite[inverse[SECOND],inverse[S]]] := composite[inverse[CUP],inverse[S]] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[DIF],S], composite[inverse[SECOND],E,inverse[E]]] := 0 (* added 2001 December 24 based on MAP.NB *) intersection[composite[inverse[DORA],cross[x_,y_]], composite[inverse[IMAGE[FIRST]],z___,FIRST]] := composite[inverse[DORA],cross[intersection[x,composite[z]],y]] (* added 2001 December 24 based on MAP.NB *) intersection[composite[inverse[DORA],cross[x_,y_]], composite[inverse[IMAGE[SECOND]],z___,SECOND]] := composite[inverse[DORA],cross[x,intersection[y,composite[z]]]] (* derived 2008 December 23 in DOM-RAN.NB *) intersection[composite[inverse[DORA],DUP],IMAGE[DUP]] := IMAGE[DUP] (* derived 2008 December 23 in DOM-RAN.NB *) intersection[composite[inverse[DUP],DORA],inverse[IMAGE[DUP]]] := inverse[IMAGE[DUP]] (* derived 2006 October 7 in REIF-RFX.NB *) intersection[composite[inverse[E],CART,DUP,IMAGE[inverse[DUP]]],inverse[E]] := composite[inverse[E],CORE[RFX]] (* derived 2006 June 10 in BINOPS.NB *) intersection[composite[inverse[E],CLIQUES],composite[inverse[DUP],inverse[CART],S]] := composite[inverse[DUP],inverse[CART]] (* added 2000 September 22 based on SUPERULE.LOG *) intersection[composite[u___,inverse[E],v___], composite[x___,inverse[E],y___]] := composite[ intersection[composite[u,FIRST],composite[x,SECOND]],inverse[E],CART, intersection[composite[inverse[FIRST],v],composite[inverse[SECOND],y]]] (* added 2000 December 29 based on SUPER.NB *) intersection[composite[inverse[E],x___,FIRST], composite[complement[inverse[E]],y___,SECOND]] := composite[inverse[E],DIF,cross[composite[x],composite[y]]] (* added 2000 September 12 based on CLS6-1.NB *) intersection[composite[inverse[E],FIRST],composite[inverse[S],SECOND]] := composite[inverse[E],CAP,cross[Id,POWER]] (* derived 2006 October 31 in REPLACE.NB *) intersection[composite[inverse[E],FUNPART],inverse[E]] := composite[inverse[E],FUNPART] (* derived 2004 September 25 in WFPART.NB *) intersection[composite[inverse[E],IMAGE[id[cart[V,V]]]], composite[inverse[SECOND],complement[inverse[E]],BIGCUP,SUBVAR]] := composite[inverse[E],WFPART] (* added 2002 November 13 based on NORM-ADD.NB *) intersection[composite[inverse[E],IMAGE[id[complement[cart[V,V]]]],E],cross[x_,y_]] := 0 (* derived 2005 October 5 in LEASTGLB.NB *) intersection[composite[inverse[E],IMAGE[id[x_]]],GLB[y_]] := composite[id[x],LEAST[y]] (* added 2002 October 27 based on GREATEST.NB *) intersection[composite[inverse[E],IMAGE[id[x_]]],GREATEST[y_]] := composite[id[x],GREATEST[y]] (* derived 2005 September 25 in VARIOUS.NB *) intersection[composite[inverse[E],IMAGE[id[x_]]],inverse[E]] := composite[inverse[E],IMAGE[id[x]]] (* added 2002 June 7 based on LEAST.NB *) intersection[composite[inverse[E],IMAGE[id[x_]]],LB[y_]] := composite[id[x],LEAST[y]] (* added 2002 October 27 based on GREATEST.NB *) intersection[composite[inverse[E],IMAGE[id[x_]]],LEAST[y_]] := composite[id[x],LEAST[y]] (* derived 2005 October 5 in LEASTGLB.NB *) intersection[composite[inverse[E],IMAGE[id[x_]]],LUB[y_]] := composite[id[x],GREATEST[y]] (* added 2002 October 27 based on GREATEST.NB *) intersection[composite[inverse[E],IMAGE[id[x_]]],MAXIMAL[y_]] := composite[id[x],MAXIMAL[y]] (* added 2002 October 27 based on GREATEST.NB *) intersection[composite[inverse[E],IMAGE[id[x_]]],MINIMAL[y_]] := composite[id[x],MINIMAL[y]] (* added 2002 June 7 based on LEAST.NB *) intersection[composite[inverse[E],IMAGE[id[x_]]],UB[y_]] := composite[id[x],GREATEST[y]] (* derived 2006 October 24 in EVAL.NB *) intersection[composite[inverse[E],IMAGE[SECOND],IMAGE[id[cart[set[x_],V]]]],eval[x_]] := eval[x] (* derived 2006 October 7 in SYM.NB *) intersection[composite[inverse[E],IMAGE[SWAP]],inverse[E]] := composite[inverse[E],CORE[SYM]] (* derived 2006 October 31 in REPLACE.NB *) intersection[composite[inverse[E],INVERSE,FUNPART,IMAGE[SWAP]],inverse[E]] := composite[inverse[E],INVERSE,FUNPART,IMAGE[SWAP]] (* derived 2006 October 31 in REPLACE.NB *) intersection[composite[inverse[E],OOPART],inverse[E]] := composite[inverse[E],OOPART] (* added 2002 May 19 based on FUNP-INE.NB *) intersection[composite[x_,inverse[E]],UB[complement[composite[Di,x_]]]] := composite[inverse[SINGLETON],IMAGE[x]] (* derived 2003 December 31 in BC-I.NB *) intersection[composite[inverse[E],UCLOSURE],composite[inverse[POWER],S]] := BIGCUP (* derived 2004 January 7 in VSLAMBDA.NB *) intersection[composite[inverse[E],VS], composite[inverse[FIRST],complement[inverse[E]],IMAGE[FIRST]]] := 0 (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[FIRST],complement[E]], composite[inverse[SECOND],complement[E]]] := composite[inverse[CUP],complement[E]] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[FIRST],complement[E]], composite[inverse[SECOND],E]] := composite[SWAP,inverse[DIF],E] (* added 2000 December 14 based on MORE-PRS.NB *) intersection[composite[inverse[FIRST],complement[inverse[E]]], composite[inverse[SECOND],complement[inverse[E]]]] := composite[inverse[E],CART,DUP,DISJOINT] (* derived 2004 January 7 in VSLAMBDA.NB *) intersection[composite[inverse[FIRST],x_],composite[RIGHT[y_],z_]] := composite[RIGHT[y],intersection[x,z]] (* added 1999 October 10 based on TWIST.2 *) intersection[composite[inverse[FIRST],cross[FIRST,FIRST]], composite[inverse[SECOND],cross[SECOND,SECOND]]] := TWIST (* added 2003 July 17 based on DIR-PROD.NB *) intersection[composite[inverse[FIRST],x_,cross[FIRST,FIRST]], composite[inverse[SECOND],y_,cross[SECOND,SECOND]]] := composite[cross[x,y],TWIST] (* derived 2005 July 30 in DIRECT12.NB *) intersection[composite[inverse[FIRST],x_,cross[FIRST,FIRST]], composite[inverse[SECOND],SECOND,FIRST]] := composite[cross[x,FIRST],TWIST] (* derived 2005 July 30 in DIRECT12.NB *) intersection[composite[inverse[FIRST],x_,cross[FIRST,FIRST]], composite[inverse[SECOND],SECOND,SECOND]] := composite[cross[x,SECOND],TWIST] (* derived 2003 December 26 in TWIST.NB *) intersection[composite[inverse[FIRST],x___,cross[FIRST,Id]], composite[inverse[SECOND],y___,cross[SECOND,Id]]] := composite[cross[composite[x],composite[y]],TWIST,cross[Id,DUP]] (* added 2000 August 31 based on ROT.NB *) intersection[composite[inverse[FIRST],cross[FIRST,Id]], composite[inverse[SECOND],SECOND,FIRST]] := composite[inverse[ROT],cross[SWAP,Id]] (* derived 2006 December 11 in MIXDISTR.NB *) intersection[composite[inverse[FIRST],x_,cross[Id,FIRST]], composite[inverse[SECOND],y_,cross[Id,SECOND]]] := composite[cross[x,y],TWIST,cross[DUP,Id]] (* revised 2000 September 21 based on PERMS1.NB *) intersection[composite[inverse[FIRST],x___,cross[Id,FIRST]], composite[inverse[SECOND],y___,SECOND,SECOND]] := composite[cross[composite[x],composite[y]],inverse[ASSOC]] (* added 2000 August 30 based on SESSION2.LOG *) intersection[composite[inverse[FIRST],cross[Id,SECOND]], composite[inverse[SECOND],FIRST,SECOND]] := composite[inverse[ASSOC],cross[Id,SWAP]] (* derived 2003 December 26 in TWIST.NB *) intersection[composite[inverse[FIRST],x___,cross[SECOND,Id]], composite[inverse[SECOND],y___,cross[FIRST,Id]]] := composite[SWAP,cross[composite[y],composite[x]],TWIST,cross[Id,DUP]] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[FIRST],cross[SECOND,Id]], composite[inverse[SECOND],FIRST,FIRST]] := inverse[ROT] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[FIRST],Di], composite[inverse[SECOND],Di]] := composite[inverse[PAIRSET],complement[E]] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[FIRST],DISJOINT], composite[inverse[SECOND],S]] := composite[SWAP,inverse[DIF],S] (* derived 2009 January 21 in HOM.NB *) intersection[composite[inverse[FIRST],dom[x_]],composite[inverse[SECOND],cod[x_]]] := inverse[hom[x]] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[FIRST],E], composite[inverse[SECOND],complement[E]]] := composite[inverse[DIF],E] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[FIRST],E], composite[inverse[SECOND],E]] := composite[inverse[CAP],E] (* Theorem X-DEF in X1 proved 1998 August 4 *) intersection[composite[inverse[FIRST],x___,FIRST], composite[inverse[SECOND],y___,SECOND]] := cross[composite[x],composite[y]] (* derived 2008 October 10 in DO-QG.NB *) intersection[composite[inverse[FIRST],FIRST],composite[inverse[INTADD],INTADD]] := id[cart[Z,Z]] (* derived 2008 October 10 in DO-QG.NB *) intersection[composite[inverse[FIRST],FIRST],composite[inverse[NATADD],NATADD]] := id[cart[omega,omega]] (* derived 2008 October 10 in DO-QG.NB *) intersection[composite[inverse[FIRST],FIRST],composite[inverse[quasigp[x_]],quasigp[x_]]] := id[domain[quasigp[x]]] (* derived 2008 October 10 in DO-QG.NB *) intersection[composite[inverse[FIRST],FIRST],composite[inverse[RIF],RIF]] := id[composite[inverse[SECOND],FIRST]] (* derived 2008 October 18 in QG-ROT.NB *) intersection[composite[inverse[FIRST],FIRST], composite[inverse[rotate[quasigp[x_]]],rotate[quasigp[x_]]]] := id[domain[quasigp[x]]] (* added 2000 September 21 based on ASSOC.NB *) intersection[composite[inverse[FIRST],x___,FIRST,FIRST], composite[inverse[SECOND],y___,cross[SECOND,Id]]] := composite[cross[composite[x],composite[y]],ASSOC] (* derived 2008 October 10 in DO-QG.NB *) intersection[composite[inverse[FIRST],FIRST],composite[inverse[SYMDIF],SYMDIF]] := id[cart[V,V]] (* derived 2005 July 30 in DIRECT12.NB *) intersection[composite[inverse[FIRST],FIRST,FIRST],composite[inverse[SECOND],x_,cross[SECOND,SECOND]]] := composite[cross[FIRST,x],TWIST] (* derived 2005 July 30 in DIRECT12.NB *) intersection[composite[inverse[FIRST],FIRST,SECOND],composite[inverse[SECOND],x_,cross[SECOND,SECOND]]] := composite[cross[SECOND,x],TWIST] (* added 2001 December 22 based on DORA-1.NB *) intersection[composite[inverse[FIRST],x___,IMAGE[FIRST]], composite[inverse[SECOND],y___,IMAGE[SECOND]]] := composite[cross[composite[x],composite[y]],DORA] (* derived 2006 October 28 in DORA.NB *) intersection[composite[inverse[FIRST],IMAGE[SECOND]], composite[inverse[SECOND],IMAGE[FIRST]]] := composite[SWAP,DORA] (* derived 2006 October 7 in REIF-RFX.NB *) intersection[x_,composite[inverse[FIRST],inverse[DUP],x_], composite[inverse[SECOND],inverse[DUP],x_]] := composite[inverse[E],id[RFX],inverse[LB[x]]] (* added 1999 October 14 based on ROT-FLIP.1 *) intersection[composite[inverse[FIRST],inverse[FIRST],FIRST], composite[cross[inverse[SECOND],Id],SECOND]] := inverse[ASSOC] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[FIRST],inverse[S]], composite[inverse[SECOND],inverse[S]]] := composite[inverse[CUP],inverse[S]] (* added 2003 May 5 based on IN-E-RCF.NB *) intersection[composite[inverse[FIRST],inverse[S]],inverse[CUP]] := inverse[CUP] (* added 2002 December 3 based on EQDFNORM.NB *) intersection[composite[inverse[FIRST],rotate[x_],cross[y_,FIRST]], composite[inverse[SECOND],SECOND,SECOND]] := composite[RIF,cross[composite[inverse[x],y],SWAP]] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[FIRST],S], composite[inverse[SECOND],DISJOINT]] := composite[inverse[DIF],S] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[FIRST],S], composite[inverse[SECOND],S]] := composite[inverse[CAP],S] (* added 2001 April 22 based on CROSS-2.NB *) intersection[composite[inverse[FIRST],S,IMAGE[cross[FIRST,FIRST]]], composite[inverse[SECOND],S,IMAGE[cross[SECOND,SECOND]]]] := composite[inverse[CROSS],S,IMAGE[id[cart[cart[V,V],cart[V,V]]]]] (* added 2001 February 3 based on CAP.NB *) intersection[composite[inverse[FIRST],SECOND], composite[inverse[DIF],DISJOINT,FIRST]] := intersection[composite[inverse[FIRST],SECOND], composite[inverse[SECOND],S,CAP]] (* revised 2000 September 21 *) intersection[composite[inverse[FIRST],x___,SECOND], composite[inverse[SECOND],y___,FIRST]] := composite[cross[composite[x],composite[y]],SWAP] (* added 1999 December 23 based on INVAR.TXT *) intersection[composite[inverse[IMAGE[cross[FIRST,FIRST]]],inverse[S]], composite[inverse[IMAGE[cross[SECOND,SECOND]]],inverse[S]]] := composite[inverse[IMAGE[id[cart[cart[V,V],cart[V,V]]]]], inverse[S],CROSS,DUP] (* added 1999 December 23 *) intersection[composite[inverse[IMAGE[cross[FIRST,FIRST]]],inverse[S],FIRST], composite[inverse[IMAGE[cross[SECOND,SECOND]]],inverse[S],SECOND]] := composite[inverse[IMAGE[id[cart[cart[V,V],cart[V,V]]]]], inverse[S],CROSS] (* added 2001 December 22 based on DORA-1.NB *) intersection[composite[inverse[IMAGE[FIRST]],x___,FIRST], composite[inverse[IMAGE[SECOND]],y___,SECOND]] := composite[inverse[DORA],cross[composite[x],composite[y]]] (* derived 2005 January 6 in DJ-U-Q.NB *) intersection[composite[inverse[IMAGE[FIRST]],x_,IMAGE[FIRST]], composite[inverse[IMAGE[SECOND]],y_,IMAGE[SECOND]]] := composite[inverse[DORA],cross[x,y],DORA] (* added 1999 November 28 based on CART-DUP.NB *) intersection[composite[inverse[IMAGE[FIRST]],inverse[S]], composite[inverse[IMAGE[SECOND]],inverse[S]]] := composite[inverse[IMAGE[id[cart[V,V]]]],inverse[S],CART,DUP] (* derived 2004 November 16 in XS.NB *) intersection[composite[inverse[IMAGE[FIRST]],S,IMAGE[FIRST]],inverse[S]] := intersection[composite[inverse[IMAGE[FIRST]],IMAGE[FIRST]],inverse[S]] (* derived 2008 September 29 in MAP.NB *) intersection[composite[inverse[IMAGE[FIRST]],SECOND], composite[inverse[IMAGE[SECOND]],FIRST]] := composite[inverse[DORA],SWAP] (* derived 2008 May 6 in RS-DO.NB *) intersection[composite[inverse[IMAGE[FIRST]],SECOND],composite[inverse[S],IMAGE[DUP],FIRST]] := composite[IMAGE[DUP],SECOND,id[inverse[S]]] (* derived 2008 July 29 in IN-FUNP.NB *) intersection[composite[inverse[IMAGE[id[cart[V,V]]]],E], inverse[LB[complement[cross[Id,Di]]]]] := composite[inverse[FUNPART],E] (* derived 2008 July 29 in IN-FUNP.NB *) intersection[composite[inverse[IMAGE[id[cart[V,V]]]],E], inverse[UB[complement[cross[Id,Di]]]]] := composite[inverse[FUNPART],E] (* added 2003 May 30 based on FIX-ROT.NB *) intersection[composite[inverse[IMAGE[id[x_]]],inverse[S]],inverse[S]] := inverse[S] (* added 2003 June 24 based on INVERSE.NB *) intersection[composite[inverse[IMAGE[id[x_]]],S],inverse[S]] := id[P[x]] (* derived 2008 July 27 in PRS-REG.NB *) intersection[composite[inverse[IMAGE[inverse[PAIRSET]]],E], composite[inverse[IMAGE[inverse[SINGLETON]]],E,FIRST]] := composite[S,KURA] (* derived 2005 July 30 in CATORELN.NB *) intersection[composite[inverse[IMAGE[SECOND]],inverse[S]],IMAGE[DUP]] := IMAGE[DUP] (* derived 2004 November 16 in XS.NB *) intersection[composite[inverse[IMAGE[thinpart[x_]]],S,IMAGE[thinpart[x_]]],inverse[S]] := intersection[composite[inverse[IMAGE[thinpart[x]]],IMAGE[thinpart[x]]],inverse[S]] (* derived 2008 October 10 in DO-QG.NB *) intersection[composite[inverse[INTADD],INTADD],composite[inverse[SECOND],SECOND]] := id[cart[Z,Z]] (* derived 2008 July 9 in C-CO-C-E.NB *) intersection[composite[INVERSE,inverse[LB[x_]]],composite[S,VERTSECT[composite[SWAP,x_]]]] := VERTSECT[composite[SWAP,x]] (* derived 2008 July 9 in C-CO-C-E.NB *) intersection[composite[INVERSE,inverse[UB[x_]]], composite[S,VERTSECT[composite[SWAP,inverse[x_]]]]] := VERTSECT[composite[SWAP,inverse[x]]] (* added 2003 July 5 based on PLUS-ISO.NB *) intersection[composite[INVERSE,inverse[UB[rotate[NATADD]]]],composite[S,PLUS]] := PLUS (* derived 2008 October 10 in DO-QG.NB *) intersection[composite[inverse[NATADD],NATADD],composite[inverse[SECOND],SECOND]] := id[cart[omega,omega]] (* rule to make BIGCUP become normal added 1998 August 9 *) intersection[composite[inverse[POWER],S],composite[inverse[S],BIGCUP]] := BIGCUP (* derived 2006 March 26 in I-BC.NB *) intersection[composite[inverse[POWER],S],inverse[E]] := composite[BIGCUP,id[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]]] (* derived 2008 October 10 in DO-QG.NB *) intersection[composite[inverse[RIF],RIF],composite[inverse[SECOND],SECOND]] := id[composite[inverse[SECOND],FIRST]] intersection[x_,composite[inverse[S],x_]] := composite[Id,x] intersection[x_,composite[x_,inverse[S]]] := composite[Id,x] (* added 2000 November 3 based on SUBVAR.LOG *) intersection[composite[inverse[S],BIGCAP],inverse[E]] := intersection[BIGCAP,inverse[E]] (* added 1999 December 5 based on IN-SR.NB *) intersection[composite[inverse[S],CAP],composite[inverse[S],CUP]] := composite[inverse[S],CAP] (* added 1999 December 5 based on IN-SR.NB *) intersection[composite[inverse[S],CAP],composite[inverse[S],DIF]] := cart[cart[V,V],set[0]] (* added 1999 December 5 based on IN-SR.NB *) intersection[composite[inverse[S],CAP],composite[inverse[S],FIRST]] := composite[inverse[S],CAP] (* added 1999 December 5 based on IN-SR.NB *) intersection[composite[inverse[S],CAP],composite[inverse[S],SECOND]] := composite[inverse[S],CAP] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[inverse[S],CAP],composite[inverse[S],SYMDIF]] := cart[cart[V,V],set[0]] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[inverse[S],CAP],composite[S,FIRST]] := composite[FIRST,id[S]] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[inverse[S],CAP],composite[S,SECOND]] := composite[SECOND,id[inverse[S]]] (* added 2001 December 24 based on MAP.NB *) intersection[composite[inverse[S],CART],composite[inverse[IMAGE[FIRST]],x___,FIRST]] := composite[id[P[cart[V,V]]],inverse[DORA], cross[intersection[composite[x],inverse[S]],inverse[S]]] (* added 2001 December 24 based on MAP.NB *) intersection[composite[inverse[S],CART], composite[inverse[IMAGE[SECOND]],y___,SECOND]] := composite[id[P[cart[V,V]]],inverse[DORA], cross[inverse[S],intersection[composite[y],inverse[S]]]] (* added 1999 December 5 based on IN-SR.NB *) intersection[composite[inverse[S],CUP],composite[inverse[S],DIF]] := composite[inverse[S],DIF] (* added 1999 December 5 based on IN-SR.NB *) intersection[composite[inverse[S],CUP],composite[inverse[S],FIRST]] := composite[inverse[S],FIRST] (* added 1999 December 5 based on IN-SR.NB *) intersection[composite[inverse[S],CUP],composite[inverse[S],SECOND]] := composite[inverse[S],SECOND] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[inverse[S],CUP],composite[inverse[S],SYMDIF]] := composite[inverse[S],SYMDIF] (* added 2001 May 6 based on SUPERULE.NB *) intersection[composite[inverse[S],CUP,cross[FIRST,Id]], composite[inverse[S],CUP,cross[SECOND,Id]]] := composite[inverse[S],CUP,cross[CAP,Id]] (* added 1999 October 26 based on DIF-LOG.2 ad hoc rule *) intersection[composite[inverse[S],DIF], composite[E,inverse[E],SECOND]] := 0 (* added 1999 December 5 based on IN-SR.NB *) intersection[composite[inverse[S],DIF],composite[inverse[S],DIF,SWAP]] := cart[cart[V,V],set[0]] (* added 1999 December 5 based on IN-SR.NB *) intersection[composite[inverse[S],DIF],composite[inverse[S],FIRST]] := composite[inverse[S],DIF] (* added 1999 December 5 based on IN-SR.NB *) intersection[composite[inverse[S],DIF],composite[inverse[S],SECOND]] := cart[cart[V,V],set[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[inverse[S],DIF],composite[inverse[S],SYMDIF]] := composite[inverse[S],DIF] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[inverse[S],DIF],composite[S,FIRST]] := composite[FIRST,id[DISJOINT]] (* added 2001 March 8 based on IMAGEDIF.NB *) intersection[composite[inverse[S],x___,FIRST],composite[DISJOINT,y___,SECOND]] := composite[inverse[S],DIF,cross[composite[x],composite[y]]] (* added 2001 April 30 based on CLIQUES2.NB *) intersection[composite[inverse[S],x___,FIRST], composite[inverse[S],y___,SECOND]] := composite[inverse[S],CAP,cross[composite[x],composite[y]]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[inverse[S],FIRST],composite[inverse[S],SYMDIF]] := composite[inverse[S],DIF] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[inverse[S],FIRST],composite[S,CUP]] := composite[FIRST,id[inverse[S]]] (* added 2001 April 2 based on HF-X.NB *) intersection[composite[inverse[S],HC],inverse[E]] := composite[inverse[E],HC] (* derived 2007 October 19 in RECT-CUT.NB *) intersection[composite[inverse[S],IMAGE[id[x_]]],UB[y_]] := composite[id[P[x]],intersection[inverse[S],UB[y]]] (* derived 2004 December 6 in IDP.NB *) intersection[composite[inverse[S],IMAGE[inverse[DUP]]],composite[inverse[IMAGE[DUP]],S]] := inverse[IMAGE[DUP]] (* derived 2007 October 21 in SYM-RSX.NB *) intersection[composite[inverse[S],IMAGE[id[cart[V,V]]]], fix[composite[inverse[DIF],DISJOINT,id[image[CART,Id]],S,IMAGE[id[cart[V,V]]],SECOND]]] := composite[CAP,id[cart[V,image[CART,Id]]],inverse[FIRST]] (* derived 2005 September 25 in VARIOUS.NB *) intersection[composite[inverse[S],IMAGE[id[x_]]],inverse[S]] := composite[inverse[S],IMAGE[id[x]]] (* added 2003 March 9 based on REFINE.NB *) intersection[composite[inverse[S],IMAGE[inverse[S]]], composite[inverse[IMAGE[inverse[S]]],S]] := composite[inverse[IMAGE[inverse[S]]],IMAGE[inverse[S]]] (* added 2001 March 4 based on INVERSE2.NB *) intersection[composite[inverse[S],IMAGE[SWAP]], composite[inverse[IMAGE[SWAP]],S]] := INVERSE (* added 2002 November 30 based on INVERSE.NB *) intersection[composite[inverse[S],INVERSE], composite[inverse[IMAGE[SWAP]],S]] := INVERSE (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[inverse[S],SECOND],composite[S,CUP]] := composite[SECOND,id[S]] (* added 1999 December 6 based on I-MIXED.NB *) intersection[composite[inverse[S],SECOND],composite[S,DIF]] := composite[inverse[S],SECOND,id[S]] (* derived 2004 September 25 in LAMB-WF.NB *) intersection[composite[inverse[SECOND],complement[inverse[E]],BIGCUP,SUBVAR],inverse[E]] := composite[inverse[E],WFPART] (* added 1999 October 31 based on INTINV.LOG *) intersection[composite[inverse[SECOND],complement[inverse[E]]],composite[inverse[E],CART,DUP]] := 0 (* derived 2004 January 7 in VSLAMBDA.NB *) intersection[composite[inverse[SECOND],x_],composite[LEFT[y_],z_]] := composite[LEFT[y],intersection[x,z]] (* added 2000 August 31 based on ROT.NB *) intersection[composite[inverse[SECOND],cross[Id,FIRST]], composite[inverse[FIRST],SECOND,SECOND]] := composite[SWAP,inverse[ASSOC]] (* added 2000 August 31 based on ROT.NB *) intersection[composite[inverse[SECOND],cross[Id,SECOND]], composite[inverse[FIRST],FIRST,SECOND]] := composite[SWAP,inverse[ASSOC],cross[Id,SWAP]] (* added 2000 August 31 based on ROT.NB *) intersection[composite[inverse[SECOND],cross[FIRST,Id]], composite[inverse[FIRST],SECOND,FIRST]] := composite[ASSOC,cross[SWAP,Id]] (* added 2003 May 5 based on IN-E-RCF.NB *) intersection[composite[inverse[SECOND],inverse[S]],inverse[CUP]] := inverse[CUP] (* added 2001 February 4 based on CLOSED.NB *) intersection[composite[inverse[SECOND],SECOND],composite[inverse[CUP],S,FIRST]] := intersection[composite[inverse[SECOND],SECOND],composite[inverse[FIRST],S,DIF]] (* added 2003 May 5 based on IN-E-RCF.NB *) intersection[composite[inverse[SECOND],SECOND],composite[inverse[FIRST],inverse[S],DIF]] := composite[id[DISJOINT],cross[inverse[S],Id]] (* derived 2008 October 10 in DO-QG.NB *) intersection[composite[inverse[SECOND],SECOND],composite[inverse[quasigp[x_]],quasigp[x_]]] := id[domain[quasigp[x]]] (* derived 2008 October 12 in RO-FU.NB *) intersection[composite[inverse[SECOND],SECOND], composite[inverse[rotate[funpart[x_]]],rotate[funpart[x_]]]] := id[composite[FIRST,inverse[funpart[x]]]] (* derived 2008 October 12 in RO-FU.NB *) intersection[composite[inverse[SECOND],SECOND], composite[inverse[rotate[NATMUL]],rotate[NATMUL]]] := id[inverse[DIV]] (* derived 2008 October 18 in QG-ROT.NB *) intersection[composite[inverse[SECOND],SECOND], composite[inverse[rotate[quasigp[x_]]],rotate[quasigp[x_]]]] := id[domain[quasigp[x]]] (* derived 2008 October 10 in DO-QG.NB *) intersection[composite[inverse[SECOND],SECOND],composite[inverse[SYMDIF],SYMDIF]] := id[cart[V,V]] (* derived 2006 October 7 in REIF-H.NB *) intersection[x_,composite[inverse[TC],inverse[LB[x_]]]] := composite[inverse[E],id[FULL],inverse[LB[x]]] (* derived 2004 November 16 in XS.NB *) intersection[composite[inverse[UB[IMAGE[FIRST]]],IMAGE[FIRST]], composite[inverse[S],IMAGE[id[FUNS]],POWER]] := composite[inverse[S],XS] (* derived 2008 October 24 in SUFX-PO.NB *) intersection[composite[JOIN,inverse[SECOND]], composite[inverse[IMAGE[FIRST]],IMAGE[FIRST]]] := id[LISTS] (* derived 2008 October 24 in SUFX-PO.NB *) intersection[composite[JOIN,inverse[SECOND]],composite[SECOND,inverse[JOIN]]] := id[LISTS] (* derived 2006 October 31 in REPLACE.NB *) intersection[composite[LB[complement[cross[Id,Di]]],IMAGE[SWAP]], composite[inverse[E],INVERSE,FUNPART]] := composite[inverse[E],INVERSE,OOPART] (* added 2002 November 26 based on GREATEST.NB *) intersection[composite[LB[x_],IMAGE[id[y_]]],inverse[E]] := LEAST[union[x,cart[V,complement[y]]]] (* derived 2008 October 22 in P-U.NB *) intersection[composite[POWER,BIGCUP],inverse[E]] := 0 (* derived 2007 August 14 in K-PS.NB *) intersection[composite[PS,inverse[K]],inverse[PS]] := 0 (* derived 2007 August 14 in K-PS.NB *) intersection[composite[PS,inverse[K]],inverse[S]] := id[complement[set[0]]] (* derived 2008 January 24 in SMALLER.NB *) intersection[composite[Q,inverse[S]],inverse[SMALLER]] := inverse[SMALLER] (* added 2003 January 14 based on SB-THM.NB *) intersection[composite[Q,S],composite[Q,inverse[S]]] := Q (* derived 2008 January 24 in SMALLER.NB *) intersection[composite[Q,S],inverse[SMALLER]] := 0 intersection[x_,composite[S,x_]] := composite[Id,x] intersection[x_,composite[x_,S]] := composite[Id,x] (* derived 2008 August 11 in BIGCAP.NB *) intersection[composite[S,BIGCAP],inverse[E]] := inverse[E] (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,CAP],composite[S,CUP]] := composite[S,CUP] (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,CAP],composite[S,DIF]] := composite[S,FIRST] (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,CAP],composite[S,FIRST]] := composite[S,FIRST] (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,CAP],composite[S,SECOND]] := composite[S,SECOND] (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,CAP],composite[S,SYMDIF]] := composite[S,CUP] (* added 2003 September 4 based on IDEMCORE.NB *) intersection[composite[S,CORE[x_]],composite[S,CORE[y_]]] := composite[S,CORE[union[x,y]]] (* added 1999 October 31 based on RC.NB *) intersection[composite[S,CUP],composite[complement[S],FIRST]] := 0 (* added 1999 October 14 based on NORMAL.1 *) intersection[composite[S,CUP],composite[complement[S],SECOND]] := 0 (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[S,CUP],composite[inverse[S],CAP]] := inverse[DUP] (* added 1999 December 7 based on RESTRICT.NB *) intersection[composite[S,CUP],composite[inverse[S],DIF]] := inverse[RIGHT[0]] (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,CUP],composite[S,DIF]] := composite[S,CUP] (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,CUP],composite[S,FIRST]] := composite[S,CUP] (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,CUP],composite[S,SECOND]] := composite[S,CUP] (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,CUP],composite[S,SYMDIF]] := composite[S,CUP] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[composite[S,DIF],composite[inverse[S],CAP]] := composite[inverse[S],FIRST,id[S]] (* added 1999 December 2 based on SYMDIF-5.NB *) intersection[composite[S,DIF],composite[S,DIF,SWAP]] := composite[S,SYMDIF] (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,DIF],composite[S,FIRST]] := composite[S,FIRST] (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,DIF],composite[S,SECOND]] := composite[S,CUP] (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,DIF],composite[S,SYMDIF]] := composite[S,SYMDIF] (* added 2000 September 5 based on CUP-S.NB *) intersection[composite[S,FIRST],composite[complement[S],DIF]] := 0 (* added 2001 May 6 based on SUPERULE.NB *) intersection[composite[S,x___,FIRST],composite[S,y___,SECOND]] := composite[S,CUP,cross[composite[x],composite[y]]] (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,FIRST],composite[S,SYMDIF]] := composite[S,CUP] (* derived 2008 June 7 in LB-UB-E.NB *) intersection[composite[S,IMAGE[x_]],composite[image[DORA,P[x_]],inverse[S]]] := IMAGE[x] (* added 2001 April 29 based on CLIQUES2.NB *) intersection[composite[S,IMAGE[composite[inverse[DUP],inverse[CART]]]], composite[inverse[IMAGE[DUP]],inverse[IMAGE[CART]],inverse[S]]] := IMAGE[composite[inverse[DUP],inverse[CART]]] intersection[composite[S,IMAGE[id[x_]]], composite[inverse[IMAGE[id[x_]]],inverse[S]]] := composite[inverse[IMAGE[id[x]]],IMAGE[id[x]]] (* added 2003 September 4 based on IDEMCORE.NB *) intersection[composite[S,IMAGE[id[x_]]],composite[S,IMAGE[id[y_]]]] := composite[S,IMAGE[id[union[x,y]]]] (* added 2001 April 24 based on RFX.NB *) intersection[composite[S,IMAGE[FIRST]],composite[S,IMAGE[SECOND]]] := composite[inverse[DUP],inverse[CART],S,IMAGE[id[cart[V,V]]]] (* derived 2007 September 3 in CLQ-PC.NB *) intersection[composite[S,IMAGE[inverse[DUP]]], composite[inverse[E],CLIQUES]] := composite[inverse[POWER],CLIQUES] (* derived 2008 June 7 in LB-UB-E.NB *) intersection[composite[S,IMAGE[inverse[x_]]], composite[inverse[image[DORA,P[x_]]],inverse[S]]] := IMAGE[inverse[x]] (* derived 2005 July 30 in CATORELN.NB *) intersection[composite[S,IMAGE[SECOND]],inverse[IMAGE[DUP]]] := inverse[IMAGE[DUP]] (* derived 2008 June 7 in LB-UB-E.NB *) intersection[composite[S,inverse[image[DORA,P[x_]]]], composite[inverse[IMAGE[x_]],inverse[S]]] := inverse[IMAGE[x]] (* added 1999 October 14 based on NORMAL.1 *) intersection[composite[S,PAIRSET],composite[complement[E],SECOND]] := 0 (* derived 2004 August 13 in DORAFUNS.NB *) intersection[composite[S,POWER],image[DORA,FUNS]] := 0 (* added 1999 December 5 based on 1999/DEC/04/INTSBOOL.NB *) intersection[composite[S,SECOND],composite[S,SYMDIF]] := composite[S,CUP] (* added 2002 June 2 based on S-SUCC.NB *) intersection[composite[S,SUCC],inverse[S]] := id[fix[E]] (* added 1999 December 7 based on RESTRICT.NB *) intersection[composite[S,SYMDIF],composite[inverse[S],CAP]] := composite[inverse[S],inverse[DUP]] (* derived 2004 April 22 in PSM-VS.NB *) intersection[composite[S,VERTSECT[x_]],composite[complement[E],x_]] := 0 (* derived 2008 July 9 in C-CO-C-E.NB *) intersection[composite[S,VERTSECT[EQUIDIFF]],inverse[UB[EQUIDIFF]]] := VERTSECT[EQUIDIFF] (* derived 2008 July 9 in C-CO-C-E.NB *) intersection[composite[S,VERTSECT[inverse[x_]]],inverse[UB[x_]]] := VERTSECT[inverse[x]] (* added 2001 November 27 based on VS-X.NB *) intersection[composite[S,VERTSECT[x_]],inverse[LB[x_]]] := VERTSECT[x] (* derived 2008 July 9 in C-CO-C-E.NB *) intersection[composite[S,VERTSECT[LB[x_]]],LB[UB[x_]]] := VERTSECT[LB[x]] (* derived 2005 December 31 in VS-UB.NB *) intersection[composite[S,VERTSECT[UB[x_]]],LB[LB[x_]]] := VERTSECT[UB[x]] (* derived 2004 December 31 in IN-RK.NB *) intersection[composite[S,VERTSECT[ZN]],composite[ZN,POWER]] := VERTSECT[ZN] (* derived 2004 September 25 in WFPART.NB *) intersection[composite[S,WFPART],composite[inverse[S],IMAGE[id[cart[V,V]]]], composite[inverse[IMAGE[SECOND]],DISJOINT,BIGCUP,SUBVAR]] := WFPART (* added 2000 September 3 based on ROT.NB *) intersection[composite[x_,SECOND],composite[y_,inverse[DUP]]] := composite[intersection[x,y],inverse[DUP]] (* added 2000 August 30 based on SESSION2.LOG *) intersection[composite[w_,SECOND],composite[x_,SWAP,cross[y_,z_]]] := composite[intersection[composite[w,FIRST],composite[x,cross[z,y]]],SWAP] (* derived 2007 October 18 in ERASE.NB *) intersection[composite[SECOND,id[composite[inverse[S],id[x_]]],inverse[DIF],DISJOINT], inverse[S]] := composite[CAP,id[cart[V,x]],inverse[FIRST]] (* added 2003 July 1 based on IN-DUP.NB *) intersection[composite[x_,SECOND],inverse[DUP]] := composite[id[fix[x]],inverse[DUP]] (* derived 2006 October 7 in SYM.NB *) intersection[x_,composite[SWAP,x_]] := composite[inverse[E],id[SYM],inverse[LB[x]]] (* added 1999 September 14 based on SWAP-I.LOG *) intersection[composite[x_,SWAP],composite[y_,FIRST]] := composite[intersection[x,composite[y,SECOND]],SWAP] (* added 1999 September 14 based on SWAP-I.LOG *) intersection[composite[x_,SWAP],composite[y_,SECOND]] := composite[intersection[x,composite[y,FIRST]],SWAP] (* added 1999 September 14 based on SWAP-I.LOG *) intersection[composite[SWAP,x_],composite[inverse[FIRST],y_]] := composite[SWAP,intersection[x,composite[inverse[SECOND],y]]] (* added 1999 September 14 based on SWAP-I.LOG *) intersection[composite[SWAP,x_],composite[inverse[SECOND],y_]] := composite[SWAP,intersection[x,composite[inverse[FIRST],y]]] (* added 1999 December 7 based on FLIPRULE.NB *) intersection[composite[x_,SYMDIF],composite[y_,SWAP]] := composite[intersection[y,composite[x,SYMDIF]],SWAP] (* added 2002 November 26 based on GREATEST.NB *) intersection[composite[UB[x_],IMAGE[id[y_]]],inverse[E]] := GREATEST[union[x,cart[complement[y],V]]] (* derived 2005 August 5 in BINHOM-5.NB *) intersection[CONST,binhom[INTADD,INTADD]] := set[cart[Z,set[id[omega]]]] (* derived 2006 August 4 in TIMES-0.NB *) intersection[CONST,binhom[NATADD,NATADD]] := set[cart[omega,set[0]]] (* derived 2006 June 17 in CONST-I.NB *) intersection[CONST,EQV] := union[image[SINGLETON,Id],set[0]] (* derived 2006 June 17 in CONST-I.NB *) intersection[CONST,FUNS] := CONST (* derived 2006 June 17 in CONST-I.NB *) intersection[CONST,IDEM] := intersection[CONST,PROJ] (* derived 2006 June 13 in CART-SG.NB *) intersection[CONST,image[SINGLETON,x_]] := image[SINGLETON,composite[Id,x]] (* derived 2006 June 17 in CONST-I.NB *) intersection[CONST,INVOL] := union[image[SINGLETON,Id],set[0]] (* derived 2006 November 4 in CONSTMAP.NB *) intersection[CONST,map[x_,y_]] := union[image[CART,cart[set[x],image[SINGLETON,y]]], intersection[complement[image[V,x]],set[0]]] (* derived 2008 May 1 in SYM-RS.NB *) intersection[CONST,P[cart[V,V]]] := CONST (* derived 2006 June 11 in CART-PID.NB *) intersection[CONST,P[Id]] := union[image[SINGLETON,Id],set[0]] (* derived 2006 June 17 in CONST-I.NB *) intersection[CONST,PO] := union[image[SINGLETON,Id],set[0]] (* derived 2006 June 11 in CONSTOPS.NB *) intersection[CONST,range[CART]] := CONST (* derived 2007 July 11 in CONSTHUL.NB *) intersection[CONST,range[LAMBHULL]] := union[image[CART,composite[SINGLETON,inverse[POWER]]],set[0]] (* derived 2006 June 9 in CONST-SS.NB *) intersection[CONST,range[SINGLETON]] := image[SINGLETON,cart[V,V]] (* derived 2006 June 17 in CONST-I.NB *) intersection[CONST,RFX] := union[image[SINGLETON,Id],set[0]] (* derived 2006 June 17 in CONST-I.NB *) intersection[CONST,SYM] := union[image[SINGLETON,Id],set[0]] (* derived 2006 June 17 in CONST-I.NB *) intersection[CONST,TO] := union[image[SINGLETON,Id],set[0]] (* derived 2006 June 17 in CONST-I.NB *) intersection[CONST,TRV] := CONST (* derived 2006 June 17 in CONST-I.NB *) intersection[CONST,UNOPS] := intersection[CONST,PROJ] (* derived 2006 June 17 in CONST-I.NB *) intersection[CONST,WO] := union[image[SINGLETON,Id],set[0]] (* derived 2006 June 17 in CONST-I.NB *) intersection[CONST,Z] := 0 (* added 2004 April 17 based on CORE.NB *) intersection[y_,core[x_,y_]] := core[x,y] (* added 2002 May 4 based on CORE.NB *) intersection[CORE[x_],inverse[S]] := CORE[x] (* Theorem X-I-1 in X1 *) intersection[cross[u_,v_],cross[x_,y_]] := cross[intersection[u,x],intersection[v,y]] intersection[cross[x_,y_],composite[z_,FIRST]] := intersection[ composite[intersection[composite[inverse[FIRST],x],z],FIRST], composite[inverse[SECOND],y,SECOND]] intersection[cross[x_,y_],composite[z_,SECOND]] := intersection[ composite[intersection[z,composite[inverse[SECOND],y]],SECOND], composite[inverse[FIRST],x,FIRST]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CUP,composite[DISJOINT,DIF]] := composite[SECOND,id[S]] (* added 1999 December 7 based on RESTRICT.NB *) intersection[CUP,composite[inverse[S],CAP]] := inverse[DUP] (* added 1999 December 7 based on RESTRICT.NB *) intersection[CUP,composite[inverse[S],DIF]] := inverse[RIGHT[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CUP,composite[inverse[S],FIRST]] := composite[FIRST,id[inverse[S]]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CUP,composite[inverse[S],SECOND]] := composite[SECOND,id[S]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CUP,composite[S,CAP]] := CUP (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CUP,composite[S,DIF]] := CUP (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CUP,composite[S,FIRST]] := CUP (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CUP,composite[S,SECOND]] := CUP (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[CUP,composite[S,SYMDIF]] := CUP (* added 1999 December 7 based on FLIPRULE.NB *) intersection[CUP,composite[x_,SWAP]] := composite[intersection[CUP,x],SWAP] (* added 1999 December 7 based on RESTRICT.NB *) intersection[CUP,DIF] := inverse[RIGHT[0]] (* derived 2007 July 8 in FP-Q-K.NB *) intersection[DEDEKIND,fix[composite[Q,K]]] := 0 (* added 2001 October 16 based on IM-IN-SG.NB *) intersection[DEDEKIND,range[SINGLETON]] := range[SINGLETON] (* derived 2007 July 8 in FP-Q-K.NB *) intersection[DEDEKIND,RUSSELL,fix[composite[Q,SUCC]]] := 0 (* derived 2007 December 10 in FUND.NB *) intersection[DESCENDING,FUND] := set[0] (* derived 2007 December 12 in COREDESC.NB *) intersection[DESCENDING,image[inverse[CORE[DESCENDING]],x_]] := intersection[DESCENDING,x] (* derived 2004 April 28 in WF.NB *) intersection[DESCENDING,P[OMEGA]] := set[0] (* Theorem REG-19 in REG2 *) intersection[DESCENDING,REGULAR] := set[0] (* added 1999 October 31 based on INTINV.LOG *) intersection[Di,complement[E]] := composite[inverse[SUCC],complement[E]] (* added 1998 July 2 *) intersection[Di,complement[inverse[E]]] := composite[complement[inverse[E]],SUCC] (* added 1998 July 2 *) intersection[Di,complement[inverse[S]]] := composite[Id,complement[inverse[S]]] (* added 1998 July 2 *) intersection[Di,complement[S]] := composite[Id,complement[S]] (* added 1999 August 17 based on session X-ID-DI *) intersection[Di,composite[inverse[FIRST],FIRST]] := cross[Id,Di] (* added 1999 August 17 based on session X-ID-DI *) intersection[Di,composite[inverse[SECOND],SECOND]] := cross[Di,Id] (* added 1999 October 31 based on INTINV.LOG *) intersection[Di,inverse[PS]] := inverse[PS] (* added 1998 August 28 *) intersection[Di,inverse[S]] := inverse[PS] (* derived 2008 June 13 in WF-DO-RA.NB *) intersection[Di,inverse[wf[x_]]] := inverse[wf[x]] (* added 2000 May 16 based on K-SR.NB *) intersection[Di,K] := K (* derived 2006 May 11 in WO-PS.NB *) intersection[Di,POWER] := POWER (* Theorem DI-PS-3 in DI proved 1998 December 21 *) intersection[Di,PS] := PS (* Theorem DI-PS-2 in DI added 1998 July 2 *) intersection[Di,S] := PS (* derived 2007 April 26 in LB-SMALL.NB *) intersection[Di,SMALLER] := SMALLER (* derived 2005 February 3 in WF-DIV.NB *) intersection[Di,wf[x_]] := wf[x] (* added 1999 December 7 based on RESTRICT.NB *) intersection[DIF,composite[DIF,SWAP]] := cart[Id,set[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[DIF,composite[DISJOINT,CAP]] := DIF (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[DIF,composite[DISJOINT,CUP]] := cart[S,set[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[DIF,composite[DISJOINT,DIF,SWAP]] := DIF (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[DIF,composite[DISJOINT,FIRST]] := cart[S,set[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[DIF,composite[DISJOINT,SECOND]] := DIF (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[DIF,composite[inverse[S],CAP]] := cart[S,set[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[DIF,composite[inverse[S],CUP]] := DIF (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[DIF,composite[inverse[S],DIF,SWAP]] := cart[S,set[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[DIF,composite[inverse[S],FIRST]] := DIF (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[DIF,composite[inverse[S],SECOND]] := cart[S,set[0]] (* added 1999 December 7 based on RESTRICT.NB *) intersection[DIF,composite[inverse[S],SYMDIF]] := DIF (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[DIF,composite[S,CAP]] := composite[FIRST,id[DISJOINT]] (* added 1999 December 7 based on RESTRICT.NB *) intersection[DIF,composite[S,CUP]] := inverse[RIGHT[0]] (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[DIF,composite[S,FIRST]] := composite[FIRST,id[DISJOINT]] (* added 1999 December 7 based on RESTRICT.NB *) intersection[DIF,composite[S,SECOND]] := inverse[RIGHT[0]] (* added 1999 October 17 based on NORMAL.2 *) intersection[DISJOINT,composite[E,inverse[E]]] := 0 (* added 2001 March 9 based on QUICKER.NB *) intersection[DISJOINT,composite[RC[x_],inverse[S]]] := composite[RC[x],IMAGE[id[x]]] (* discovered 1998 December 24 in session DISJOINT.LOG *) intersection[DISJOINT,IMAGE[id[x_]]] := cart[P[complement[x]],set[0]] (* added 2001 September 3 based in RC-DEF.NB *) intersection[DISJOINT,image[inverse[SYMDIF],set[x_]]] := RC[x] (* added 1999 October 31 based on INTINV.LOG *) intersection[DISJOINT,inverse[IMAGE[id[x_]]]] := cart[set[0],P[complement[x]]] (* inverse of DJT-I-2 *) intersection[DISJOINT,inverse[S]] := cart[V,set[0]] (* added 2001 February 27 based on DMORG.NB *) intersection[DISJOINT,RC[x_]] := RC[x] (* Theorem DJT-I-2 in DJT proved 1998 December 24 *) intersection[DISJOINT,S] := cart[set[0],V] (* added 2002 September 2 based on DIV-PO.NB *) intersection[DIV,complement[S]] := cart[intersection[omega,complement[set[0]]],set[0]] (* added 2002 September 2 based on DIV-PO.NB *) intersection[DIV,inverse[DIV]] := id[omega] (* derived 2005 May 26 in DIV-I.NB *) intersection[DIV,inverse[E]] := cart[intersection[omega,complement[set[0]]],set[0]] (* derived 2009 January 11 in CAT-SPEC.NB *) intersection[dom[x_],inverse[cod[x_]]] := id[ids[x]] (* derived 2009 January 21 in HOM.NB *) intersection[domain[cod[x_]],domain[dom[x_]]] := range[hom[x]] (* derived 2006 February 23 in DO-FUNP.NB *) intersection[domain[x_],domain[funpart[x_]]] := domain[funpart[x]] (* derived 2008 December 25 in COD-DOM.NB *) intersection[domain[domain[x_]],ids[x_]] := ids[x] (* derived 2005 January 25 in THINPART.NB *) intersection[domain[x_],domain[VERTSECT[x_]]] := domain[thinpart[x]] (* derived 2005 January 26 in REMOVED.NB *) intersection[domain[x_],domain[VERTSECT[trv[x_]]]] := domain[thinpart[trv[x]]] (* derived 2006 April 13 in DBL-IND2.NB *) intersection[domain[x_],fix[composite[inverse[x_],y_]]] := fix[composite[inverse[x],y]] (* derived 2008 December 16 in IDS.NB *) intersection[domain[fix[composite[inverse[SECOND],Di,x_]]],ids[x_]] := 0 (* derived 2008 June 22 in FP-FUNP-S.NB *) intersection[x_,domain[funpart[composite[id[x_],inverse[S]]]]] := intersection[x,complement[image[PS,x]]] (* derived 2008 June 22 in FP-FUNP-S.NB *) intersection[x_,domain[funpart[composite[id[x_],S]]]] := intersection[x,complement[image[inverse[PS],x]]] (* derived 2004 December 11 in RESTRICT.NB *) intersection[domain[funpart[x_]],domain[oopart[x_]]] := domain[oopart[x]] (* added 2000 February 12 based on FUNPART.NB *) intersection[domain[funpart[x_]],domain[VERTSECT[x_]]] := domain[funpart[x]] (* derived 2008 June 21 in FP-FUNP.NB *) intersection[domain[funpart[x_]],fix[x_]] := fix[funpart[x]] (* derived 2008 June 21 in FUNP-RFX.NB *) intersection[domain[funpart[rfx[x_]]],fix[x_]] := fix[funpart[rfx[x]]] (* derived 2007 June 13 in IMGVSDIV.NB *) intersection[domain[GREATEST[DIV]],P[omega]] := domain[GREATEST[DIV]] (* added 2000 December 17 based on CLIQUES.NB *) intersection[domain[GREATEST[x_]],P[complement[domain[x_]]]] := 0 (* derived 2007 June 13 in THIN-PO.NB *) intersection[domain[GREATEST[po[thinpart[x_]]]],P[fix[po[thinpart[x_]]]]] := domain[GREATEST[po[thinpart[x]]]] (* added 2000 December 17 based on MEMBER.NB *) intersection[domain[GREATEST[x_]],set[0]] := 0 (* derived 2006 April 13 in DBL-IND2.NB *) intersection[domain[iterate[y_,z_]],image[SUCC,complement[domain[iterate[y_,z_]]]]] := 0 (* derived 2007 June 14 in THIN-PO.NB *) intersection[domain[LEAST[po[thinpart[x_]]]],P[fix[po[thinpart[x_]]]]] := domain[LEAST[po[thinpart[x]]]] (* derived 2006 May 29 in OL-DO.NB *) intersection[domain[ordlist[x_]],image[SUCC,complement[domain[ordlist[x_]]]]] := 0 (* derived 2005 December 31 in VS-UB.NB *) intersection[domain[UB[x_]],P[domain[x_]]] := domain[UB[x]] (* added 2002 November 21 based on C-THIN.NB *) intersection[domain[VERTSECT[x_]],domain[VERTSECT[complement[x_]]]] := 0 (* derived 2008 March 18 in RA-VS-PO.NB *) intersection[domain[VERTSECT[x_]],fix[x_]] := fix[thinpart[x]] (* derived 2004 February 20 in REPLACE1.NB *) intersection[domain[VERTSECT[x_]],lb[x_,V]] := 0 (* derived 2006 January 21 in LEAST-VS.NB *) intersection[domain[VERTSECT[po[x_]]],fix[po[x_]]] := fix[thinpart[po[x]]] (* derived 2006 January 21 in LEAST-VS.NB *) intersection[domain[VERTSECT[po[x_]]],fix[thinpart[po[x_]]]] := fix[thinpart[po[x]]] (* derived 2004 May 2 in ZN.NB *) intersection[domain[VERTSECT[ZN]],fix[IMAGE[ZN]]] := fix[IMAGE[ZN]] (* Theorem DI-SG in DI added 1998 July 2 *) intersection[E,complement[composite[E,Di]]] := SINGLETON (* added 2002 April 27 based on FULSUC-F.NB *) intersection[E,composite[complement[S],SUCC]] := intersection[E,complement[S]] intersection[E,composite[S,SUCC]] := composite[S,SUCC] (* added 2000 November 19 based on IM-SS.NB *) intersection[E,inverse[LB[x_]]] := inverse[LEAST[x]] (* added 2000 November 19 based on IM-SS.NB *) intersection[E,inverse[UB[x_]]] := inverse[GREATEST[x]] (* Theorem SUC-ES3 in SUC-RELATION *) intersection[E,S] := composite[S,SUCC] (* Theorem SUC-ES1 in SUC-REL *) intersection[E,SUCC] := SUCC (* added 2003 August 17 based on EQDF-SUB.NB *) intersection[EQUIDIFF,composite[inverse[FIRST],inverse[S],FIRST]] := composite[RIF,cross[inverse[NATADD],inverse[NATADD]]] (* added 2003 August 17 based on EQDF-SUB.NB *) intersection[EQUIDIFF,composite[inverse[FIRST],S,FIRST]] := composite[cross[NATADD,NATADD],inverse[RIF]] (* added 2003 August 17 based on EQDF-SUB.NB *) intersection[EQUIDIFF,composite[inverse[SECOND],inverse[S],SECOND]] := composite[RIF,cross[inverse[NATADD],inverse[NATADD]]] (* added 2003 August 17 based on EQDF-SUB.NB *) intersection[EQUIDIFF,composite[inverse[SECOND],S,SECOND]] := composite[cross[NATADD,NATADD],inverse[RIF]] (* added 2003 August 17 based on EQDF-SUB.NB *) intersection[EQUIDIFF,cross[inverse[S],inverse[S]]] := composite[RIF,cross[inverse[NATADD],inverse[NATADD]]] (* added 2003 August 17 based on EQDF-SUB.NB *) intersection[EQUIDIFF,cross[S,S]] := composite[cross[NATADD,NATADD],inverse[RIF]] (* derived 2004 April 1 in EQV-EQ.NB *) intersection[EQV,FUNS] := P[Id] (* derived 2004 December 14 in IDEMPROJ.NB *) intersection[EQV,IDEM] := EQV (* added 2001 October 28 based on EQV-I.NB *) intersection[EQV,invar[SWAP]] := EQV (* derived 2006 February 8 in INVOL-I.NB *) intersection[EQV,INVOL] := P[Id] (* added 2001 October 28 based on EQV.NB *) intersection[EQV,P[cart[V,V]]] := EQV (* derived 2006 January 30 in ACY-I.NB *) intersection[EQV,P[Di]] := set[0] (* derived 2006 January 31 in ANTISYMI.NB *) intersection[EQV,P[Id]] := P[Id] (* derived 2006 January 24 in I-PO.NB *) intersection[EQV,PO] := P[Id] (* derived 2006 January 28 in PROJ.NB *) intersection[EQV,PROJ] := P[Id] (* added 2001 October 28 based on EQV-I.NB *) intersection[EQV,range[CART]] := union[image[CART,Id],set[0]] (* added 2001 October 28 based on EQV.NB *) intersection[EQV,RFX] := EQV (* added 2001 October 28 based on EQV-I.NB *) intersection[EQV,SYM] := EQV (* derived 2006 January 31 in TO-I.NB *) intersection[EQV,TO] := union[image[SINGLETON,Id],set[0]] (* added 2001 October 28 based on EQV-I.NB *) intersection[EQV,TRV] := EQV (* derived 2006 June 11 in UNOPS-I.NB *) intersection[EQV,UNOPS] := P[Id] (* derived 2006 January 30 in WF-I.NB *) intersection[EQV,WF] := set[0] (* derived 2006 February 1 in WO-I.NB *) intersection[EQV,WO] := union[image[SINGLETON,Id],set[0]] (* derived 2006 January 30 in I-Z.NB *) intersection[EQV,Z] := set[id[omega]] (* derived 2006 August 15 in EVEN-ODD.NB *) intersection[even,complement[odd]] := even (* derived 2007 July 3 in ITERSING.NB *) intersection[even,hull[invar[SINGLETON],set[0]]] := set[0] (* derived 2006 August 15 in EVEN-ODD.NB *) intersection[even,odd] := 0 (* derived 2006 August 15 in EVEN-ODD.NB *) intersection[even,omega] := even (* derived 2007 July 3 in ITERSING.NB *) intersection[even,range[SINGLETON]] := 0 (* derived 2005 April 23 in FACT-S.NB *) intersection[FACTORIAL,inverse[E]] := 0 (* derived 2005 April 23 in FACT-S.NB *) intersection[FACTORIAL,S] := FACTORIAL (* derived 2008 January 2 in FINCHR-1.NB *) intersection[FINCHAR,range[SINGLETON]] := set[set[0]] (* derived 2008 January 22 in HART-FU.NB *) intersection[FINITE,complement[image[Q,OMEGA]]] := 0 (* added 2002 May 28 based on FINITE.NB *) intersection[FINITE,fix[CARD]] := omega (* derived 2007 July 8 in FP-Q-K.NB *) intersection[FINITE,fix[composite[Q,K]]] := 0 (* derived 2008 January 16 in UCHN-FIN.NB *) intersection[FINITE,fix[UCHAINS]] := intersection[FINITE,complement[P[complement[set[0]]]]] (* derived 2006 February 16 in WFACYFIN.NB *) intersection[FINITE,IDEM,P[Di]] := set[0] (* derived 2005 January 31 in X4210.NB *) intersection[FINITE,image[INVERSE,range[PLUS]]] := 0 (* added 2003 December 9 based on ITER-K.NB *) intersection[FINITE,image[Q,OMEGA]] := FINITE (* derived 2006 June 13 in CART-SG.NB *) intersection[FINITE,image[SINGLETON,x_]] := image[SINGLETON,x] (* added 2002 May 28 based on CARD-OM.NB *) intersection[FINITE,omega] := omega (* Theorem FIN-ON2 in FINITE proved 2000 March 19 *) intersection[FINITE,OMEGA] := omega (* derived 2008 January 16 in UCHN-FIN.NB *) intersection[FINITE,P[fin[x_]]] := P[fin[x]] (* derived 2008 January 20 in HART-FIN.NB *) intersection[FINITE,P[nat[x_]]] := P[nat[x]] (* Theorem FIN-OM3 in FINITE proved 2000 March 19 *) intersection[FINITE,P[omega]] := image[inverse[S],omega] (* derived 2006 March 23 in PCON-FIN.NB *) intersection[FINITE,P[OMEGA],subvar[inverse[E]]] := set[0] (* derived 2008 January 5 in CAP-FIN.NB *) intersection[FINITE,range[PAIRSET]] := range[PAIRSET] (* derived 2005 January 31 in X4210.NB *) intersection[FINITE,range[PLUS]] := 0 (* added 2001 October 16 based on IM-IN-SG.NB *) intersection[FINITE,range[SINGLETON]] := range[SINGLETON] (* derived 2006 March 30 in SBV-IN-E.NB *) intersection[FINITE,REGULAR,subvar[inverse[E]]] := set[0] (* derived 2007 July 8 in FP-Q-K.NB *) intersection[FINITE,RUSSELL,fix[composite[Q,SUCC]]] := 0 (* derived 2006 March 1 in ACY-FIN.NB *) intersection[FINITE,subvar[inverse[PS]]] := set[0] (* Theorem FIN-PS2 in FINITE proved 2000 October 9 *) intersection[FINITE,subvar[PS]] := set[0] (* added 2003 January 19 based on IMS-OM.NB *) intersection[FINITE,succ[omega]] := omega (* derived 2006 March 1 in ACY-FIN.NB *) intersection[FINITE,U[image[SUBVAR,ACYCLIC]]] := set[0] (* derived 2005 January 31 in X4210.NB *) intersection[FINITE,Z] := 0 (* Corollary 1ST-I in 1ST proved 1999 January 26 *) intersection[FIRST,x_] := composite[FIRST,id[fix[composite[inverse[FIRST],x]]]] (* added 2001 October 15 based on ACL-UCL.NB *) intersection[fix[ACLOSURE],range[SINGLETON]] := range[SINGLETON] (* derived 2005 November 27 in FPBCPCOM.NB *) intersection[fix[BIGCUP],P[omega]] := set[0,omega] (* derived 2006 March 7 in PC-ON-SC.NB *) intersection[fix[BIGCUP],P[OMEGA]] := intersection[OMEGA,fix[BIGCUP]] (* derived 2007 July 3 in FIX-BC.NB *) intersection[fix[BIGCUP],range[POWER]] := 0 (* added 2002 May 25 based on OM-INVAR.NB *) intersection[fix[BIGCUP],set[0]] := set[0] (* derived 2007 July 4 in SBV-INE.NB *) intersection[fix[BIGCUP],subvar[inverse[E]]] := fix[BIGCUP] (* derived 2008 June 3 in CARD-ORD.NB *) intersection[fix[CARD],fix[composite[E,Q]]] := 0 (* added 2001 December 17 based on Q-HAT.NB *) intersection[fix[CARD],image[Q,OMEGA]] := fix[CARD] (* added 1998 February 8 *) intersection[fix[x_],complement[domain[x_]]] := 0 intersection[fix[x_],complement[range[x_]]] := 0 (* added 2003 May 3 based on SQUARE.NB *) intersection[fix[composite[CART,x_]],P[cart[V,V]]] := fix[composite[CART,x]] (* added 2002 January 15 based on EQV-2.NB *) intersection[fix[composite[COMPOSE,x_]],P[cart[V,V]]] := fix[composite[COMPOSE,x]] (* derived 2008 February 9 in ASYM.NB *) intersection[fix[composite[DISJOINT,INVERSE]],P[Di]] := fix[composite[DISJOINT,INVERSE]] intersection[fix[composite[x_,y_]],domain[y_]] := fix[composite[x,y]] (* derived 2008 March 9 in WO.NB *) intersection[fix[composite[E,BIGCAP]],P[nat[x_]]] := intersection[complement[set[0]],P[nat[x]]] (* derived 2006 February 19 in ON-E-S.NB *) intersection[fix[composite[E,BIGCAP]],P[OMEGA]] := intersection[complement[set[0]],P[OMEGA]] (* derived 2008 March 9 in WO.NB *) intersection[fix[composite[E,BIGCAP]],P[ord[x_]]] := intersection[complement[set[0]],P[ord[x]]] (* added 2000 September 28 based on APPLY.NB *) intersection[fix[composite[E,BIGCAP]],range[SINGLETON]] := range[SINGLETON] (* derived 2008 June 12 in MIN-A.NB *) intersection[fix[composite[E,BIGCAP]],subvar[PS]] := 0 (* derived 2006 September 21 in CMTVNORM.NB *) intersection[fix[composite[x_,IMAGE[id[complement[y_]]]]],P[y_]] := intersection[image[x,set[0]],P[y]] (* derived 2004 May 14 in SIMPLIFY.NB *) intersection[fix[composite[x_,IMAGE[id[composite[Id,y_]]]]],P[y_]] := intersection[fix[composite[x,IMAGE[id[cart[V,V]]]]],P[y]] (* added 2000 September 19 based on SUBST.NB *) intersection[fix[composite[x_,IMAGE[id[y_]]]],P[y_]] := intersection[fix[x],P[y]] (* derived 2007 June 9 in VS-LT-GT.NB *) intersection[fix[composite[IMAGE[id[x_]],y_]],P[x_]] := fix[composite[IMAGE[id[x]],y]] (* derived 2006 September 26 in FP-IMG.NB *) intersection[fix[composite[w_,IMAGE[x_]]],P[domain[VERTSECT[x_]]]] := fix[composite[w,IMAGE[x]]] (* added 1999 November 13 based on FIX-INV.LOG *) intersection[fix[composite[x_,IMAGE[SWAP]]],P[cart[V,V]]] := fix[composite[x,INVERSE]] (* derived 2006 June 10 in BINOPS.NB *) intersection[fix[composite[w_,intersection[x_,composite[y_,IMAGE[id[z_]]]]]],P[z_]] := intersection[fix[composite[w,intersection[x,y]]],P[z]] (* derived 2007 October 18 in ERASE.NB *) intersection[fix[composite[inverse[DIF],DISJOINT,id[x_],S,SECOND]],inverse[S]] := composite[CAP,id[cart[V,x]],inverse[FIRST]] (* derived 2007 October 19 in RECT-CUT.NB *) intersection[fix[composite[inverse[DIF],DISJOINT, intersection[S,composite[CART,DORA]],SECOND]],inverse[S]] := composite[CAP,id[cart[V,range[CART]]],inverse[FIRST]] (* derived 2004 December 14 in DORA-PID.NB *) intersection[fix[composite[inverse[DUP],inverse[COMPOSE],S]],image[inverse[IMAGE[id[cart[V,V]]]],TRV]] := IDEM (* derived 2008 July 13 in CHN-C-E.NB *) intersection[fix[composite[inverse[E],BIGCUP]],ord[x_]] := 0 (* added 2002 June 2 based on COREHULL.NB *) intersection[fix[composite[inverse[E],HULL[x_]]],image[inverse[S],x_]] := fix[composite[inverse[E],HULL[x]]] (* derived 2007 November 3 in MAX-U.NB *) intersection[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]], fix[composite[inverse[BIGCUP],Di,MAXIMAL[S]]]] := 0 (* added 2002 January 21 based on RA-POW.NB *) intersection[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]], fix[IMAGE[inverse[S]]]] := range[POWER] (* derived 2007 July 3 in ITERSING.NB *) intersection[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],P[omega]] := intersection[complement[set[0]],image[inverse[S],omega]] (* derived 2006 March 25 in SBV-IN-E.NB *) intersection[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],P[OMEGA]] := intersection[complement[subvar[inverse[E]]],P[OMEGA]] (* added 2002 January 21 based on RA-POW.NB *) intersection[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],range[POWER]] := range[POWER] (* added 2002 January 21 based on VS-IN-BC.TXT *) intersection[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],range[SINGLETON]] := range[SINGLETON] (* derived 2007 November 3 in MAX-GT.NB *) intersection[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],subvar[inverse[PS]]] := 0 (* added 2002 June 2 based on FP-E-HC.NB *) intersection[fix[composite[inverse[E],IMAGE[inverse[S]]]],OMEGA] := 0 (* added 2002 January 22 based on FIXRULES.NB *) intersection[fix[composite[inverse[E],IMAGE[x_]]],set[0]] := 0 (* derived 2006 March 26 in IM-BC-ON.NB *) intersection[fix[composite[inverse[E],UCLOSURE]],P[OMEGA]] := intersection[OMEGA,fix[BIGCUP]] (* derived 2007 October 30 in RFX-CPTV.NB *) intersection[fix[composite[inverse[HULL[invar[SWAP]]],x_]],P[cart[V,V]]] := fix[composite[inverse[HULL[SYM]],x]] (* derived 2008 February 14 in DICHOT.NB *) intersection[fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]], fix[composite[inverse[HULL[SYM]],CART,DUP,CUP,DORA]]] := fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]] (* derived 2008 February 14 in DICHOT.NB *) intersection[fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]], image[inverse[CHAINS],range[POWER]]] := fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]] (* derived 2008 February 10 in TRICH-I.NB *) intersection[fix[composite[inverse[HULL[SYM]],IMAGE[id[Di]],CART,DUP,CUP,DORA]],P[Di]] := fix[composite[inverse[HULL[SYM]],IMAGE[id[Di]],CART,DUP,CUP,DORA]] (* derived 2007 October 30 in RFX-CPTV.NB *) intersection[fix[composite[inverse[HULL[SYM]],x_]],P[cart[V,V]]] := fix[composite[inverse[HULL[SYM]],x]] (* derived 2008 February 10 in TRICH-I.NB *) intersection[fix[composite[inverse[HULL[SYM]],S,IMAGE[id[Di]],CART,DUP,CUP,DORA]],P[Di]] := fix[composite[inverse[HULL[SYM]],IMAGE[id[Di]],CART,DUP,CUP,DORA]] (* derived 2004 August 3 in WF-REC-1.NB *) intersection[fix[composite[inverse[IMAGE[composite[id[inverse[FIRST]],inverse[SECOND]]]], UB[composite[FIRST,intersection[composite[inverse[IMG],SECOND],composite[inverse[SECOND],VERTSECT[y_],FIRST]], intersection[composite[inverse[FIRST],FIRST],composite[inverse[x_],SECOND]]]]]], image[inverse[IMAGE[FIRST]],invar[y_]]] := partrec[x,y] (* derived 2008 October 4 in BIN-NORM.NB *) intersection[fix[composite[inverse[IMAGE[cross[FIRST,Id]]],id[image[CART,Id]], S,CART,DUP,IMAGE[SECOND],IMAGE[FIRST]]],image[inverse[IMAGE[ROT]],FUNS]] := image[inverse[IMAGE[ROT]],BINOPS] (* derived 2006 July 18 in BINHOM-1.NB *) intersection[fix[composite[inverse[IMAGE[cross[inverse[x_],Id]]],IMAGE[cross[Id,y_]],CROSS,DUP]], map[fix[domain[x_]],fix[domain[y_]]]] := binhom[x,y] (* derived 2008 October 4 in BIN-NORM.NB *) intersection[fix[composite[inverse[IMAGE[cross[SECOND,Id]]],id[image[CART,Id]], S,CART,DUP,IMAGE[FIRST],IMAGE[FIRST]]],image[inverse[IMAGE[inverse[ROT]]],FUNS]] := image[inverse[IMAGE[inverse[ROT]]],BINOPS] (* added 2000 November 16 based on WO.NB *) intersection[fix[composite[inverse[IMAGE[id[x_]]],y_]],P[x_]] := intersection[fix[y],P[x]] (* derived 2007 November 15 in ZORN-LEM.NB *) intersection[fix[composite[inverse[IMAGE[inverse[S]]],S,UCHAINS]],subvar[inverse[PS]]] := fix[composite[inverse[IMAGE[inverse[PS]]],S,UCHAINS]] (* added 2001 April 24 based on RFX2.NB *) intersection[fix[composite[inverse[S],CART,DUP,IMAGE[inverse[DUP]]]], P[cart[V,V]]] := fix[composite[inverse[S],CART,DUP,IMAGE[inverse[DUP]]]] (* derived 2007 October 7 in FPCO-DUP.NB *) intersection[fix[composite[inverse[S],COMPOSE,DUP]],P[cart[V,V]]] := fix[composite[inverse[S],COMPOSE,DUP]] intersection[fix[composite[x_,y_]],range[x_]] := fix[composite[x,y]] (* added 2001 December 19 based on INV-DORA.NB *) intersection[fix[composite[S,CART,DORA]],P[cart[V,V]]] := range[CART] (* added 2003 May 4 based on SQUARE.NB *) intersection[fix[composite[S,CART,DUP,IMAGE[FIRST]]], image[inverse[DORA],inverse[S]],P[cart[V,V]]] := image[CART,Id] (* added 2003 May 4 based on SQUARE.NB *) intersection[fix[composite[S,CART,DUP,IMAGE[SECOND]]], image[inverse[DORA],S],P[cart[V,V]]] := image[CART,Id] (* derived 2004 August 7 in RS-1.NB *) intersection[fix[composite[S,IMAGE[composite[id[x_],inverse[FIRST]]],S,IMAGE[FIRST]]],P[composite[Id,x_]]] := RS[x] (* derived 2007 October 19 in RECT-CUT.NB *) intersection[fix[composite[S,IMAGE[id[x_]],CART,DORA]],P[composite[Id,x_]]] := image[IMAGE[id[x]],range[CART]] (* added 2001 March 8 based on IMIMG.NB *) intersection[fix[composite[S,IMAGE[id[x_]],id[y_],S]],P[x_]] := image[IMAGE[id[x]],y] intersection[fix[x_],domain[x_]] := fix[x] (* derived 2008 December 31 in CAT-MON.NB *) intersection[fix[domain[binop[x_]]],set[e[binop[x_]]]] := set[e[binop[x]]] (* derived 2008 December 16 in IDS.NB *) intersection[fix[domain[x_]],ids[x_]] := ids[x] (* derived 2008 November 26 in SEMIGP.NB *) intersection[fix[domain[semigp[x_]]],range[semigp[x_]]] := range[semigp[x]] (* added 2001 October 28 based on EQV-I.NB *) intersection[fix[x_],fix[composite[inverse[S],x_]]] := fix[x] (* added 2001 October 28 based on EQV-I.NB *) intersection[fix[x_],fix[composite[S,x_]]] := fix[x] (* added 1998 February 7 *) intersection[fix[E],omega] := 0 intersection[fix[E],OMEGA] := 0 (* derived 2008 April 17 in ORD-NAT.NB *) intersection[fix[E],ord[x_]] := 0 intersection[fix[E],P[RUSSELL]] := 0 intersection[fix[E],RUSSELL] := 0 (* derived 2008 November 2 in IM-EQV.NB *) intersection[fix[eqv[x_]],image[eqv[x_],y_]] := image[eqv[x],y] (* derived 2006 October 14 in HULL-RA.NB *) intersection[x_,fix[HULL[x_]]] := x (* derived 2004 October 7 in HULL-I.NB *) intersection[fix[HULL[x_]],fix[HULL[intersection[x_,y_]]]] := fix[HULL[intersection[x,y]]] (* added 2001 May 15 based on HULL-1.NB *) intersection[fix[HULL[x_]],image[inverse[S],x_]] := fix[HULL[x]] (* derived 2007 August 2 in HULL-SG.NB *) intersection[fix[HULL[x_]],P[U[x_]]] := fix[HULL[x]] (* derived 2007 May 27 in COARSER.NB *) intersection[fix[IMAGE[COARSER]],range[POWER]] := image[POWER,range[POWER]] (* derived 2008 March 20 in IVR-SBV.NB *) intersection[fix[IMAGE[composite[id[x_],S]]],P[x_]] := fix[IMAGE[composite[id[x],S]]] (* derived 2006 September 19 in IMG-X.NB *) intersection[fix[IMAGE[cross[x_,y_]]],P[cart[V,V]]] := fix[IMAGE[cross[x,y]]] (* Theorem SBV-IVR4 in SUBVAR proved 1999 February 15 *) intersection[fix[IMAGE[x_]],invar[x_]] := fix[IMAGE[x]] (* added 2003 July 2 based on ASS-RELN.NB *) intersection[fix[image[inverse[CART],fix[composite[inverse[ IMAGE[composite[SWAP,RIF,cross[Id,composite[cross[SWAP,Id],inverse[RIF]]]]]], IMAGE[composite[SWAP,RIF,cross[Id,composite[cross[inverse[ASSOC],SWAP], inverse[RIF]]]]]]]]],P[cart[cart[V,V],V]]] := ASSOCIATIVE (* derived 2007 May 27 in COARSER.NB *) intersection[fix[IMAGE[inverse[COARSER]]],range[POWER]] := range[POWER] (* added 2002 January 21 based on VS-IN-BC.TXT *) intersection[fix[IMAGE[inverse[S]]],range[POWER]] := range[POWER] (* derived 2007 June 27 in RA=CLIQ.NB *) intersection[fix[IMAGE[inverse[S]]],range[SINGLETON]] := set[set[0]] (* derived 2007 June 26 in UCHAINS.NB *) intersection[fix[IMAGE[inverse[S]]],range[SUBVAR]] := range[POWER] (* derived 2007 November 4 in FP-IM-PS.NB *) intersection[fix[IMAGE[inverse[S]]],subvar[inverse[PS]]] := fix[IMAGE[inverse[PS]]] (* Theorem SBV-IVR4 in SUBVAR proved 1999 February 15 *) intersection[fix[IMAGE[x_]],subvar[x_]] := fix[IMAGE[x]] (* derived 2006 September 21 in CMTVNORM.NB *) intersection[fix[IMAGE[x_]],subvar[union[x_,y_]]] := fix[IMAGE[x]] (* derived 2007 June 6 in HLTRVRFX.NB *) intersection[fix[IMAGE[trv[rfx[x_]]]],P[fix[x_]]] := fix[IMAGE[trv[rfx[x]]]] (* derived 2007 December 29 in PO-RULES.NB *) intersection[fix[po[x_]],image[inverse[po[x_]],y_]] := image[inverse[po[x]],y] (* derived 2007 December 29 in PO-RULES.NB *) intersection[fix[po[x_]],image[po[x_],y_]] := image[po[x],y] intersection[fix[x_],range[x_]] := fix[x] (* added 1998 February 8 *) intersection[fix[SINGLETON],RUSSELL] := 0 (* derived 2005 November 17 in RUSSELL.NB *) intersection[fix[SINGLETON],Uclosure[RUSSELL]] := 0 (* derived 2008 March 13 in TO-RULES.NB *) intersection[fix[to[x_]],image[inverse[to[x_]],y_]] := image[inverse[to[x]],y] (* derived 2008 March 13 in TO-RULES.NB *) intersection[fix[to[x_]],image[to[x_],y_]] := image[to[x],y] (* derived 2007 November 13 in AC-IN-K.NB *) intersection[fix[UCHAINS],fix[image[inverse[CART],image[inverse[IMAGE[id[K]]],SELECT]]], subvar[inverse[K]]] := 0 (* derived 2007 July 27 in ACL-UCL.NB *) intersection[fix[UCHAINS],fix[UCLOSURE]] := fix[UCLOSURE] (* derived 2008 April 1 in UCH-ON.NB *) intersection[fix[UCHAINS],invar[SUCC]] := 0 (* derived 2007 July 11 in FP-UCH.NB *) intersection[fix[UCHAINS],range[SINGLETON]] := set[set[0]] (* added 2001 October 23 based on TOPS.NB *) intersection[fix[UCLOSURE],complement[P[complement[set[0]]]]] := fix[UCLOSURE] (* derived 2003 December 24 in UCL-ON.NB *) intersection[fix[UCLOSURE],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := fix[UCLOSURE] (* derived 2006 October 11 in RA-POW.NB *) intersection[fix[UCLOSURE],fix[IMAGE[inverse[S]]]] := range[POWER] (* added 2001 October 23 based on CAPCLOS.NB *) intersection[fix[UCLOSURE],image[ADJOIN[set[0]],range[SINGLETON]]] := image[ADJOIN[set[0]],range[SINGLETON]] (* derived 2007 September 6 in UCL-ON.NB *) intersection[fix[UCLOSURE],invar[SUCC]] := 0 (* derived 2005 January 15 in HILBERT.NB *) intersection[fix[UCLOSURE],invar[POWER]] := 0 (* added 2001 October 23 based on TOPS.NB *) intersection[fix[UCLOSURE],P[complement[set[0]]]] := 0 (* derived 2007 June 26 in UCHAINS.NB *) intersection[fix[UCLOSURE],range[CLIQUES]] := range[POWER] (* derived 2007 June 26 in UCHAINS.NB *) intersection[fix[UCLOSURE],range[POWER]] := range[POWER] (* added 2001 October 15 based on ACL-UCL.NB *) intersection[fix[UCLOSURE],range[SINGLETON]] := set[set[0]] (* derived 2007 June 26 in UCHAINS.NB *) intersection[fix[UCLOSURE],range[SUBVAR]] := range[SUBVAR] (* derived 2007 November 3 in MAX-GT.NB *) intersection[fix[UCLOSURE],subvar[inverse[PS]]] := 0 (* derived 2008 March 13 in WO-RULES.NB *) intersection[fix[wo[x_]],image[inverse[wo[x_]],y_]] := image[inverse[wo[x]],y] (* derived 2008 March 9 in WO.NB *) intersection[fix[wo[x_]],image[wo[x_],y_]] := image[wo[x],y] (* derived 2005 November 27 in FPBCPCOM.NB *) intersection[FULL,fix[BIGCUP]] := fix[BIGCUP] (* added 2002 April 26 based on FULSUC-A.NB *) intersection[FULL,fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := fix[composite[S,SUCC,BIGCUP]] (* derived 2007 December 14 in CANTOR.NB *) intersection[FULL,FUND] := intersection[FULL,REGULAR] (* derived 2007 December 10 in IM-HC-TC.NB *) intersection[FULL,image[HC,x_]] := image[HC,x] (* derived 2007 December 10 in IM-HC-TC.NB *) intersection[FULL,image[inverse[HC],x_]] := intersection[FULL,x] (* added 2003 January 18 based on HC-TC-OM.NB *) intersection[FULL,image[inverse[S],omega]] := omega (* derived 2006 March 14 in ORDRULES.NB *) intersection[FULL,image[inverse[S],ord[x_]]] := ord[x] (* derived 2007 December 10 in IM-HC-TC.NB *) intersection[FULL,image[inverse[TC],x_]] := intersection[FULL,x] (* derived 2007 December 10 in IM-HC-TC.NB *) intersection[FULL,image[TC,x_]] := image[TC,x] (* derived 2005 July 24 in TC-HULL.NB *) intersection[FULL,nat[x_]] := nat[x] (* added 1998 February 7 *) intersection[FULL,omega] := omega (* Theorem ON-FUL-E in ON2 added 1998 February 7 *) intersection[FULL,OMEGA] := OMEGA (* derived 2008 July 27 in TC-0.NB *) intersection[FULL,P[complement[set[0]]]] := set[0] /; AxReg (* added 2001 March 17 based on TC-I-FUL.NB *) intersection[FULL,P[FULL]] := H[FULL] (* added 2003 June 22 based on FP-HC.NB *) intersection[FULL,P[H[x_]]] := intersection[FULL,P[x]] (* derived 2004 December 29 in FUL-REG3.NB *) intersection[FULL,P[intersection[REGULAR,complement[set[0]]]]] := set[0] (* derived 2005 February 17 in NAT-ACL.NB *) intersection[FULL,P[nat[x_]]] := succ[nat[x]] intersection[FULL,P[omega]] := succ[omega] (* Theorem ISB5-DEM in ON4 added 1998 February 7 *) intersection[FULL,P[OMEGA]] := OMEGA (* derived 2005 December 6 in ORDINAL.NB *) intersection[FULL,P[ord[x_]]] := succ[ord[x]] (* derived 2007 November 23 in FIX-SG.NB *) intersection[FULL,range[SINGLETON]] := union[fix[SINGLETON],set[set[0]]] (* derived 2008 February 28 in ROBINSON.NB *) intersection[FULL,REGULAR,chains[composite[inverse[E],SUCC]]] := OMEGA (* added 2001 September 30 based on ACL-2.NB *) intersection[FULL,set[0]] := set[0] (* Theorem SBV-FUL in SUBVAR proved 1999 February 16 *) intersection[FULL,subvar[inverse[E]]] := fix[BIGCUP] (* derived 2008 February 23 in ON-FUND.NB *) intersection[FUND,REGULAR] := REGULAR (* derived 2004 June 19 in X14--.NB *) intersection[y_,funpart[x_]] := composite[funpart[x],id[fix[composite[inverse[y],funpart[x]]]]] (* added 2000 September 8 based on FUNPART.LOG *) intersection[FUNPART,complement[inverse[S]]] := 0 (* added 2001 November 20 based on FIX-FUNP.NB *) intersection[FUNPART,inverse[S]] := FUNPART (* added 2001 November 20 based on FIX-FUNP.NB *) intersection[FUNPART,S] := id[FUNS] (* derived 2009 January 2 in I-FUNS.NB *) intersection[FUNS,bij[x_,y_]] := bij[x,y] (* derived 2007 November 13 in XS-IN-K.NB *) intersection[FUNS,complement[image[inverse[K],intersection[FUNS,P[x_]]]],P[x_]] := X[x] (* derived 2007 November 11 in XS-MAX.NB *) intersection[FUNS,complement[image[inverse[PS],intersection[FUNS,P[x_]]]],P[x_]] := X[x] (* derived 2007 November 10 in ALL-MAX.NB *) intersection[FUNS,fix[composite[PS,inverse[IMAGE[FIRST]],IMAGE[FIRST]]]] := 0 (* derived 2006 October 19 in IMVS-EQV.NB *) intersection[FUNS,fix[composite[VS,x_]]] := fix[composite[VS,x]] (* derived 2008 December 5 in GROUPS.NB *) intersection[FUNS,GROUPS] := GROUPS (* derived 2004 December 14 in IDEMPROJ.NB *) intersection[FUNS,IDEM] := PROJ (* definition DEF-BIJ in BIJ added 2000 April 26 *) intersection[FUNS,image[IMAGE[SWAP],FUNS]] := BIJ (* added 2003 May 7 based on UNOPS.NB *) intersection[FUNS,image[inverse[DORA],composite[inverse[S],x_]]] := U[image[MAP,x]] (* derived 2007 June 30 in CANTOR.NB *) intersection[FUNS,image[inverse[DORA],composite[S,POWER]]] := 0 (* derived 2006 June 9 in UNARY.NB *) intersection[FUNS,image[inverse[DORA],inverse[S]]] := UNOPS (* derived 2007 June 30 in CANTOR.NB *) intersection[FUNS,image[inverse[DORA],POWER]] := 0 (* derived 2005 November 4 in FIN-FUNP.NB *) intersection[FUNS,image[inverse[FUNPART],x_]] := intersection[FUNS,x] (* added 2000 June 14 based on IMAGE-Q.NB *) intersection[FUNS,image[INVERSE,FUNS]] := BIJ (* derived 2008 December 9 in BINOPS.NB *) intersection[FUNS,image[inverse[IMAGE[FIRST]],x_]] := U[image[MAP,cart[x,V]]] (* added 2001 April 25 based on MAP1.NB *) intersection[FUNS,image[inverse[IMAGE[FIRST]],set[x_]]] := map[x,V] (* derived 2008 December 9 in BINOPS.NB *) intersection[FUNS,image[inverse[IMAGE[SECOND]],image[inverse[S],x_]]] := U[image[MAP,cart[V,x]]] (* derived 2006 June 7 in CONST.NB *) intersection[FUNS,image[inverse[IMAGE[SECOND]],range[SINGLETON]]] := intersection[CONST,complement[set[0]]] (* added 2000 June 14 based on IMAGE-Q.NB *) intersection[FUNS,image[inverse[IMAGE[SWAP]],FUNS]] := BIJ (* derived 2006 October 19 in IMVS-EQV.NB *) intersection[FUNS,image[INVERSE,RS[inverse[E]]]] := image[VS,EQV] (* derived 2007 November 13 in XS-IN-K.NB *) intersection[FUNS,image[K,X[x]],P[x_]] := 0 (* derived 2007 November 11 in XS-MAX.NB *) intersection[FUNS,image[PS,X[x_]],P[x_]] := 0 (* derived 2006 June 13 in CART-SG.NB *) intersection[FUNS,image[SINGLETON,x_]] := image[SINGLETON,composite[Id,x]] (* derived 2004 January 4 in VS-IMIN.NB *) intersection[FUNS,image[VS,x_]] := image[VS,x] (* added 2002 February 9 based on IDX.NB *) intersection[FUNS,invar[composite[DUP,FIRST]]] := P[Id] (* added 2002 February 9 based on MOREIDEM.NB *) intersection[FUNS,invar[composite[DUP,SECOND]]] := PROJ (* derived 2006 February 4 in INVOL.NB *) intersection[FUNS,INVOL] := INVOL (* added 2001 April 25 based on MAP2.NB *) intersection[FUNS,map[x_,y_]] := map[x,y] (* derived 2006 August 5 in CONST.NB *) intersection[FUNS,P[cart[x_,set[y_]]]] := P[cart[x,set[y]]] (* added 1999 August 19 *) intersection[FUNS,P[cart[V,V]]] := FUNS (* derived 2006 June 10 in BINOPS.NB *) intersection[FUNS,P[complement[cart[x_,V]]]] := intersection[FUNS,P[cart[complement[x],V]]] intersection[FUNS,P[complement[cart[V,V]]]] := set[0] (* derived 2007 November 25 in MAX-CLIQ.NB *) intersection[FUNS,P[composite[Id,x_]]] := intersection[FUNS,P[x]] (* added 2001 November 25 based on FUNP-1.NB *) intersection[FUNS,P[Id]] := P[Id] (* derived 2009 January 2 in I-FUNS.NB *) intersection[FUNS,PERMS] := PERMS (* derived 2006 January 24 in I-PO.NB *) intersection[FUNS,PO] := P[Id] (* derived 2006 January 28 in PROJ.NB *) intersection[FUNS,PROJ] := PROJ (* derived 2008 October 17 in QG-SU.NB *) intersection[FUNS,QUASIGPS] := QUASIGPS (* derived 2006 June 7 in CONST.NB *) intersection[FUNS,range[CART]] := CONST (* derived 2008 September 28 in UNOPS-Z.NB *) intersection[FUNS,range[PLUS]] := range[PLUS] (* added 2001 October 16 based on IM-IN-SG.NB *) intersection[FUNS,range[SINGLETON]] := image[SINGLETON,cart[V,V]] (* added 2002 February 9 based on RFX-FUNS.NB *) intersection[FUNS,RFX] := P[Id] (* derived 2006 July 13 in SGPS-I.NB *) intersection[FUNS,SEMIGPS] := SEMIGPS intersection[FUNS,set[0]] := set[0] (* derived 2004 October 28 in X.NB *) intersection[FUNS,set[funpart[x_]]] := set[funpart[x]] (* derived 2006 February 4 in FUNS-SYM.NB *) intersection[FUNS,SYM] := INVOL (* derived 2006 January 31 in TO-I.NB *) intersection[FUNS,TO] := union[image[SINGLETON,Id],set[0]] (* derived 2006 June 9 in UNARY.NB *) intersection[FUNS,UNOPS] := UNOPS (* derived 2006 February 1 in WO-I.NB *) intersection[FUNS,WO] := union[image[SINGLETON,Id],set[0]] (* derived 2004 October 31 in U-X.NB *) intersection[FUNS,X[x_]] := X[x] (* derived 2006 January 30 in I-Z.NB *) intersection[FUNS,Z] := Z (* derived 2005 October 5 in LEASTGLB.NB *) intersection[GLB[x_],inverse[E]] := LEAST[x] (* derived 2005 October 5 in LEASTGLB.NB *) intersection[GLB[x_],LB[x_]] := GLB[x] (* derived 2005 October 6 in GLB-I.NB *) intersection[GLB[x_],LEAST[x_]] := LEAST[x] (* added 2000 December 17 based on CLIQUES.NB *) intersection[GREATEST[x_],GREATEST[complement[x_]]] := 0 (* added 2000 November 18 based on GREATEST.NB *) intersection[GREATEST[x_],inverse[E]] := GREATEST[x] (* derived 2005 October 6 in GLB-I.NB *) intersection[GREATEST[x_],LUB[x_]] := GREATEST[x] (* added 2000 November 18 based on GREATEST.NB *) intersection[GREATEST[x_],UB[y_]] := intersection[GREATEST[x],GREATEST[y]] (* derived 2008 December 5 in GROUPS.NB *) intersection[GROUPS,complement[set[0]]] := GROUPS (* derived 2008 December 5 in GROUPS.NB *) intersection[GROUPS,P[cart[cart[V,V],V]]] := GROUPS (* derived 2008 December 5 in GROUPS.NB *) intersection[GROUPS,QUASIGPS] := GROUPS (* derived 2008 December 10 in SS-GPS.NB *) intersection[GROUPS,range[SINGLETON]] := image[SINGLETON,inverse[DUP]] (* derived 2008 December 5 in GROUPS.NB *) intersection[GROUPS,SEMIGPS] := GROUPS (* added 2001 March 27 based on HF-SS.NB *) intersection[x_,H[x_]] := H[x] (* derived 2008 January 24 in HART-Q-S.TXT *) intersection[HARTOGS,composite[Q,inverse[S]]] := 0 (* derived 2008 January 24 in HART-Q-S.TXT *) intersection[HARTOGS,Q] := 0 (* added 2001 April 1 based on HF-CONT.NB *) intersection[HC,inverse[S]] := HC (* derived 2007 May 30 in NEXT-LIM.NB *) intersection[hull[invar[SUCC],set[ord[x_]]],ord[x_]] := 0 (* added 2002 May 7 based on FIX-HULL.NB *) intersection[HULL[x_],inverse[S]] := id[fix[HULL[x]]] (* IDX-FP-1 in IDX2 *) intersection[Id,x_] := id[fix[x]] intersection[id[x_],y_] := id[intersection[x,fix[y]]] (* derived 2007 December 6 in IDEMFUNP.NB *) intersection[idem[funpart[x_]],inverse[idem[funpart[x_]]]] := id[fix[idem[funpart[x]]]] (* derived 2004 December 14 in IDEMPROJ.NB *) intersection[IDEM,invar[SWAP]] := EQV (* derived 2006 February 8 in INVOL-I.NB *) intersection[IDEM,INVOL] := P[Id] (* derived 2004 December 14 in IDEMPROJ.NB *) intersection[IDEM,P[cart[V,V]]] := IDEM (* derived 2006 January 28 in PROJ.NB *) intersection[IDEM,P[Id]] := P[Id] (* derived 2006 January 24 in I-PO.NB *) intersection[IDEM,PO] := PO (* derived 2006 January 28 in PROJ.NB *) intersection[IDEM,PROJ] := PROJ (* derived 2004 December 14 in IDEMPROJ.NB *) intersection[IDEM,range[CART]] := union[image[CART,composite[E,inverse[E]]],set[0]] (* derived 2004 December 14 in IDEMPROJ.NB *) intersection[IDEM,SYM] := EQV (* derived 2006 January 31 in TO-I.NB *) intersection[IDEM,TO] := TO (* derived 2004 December 14 in IDEMPROJ.NB *) intersection[IDEM,TRV] := IDEM (* derived 2006 June 11 in UNOPS-I.NB *) intersection[IDEM,UNOPS] := PROJ (* derived 2006 February 8 in IDEM-WF.NB *) intersection[IDEM,WF] := set[0] (* derived 2006 February 1 in WO-I.NB *) intersection[IDEM,WO] := WO (* derived 2006 January 30 in I-Z.NB *) intersection[IDEM,Z] := set[id[omega]] (* derived 2009 January 7 in IM-COD.NB *) intersection[ids[x_],image[cod[x_],y_]] := image[cod[x],y] (* derived 2009 January 7 in IM-COD.NB *) intersection[ids[x_],image[dom[x_],y_]] := image[dom[x],y] (* derived 2008 December 25 in COD-DOM.NB *) intersection[ids[x_],range[domain[x_]]] := ids[x] (* derived 2008 December 16 in IDS.NB *) intersection[ids[x_],range[fix[composite[inverse[FIRST],Di,x_]]]] := 0 (* added 2003 October 7 based on WF-IND.NB *) intersection[image[CART,DISJOINT],range[SINGLETON]] := image[SINGLETON,Di] (* derived 2006 June 13 in CART-SG.NB *) intersection[x_,image[CART,Id]] := image[CART,id[fix[image[inverse[CART],x]]]] (* derived 2008 July 6 in IMCARTID.NB *) intersection[x_,image[CART,id[y_]]] := image[CART,id[intersection[y,fix[image[inverse[CART],x]]]]] (* derived 2006 June 13 in CART-SG.NB *) intersection[image[CART,x_],image[SINGLETON,y_]] := image[SINGLETON,intersection[y,composite[inverse[SINGLETON],x,SINGLETON]]] (* added 2001 February 8 based on REPEAT-4.NB *) intersection[image[CART,x_],P[cart[V,V]]] := image[CART,x] (* derived 2006 June 13 in CART-SG.NB *) intersection[image[CART,x_],range[SINGLETON]] := image[SINGLETON,composite[inverse[SINGLETON],x,SINGLETON]] (* derived 2004 February 7 in COMPACT.NB *) intersection[image[COARSER,FINITE],P[FINITE]] := intersection[FINITE,P[FINITE]] (* derived 2008 December 23 in DOM-RAN.NB *) intersection[IMAGE[DUP],inverse[IMAGE[FIRST]]] := IMAGE[DUP] (* derived 2008 December 23 in DOM-RAN.NB *) intersection[IMAGE[DUP],inverse[IMAGE[SECOND]]] := IMAGE[DUP] (* derived 2008 December 23 in DOM-RAN.NB *) intersection[IMAGE[FIRST],IMAGE[SECOND]] := composite[inverse[DUP],DORA] (* derived 2008 December 23 in CATORELN.NB *) intersection[IMAGE[FIRST],inverse[IMAGE[DUP]]] := inverse[IMAGE[DUP]] (* added 2003 October 7 based on WF-IND.NB *) intersection[image[HULL[TRV],x_],P[cart[V,V]]] := image[HULL[TRV],x] (* Theorem CUT-I-3 in CUT2 proved 1998 December 25 *) intersection[IMAGE[id[x_]],inverse[IMAGE[id[y_]]]] := id[P[intersection[x,y]]] intersection[IMAGE[id[x_]],inverse[S]] := IMAGE[id[x]] (* derived 2008 October 22 in CUT-REG.NB *) intersection[IMAGE[id[REGULAR]],inverse[E]] := 0 (* derived 2007 December 6 in IMG-IDEM.NB *) intersection[IMAGE[idem[x_]],inverse[IMAGE[idem[x_]]]] := id[fix[IMAGE[idem[x]]]] (* added 2001 March 8 based on IMIMG.NB *) intersection[image[IMAGE[id[x_]],y_],P[x_]] := image[IMAGE[id[x]],y] intersection[image[z_,x_],image[z_,intersection[x_,y_]]] := image[z,intersection[x,y]] (* derived 2007 March 6 in LCM.NB *) intersection[image[inverse[BIGCUP],image[S,set[omega]]],P[omega]] := intersection[complement[FINITE],P[omega]] (* derived 2007 March 6 in LCM.NB *) intersection[image[inverse[BIGCUP],image[S,set[x_]]],P[P[x_]]] := image[inverse[BIGCUP],set[x]] (* derived 2004 October 9 in IM-COA.NB *) intersection[image[inverse[BIGCUP],image[S,set[U[x_]]]],P[x_]] := image[inverse[COARSER],set[x]] (* added 2003 January 19 based on IMS-OM.NB *) intersection[image[inverse[BIGCUP],omega],P[omega]] := image[inverse[S],omega] (* derived 2005 August 14 in REPLACE2.NB *) intersection[image[inverse[BIGCUP],set[omega]],image[inverse[S],omega]] := 0 (* derived 2005 August 14 in REPLACE2.NB *) intersection[image[inverse[BIGCUP],set[omega]],P[omega]] := intersection[complement[FINITE],P[omega]] (* derived 2005 December 22 in LUB-S.NB *) intersection[image[inverse[BIGCUP],Uclosure[x_]],P[Uclosure[x_]]] := P[Uclosure[x]] (* derived 2007 January 23 in BINOM.NB *) intersection[image[inverse[CARD],set[nat[x_]]],P[nat[x_]]] := set[nat[x]] (* added 2001 March 5 based on K-SS.NB *) intersection[image[inverse[DIF],range[SINGLETON]],inverse[S]] := inverse[K] intersection[image[inverse[z_],x_],domain[z_]] := image[inverse[z],x] (* derived 2008 December 9 in BINOPS.NB *) intersection[image[inverse[DORA],composite[inverse[S],IMAGE[inverse[DUP]]]], U[image[MAP,cart[image[CART,Id],V]]]] := BINOPS (* added 2003 April 30 based on CARTSQ.NB *) intersection[image[inverse[DORA],Id],range[CART]] := image[CART,Id] (* derived 2008 September 28 in UNOPS-Z.NB *) intersection[image[inverse[DORA],Id],range[PLUS]] := set[id[omega]] (* derived 2008 September 28 in UNOPS-Z.NB *) intersection[image[inverse[DORA],inverse[S]],range[PLUS]] := range[PLUS] (* derived 2008 September 29 in MAP.NB *) intersection[image[INVERSE,FUNS],map[x_,y_]] := intersection[BIJ,map[x,y]] (* added 2000 September 22 based on EXPT *) intersection[image[INVERSE,FUNS],P[cart[V,V]]] := image[INVERSE,FUNS] (* derived 2008 September 28 in INVOL.NB *) intersection[image[INVERSE,FUNS],P[Id]] := P[Id] (* added 2003 October 15 based on ACYCLIC.NB *) intersection[image[inverse[HULL[TRV]],x_],P[cart[V,V]]] := image[inverse[HULL[TRV]],x] (* derived 2009 January 21 in INV.NB *) intersection[image[inverse[x_],ids[x_]],inverse[image[inverse[x_],ids[x_]]]] := inv[x] (* derived 2006 September 28 in BINOPS.NB *) intersection[image[inverse[IMAGE[FIRST]],image[CART,Id]], U[image[MAP,IMAGE[inverse[DUP]]]]] := BINOPS (* derived 2006 September 14 in BO-NORM.NB *) intersection[image[inverse[IMAGE[FIRST]],image[inverse[IMAGE[id[cart[V,V]]]],RFX]], P[complement[cart[complement[cart[V,V]],V]]]] := image[inverse[IMAGE[FIRST]],RFX] (* derived 2007 November 11 in XS-MAX.NB *) intersection[image[inverse[IMAGE[FIRST]],image[S,set[domain[x_]]]],P[x_]] := intersection[image[inverse[IMAGE[FIRST]],set[domain[x]]],P[x]] (* added 2001 April 28 based on FNSP6.NB *) intersection[image[inverse[IMAGE[FIRST]],image[S,set[x_]]],P[cart[x_,y_]]] := intersection[image[inverse[IMAGE[FIRST]],set[x]],P[cart[x,y]]] (* added 2001 April 24 based on MAP6.NB *) intersection[image[inverse[IMAGE[FIRST]],image[S,set[x_]]], P[complement[cart[complement[x_],V]]]] := image[inverse[IMAGE[FIRST]],set[x]] (* derived 2008 December 9 in BINOPS.NB *) intersection[image[inverse[IMAGE[FIRST]],x_],U[image[MAP,y_]]] := U[image[MAP,composite[y,id[x]]]] (* derived 2008 July 13 in I-IN-CUT.NB *) intersection[x_,image[inverse[IMAGE[id[y_]]],z_]] := intersection[x,z] /; subclass[U[x],y] (* added 1999 August 19 *) intersection[image[inverse[IMAGE[id[x_]]],y_],P[x_]] := intersection[y,P[x]] (* added 2001 April 24 based on MAP.NB *) intersection[image[inverse[IMAGE[id[cart[V,V]]]],FUNS],P[cart[x_,y_]]] := intersection[FUNS,P[cart[x,y]]] (* added 2002 December 16 based on REPLACE.NB *) intersection[image[inverse[IMAGE[x_]],y_],P[domain[VERTSECT[x_]]]] := image[inverse[IMAGE[x]],y] (* added 2002 based on Q-MEMBER.NB *) intersection[image[inverse[IMAGE[SECOND]],image[S,set[x_]]], P[complement[cart[V,complement[x_]]]]] := image[inverse[IMAGE[SECOND]],set[x]] (* derived 2006 June 7 in CONST.NB *) intersection[image[inverse[IMAGE[SECOND]],range[SINGLETON]],P[cart[V,V]]] := intersection[CONST,complement[set[0]]] (* derived 2006 August 4 in CONST.NB *) intersection[image[inverse[IMAGE[SECOND]],range[SINGLETON]],range[CART]] := intersection[CONST,complement[set[0]]] (* derived 2008 September 29 in MAP.NB *) intersection[image[inverse[IMAGE[SWAP]],FUNS],map[x_,y_]] := intersection[BIJ,map[x,y]] (* added 2002 November 30 based on INVERSE.NB *) intersection[image[inverse[IMAGE[SWAP]],x_],P[cart[V,V]]] := image[INVERSE,x] (* derived 2004 December 21 in COMUTANT.NB *) intersection[image[inverse[IMAGE[SWAP]],subcommutant[inverse[x_]]],subcommutant[x_]] := commutant[x] (* derived 2004 December 21 in SBCOMMUT.NB *) intersection[image[inverse[IMAGE[SWAP]],subcommutant[x_]],P[complement[cart[V,V]]]] := P[complement[cart[V,V]]] (* derived 2007 June 13 in IMGVSDIV.NB *) intersection[image[inverse[IMAGE[VERTSECT[DIV]]],chains[S]],P[omega]] := chains[DIV] (* derived 2007 June 13 in IMGVSDIV.NB *) intersection[image[inverse[IMAGE[VERTSECT[DIV]]],fix[composite[E,BIGCAP]]],P[omega]] := domain[GREATEST[DIV]] (* derived 2007 June 13 in THIN-PO.NB *) intersection[image[inverse[IMAGE[VERTSECT[po[thinpart[x_]]]]],chains[S]], P[fix[po[thinpart[x_]]]]] := chains[po[thinpart[x]]] (* derived 2007 June 13 in THIN-PO.NB *) intersection[image[inverse[IMAGE[VERTSECT[po[thinpart[x_]]]]],fix[composite[E,BIGCAP]]], P[fix[po[thinpart[x_]]]]] := domain[GREATEST[po[thinpart[x]]]] (* derived 2007 June 14 in THIN-PO.NB *) intersection[image[inverse[IMAGE[VERTSECT[po[thinpart[x_]]]]], fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]], P[fix[po[thinpart[x_]]]]] := domain[LEAST[po[thinpart[x]]]] (* derived 2008 October 1 in BIJ-MAP.NB *) intersection[image[INVERSE,map[y_,x_]],map[x_,y_]] := bij[x,y] (* added 2002 November 30 based on INVERSE.NB *) intersection[image[INVERSE,x_],P[cart[V,V]]] := image[INVERSE,x] (* derived 2008 March 4 in ANTISYM.NB *) intersection[image[inverse[po[x_]],set[y_]],image[po[x_],set[y_]]] := intersection[fix[po[x]],set[y]] (* added 2002 December 1 based on Z-PC-S.NB *) intersection[image[INVERSE,range[PLUS]],P[Id]] := set[id[omega]] (* added 2002 December 1 based on Z-PC-S.NB *) intersection[image[INVERSE,range[PLUS]],P[inverse[S]]] := image[INVERSE,range[PLUS]] (* added 2002 December 1 based on Z-PC-S.NB *) intersection[image[INVERSE,range[PLUS]],P[S]] := set[id[omega]] (* added 2002 December 1 based on Z-PC-S.NB *) intersection[image[INVERSE,range[PLUS]],range[PLUS]] := set[id[omega]] (* derived 2005 December 18 in ZER7-MAP.NB *) intersection[image[INVERSE,subcommutant[inverse[S]]],map[P[x_],P[x_]],P[Di]] := 0 (* derived 2004 December 21 in COMUTANT.NB *) intersection[image[INVERSE,subcommutant[inverse[x_]]],subcommutant[x_]] := intersection[commutant[x],P[cart[V,V]]] intersection[image[inverse[S],x_],x_] := x (* derived 2007 December 6 in IMG-IDEM.NB *) intersection[IMAGE[inverse[S]],inverse[IMAGE[inverse[S]]]] := id[fix[IMAGE[inverse[S]]]] (* added 2003 January 19 based on SBV-INE.NB *) intersection[image[inverse[S],omega],subvar[inverse[E]]] := set[0] (* added 2001 October 16 based on RA-SG.NB *) intersection[image[inverse[S],x_],range[SINGLETON]] := image[SINGLETON,U[x]] (* derived 2008 March 9 in WO.NB *) intersection[image[inverse[wo[x_]],set[y_]],image[wo[x_],set[y_]]] := intersection[fix[wo[x]],set[y]] (* derived 2008 January 10 in FIN-U-CL.NB *) intersection[image[K,complement[P[x_]]],P[x_]] := 0 (* added 2002 December 21 based on DIV.NB *) intersection[image[NATMUL,cart[set[x_],y_]], image[V,intersection[omega,set[x_]]]] := image[NATMUL,cart[set[x],y]] (* derived 2005 January 11 in SET-SUCC.NB *) intersection[image[PAIRSET,Di],P[succ[set[0]]]] := set[succ[set[0]]] (* derived 2005 January 9 in PC-CARD2.NB *) intersection[image[PAIRSET,Di],range[POWER]] := image[POWER,range[SINGLETON]] (* derived 2005 January 11 in SET-SUCC.NB *) intersection[image[PAIRSET,Di],succ[set[set[0]]]] := 0 (* derived 2004 September 18 in SSIM-PRS.NB *) intersection[image[PAIRSET,x_],range[SINGLETON]] := image[SINGLETON,fix[x]] (* derived 2005 July 16 in DBLCOUNT.NB *) intersection[x_,image[plus[x_],y_]] := 0 (* derived 2007 November 10 in ALL-MAX.NB *) intersection[image[PS,image[inverse[IMAGE[FIRST]],set[x_]]],map[x_,y_]] := 0 (* derived 2007 November 10 in ALL-MAX.NB *) intersection[image[PS,map[x_,y_]],map[x_,y_]] := 0 (* derived 2008 September 4 in DJ-PA-PS.NB *) intersection[image[PS,x_],P[A[x_]]] := 0 (* derived 2007 November 10 in ALL-MAX.NB *) intersection[image[PS,X[x_]],X[x_]] := 0 (* added 2001 December 17 based on Q-HAT.NB *) intersection[x_,image[Q,x_]] := x (* derived 2006 August 17 in CTBL-U.NB *) intersection[image[Q,OMEGA],image[Q,set[omega]]] := image[Q,set[omega]] (* derived 2006 August 17 in CTBL-U.NB *) intersection[image[Q,OMEGA],image[Q,set[ord[x_]]]] := image[Q,set[ord[x]]] (* derived 2008 June 3 in CARD-ORD.NB *) intersection[image[Q,OMEGA],ord[x_]] := ord[x] intersection[image[z_,x_],range[z_]] := image[z,x] (* added 2001 August 30 based on RC.NB *) intersection[image[RC[x_],y_],P[x_]] := image[RC[x],y] intersection[image[S,x_],x_] := x (* added 2000 November 3 based on SUBVAR.LOG *) intersection[image[S,set[A[x_]]],x_] := x (* Theorem RP-SR-U2 in RP1 proved 1998 October 22 Rule flipped on 1999 October 4 *) intersection[image[S,set[x_]],image[S,set[y_]]] := image[S,set[union[x,y]]] (* added 2000 November 14 based on GREATEST.NB *) intersection[x_,image[S,set[U[x_]]]] := intersection[x,set[U[x]]] (* derived 2008 December 23 in DOM-RAN.NB *) intersection[IMAGE[SECOND],inverse[IMAGE[DUP]]] := inverse[IMAGE[DUP]] (* derived 2006 June 13 in CART-SG.NB *) intersection[image[SINGLETON,x_],range[CART]] := image[SINGLETON,composite[Id,x]] (* Theorem SG-IM-I1 in SG2 proved 1998 September 2 *) intersection[image[SINGLETON,x_],P[y_]] := image[SINGLETON,intersection[x,y]] (* added 1998 September 7 *) intersection[image[SINGLETON,x_],set[0]] := 0 intersection[image[x_,set[u_]],set[u_]] := intersection[fix[x],set[u]] (* derived 2007 May 23 in OL-C-ORD.NB *) intersection[image[SUCC,intersection[OMEGA,complement[ord[x_]]]],ord[x_]] := 0 intersection[image[V,x_],x_] := x (* derived 2008 November 21 in ASSOCFUN.NB *) intersection[x_,image[V,assoc[x_]]] := assoc[x] intersection[image[V,x_],image[z_,x_]] := image[z,x] intersection[image[V,z_],image[z_,x_]] := image[z,x] (* derived 2008 October 7 in BNP-WRAP.NB *) intersection[x_,image[V,intersection[BINOPS,set[x_]]]] := binop[x] (* definition of fin wrapper introduced 2005 October 17 in TO-FIN.NB *) intersection[x_,image[V,intersection[FINITE,set[x_]]]] := fin[x] (* derived 2008 May 7 in ORD-0.NB *) intersection[x_,image[V,intersection[image[Q,OMEGA],set[x_]]]] := wob[x] (* derived 2008 October 20 in LIST.NB *) intersection[x_,image[V,intersection[LISTS,set[x_]]]] := list[x] (* derived 2007 May 2 in WOB.NB *) intersection[x_,image[V,intersection[OMEGA,image[Q,set[x_]]]]] := wob[x] (* derived 2005 February 13 in NAT.NB *) intersection[x_,image[V,intersection[omega,set[x_]]]] := nat[x] (* derived 2005 October 19 in ORD-WRAP.NB *) intersection[x_,image[V,intersection[OMEGA,set[x_]]]] := ord[x] (* derived 2006 August 15 in NAT-SUCC.NB *) intersection[image[V,intersection[omega,set[x_]]],succ[x_]] := nat[succ[x]] (* derived 2005 February 17 in X3741-49.NB *) intersection[image[V,intersection[omega,set[x_]]],U[x_]] := U[nat[x]] (* derived 2005 December 8 in REG.NB *) intersection[x_,image[V,intersection[REGULAR,set[x_]]]] := reg[x] (* Discovered 1998 October 3 *) intersection[image[V,intersection[x_,set[y_]]],complement[image[V,x_]]] := 0 (* added 2002 June 29 based on IDX-IMV.NB *) intersection[image[V,intersection[x_,set[y_]]],set[y_]] := intersection[x,set[y]] intersection[image[V,z_],range[z_]] := range[z] (* derived 2004 March 14 in WO-TRV.NB intersection[x_,image[V,set[x_]]] := setpart[x] *) (* derived 2004 September 25 in LAMB-WF.NB *) intersection[image[V,x_],set[composite[id[image[V,x_]],y_]]] := intersection[image[V,x],set[composite[Id,y]]] (* added 2001 November 13 based on REPLACE.NB *) intersection[image[V,set[first[x_]]],set[second[x_]]] := set[second[x]] intersection[image[V,set[x_]],image[V,complement[x_]]] := image[V,set[x]] (* Rule related to Quaife's Theorem RE7 *) intersection[image[V,set[x_]],image[V,set[complement[x_]]]] := 0 (* added 1999 November 9 based on IMV.NB *) intersection[image[V,set[x_]],image[V,set[domain[x_]]]] := image[V,set[x]] (* derived 2004 August 17 in AP-PAIR.NB *) intersection[image[V,set[y_]],image[V,set[intersection[x_,complement[y_]]]]] := intersection[image[V,set[x]],image[V,set[y]]] (* derived 2007 February 7 in PAIR.NB *) intersection[image[V,set[x_]],image[V,set[y_]],pair[x_,y_]] := intersection[image[V,set[x]],image[V,set[y]],PAIR[x,y]] (* added 1999 November 9 based on IMV.NB *) intersection[image[V,set[x_]],image[V,set[range[x_]]]] := image[V,set[x]] (* added 2002 September 16 based on SUB-SUCC.NB *) intersection[image[V,set[y_]], set[natsub[x_,y_]]] := set[natsub[x,y]] (* added 2002 January 1 based on ROTATE.NB *) intersection[image[V,set[x_]],image[V,set[y_]], set[pair[x_,y_]]] := cart[set[x],set[y]] (* added 2002 October 15 based on MEMBER.NB *) intersection[image[V,y_],set[intersection[x_,image[V,y_]]]] := intersection[image[V,y],set[x]] (* added 2001 November 13 based on REPLACE.NB *) intersection[image[V,set[x_]],set[first[x_]]] := set[first[x]] intersection[image[V,set[x_]],set[id[x_]]] := set[id[x]] intersection[image[V,set[x_]],set[P[x_]]] := set[P[x]] intersection[image[V,set[x_]],set[U[x_]]] := set[U[x]] (* derived 2004 January 4 in VS-IMIN.NB *) intersection[image[VS,x_],P[cart[V,V]]] := image[VS,x] (* derived 2006 September 24 in INTLEQ.NB *) intersection[INTLEQ,composite[INVERSE,INTLEQ,INVERSE]] := id[Z] (* derived 2007 July 20 in OMRA-SBV.NB *) intersection[invar[BIGCUP],P[nat[x_]]] := succ[nat[x]] (* revised 2002 April 18 based on REPLACE.NB *) intersection[invar[BIGCUP],P[omega]] := succ[omega] (* added 2001 October 8 based on RFX.NB *) intersection[invar[composite[DUP,FIRST]],invar[composite[DUP,SECOND]]] := image[inverse[IMAGE[id[cart[V,V]]]],RFX] (* added 2002 February 9 based on RFX-FUNS.NB *) intersection[invar[composite[DUP,FIRST]],P[Id]] := P[Id] (* derived 2006 October 19 in IMVS-EQV.NB *) intersection[invar[composite[id[E],inverse[SECOND],SECOND]],P[E]] := image[INVERSE,RS[inverse[E]]] (* derived 2004 August 7 in RS-1.NB *) intersection[invar[composite[id[x_],inverse[FIRST],FIRST]],P[composite[Id,x_]]] := RS[x] (* derived 2004 August 7 in RS-1.NB *) intersection[invar[composite[id[x_],inverse[FIRST],FIRST]],P[thinpart[x_]]] := RS[x] (* derived 2006 October 18 in RS-IN.NB *) intersection[invar[composite[id[x_],inverse[SECOND],SECOND]],P[composite[Id,x_]]] := image[INVERSE,RS[inverse[x]]] (* derived 2008 March 9 in INIT-OM.NB *) intersection[invar[composite[id[omega],inverse[S]]],P[omega]] := succ[omega] (* derived 2008 March 9 in INIT-OM.NB *) intersection[invar[composite[id[OMEGA],inverse[S]]],P[OMEGA]] := OMEGA (* added 2002 May 14 based on IVR-RS.NB *) intersection[invar[composite[x_,id[y_]]],P[y_]] := intersection[invar[x],P[y]] (* derived 2008 March 20 in IVR-SBV.NB *) intersection[invar[composite[id[x_],S]],P[x_]] := fix[IMAGE[composite[id[x],S]]] (* derived 2004 August 9 in RS-2.NB *) intersection[invar[composite[id[thinpart[x_]],inverse[FIRST],FIRST]],P[thinpart[x_]]] := RS[thinpart[x]] (* derived 2008 February 26 in ON-INVAR.NB *) intersection[invar[composite[inverse[E],IMAGE[id[OMEGA]]]],P[OMEGA]] := OMEGA (* derived 2008 September 4 in IN-2-SBV.NB *) intersection[INVAR,composite[inverse[E],SUBVAR]] := fix[composite[inverse[SECOND],IMG]] (* derived 2004 August 6 in CONSTANT.NB *) intersection[invar[composite[RIGHT[x_],FIRST]],P[cart[y_,set[x_]]]] := P[cart[y,set[x]]] (* derived 2006 September 19 in COMMTIVE.NB *) intersection[invar[cross[SWAP,Id]],P[cart[cart[V,V],V]]] := COMMUTATIVE (* derived 2007 December 17 in FPIMGDIV.NB *) intersection[invar[DIV],P[omega]] := fix[IMAGE[DIV]] (* added 2003 January 9 based on SBV-EQDF.NB *) intersection[invar[EQUIDIFF],P[cart[omega,omega]]] := Uclosure[Z] (* added 2002 June 12 based on ABSORB.NB *) intersection[invar[x_],invar[intersection[x_,y_]]] := invar[x] (* derived 2007 December 17 in FPIMGDIV.NB *) intersection[invar[inverse[DIV]],P[omega]] := fix[IMAGE[inverse[DIV]]] (* derived 2008 March 11 in IVR-SBV.NB *) intersection[invar[inverse[po[x_]]],P[fix[po[x_]]]] := fix[IMAGE[inverse[po[x]]]] (* added 2002 May 14 based on OM-BC.NB *) intersection[invar[inverse[SUCC]],P[omega]] := succ[omega] (* derived 2008 March 11 in IVR-SBV.NB *) intersection[invar[inverse[to[x_]]],P[fix[to[x_]]]] := fix[IMAGE[inverse[to[x]]]] (* derived 2008 March 11 in IVR-SBV.NB *) intersection[invar[inverse[wo[x_]]],P[fix[wo[x_]]]] := fix[IMAGE[inverse[wo[x]]]] (* corollary of Corollary of IVR-3 *) intersection[invar[x_],P[domain[VERTSECT[x_]]]] := invar[x] (* derived 2007 May 7 in SBV-PO.NB *) intersection[invar[po[x_]],P[fix[po[x_]]]] := fix[IMAGE[po[x]]] (* derived 2007 July 3 in INVAR.NB *) intersection[invar[POWER],range[POWER]] := 0 (* derived 2007 July 3 in INVAR.NB *) intersection[invar[POWER],range[SUBVAR]] := 0 (* derived 2007 July 4 in IMAGRANK.NB *) intersection[invar[RANK],P[OMEGA]] := P[OMEGA] (* derived 2008 December 2 in IVR-ROT.NB *) intersection[invar[ROT],P[cart[cart[V,V],V]]] := fix[IMAGE[ROT]] (* see: IVR-IMV.LOG session 1999 January 10 *) intersection[invar[x_],set[0]] := set[0] (* derived 2007 July 3 in INVAR.NB *) intersection[invar[SINGLETON],range[POWER]] := 0 (* Theorem SBV-IVR4 in SUBVAR proved 1999 February 15 *) intersection[invar[x_],subvar[x_]] := fix[IMAGE[x]] (* added 2002 May 25 based on INVAR.NB *) intersection[invar[SUCC],invar[inverse[SUCC]]] := fix[IMAGE[inverse[SUCC]]] (* added 2002 May 14 based on IND-C.NB *) intersection[invar[SUCC],P[omega]] := union[image[RC[omega],omega],set[0]] (* derived 2008 April 1 in IVR-SUCC.NB *) intersection[invar[SUCC],range[POWER]] := 0 (* added 2001 October 10 based on REPLACE.NB *) intersection[invar[SWAP],P[cart[V,V]]] := SYM (* derived 2008 March 11 in IVR-SBV.NB *) intersection[invar[to[x_]],P[fix[to[x_]]]] := fix[IMAGE[to[x]]] (* derived 2008 March 11 in IVR-SBV.NB *) intersection[invar[wo[x_]],P[fix[wo[x_]]]] := fix[IMAGE[wo[x]]] (* added 1999 October 31 based on INTINV.LOG *) intersection[inverse[CAP],inverse[CUP]] := DUP (* added 1999 October 31 based on INTINV.LOG *) intersection[inverse[CAP],inverse[DIF]] := cart[set[0],cart[set[0],V]] (* added 1998 February 8 *) intersection[inverse[DUP],complement[FIRST]] := 0 intersection[inverse[DUP],complement[SECOND]] := 0 intersection[inverse[E],inverse[S]] := composite[inverse[SUCC],inverse[S]] (* Theorem SUC-ES1 in SUC-REL *) intersection[inverse[E],inverse[SUCC]] := inverse[SUCC] (* added 2000 November 13 based on MAX.NB *) intersection[inverse[E],LB[x_]] := LEAST[x] (* added 2000 November 16 based on ASSINT.NB *) intersection[inverse[E],LEAST[x_]] := LEAST[x] (* derived 2005 October 5 in LEASTGLB.NB *) intersection[inverse[E],LUB[x_]] := GREATEST[x] (* added 2000 November 16 based on ASSINT.NB *) intersection[inverse[E],MAXIMAL[x_]] := MAXIMAL[x] (* added 2002 October 27 based on GREATEST.NB *) intersection[inverse[E],MINIMAL[x_]] := MINIMAL[x] (* added 2000 November 13 based on MAX.NB *) intersection[inverse[E],UB[x_]] := GREATEST[x] intersection[x_,inverse[FIRST]] := composite[id[fix[composite[x,FIRST]]],inverse[FIRST]] (* derived 2006 October 31 in REPLACE.NB *) intersection[x_,inverse[funpart[inverse[x_]]]] := inverse[funpart[inverse[x]]] (* derived 2008 September 30 in LAMB-BIJ.NB *) intersection[inverse[IMAGE[FIRST]],inverse[IMAGE[SECOND]]] := composite[inverse[DORA],DUP] intersection[inverse[IMAGE[id[x_]]],S] := inverse[IMAGE[id[x]]] (* derived 2005 October 1 in PO-WRAP.NB *) intersection[inverse[po[x_]],po[x_]] := id[fix[po[x]]] (* derived 2006 January 21 in LEAST-VS.NB *) intersection[inverse[po[x_]],thinpart[po[x_]]] := id[fix[thinpart[po[x]]]] (* added 2000 September 29 based on VS-K-IN.NB *) intersection[inverse[PS],complement[composite[inverse[PS],inverse[PS]]]] := inverse[K] (* added 2000 May 16 based on K-SR.NB *) intersection[inverse[PS],inverse[S]] := inverse[PS] (* added 1999 October 26 based on DIF-LOG.2 ad hoc rule *) intersection[inverse[S],composite[inverse[S],id[x_],inverse[S]]] := composite[inverse[S],id[x],inverse[S]] (* added 1999 October 31 based on INTINV.LOG *) intersection[inverse[S],inverse[IMAGE[id[x_]]]] := id[P[x]] (* Theorem SUC-ES1 in SUC-REL *) intersection[inverse[S],inverse[SUCC]] := inverse[SUCC] (* derived 2007 May 11 in VS-LEAST.NB *) intersection[inverse[S],LB[LB[x_]]] := composite[inverse[S],VERTSECT[GREATEST[x]]] (* derived 2007 May 11 in VS-LEAST.NB *) intersection[inverse[S],LB[UB[x_]]] := composite[inverse[S],VERTSECT[LEAST[x]]] intersection[x_,inverse[SECOND]] := composite[id[fix[composite[x,SECOND]]],inverse[SECOND]] (* added 1998 September 15 *) intersection[inverse[SINGLETON],x_] := composite[id[fix[composite[x,SINGLETON]]],inverse[SINGLETON]] (* derived 2005 October 1 in PO-THIN.NB *) intersection[inverse[thinpart[po[x_]]],thinpart[po[x_]]] := id[fix[thinpart[po[x]]]] (* derived 2005 October 15 in TO-THIN.NB *) intersection[inverse[thinpart[to[x_]]],thinpart[to[x_]]] := id[fix[thinpart[to[x]]]] (* derived 2005 October 8 in TO-WRAP.NB *) intersection[inverse[to[x_]],to[x_]] := id[fix[to[x]]] (* derived 2004 May 11 in EQV-GEN.NB *) intersection[inverse[trv[x_]],trv[x_]] := eqv[x] (* derived 2008 August 3 in WF-ASYM.NB *) intersection[inverse[wf[x_]],wf[x_]] := 0 (* derived 2005 October 16 in WO-WRAP.NB *) intersection[inverse[wo[x_]],wo[x_]] := id[fix[wo[x]]] (* derived 2008 September 28 in INVOL.NB *) intersection[INVOL,image[INVERSE,FUNS]] := INVOL (* derived 2006 June 13 in CART-SG.NB *) intersection[INVOL,image[SINGLETON,x_]] := image[SINGLETON,id[fix[x]]] (* derived 2006 February 4 in INVOL.NB *) intersection[INVOL,P[Id]] := P[Id] (* derived 2006 February 8 in INVOL-I.NB *) intersection[INVOL,PO] := P[Id] (* derived 2006 February 8 in INVOL-I.NB *) intersection[INVOL,PROJ] := P[Id] (* derived 2006 June 11 in CART-PID.NB *) intersection[INVOL,range[CART]] := union[image[SINGLETON,Id],set[0]] (* derived 2006 June 13 in CART-SG.NB *) intersection[INVOL,range[SINGLETON]] := image[SINGLETON,Id] (* derived 2006 February 8 in INVOL-I.NB *) intersection[INVOL,RFX] := P[Id] (* derived 2006 February 4 in INVOL.NB *) intersection[INVOL,SYM] := INVOL (* derived 2006 February 8 in INVOL-I.NB *) intersection[INVOL,TO] := union[image[SINGLETON,Id],set[0]] (* derived 2006 February 8 in INVOL-I.NB *) intersection[INVOL,TRV] := P[Id] (* derived 2006 June 11 in UNOPS-I.NB *) intersection[INVOL,UNOPS] := INVOL (* derived 2006 February 8 in INVOL-I.NB *) intersection[INVOL,WF] := set[0] (* derived 2006 February 8 in INVOL-I.NB *) intersection[INVOL,WO] := union[image[SINGLETON,Id],set[0]] (* derived 2006 February 8 in INVOL-I.NB *) intersection[INVOL,Z] := set[id[omega]] (* added 2000 May 16 based on K-SR.NB *) intersection[K,complement[inverse[S]]] := K (* added 2000 May 16 based on K-SR.NB *) intersection[K,complement[S]] := 0 (* added 2000 May 14 based on K-2.NB *) intersection[K,composite[PS,PS]] := 0 (* added 2000 May 16 based on K-SR.NB *) intersection[K,inverse[PS]] := 0 (* added 2000 May 16 based on K-SR.NB *) intersection[K,inverse[S]] := 0 (* added 2000 May 14 based on K-2.NB *) intersection[K,PS] := K (* added 2000 May 14 based on K-2.NB *) intersection[K,S] := K (* derived 2004 March 6 in LT-C.NB *) intersection[LB[x_],LB[complement[x_]]] := cart[set[0],V] (* derived 2004 March 9 in IDEMLTGT.NB *) intersection[lb[x_,y_],lb[x_,intersection[y_,z_]]] := lb[x,y] (* derived 2005 December 30 in UB-THIN.NB *) intersection[LB[LB[x_]],VERTSECT[UB[x_]]] := VERTSECT[UB[x]] (* added 2000 November 16 based on ASSINT.NB *) intersection[LB[x_],LEAST[y_]] := intersection[LEAST[x],LEAST[y]] (* derived 2004 March 14 in WO-TRV.NB *) intersection[lb[x_,set[y_]],set[y_]] := intersection[fix[x],set[y]] (* derived 2007 April 26 in LB-SMALL.NB *) intersection[x_,lb[SMALLER,x_]] := 0 (* added 2000 November 16 based on ASSINT.NB *) intersection[LB[union[Id,complement[x_]]],MAXIMAL[y_]] := intersection[MAXIMAL[x],MAXIMAL[y]] (* derived 2007 June 10 in SPINE.NB *) intersection[y_,lb[union[x_,inverse[x_]],y_]] := spine[x,y] (* derived 2004 March 6 in LT-C.NB *) intersection[LEAST[x_],LEAST[complement[x_]]] := 0 (* derived 2008 October 20 in LIST.NB *) intersection[LISTS,complement[image[inverse[IMAGE[FIRST]],omega]]] := 0 (* derived 2008 October 24 in JOIN-FP.NB *) intersection[LISTS,domain[fix[composite[x_,JOIN]]]] := domain[fix[composite[x,JOIN]]] (* derived 2008 October 21 in LISTS.NB *) intersection[LISTS,image[inverse[IMAGE[FIRST]],omega]] := LISTS (* derived 2008 October 24 in SUFX-PO.NB *) intersection[LISTS,image[inverse[image[inverse[JOIN],x_]],y_]] := image[inverse[image[inverse[JOIN],x]],y] (* derived 2008 October 22 in JOIN-ASS.NB *) intersection[LISTS,P[complement[cart[omega,complement[x_]]]]] := intersection[LISTS,P[cart[omega,x]]] (* derived 2008 October 22 in JOIN-ASS.NB *) intersection[LISTS,P[complement[cart[V,complement[x_]]]]] := intersection[LISTS,P[cart[omega,x]]] (* derived 2008 October 24 in SUFX-PO.NB *) intersection[LISTS,P[complement[cart[V,V]]]] := set[0] (* derived 2008 October 24 in JOIN-FP.NB *) intersection[LISTS,range[fix[composite[x_,JOIN]]]] := range[fix[composite[x,JOIN]]] (* derived 2005 October 5 in LEASTGLB.NB *) intersection[LUB[x_],UB[x_]] := LUB[x] (* derived 2006 November 11 in FLIP-MAP.NB *) intersection[map[cart[x_,y_],z_],P[cart[cart[V,V],V]]] := map[cart[x,y],z] (* derived 2004 November 26 in XS-CP.NB *) intersection[map[domain[x_],range[x_]],P[x_]] := X[x] (* derived 2007 June 16 in SUBTWINE.NB *) intersection[map[domain[x_],z_],transvar[cross[inverse[x_],Id],cross[Id,y_]]] := intersection[cliques[complement[cross[x,complement[y]]]],map[domain[x],z]] (* derived 2004 October 28 in X.NB *) intersection[map[domain[x_],V],P[x_]] := X[x] (* derived 2004 October 28 in X.NB *) intersection[map[domain[x_],V],P[composite[Id,x_]]] := X[x] (* derived 2004 October 28 in AC2.NB *) intersection[map[intersection[x_,complement[set[0]]],V],P[inverse[E]]] := X[composite[inverse[E],id[x]]] (* derived 2004 November 28 in SKOLEM.NB *) intersection[map[intersection[x_,image[inverse[z_],y_]],y_],P[z_]] := X[composite[id[y],z,id[x]]] (* derived 2004 October 28 in AC2.NB *) intersection[map[intersection[x_,y_],V],P[cart[y_,V]]] := map[intersection[x,y],V] (* derived 2004 October 28 in AC2.NB *) intersection[map[intersection[x_,y_],V],P[composite[z_,id[y_]]]] := intersection[map[intersection[x,y],V],P[z]] (* added 2001 April 25 based on MAP1.NB *) intersection[map[x_,y_],map[x_,z_]] := map[x,intersection[y,z]] (* added 2001 April 28 based on FNSP6.NB *) intersection[map[x_,y_],P[cart[x_,z_]]] := map[x,intersection[y,z]] (* added 2001 April 25 based on MAP1.NB *) intersection[map[x_,y_],P[cart[V,z_]]] := map[x,intersection[y,z]] (* added 2001 April 25 based on MAP2.NB *) intersection[map[x_,y_],P[complement[cart[V,complement[z_]]]]] := map[x,intersection[y,z]] (* derived 2004 October 28 in AC2.NB *) intersection[map[x_,y_],P[composite[Id,z_]]] := intersection[map[x,y],P[z]] (* derived 2004 November 28 in SKOLEM.NB *) intersection[map[x_,y_],P[composite[id[z_],w_]]] := intersection[map[x,intersection[y,z]],P[w]] (* derived 2006 November 4 in CONSTMAP.NB *) intersection[map[x_,y_],range[CART]] := union[image[CART,cart[set[x],image[SINGLETON,y]]], intersection[complement[image[V,x]],set[0]]] (* derived 2005 July 9 in MM10-12.NB *) intersection[nat[natsub[nat[x_],nat[y_]]],nat[natsub[nat[y_],nat[x_]]]] := 0 (* derived 2005 June 17 in DF.NB *) intersection[x_,natadd[x_,y_]] := x (* derived 2005 May 27 in ADD-SU.NB *) intersection[NATADD,composite[complement[inverse[E]],FIRST]] := NATADD (* derived 2005 May 27 in ADD-SU.NB *) intersection[NATADD,composite[complement[inverse[E]],SECOND]] := NATADD (* added 2002 October 29 based on NATSUB.NB *) intersection[NATADD,composite[inverse[E],SECOND]] := 0 (* added 2002 September 15 based on NATADDEZ.NB *) intersection[NATADD,composite[S,FIRST]] := NATADD (* added 2002 September 15 based on NATADDEZ.NB *) intersection[NATADD,composite[S,SECOND]] := NATADD (* derived 2006 August 15 in EVEN-ODD.NB *) intersection[odd,complement[even]] := odd (* derived 2006 August 15 in EVEN-ODD.NB *) intersection[odd,omega] := odd (* derived 2006 May 31 in OL-NOGAP.NB *) intersection[OMEGA,x_,A[intersection[OMEGA,x_]]] := 0 (* derived 2008 May 9 in PRIMESEQ.NB *) intersection[omega,APPLY[PRIMESEQ,nat[x_]]] := APPLY[PRIMESEQ,nat[x]] (* derived 2007 July 27 in BINCL.NB *) intersection[omega,binclosed[CAP]] := omega (* derived 2003 December 25 in TOPSDEFN.NB *) intersection[OMEGA,binclosed[CAP]] := OMEGA (* derived 2007 July 27 in BINCL.NB *) intersection[omega,binclosed[CUP]] := omega (* derived 2007 July 27 in BINCL.NB *) intersection[OMEGA,binclosed[CUP]] := OMEGA (* derived 2006 March 25 in REG-DESC.NB *) intersection[OMEGA,complement[DESCENDING]] := intersection[OMEGA,complement[set[0]]] (* derived 2006 August 15 in EVEN-ODD.NB *) intersection[omega,complement[even]] := odd (* derived 2006 February 21 in A-SUC-ON.NB *) intersection[omega,complement[fix[BIGCUP]]] := intersection[omega,complement[set[0]]] (* derived 2008 June 3 in CARD-ORD.NB *) intersection[OMEGA,complement[fix[composite[E,CARD]]]] := fix[CARD] (* derived 2008 June 3 in CARD-ORD.NB *) intersection[OMEGA,complement[fix[composite[E,Q]]]] := fix[CARD] (* derived 2006 March 7 in PC-ON-SC.NB *) intersection[OMEGA,complement[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]]] := intersection[OMEGA,fix[BIGCUP]] (* derived 2006 March 7 in PC-ON-SC.NB *) intersection[OMEGA,complement[fix[composite[SUCC,BIGCUP]]]] := intersection[OMEGA,fix[BIGCUP]] (* added 1998 August 18 *) intersection[omega,complement[FULL]] := 0 (* added 1998 February 7 *) intersection[OMEGA,complement[FULL]] := 0 (* derived 2008 January 24 in CARD-ON.NB *) intersection[OMEGA,complement[image[Q,OMEGA]]] := 0 (* derived 2004 September 29 in WF-REC-7.NB *) intersection[omega,complement[image[SUCC,complement[omega]]]] := omega (* revised 2003 June 1 based on REPLACE.NB *) intersection[OMEGA,complement[invar[SUCC]]] := intersection[OMEGA,complement[fix[BIGCUP]]] (* derived 2006 August 15 in EVEN-ODD.NB *) intersection[omega,complement[odd]] := even (* added 1998 February 7 *) intersection[omega,complement[OMEGA]] := 0 (* derived 2005 February 19 in ITR-OM-E.NB *) intersection[omega,complement[P[complement[omega]]]] := intersection[omega,complement[set[0]]] (* derived 2005 August 16 in DIFOMSUC.NB *) intersection[omega,complement[P[complement[set[x_]]]]] := intersection[omega,complement[succ[x]],image[V,intersection[omega,set[x]]]] (* derived 2007 August 6 in RK-RA-OL.NB *) intersection[omega,complement[P[omega]]] := 0 (* derived 2007 August 1 in TO-CHN-S.NB *) intersection[OMEGA,complement[P[OMEGA]]] := 0 (* derived 2005 February 19 in ITR-OM-E.NB *) intersection[omega,complement[P[union[complement[omega],nat[x_]]]]] := intersection[omega,complement[succ[nat[x]]]] (* Theorem OM-SUC-8 in OM3 *) intersection[omega,complement[range[SUCC]]] := set[0] (* added 2002 May 24 based on OMEGA.NB *) intersection[OMEGA,complement[range[SUCC]]] := intersection[OMEGA,fix[BIGCUP]] (* derived 2006 March 7 in PC-ON-SC.NB *) intersection[OMEGA,complement[subvar[inverse[E]]]] := intersection[OMEGA,complement[fix[BIGCUP]]] (* derived 2006 November 28 in NATEXP-5.NB *) intersection[omega,domain[image[inverse[NATEXP],x_]]] := domain[image[inverse[NATEXP],x]] (* added 2002 April 16 based on ITER-0.NB *) intersection[omega,domain[iterate[x_,y_]]] := domain[iterate[x,y]] (* derived 2008 October 21 in LISTS.NB *) intersection[omega,domain[list[x_]]] := domain[list[x]] (* derived 2006 May 29 in OL-DO.NB *) intersection[omega,domain[ordlist[x_]]] := domain[ordlist[x]] (* derived 2007 August 1 in TO-CHN-S.NB *) intersection[OMEGA,domain[VERTSECT[composite[id[OMEGA],S]]]] := 0 (* derived 2006 April 16 in UCL-IREG.NB *) intersection[omega,domain[VERTSECT[ZN]]] := omega (* derived 2005 January 4 in IMINRANK.NB *) intersection[OMEGA,domain[VERTSECT[ZN]]] := OMEGA (* derived 2007 July 27 in ACL-UCL.NB *) intersection[omega,fix[ACLOSURE]] := omega (* derived 2007 July 27 in ACL-UCL.NB *) intersection[OMEGA,fix[ACLOSURE]] := OMEGA (* added 2002 May 25 based on OM-INVAR.NB *) intersection[omega,fix[BIGCUP]] := set[0] (* derived 2006 March 7 in PC-ON-SC.NB *) intersection[OMEGA,fix[BIGCUP],fix[composite[SUCC,BIGCUP]]] := 0 (* added 2002 May 28 based on CARD-OM.NB *) intersection[omega,fix[CARD]] := omega (* added 2001 December 14 based on CARD-Q.NB *) intersection[OMEGA,fix[CARD]] := fix[CARD] (* derived 2005 August 8 in PIGEON.NB *) intersection[omega,fix[composite[CARD,PS,inverse[CARD]]]] := 0 (* derived 2008 June 3 in CARD-ORD.NB *) intersection[OMEGA,fix[composite[E,CARD]]] := intersection[OMEGA,complement[fix[CARD]]] (* added 2002 June 2 based on FP-E-HC.NB *) intersection[OMEGA,fix[composite[E,HC]]] := 0 (* derived 2008 June 3 in CARD-ORD.NB *) intersection[OMEGA,fix[composite[E,Q]]] := intersection[OMEGA,complement[fix[CARD]]] (* derived 2008 January 24 in HART-Q-S.TXT *) intersection[OMEGA,fix[composite[HARTOGS,x_]]] := fix[composite[HARTOGS,x]] (* Corollary of Corollary ONORD-2A in ON3 proved 2000 December 12 *) intersection[OMEGA,fix[composite[inverse[BIGCUP],E]]] := 0 (* derived 2007 August 2 in FP-E-BC.NB *) intersection[omega,fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := intersection[omega,complement[set[0]]] (* derived 2003 December 24 based on ON-SC.NB *) intersection[OMEGA,fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := intersection[OMEGA,complement[fix[BIGCUP]]] (* Corollary of Corollary ONORD-2A in ON3 proved 2000 December 12 *) intersection[OMEGA,fix[composite[inverse[E],BIGCUP]]] := 0 (* derived 2008 January 24 in CARD-ON.NB *) intersection[OMEGA,fix[composite[inverse[S],CARD]]] := fix[CARD] (* derived 2006 February 14 in ITER-OO.NB *) intersection[omega,fix[composite[z_,iterate[x_,y_]]]] := fix[composite[z,iterate[x,y]]] (* derived 2006 March 7 in PC-ON-SC.NB *) intersection[OMEGA,fix[composite[SUCC,BIGCUP]]] := intersection[OMEGA,complement[fix[BIGCUP]]] (* derived 2008 March 1 in STRUNG.NB *) intersection[OMEGA,fix[composite[SUCC,S]]] := 0 (* derived 2007 July 20 in OMRA-IMS.NB *) intersection[omega,fix[IMAGE[inverse[S]]]] := succ[succ[set[0]]] (* derived 2007 July 23 in ON-IMS.NB *) intersection[OMEGA,fix[IMAGE[inverse[S]]]] := succ[succ[set[0]]] (* added 2002 May 25 based on INVAR.NB *) intersection[omega,fix[IMAGE[inverse[SUCC]]]] := set[0] (* derived 2007 August 2 in FP-E-BC.NB *) intersection[omega,fix[UCHAINS]] := intersection[omega,complement[set[0]]] (* derived 2007 July 27 in ACL-UCL.NB *) intersection[omega,fix[UCLOSURE]] := intersection[omega,complement[set[0]]] (* derived 2003 December 24 in UCL-ON.NB *) intersection[OMEGA,fix[UCLOSURE]] := intersection[OMEGA,complement[fix[BIGCUP]]] (* derived 2005 January 5 in CORE-ON.NB *) intersection[OMEGA,H[x_]] := core[OMEGA,x] (* derived 2007 May 30 in NEXT-LIM.NB *) intersection[OMEGA,hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x_]]]] := hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x]]] (* added 2003 May 7 based on UNOPS.NB *) intersection[omega,image[DIV,x_]] := image[DIV,x] (* derived 2006 November 30 in EXP-INEQ.NB *) intersection[omega,image[fix[composite[inverse[NATEXP],x_]],y_]] := image[fix[composite[inverse[NATEXP],x]],y] (* derived 2006 November 28 in NATEXP-5.NB *) intersection[omega,image[image[inverse[NATEXP],x_],y_]] := image[image[inverse[NATEXP],x],y] (* derived 2005 January 27 in BA-OM.NB *) intersection[omega,image[inverse[BIGCAP],set[0]]] := intersection[omega,complement[set[0]]] (* derived 2005 January 27 in BA-ON.NB *) intersection[OMEGA,image[inverse[BIGCAP],set[0]]] := intersection[OMEGA,complement[set[0]]] (* derived 2005 February 16 in BC-OM.NB *) intersection[omega,image[inverse[BIGCUP],omega]] := omega (* derived 2003 December 24 in UCL-ON.NB *) intersection[OMEGA,image[inverse[BIGCUP],OMEGA]] := OMEGA (* derived 2008 January 20 in HART-FIN.NB *) intersection[omega,image[inverse[CARD],P[nat[x_]]]] := succ[nat[x]] (* derived 2005 February 22 in DIVRULES.NB *) intersection[omega,image[inverse[DIV],x_]] := image[inverse[DIV],x] (* derived 2005 April 16 in FACTRL.NB *) intersection[omega,image[inverse[FACTORIAL],x_]] := image[inverse[FACTORIAL],x] (* derived 2006 April 14 in PC-TOWER.NB *) intersection[omega,image[inverse[IMAGE[inverse[RANK]]],FULL]] := omega (* derived 2006 May 16 in DO-ITER.NB *) intersection[omega,image[inverse[iterate[x_,y_]],z_]] := image[inverse[iterate[x,y]],z] (* derived 2005 May 22 in DIV-ADD.NB *) intersection[omega,image[inverse[plus[x_]],y_]] := image[inverse[plus[x]],y] (* derived 2005 January 19 in ON-OM.NB *) intersection[OMEGA,image[inverse[S],omega]] := omega (* derived 2006 March 14 in ORDRULES.NB *) intersection[OMEGA,image[inverse[S],ord[x_]]] := ord[x] (* derived 2003 December 24 in UCL-ON.NB *) intersection[OMEGA,image[inverse[UCLOSURE],OMEGA]] := OMEGA (* added 2002 July 4 based on NATADD.NB *) intersection[omega,image[iterate[SUCC,y_],x_]] := image[NATADD,cart[x,y]] (* added 2003 July 23 based on NATADD.NB *) intersection[omega,image[NATADD,x_]] := image[NATADD,x] (* derived 2006 August 27 in CARDOMSQ.NB *) intersection[omega,image[NATMUL,x_]] := image[NATMUL,x] (* derived 2005 July 16 in DBLCOUNT.NB *) intersection[omega,image[plus[x_],y_]] := image[plus[x],y] (* derived 2006 March 12 in DENUM.NB *) intersection[omega,image[Q,OMEGA]] := omega (* derived 2008 January 20 in HART-FIN.NB *) intersection[OMEGA,image[Q,P[fin[x_]]]] := succ[card[fin[x]]] (* derived 2008 January 20 in HART-FIN.NB *) intersection[OMEGA,image[Q,P[nat[x_]]]] := succ[nat[x]] (* derived 2006 March 20 in PCSU-FIN.NB *) intersection[OMEGA,image[RANK,x_]] := image[RANK,x] (* added 2002 June 11 based on TRV.NB *) intersection[omega,image[S,intersection[omega,complement[set[0]]]]] := intersection[omega,complement[set[0]]] (* derived 2005 July 16 in DBLCOUNT.NB *) intersection[omega,image[S,set[x_]],image[V,intersection[omega,set[x_]]]] := intersection[omega,complement[x],image[V,intersection[omega,set[x]]]] (* derived 2005 July 16 in DBLCOUNT.NB *) intersection[omega,image[S,set[nat[x_]]]] := intersection[omega,complement[nat[x]]] (* derived 2005 February 19 in ITR-OM-E.NB *) intersection[omega,image[S,set[succ[set[0]]]]] := intersection[omega,complement[succ[set[0]]]] (* derived 2007 May 22 in SU-OM.NB *) intersection[omega,image[SUCC,complement[nat[x_]]]] := intersection[omega,complement[succ[nat[x]]]] (* derived 2004 September 29 in WF-REC-7.NB *) intersection[omega,image[SUCC,complement[omega]]] := 0 (* derived 2008 January 22 in HART-FU.NB *) intersection[omega,image[SUCC,fix[CARD]]] := intersection[omega,complement[set[0]]] (* derived 2007 May 23 in SU-ON.NB *) intersection[OMEGA,image[SUCC,ord[x_]]] := image[SUCC,ord[x]] (* added 2002 September 12 based on LEFT-SUB.NB *) intersection[omega,image[V,intersection[omega,set[x_]]],P[x_]] := intersection[image[V,intersection[omega,set[x]]],succ[x]] (* added 2002 May 26 based on ON-SUC-1.NB *) intersection[OMEGA,invar[inverse[SUCC]]] := OMEGA (* added 2002 May 25 based on OM-INVAR.NB *) intersection[omega,invar[SUCC]] := set[0] (* Theorem IVR-ON3A in INVAR proved 1999 November 11 *) intersection[OMEGA,invar[SUCC]] := intersection[OMEGA,fix[BIGCUP]] (* derived 2007 April 12 in LD-4.NB *) intersection[omega,ld[x_,y_]] := ld[x,y] (* derived 2005 February 13 in NAT.NB *) intersection[omega,nat[x_]] := nat[x] (* derived 2007 July 4 in NAT-ORD.NB *) intersection[OMEGA,nat[x_]] := nat[x] (* derived 2005 July 16 in DBLCOUNT.NB *) intersection[omega,natadd[nat[x_],nat[y_]]] := natadd[nat[x],nat[y]] (* added 1998 February 7 *) intersection[omega,OMEGA] := omega (* derived 2005 November 25 in ORD-ON.NB *) intersection[OMEGA,ord[x_]] := ord[x] (* derived 2006 March 25 in PC-ON-A.NB *) intersection[OMEGA,x_,P[complement[x_]]] := set[A[intersection[OMEGA,x]]] (* added 2002 April 20 based on ON-7-A.NB *) intersection[omega,P[complement[set[0]]]] := set[0] (* added 2003 January 20 based on ONSUC7OT.NB *) (* variable-free formulation of Corollary ON-1-B *) intersection[OMEGA,P[complement[set[0]]]] := set[0] (* derived 2007 July 23 in ON-IMS.NB *) intersection[OMEGA,P[complement[set[ord[x_]]]]] := succ[ord[x]] (* added 2002 May 13 based on OM-SC-3.NB *) intersection[omega,P[complement[set[set[0]]]]] := succ[set[0]] (* derived 2007 July 23 in ON-IMS.NB *) intersection[OMEGA,P[complement[set[set[0]]]]] := succ[set[0]] (* derived 2007 July 23 in ON-IMS.NB *) intersection[OMEGA,P[complement[set[succ[set[0]]]]]] := succ[succ[set[0]]] (* added 1998 May 13. Follows from ISB5-COR and ONISB-1B *) intersection[OMEGA,P[FULL]] := OMEGA (* derived 2005 April 16 in 2ND-IND.NB *) intersection[omega,P[intersection[omega,x_]]] := intersection[omega,P[x]] (* derived 2005 April 16 in 2ND-IND.NB *) intersection[OMEGA,P[intersection[OMEGA,x_]]] := intersection[OMEGA,P[x]] (* derived 2007 July 4 in NAT-ORD.NB *) intersection[OMEGA,P[nat[x_]]] := succ[nat[x]] intersection[omega,P[omega]] := omega (* derived 2005 January 19 in ON-OM.NB *) intersection[omega,P[OMEGA]] := omega (* added 2002 May 7 based on EXAMPLES.NB *) intersection[OMEGA,P[omega]] := succ[omega] (* added 1998 February 7 follows from ISB5-COR in ON4 *) intersection[OMEGA,P[OMEGA]] := OMEGA (* derived 2006 March 14 in ORDRULES.NB *) intersection[OMEGA,P[ord[x_]]] := succ[ord[x]] (* Theorem ON-FUL-G in ON2 added 1998 February 7 *) intersection[OMEGA,P[RUSSELL]] := OMEGA (* derived 2005 April 16 in 2ND-IND.NB *) intersection[omega,P[union[x_,complement[omega]]]] := intersection[omega,P[x]] (* derived 2005 April 16 in 2ND-IND.NB *) intersection[OMEGA,P[union[x_,complement[OMEGA]]]] := intersection[OMEGA,P[x]] (* derived 2005 February 22 in PRIMEDIV.NB *) intersection[omega,PRIMES] := PRIMES (* derived 2006 March 7 in ORDLIST.NB *) intersection[OMEGA,PRIMES] := PRIMES (* derived 2007 July 20 in OMRA-IMS.NB *) intersection[omega,range[CLIQUES]] := set[set[0],succ[set[0]]] (* derived 2007 July 23 in ON-IMS.NB *) intersection[OMEGA,range[CLIQUES]] := set[set[0],succ[set[0]]] (* derived 2007 August 6 in RK-RA-OL.NB *) intersection[OMEGA,range[ordlist[x_]]] := range[ordlist[x]] (* added 2002 May 13 based on OM-PC.NB *) intersection[omega,range[POWER]] := set[set[0],succ[set[0]]] (* derived 2007 May 17 in CORE-ON.NB *) intersection[OMEGA,range[POWER]] := set[set[0],succ[set[0]]] (* added 2002 May 12 based on OM-SS.NB *) intersection[omega,range[SINGLETON]] := set[set[0]] (* added 2001 October 16 based on IM-IN-SG.NB *) intersection[OMEGA,range[SINGLETON]] := set[set[0]] (* derived 2007 July 20 in OMRA-SBV.NB *) intersection[omega,range[SUBVAR]] := intersection[omega,complement[set[0]]] (* Theorem OM-SUC-9 in OM3 added 1998 February 7 *) intersection[omega,range[SUCC]] := intersection[omega,complement[set[0]]] (* revised 2003 June 1 based on ONRASUCC.NB *) intersection[OMEGA,range[SUCC]] := intersection[OMEGA,complement[fix[BIGCUP]]] (* added 2000 February 12 based on ON-SUC16.NB *) intersection[omega,REGULAR] := omega (* added 2000 February 12 based on ON-SUC16.NB *) intersection[OMEGA,REGULAR] := OMEGA (* added 2003 July 25 based on HULL-Z.NB *) intersection[omega,RUSSELL] := omega (* Theorem ON-FUL-F in ON2 added 1998 February 7 *) intersection[OMEGA,RUSSELL] := OMEGA (* added 1998 April 2 *) intersection[omega,set[0]] := set[0] (* added 1998 April 2 *) intersection[OMEGA,set[0]] := set[0] (* added 2002 July 28 based on ADD-NAT.NB *) intersection[omega,set[natadd[x_,y_]]] := set[natadd[x,y]] (* derived 2007 March 6 in I-OM-NDV.NB *) intersection[omega,set[natdiv[x_,y_]]] := set[natdiv[x,y]] (* derived 2007 March 6 in IMV-EXP.NB *) intersection[omega,set[natexp[x_,y_]]] := set[natexp[x,y]] (* derived 2007 March 6 in IMV-MOD.NB *) intersection[omega,set[natmod[x_,y_]]] := set[natmod[x,y]] (* added 2002 August 27 based on DISTRIB.NB *) intersection[omega,set[natmul[x_,y_]]] := set[natmul[x,y]] (* derived 2007 March 6 in IMV-SUB.NB *) intersection[omega,set[natsub[x_,y_]]] := set[natsub[x,y]] (* added 2000 January 6 based on FOREST.NB *) intersection[omega,set[set[0]]] := set[set[0]] (* added 2002 June 12 based on NATADD.NB *) intersection[omega,set[succ[set[0]]]] := set[succ[set[0]]] (* added 2002 May 25 based on INVAR.NB *) intersection[omega,subvar[inverse[E]]] := set[0] (* added 2002 May 25 based on INVAR.NB *) intersection[OMEGA,subvar[inverse[E]]] := intersection[OMEGA,fix[BIGCUP]] (* derived 2007 November 1 in MAX-ON.NB *) intersection[OMEGA,subvar[inverse[PS]]] := intersection[OMEGA,fix[BIGCUP]] (* derived 2007 July 27 in TOPS.NB *) intersection[omega,TOPS] := intersection[omega,complement[set[0]]] (* derived 2003 December 25 in TOPSDEFN.NB *) intersection[OMEGA,TOPS] := intersection[OMEGA,complement[fix[BIGCUP]]] (* derived 2006 May 16 in DO-ITER.NB *) intersection[omega,U[domain[iterate[x_,y_]]]] := U[domain[iterate[x,y]]] (* derived 2006 May 29 in OL-DO.NB *) intersection[omega,U[domain[ordlist[x_]]]] := U[domain[ordlist[x]]] (* derived 2006 March 7 in HULL-ON.NB *) intersection[OMEGA,U[intersection[OMEGA,x_]]] := U[intersection[OMEGA,x]] (* derived 2007 July 4 in IMS-OM.NB *) intersection[omega,U[nat[x_]]] := U[nat[x]] (* derived 2004 June 19 in REPLACE.NB *) intersection[y_,oopart[x_]] := composite[oopart[x],id[fix[composite[inverse[y],oopart[x]]]]] (* derived 2004 May 9 in OOPART.NB *) intersection[OOPART,inverse[S]] := OOPART (* derived 2008 August 9 in 2ND-IND.NB *) intersection[ord[x_],P[intersection[y_,ord[x_]]]] := intersection[ord[x],P[y]] (* derived 2005 December 1 in ORD-UNIQ.NB *) intersection[ord[x_],P[ord[x_]]] := ord[x] (* derived 2008 August 9 in 2ND-IND.NB *) intersection[ord[x_],P[union[y_,complement[ord[x_]]]]] := intersection[ord[x],P[y]] (* added 2000 November 3 based on SUBVAR.LOG *) intersection[x_,P[A[x_]]] := intersection[x,set[A[x]]] (* added 2001 April 22 based on CROSS-2.NB *) intersection[P[cart[cart[V,V],cart[V,V]]],range[CROSS]] := range[CROSS] (* added 2002 November 30 based on Z-PLUS.NB *) intersection[P[cart[omega,omega]],range[PLUS]] := range[PLUS] (* added 2002 November 28 based on SBV-SUCC.NB *) intersection[P[cart[omega,V]],subvar[cross[SUCC,x_]]] := set[0] (* added 2002 November 29 based on PLUS.NB *) intersection[P[cart[V,V]],range[PLUS]] := range[PLUS] (* derived 2004 May 9 in OOPART.NB *) intersection[P[cart[V,V]],set[oopart[x_]]] := set[oopart[x]] (* derived 2004 September 21 in WF-X.NB *) intersection[P[cart[V,V]],subvar[cross[x_,y_]]] := subvar[cross[x,y]] (* derived 2004 December 6 in U-MAP.NB *) intersection[P[cart[V,V]],U[image[MAP,x_]]] := U[image[MAP,x]] (* derived 2004 November 2 in SELECT.NB *) intersection[P[cart[x_,V]],X[composite[y_,id[x_]]]] := X[composite[y,id[x]]] (* derived 2004 December 21 in SBCOMMUT.NB *) intersection[P[complement[cart[V,V]]],subcommutant[x_]] := P[complement[cart[V,V]]] (* derived 2004 September 18 in WF-WRAP.NB *) intersection[x_,P[complement[U[x_]]]] := intersection[x,set[0]] (* derived 2004 October 28 in X.NB *) intersection[P[composite[Id,x_]],X[x_]] := X[x] (* added 2004 April 17 based on CORE.NB *) intersection[x_,P[core[x_,y_]]] := intersection[x,P[y]] (* derived 2007 September 8 in UCL-XVR.NB *) intersection[P[domain[VERTSECT[x_]]],transvar[x_,y_],transvar[y_,x_]] := fix[composite[inverse[IMAGE[x]],IMAGE[y]]] (* added 2003 July 16 based on FINITE.NB *) intersection[P[FINITE],subvar[PS]] := set[0] (* added 2001 April 27 based on MAP2.NB *) intersection[P[FUNS],range[MAP]] := range[MAP] (* added 2001 March 17 based on REMOVED.NB *) intersection[x_,P[H[x_]]] := H[x] (* derived 2008 July 15 in UCL-H.NB *) intersection[P[H[x_]],Uclosure[x_]] := Uclosure[H[x]] (* derived 2006 June 11 in CART-PID.NB *) intersection[P[Id],range[CART]] := union[image[SINGLETON,Id],set[0]] (* added 2002 December 1 based on ZERO-INT.NB *) intersection[P[Id],range[PLUS]] := set[id[omega]] (* Theorem SR-PC-IM in SR3 proved 1998 October 6 *) intersection[P[x_],image[S,set[x_]]] := set[x] (* derived 2004 October 28 in X.NB *) intersection[P[intersection[x_,y_]],X[x_]] := intersection[P[y],X[x]] (* added 2002 December 1 based on Z-PC-S.NB *) intersection[P[inverse[S]],range[PLUS]] := set[id[omega]] (* derived 2007 May 17 in CORE-ON.NB *) intersection[P[OMEGA],range[POWER]] := set[set[0],succ[set[0]]] (* derived 2007 November 1 in MAX-ON.NB *) intersection[P[OMEGA],subvar[inverse[PS]]] := intersection[P[OMEGA],subvar[inverse[E]]] (* derived 2005 October 22 in TRANSFIN.NB *) intersection[P[OMEGA],subvar[PS]] := set[0] (* derived 2004 September 29 in WF-REC-7.NB *) intersection[P[omega],subvar[SUCC]] := set[0] (* derived 2004 October 12 in CMPCT-OM.NB *) intersection[P[omega],succ[omega]] := succ[omega] (* derived 2004 October 12 in CMPCT-OM.NB *) intersection[P[omega],Uclosure[image[RC[omega],omega]]] := Uclosure[image[RC[omega],omega]] (* Theorem PC-8 in PC1 *) intersection[P[x_],P[y_]] := P[intersection[x,y]] (* added 2001 November 22 based on PC-I-SS.NB *) intersection[P[x_],set[0,set[y_]]] := P[intersection[x,set[y]]] (* added 2001 November 11 based on PAIRSET.NB *) intersection[P[x_],range[PAIRSET]] := image[PAIRSET,cart[x,x]] (* derived 2005 November 6 in REPLACE.NB *) intersection[P[range[x_]],range[IMAGE[x_]]] := range[IMAGE[x]] (* added 2002 November 12 based on VS-RULES.NB *) intersection[P[range[x_]],range[VERTSECT[x_]]] := range[VERTSECT[x]] (* Theorem SG-IM-5 in SG2 proved 1998 September 1 *) intersection[P[x_],range[SINGLETON]] := image[SINGLETON,x] (* added 2002 November 26 based on IVR-SBV.NB *) intersection[P[range[x_]],subvar[x_]] := subvar[x] (* added 2002 December 1 based on Z-PC-S.NB *) intersection[P[S],range[PLUS]] := range[PLUS] intersection[P[x_],set[x_]] := set[x] (* derived 2005 October 23 in SBV-RS.NB *) intersection[P[x_],subvar[composite[y_,id[x_]]]] := intersection[P[x],subvar[y]] (* added 2001 November 22 based on PC-I-SS.NB *) intersection[P[x_],succ[set[0]]] := P[intersection[x,set[0]]] (* derived 2007 May 17 in CORE-ON.NB *) intersection[P[succ[set[0]]],range[POWER]] := set[set[0],succ[set[0]]] intersection[x_,P[U[x_]]] := x (* derived 2004 October 28 in X.NB *) intersection[P[x_],X[x_]] := X[x] (* derived 2006 March 4 in KURA.NB *) intersection[PAIRSET,composite[SINGLETON,FIRST]] := composite[SINGLETON,inverse[DUP]] (* derived 2009 January 2 in I-FUNS.NB *) intersection[PERMS,bij[x_,x_]] := bij[x,x] (* derived 2008 October 31 in PERMS.NB *) intersection[PERMS,binhom[NATADD,NATADD]] := set[id[omega]] (* derived 2008 October 31 in PERMS.NB *) intersection[PERMS,image[inverse[DORA],Id]] := PERMS (* derived 2009 January 2 in I-FUNS.NB *) intersection[PERMS,image[inverse[IMAGE[FIRST]],set[x_]], image[inverse[IMAGE[SECOND]],set[x_]]] := bij[x,x] (* derived 2009 January 2 in I-FUNS.NB *) intersection[PERMS,map[x_,x_]] := bij[x,x] (* derived 2008 September 28 in PERMS.NB *) intersection[PERMS,P[Id]] := P[Id] (* derived 2008 October 31 in PERMS.NB *) intersection[PERMS,range[PLUS]] := set[id[omega]] (* derived 2008 September 28 in PERMS.NB *) intersection[PERMS,range[RCF]] := range[RCF] (* derived 2009 January 2 in I-FUNS.NB *) intersection[PERMS,UNOPS] := PERMS (* derived 2008 October 31 in PERMS.NB *) intersection[PERMS,Z] := set[id[omega]] (* derived 2007 September 15 in HULIVRSW.NB *) intersection[PO,fix[composite[inverse[HULL[invar[SWAP]]],S,CART,DUP,IMAGE[inverse[DUP]]]]] := TO (* derived 2008 February 14 in DICHOT.NB *) intersection[PO,fix[composite[inverse[HULL[SYM]],CART,DUP,CUP,DORA]]] := TO (* derived 2004 February 10 in TO.NB *) intersection[PO,fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]]] := TO (* derived 2007 May 8 in POWER.TXT *) intersection[PO,image[inverse[CHAINS],range[POWER]]] := TO (* derived 2007 September 16 in TO.NB *) intersection[PO,image[inverse[HULL[invar[SWAP]]],image[CART,Id]]] := TO (* derived 2008 June 22 in PO-ISO-S.NB *) intersection[PO,image[inverse[IMAGE[id[cart[V,V]]]],PO]] := PO (* added 2002 January 19 based on PO.NB *) intersection[PO,P[cart[V,V]]] := PO (* derived 2006 January 24 in I-PO.NB *) intersection[PO,P[Id]] := P[Id] (* derived 2006 January 24 in I-PO.NB *) intersection[PO,P[Di]] := set[0] (* derived 2006 January 24 in I-PO.NB *) intersection[PO,PROJ] := P[Id] (* derived 2005 January 17 in CP-PO.NB *) intersection[PO,range[CART]] := union[image[SINGLETON,Id],set[0]] (* derived 2004 December 19 in QO-IDEM.NB *) intersection[PO,RFX] := PO (* derived 2006 January 24 in I-PO.NB *) intersection[PO,SYM] := P[Id] (* derived 2006 January 24 in I-PO.NB *) intersection[PO,TO] := TO (* derived 2004 December 19 in QO-IDEM.NB *) intersection[PO,TRV] := PO (* derived 2006 June 11 in UNOPS-I.NB *) intersection[PO,UNOPS] := P[Id] (* derived 2006 January 24 in I-PO.NB *) intersection[PO,WF] := set[0] (* derived 2006 January 24 in I-PO.NB *) intersection[PO,WO] := WO (* derived 2006 January 24 in I-PO.NB *) intersection[PO,Z] := set[id[omega]] (* derived 2003 December 30 in PTCLOSED.NB *) intersection[PointClosed,fix[UCLOSURE]] := intersection[T1,fix[UCLOSURE]] (* derived 2003 December 30 in PTCLOSED.NB *) intersection[PointClosed,TOPS] := intersection[T1,TOPS] (* added 2000 October 1 based on CANTOR.NB *) intersection[POWER,composite[inverse[S],Q]] := 0 (* derived 2007 June 30 in CANTOR.NB *) intersection[POWER,image[DORA,FUNS]] := 0 (* Theorem POW-SR in POW3 *) intersection[POWER,inverse[S]] := 0 (* derived 2006 May 11 in WO-PS.NB *) intersection[POWER,PS] := composite[POWER,id[FULL]] (* added 2000 December 16 based on Q-CA.NB *) intersection[POWER,Q] := 0 (* Discovered 1998 September 26 *) intersection[POWER,S] := composite[POWER,id[FULL]] (* derived 2004 August 10 in RS-3.NB *) intersection[POWER,VERTSECT[RESTRICT]] := composite[POWER,id[FUNS]] (* derived 2005 August 17 in PRIMESEQ.NB *) intersection[PRIMES,APPLY[PRIMESEQ,nat[x_]]] := image[PRIMESEQ,nat[x]] (* derived 2005 April 21 in U-PRIMES.NB *) intersection[PRIMES,complement[set[set[0]]]] := PRIMES (* derived 2007 February 10 in COMPOS-2.NB *) intersection[PRIMES,fix[composite[inverse[E],IMAGE[NATMUL],CART,DUP]]] := 0 (* derived 2007 February 8 in COMPOS-1.NB *) intersection[PRIMES,image[NATMUL,cart[complement[succ[set[0]]],complement[succ[set[0]]]]]] := 0 (* derived 2005 February 22 in PRIMES.NB *) intersection[PRIMES,succ[set[0]]] := 0 (* derived 2006 January 24 in RALAMHUL.NB *) intersection[PROJ,image[inverse[IMAGE[SWAP]],subcommutant[inverse[S]]],P[S]] := range[LAMBHULL] (* derived 2006 June 13 in CART-SG.NB *) intersection[PROJ,image[SINGLETON,x_]] := image[SINGLETON,id[fix[x]]] (* derived 2004 December 14 in IDEMPROJ.NB *) intersection[PROJ,P[cart[V,V]]] := PROJ (* derived 2006 January 29 in PROJ.NB *) intersection[PROJ,P[Di]] := set[0] (* added 2002 February 9 based on IDEM.NB *) intersection[PROJ,P[Id]] := P[Id] (* derived 2006 June 17 in CONST-I.NB *) intersection[PROJ,range[CART]] := intersection[CONST,PROJ] (* derived 2006 June 13 in CART-SG.NB *) intersection[PROJ,range[SINGLETON]] := image[SINGLETON,Id] (* derived 2006 January 28 in PROJ.NB *) intersection[PROJ,RFX] := P[Id] (* added 2002 February 9 based on IDEM-SYM.NB *) intersection[PROJ,SYM] := P[Id] (* derived 2006 January 28 in PROJ.NB *) intersection[PROJ,TO] := union[image[SINGLETON,Id],set[0]] (* derived 2006 January 26 in Z-TRV.NB *) intersection[PROJ,TRV] := PROJ (* derived 2006 June 9 in UNARY.NB *) intersection[PROJ,UNOPS] := PROJ (* derived 2006 January 28 in PROJ.NB *) intersection[PROJ,WF] := set[0] (* derived 2006 January 28 in PROJ.NB *) intersection[PROJ,WO] := union[image[SINGLETON,Id],set[0]] (* derived 2006 January 28 in PROJ.NB *) intersection[PROJ,Z] := set[id[omega]] (* added 2000 May 14 based on K-2.NB *) intersection[PS,complement[composite[PS,PS]]] := K (* added 2000 May 16 based on K-SR.NB *) intersection[PS,complement[inverse[S]]] := PS (* Theorem PS-I2 in PS1 proved 1998 December 21 *) intersection[PS,complement[S]] := 0 (* derived 2005 August 8 in PIGEON.NB *) intersection[PS,composite[inverse[CARD],id[omega],CARD]] := 0 (* derived 2005 January 7 in K-SUCC.NB *) intersection[PS,composite[inverse[PS],SUCC]] := 0 (* added 2002 November 22 based on K.NB *) intersection[PS,composite[inverse[VERTSECT[inverse[PS]]], inverse[IMAGE[inverse[PS]]],complement[E]]] := K (* derived 2004 June 28 in X1913-14.NB *) intersection[PS,composite[K,inverse[K]]] := 0 (* derived 2007 August 14 in K-PS.NB *) intersection[PS,composite[K,inverse[PS]]] := 0 (* derived 2005 January 7 in UP-K.NB *) intersection[PS,inverse[image[inverse[DIF],range[SINGLETON]]]] := K (* based on 1998/DEC/21/SESSION4.LOG *) intersection[PS,inverse[PS]] := 0 (* Theorem PS-I3 in PS1 proved 1998 December 21 *) intersection[PS,inverse[S]] := 0 (* Theorem PS-I1 in PS1 proved 1998 December 21 *) intersection[PS,S] := PS (* derived 2004 March 23 in TRV-K.NB *) intersection[PS,trv[K]] := trv[K] (* derived 2007 May 2 in CARDCARD.NB *) intersection[Q,composite[inverse[CARD],CARD]] := composite[inverse[CARD],CARD] (* derived 2007 May 2 in CARDCARD.NB *) intersection[Q,composite[inverse[CARD],E,CARD]] := 0 (* Theorem Q-SR-POW in Q proved 2000 October 1 *) intersection[Q,composite[S,POWER]] := 0 (* derived 2004 April 6 in SMALLER.NB *) intersection[Q,inverse[SMALLER]] := 0 (* derived 2004 April 6 in SMALLER.NB *) intersection[Q,SMALLER] := 0 (* derived 2008 December 2 in RIF-QG.NB *) intersection[QUASIGPS,invar[ROT]] := intersection[QUASIGPS,fix[IMAGE[ROT]]] (* derived 2008 December 10 in SS-GPS.NB *) intersection[QUASIGPS,range[SINGLETON]] := image[SINGLETON,inverse[DUP]] (* derived 2008 December 5 in GROUPS.NB *) intersection[QUASIGPS,SEMIGPS] := union[GROUPS,set[0]] (* added 2001 February 8 based on REPEAT-4.NB *) intersection[range[CART],P[cart[V,V]]] := range[CART] (* derived 2005 November 2 in UCL.NB *) intersection[range[CART],range[SINGLETON]] := image[SINGLETON,cart[V,V]] (* added 1999 November 11 based on 1999/NOV/09/SESSION4.NB *) intersection[range[CART],set[0]] := set[0] (* derived 2007 June 26 in UCHAINS.NB *) intersection[range[CLIQUES],range[POWER]] := range[POWER] (* derived 2007 June 27 in RA=CLIQ.NB *) intersection[range[CLIQUES],range[SINGLETON]] := set[set[0]] (* derived 2007 June 26 in UCHAINS.NB *) intersection[range[CLIQUES],range[SUBVAR]] := range[POWER] (* added 2000 September 28 based on CROSS.NB *) intersection[range[CROSS],set[0]] := set[0] (* added 1998 January 22 *) intersection[range[LeftPairV],range[RightPairV]] := 0 (* derived 2006 June 20 in MAP-RASG.NB *) intersection[range[MAP],range[SINGLETON]] := image[SINGLETON,CONST] (* derived 2005 January 9 in PC-CARD2.NB *) intersection[range[PAIRSET],range[POWER]] := union[image[POWER,range[SINGLETON]],set[set[0]]] (* derived 2006 June 13 in Z-I.NB *) intersection[range[PLUS],range[SINGLETON]] := 0 (* Theorem POW-BC12 in POW5 proved 1999 January 28 *) intersection[range[POWER],image[inverse[BIGCUP],x_]] := image[POWER,x] (* derived 2006 January 17 in POW-SG.NB *) intersection[range[POWER],range[SINGLETON]] := set[set[0]] (* derived 2007 June 26 in UCHAINS.NB *) intersection[range[POWER],range[SUBVAR]] := range[POWER] (* derived 2007 July 4 in SBV-INE.NB *) intersection[range[POWER],subvar[inverse[E]]] := 0 (* derived 2007 November 1 in IN-PS-PC.TXT *) intersection[range[POWER],subvar[inverse[PS]]] := 0 (* derived 2004 January 17 in SBV-PSSG.NB *) intersection[range[POWER],subvar[PS]] := 0 intersection[range[SINGLETON],complement[set[0]]] := range[SINGLETON] (* Session BC-SG.LOG *) intersection[range[SINGLETON],image[inverse[BIGCUP],x_]] := image[SINGLETON,x] (* derived 2007 July 17 in RA-SBV.NB *) intersection[range[SINGLETON],range[SUBVAR]] := set[set[0]] intersection[range[SINGLETON],set[0]] := 0 intersection[range[SINGLETON],set[set[0]]] := set[set[0]] (* derived 2007 November 3 in MAX-GT.NB *) intersection[range[SINGLETON],subvar[inverse[PS]]] := 0 (* derived 2004 January 17 in SBV-PSSG.NB *) intersection[range[SINGLETON],subvar[PS]] := 0 (* derived 2005 November 17 in RUSSELL.NB *) intersection[range[SINGLETON],Uclosure[x_]] := intersection[x,range[SINGLETON]] (* derived 2007 November 3 in MAX-GT.NB *) intersection[range[SUBVAR],subvar[inverse[PS]]] := 0 (* added 2002 May 25 based on OM-INVAR.NB *) intersection[range[SUCC],set[0]] := 0 (* derived 2004 September 18 in WF-WRAP.NB *) intersection[range[x_],U[subvar[x_]]] := U[subvar[x]] (* added 2001 July 27 based on RANK.NB *) intersection[RANK,inverse[E]] := 0 (* derived 2006 March 25 in REG-DESC.NB *) intersection[REGULAR,complement[DESCENDING]] := intersection[REGULAR,complement[set[0]]] (* derived 2007 December 10 in FUND.NB *) intersection[REGULAR,complement[FUND]] := 0 (* derived 2006 March 25 in REG-DESC.NB *) intersection[REGULAR,complement[P[complement[REGULAR]]]] := intersection[REGULAR,complement[set[0]]] (* derived 2007 December 12 in COREDESC.NB *) intersection[REGULAR,core[DESCENDING,x_]] := 0 (* derived 2004 May 2 in ZN.NB *) intersection[REGULAR,domain[VERTSECT[ZN]]] := REGULAR (* derived 2006 March 7 in REGULAR.NB *) intersection[REGULAR,fix[BIGCUP],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := 0 (* added 2002 April 18 based on DESCEND.NB *) intersection[REGULAR,fix[composite[x_,IMAGE[id[REGULAR]]]]] := intersection[REGULAR,fix[x]] (* added 2002 April 18 based on DESCEND.NB *) intersection[REGULAR,fix[composite[inverse[E],BIGCUP]]] := 0 (* derived 2006 March 7 in REGULAR.NB *) intersection[REGULAR,fix[composite[inverse[E],IMAGE[inverse[BIGCUP]],BIGCUP]]] := 0 (* derived 2006 March 7 in REGULAR.NB *) intersection[REGULAR,fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],subvar[inverse[E]]] := 0 (* derived 2007 August 21 in REG.NB *) intersection[REGULAR,fix[composite[inverse[E],IMAGE[inverse[POWER]]]]] := 0 (* derived 2006 March 7 in REGULAR.NB *) intersection[REGULAR,fix[composite[inverse[E],IMAGE[inverse[S]]]]] := 0 (* derived 2007 November 29 in FP-TRV-E.NB *) intersection[REGULAR,fix[composite[inverse[E],TC]]] := 0 (* added 2002 April 18 based on DESCEND.NB *) intersection[REGULAR,fix[E]] := 0 (* derived 2007 November 23 in FIX-SG.NB *) intersection[REGULAR,fix[SINGLETON]] := 0 (* derived 2004 December 29 in FUL-REG3.NB *) intersection[REGULAR,H[complement[set[0]]]] := 0 (* Theorem H-ON-3 in H proved 2001 March 24 *) intersection[REGULAR,H[FULL]] := OMEGA (* derived 2006 March 30 in REG-A.NB *) intersection[REGULAR,image[inverse[BIGCAP],REGULAR]] := intersection[REGULAR,complement[set[0]]] (* added 2002 March 5 based on HF.NB *) intersection[REGULAR,image[inverse[RANK],x_]] := image[inverse[RANK],x] (* derived 2007 December 12 in COREDESC.NB *) intersection[REGULAR,image[inverse[S],DESCENDING]] := set[0] (* derived 2007 December 8 in RANK-ORD.NB *) intersection[REGULAR,nat[x_]] := nat[x] (* derived 2007 December 8 in RANK-ORD.NB *) intersection[REGULAR,ord[x_]] := ord[x] (* reversed 2000 February 12 *) intersection[REGULAR,P[x_]] := P[intersection[REGULAR,x]] (* derived 2006 March 25 in REG-DESC.NB *) intersection[REGULAR,RUSSELL] := REGULAR (* the empty set is regular *) intersection[REGULAR,set[0]] := set[0] (* Theorem SBV-SUC2 in SUBVAR proved 2000 February 12 *) intersection[REGULAR,subvar[SUCC]] := set[0] (* added 2003 May 31 based on RS-I.NB *) intersection[RESTRICT,inverse[RESTRICT]] := id[P[cart[V,V]]] (* derived 2008 February 14 in DICHOT.NB *) intersection[RFX,fix[composite[inverse[HULL[SYM]],CART,DUP,CUP,DORA]]] := fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]] (* derived 2008 February 14 in DICHOT.NB *) intersection[RFX,fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]]] := fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]] (* derived 2007 October 30 in RFX-CPTV.NB *) intersection[RFX,image[inverse[CHAINS],range[POWER]]] := fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]] (* derived 2007 May 8 in POWER.TXT *) intersection[RFX,image[inverse[CLIQUES],range[POWER]]] := image[CART,Id] (* added 2002 January 17 based on ANTISYM2.NB *) intersection[RFX,image[inverse[IMAGE[id[cart[V,V]]]],x_]] := intersection[RFX,x] (* derived 2006 June 13 in CART-SG.NB *) intersection[RFX,image[SINGLETON,x_]] := image[SINGLETON,id[fix[x]]] (* added 2001 October 28 based on IVR-RFX.NB *) intersection[RFX,invar[SWAP]] := intersection[RFX,SYM] (* added 2001 October 8 based on RFX.NB *) intersection[RFX,P[cart[V,V]]] := RFX (* added 2002 January 19 based on PO.NB *) intersection[RFX,P[Di]] := set[0] (* added 2001 October 8 based on RFX-ID.NB *) intersection[RFX,P[Id]] := P[Id] (* added 2001 October 8 based on RFX.NB *) intersection[RFX,range[CART]] := union[image[CART,Id],set[0]] (* added 2001 October 16 based on IM-IN-SG.NB *) intersection[RFX,range[SINGLETON]] := image[SINGLETON,Id] (* added 2001 October 8 based on RFX.NB *) intersection[RFX,set[0]] := set[0] (* derived 2004 February 10 in TO.NB *) intersection[RFX,TO] := TO (* derived 2006 June 11 in UNOPS-I.NB *) intersection[RFX,UNOPS] := P[Id] (* derived 2006 January 30 in WF-I.NB *) intersection[RFX,WF] := set[0] (* derived 2004 July 20 in X2081.NB *) intersection[RFX,WO] := WO (* derived 2006 January 30 in I-Z.NB *) intersection[RFX,Z] := set[id[omega]] (* derived 2004 June 27 in X1712-20.NB *) intersection[RUSSELL,x_,A[x_]] := 0 (* Theorem IVR-SUC in INVAR proved 2000 February 4 *) intersection[RUSSELL,invar[SUCC],range[SUCC]] := 0 (* derived 2006 March 14 in ORDRULES.NB *) intersection[RUSSELL,ord[x_]] := ord[x] (* added 1998 February 7 *) intersection[RUSSELL,P[RUSSELL]] := P[RUSSELL] (* added 1999 November 23 based on ADJ-B1.NB *) intersection[S,ADJOIN[x_]] := ADJOIN[x] (* derived 2004 January 16 in ADJ-UIDK.NB *) intersection[S,complement[composite[PS,PS]]] := union[Id,K] (* from PS.LOG 1999 April 16 *) intersection[S,complement[inverse[S]]] := PS (* derived 2003 December 31 in COARSER.NB *) intersection[S,composite[inverse[BIGCUP],BIGCUP]] := COARSER (* derived 2006 February 10 in PIGEON.NB *) intersection[S,composite[inverse[CARD],id[omega],CARD]] := id[FINITE] (* derived 2008 October 23 in SU-FU.NB *) intersection[S,composite[inverse[IMAGE[FIRST]],inverse[S],IMAGE[FIRST]]] := intersection[S,composite[inverse[IMAGE[FIRST]],IMAGE[FIRST]]] (* added 2002 April 10 based on INVAR-S.NB *) intersection[S,composite[inverse[INVAR],complement[INVAR]]] := 0 (* added 2003 June 24 based on INVERSE.NB *) intersection[S,composite[inverse[S],IMAGE[id[x_]]]] := id[P[x]] (* added 2003 July 4 based on COARSER.NB *) intersection[S,composite[inverse[S],POWER,BIGCUP]] := COARSER (* added 2002 May 25 based on ON-SUC-1.NB *) intersection[S,composite[inverse[SUCC],complement[E]]] := intersection[PS,complement[E]] (* derived 2007 August 14 in K-PS.NB *) intersection[S,composite[K,inverse[PS]]] := id[complement[set[0]]] (* derived 2006 April 29 in ITERMONO.NB *) intersection[S,composite[S,funpart[intersection[S,x_]]]] := composite[S,funpart[intersection[S,x]]] (* added 2001 March 8 based on IMIMG.NB *) intersection[S,composite[S,IMAGE[id[x_]]]] := S (* derived 2007 August 7 in HULL-SYM.NB *) intersection[S,composite[S,IMAGE[SWAP]]] := composite[S,HULL[invar[SWAP]]] intersection[S,composite[S,SUCC]] := composite[S,SUCC] (* added 2002 May 4 based on CORE.NB *) intersection[S,CORE[x_]] := id[Uclosure[x]] (* added 2002 May 5 based on HULL.NB *) intersection[S,HULL[x_]] := HULL[x] (* Theorem CUT-I-1 in CUT2 proved 1998 December 25 *) intersection[S,IMAGE[id[x_]]] := id[P[x]] (* Theorem INV-FP4 in INV1 *) intersection[S,IMAGE[SWAP]] := id[fix[IMAGE[SWAP]]] (* added 1999 October 31 based on INTINV.LOG *) intersection[S,inverse[ADJOIN[x_]]] := id[image[S,set[x]]] (* derived 2004 May 11 in CAP-CORE.NB *) intersection[S,inverse[CORE[x_]]] := inverse[CORE[x]] (* derived 2004 March 23 in TRV-K.NB *) intersection[S,inverse[fix[composite[inverse[DIF],inverse[S],id[x_],inverse[S],FIRST]]]] := composite[CUP,id[cart[V,x]],inverse[FIRST]] (* added 2001 March 5 based on K-SS.NB *) intersection[S,inverse[image[inverse[DIF],range[SINGLETON]]]] := K (* derived 2007 September 23 in CAP-ID-K.NB *) intersection[S,inverse[K]] := 0 (* added 1999 October 31 based on INTINV.LOG *) intersection[S,inverse[POWER]] := 0 (* added 1999 October 31 based on INTINV.LOG *) intersection[S,inverse[PS]] := 0 (* introduced 1996 March 7 in INTERSEC.M based on DF-ID in AX-C *) intersection[S,inverse[S]] := Id (* Theorem SUC-ES1 in SUC-REL *) intersection[S,SUCC] := SUCC (* added 2000 January 8 based on SU-RS.NB *) intersection[S,TC] := TC (* derived 2007 August 21 in IVR-UCH.NB *) intersection[S,UCHAINS] := UCHAINS (* derived 2007 May 11 in VS-LEAST.NB *) intersection[S,VERTSECT[GREATEST[x_]]] := id[cliques[x]] (* derived 2007 May 11 in VS-LEAST.NB *) intersection[S,VERTSECT[LEAST[x_]]] := id[cliques[x]] (* derived 2004 September 25 in LAMB-WF.NB *) intersection[S,WFPART] := id[WF] (* Corollary 2ND-I in 2ND proved 1999 January 26 *) intersection[SECOND,x_] := composite[SECOND,id[fix[composite[inverse[SECOND],x]]]] (* derived 2004 November 26 in XSCP-MAP.NB *) intersection[SELECT,range[CART]] := range[CART] (* derived 2007 June 24 in UCL-UO.NB *) or[equal[intersection[image[inverse[DORA],inverse[S]],P[cart[V,V]]],Uclosure[UNOPS]], not[axch]] := True (* derived 2006 July 13 in SGPS-I.NB *) intersection[SEMIGPS,P[cart[cart[V,V],V]]] := SEMIGPS (* derived 2006 July 13 in SGPS-I.NB *) intersection[SEMIGPS,P[cart[V,V]]] := SEMIGPS (* derived 2008 August 16 in SGPS-SS.NB *) intersection[SEMIGPS,range[SINGLETON]] := image[SINGLETON,inverse[DUP]] intersection[set[0],fix[composite[E,x_]]] := 0 intersection[set[0],fix[E]] := 0 intersection[set[0],P[x_]] := set[0] intersection[set[x_],complement[P[complement[x_]]]] := intersection[set[x],image[V,x]] intersection[set[x_],set[y_]] := intersection[set[x], complement[image[V,intersection[x,complement[y]]]], complement[image[V,intersection[y,complement[x]]]]] (* derived 2005 October 8 in SET-I.NB *) intersection[set[x__],set[x__,y__]] := set[x] (* Corollary FP-SG-I in FP2 proved 1999 January 26 *) intersection[SINGLETON,x_] := composite[SINGLETON,id[fix[composite[inverse[SINGLETON],x]]]] (* derived 2007 May 2 in CARDCARD.NB *) intersection[SMALLER,composite[inverse[CARD],CARD]] := 0 (* derived 2007 May 2 in CARDCARD.NB *) intersection[SMALLER,composite[inverse[CARD],inverse[S],CARD]] := 0 (* derived 2004 April 6 in SMALLER.NB *) intersection[SMALLER,composite[Q,inverse[S]]] := 0 (* derived 2008 January 24 in SMALLER.NB *) intersection[SMALLER,composite[Q,S]] := SMALLER (* derived 2004 April 6 in SMALLER.NB *) intersection[SMALLER,inverse[SMALLER]] := 0 (* derived 2007 June 10 in SPINE.NB *) intersection[y_,spine[x_,y_]] := spine[x,y] (* added 2002 December 27 based on SBCOMMUT.NB *) intersection[SUBCOMMUTE,inverse[SUBCOMMUTE]] := COMMUTE (* added 2002 October 27 based on SUBVAR.NB *) intersection[subvar[x_],subvar[union[x_,y_]]] := subvar[x] (* added 2002 April 15 based on ITERATE.NB *) intersection[subvar[union[x_,id[y_]]], subvar[union[x_,id[z_]]]] := subvar[union[x,id[intersection[y,z]]]] (* added 2003 January 18 based on HC-TC-OM.NB *) intersection[x_,succ[x_]] := x (* derived 2005 January 7 in K-SUCC.NB *) intersection[SUCC,composite[PS,PS]] := 0 (* added 1998 September 15 *) intersection[SWAP,x_] := composite[id[fix[composite[x,SWAP]]],SWAP] (* derived 2008 September 28 in INVOL.NB *) intersection[SYM,image[INVERSE,FUNS]] := INVOL (* added 2001 October 28 based on EQV.NB *) intersection[SYM,image[inverse[IMAGE[id[cart[V,V]]]],x_]] := intersection[SYM,x] (* derived 2008 September 28 in INVOL.NB *) intersection[SYM,image[inverse[IMAGE[SWAP]],FUNS]] := INVOL (* derived 2006 June 13 in CART-SG.NB *) intersection[SYM,image[SINGLETON,x_]] := image[SINGLETON,id[fix[x]]] (* added 2001 October 10 based on SYM-1.NB *) intersection[SYM,invar[SWAP]] := SYM (* added 2001 October 10 based on SYM-1.NB *) intersection[SYM,P[cart[V,V]]] := SYM (* added 2001 October 10 based on SYM-1.NB *) intersection[SYM,P[Id]] := P[Id] (* added 2001 October 10 based on SYM-1.NB *) intersection[SYM,range[CART]] := union[image[CART,Id],set[0]] (* derived 2006 January 31 in SYM-I.NB *) intersection[SYM,range[PLUS]] := set[id[omega]] (* added 2001 October 16 based on IM-IN-SG.NB *) intersection[SYM,range[SINGLETON]] := image[SINGLETON,Id] (* derived 2006 January 31 in SYM-I.NB *) intersection[SYM,TO] := union[image[SINGLETON,Id],set[0]] (* added 2001 October 28 based on SHORTCUT.NB *) intersection[SYM,TRV] := EQV (* derived 2006 June 11 in UNOPS-I.NB *) intersection[SYM,UNOPS] := INVOL (* derived 2006 January 30 in WF-I.NB *) intersection[SYM,WF] := set[0] (* derived 2006 January 31 in SYM-I.NB *) intersection[SYM,WO] := union[image[SINGLETON,Id],set[0]] (* derived 2006 January 30 in I-Z.NB *) intersection[SYM,Z] := set[id[omega]] (* added 1999 December 7 based on RESTRICT.NB *) intersection[SYMDIF,composite[inverse[S],CAP]] := cart[Id,set[0]] (* added 1999 December 7 based on RESTRICT.NB *) intersection[SYMDIF,composite[inverse[S],CUP]] := SYMDIF (* based on 1999 December 6 notebook MANYMORE.NB *) intersection[SYMDIF,composite[S,DIF]] := SYMDIF (* added 1999 December 7 based on FLIPRULE.NB *) intersection[SYMDIF,composite[x_,SWAP]] := composite[intersection[SYMDIF,x],SWAP] (* added 2000 January 8 based on SU-RS.NB *) intersection[TC,complement[S]] := 0 (* derived 2007 August 7 in CHN-TO.NB *) intersection[TO,complement[image[inverse[IMAGE[id[cart[V,V]]]],TO]]] := 0 (* derived 2008 February 14 in DICHOT.NB *) intersection[TO,fix[composite[inverse[HULL[SYM]],CART,DUP,CUP,DORA]]] := TO (* derived 2008 February 14 in DICHOT.NB *) intersection[TO,fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]]] := TO (* derived 2006 May 8 in TO-RS.NB *) intersection[TO,image[IMAGE[id[po[x_]]],image[CART,Id]]] := intersection[TO,P[po[x]]] (* derived 2008 February 14 in DICHOT.NB *) intersection[TO,image[inverse[CHAINS],range[POWER]]] := TO (* derived 2007 August 7 in CHN-TO.NB *) intersection[TO,image[inverse[IMAGE[id[cart[V,V]]]],TO]] := TO (* derived 2005 April 7 in WF-TO.NB *) intersection[TO,image[inverse[IMAGE[id[Di]]],WF]] := WO (* derived 2004 February 10 in TO.NB *) intersection[TO,P[cart[V,V]]] := TO (* derived 2006 January 31 in TO-I.NB *) intersection[TO,P[Di]] := set[0] (* derived 2005 January 15 in TO-ID.NB *) intersection[TO,P[Id]] := union[image[SINGLETON,Id],set[0]] (* derived 2006 January 26 in Z-TRV.NB *) intersection[TO,TRV] := TO (* derived 2006 June 11 in UNOPS-I.NB *) intersection[TO,UNOPS] := union[image[SINGLETON,Id],set[0]] (* derived 2006 January 30 in WF-I.NB *) intersection[TO,WF] := set[0] (* derived 2006 January 31 in TO-I.NB *) intersection[TO,WO] := WO (* derived 2006 January 30 in I-Z.NB *) intersection[TO,Z] := 0 (* revised 2003 May23 based on DEF-CLOS.NB *) intersection[TOPS,binclosed[CAP]] := TOPS (* added 2001 October 23 based on TOPS.NB *) intersection[TOPS,complement[P[complement[set[0]]]]] := TOPS (* derived 2007 June 26 in UCHAINS.NB *) intersection[TOPS,fix[IMAGE[inverse[S]]]] := range[POWER] (* added 2001 October 23 based on TOPS.NB *) intersection[TOPS,fix[UCLOSURE]] := TOPS (* added 2001 October 23 based on TOPS.NB *) intersection[TOPS,P[complement[set[0]]]] := 0 (* derived 2007 June 26 in UCHAINS.NB *) intersection[TOPS,range[CLIQUES]] := range[POWER] (* derived 2003 December 25 in TOPSDEFN.NB *) intersection[TOPS,range[PAIRSET]] := image[ADJOIN[set[0]],range[SINGLETON]] (* added 2001 October 23 based on TOPS.NB *) intersection[TOPS,range[POWER]] := range[POWER] (* added 2001 October 23 based on CHAINS.NB *) intersection[TOPS,range[SINGLETON]] := set[set[0]] (* derived 2007 November 3 in MAX-GT.NB *) intersection[TOPS,subvar[inverse[PS]]] := 0 (* derived 2004 April 4 in IRR-TRV.NB *) intersection[TRV,fix[composite[DISJOINT,INVERSE]]] := intersection[TRV,P[Di]] (* derived 2007 June 7 in IDEM.NB *) intersection[TRV,fix[composite[inverse[S],COMPOSE,DUP]]] := IDEM (* derived 2006 June 13 in CART-SG.NB *) intersection[TRV,image[CART,x_]] := image[CART,x] (* added 2002 January 17 based on ANTISYM2.NB *) intersection[TRV,image[inverse[IMAGE[id[cart[V,V]]]],x_]] := intersection[TRV,x] (* derived 2006 June 13 in CART-SG.NB *) intersection[TRV,image[SINGLETON,x_]] := image[SINGLETON,composite[Id,x]] (* added 2001 October 28 based on EQV-I.NB *) intersection[TRV,invar[SWAP]] := EQV (* added 2001 October 9 based on TRV-1.NB *) intersection[TRV,P[cart[V,V]]] := TRV (* derived 2008 January 17 in TRV-RS.NB *) intersection[TRV,P[composite[Id,x_]]] := intersection[TRV,P[x]] (* added 2001 October 9 based on TRV-1.NB *) intersection[TRV,P[Id]] := P[Id] (* derived 2008 January 17 in TRV-RS.NB *) intersection[TRV,P[union[x_,complement[cart[V,V]]]]] := intersection[TRV,P[x]] (* added 2001 October 9 based on TRV-1.NB *) intersection[TRV,range[CART]] := range[CART] (* added 2001 October 16 based on IM-IN-SG.NB *) intersection[TRV,range[SINGLETON]] := image[SINGLETON,cart[V,V]] (* derived 2006 January 26 in Z-TRV.NB *) intersection[TRV,WO] := WO (* derived 2006 January 26 in Z-TRV.NB *) intersection[TRV,Z] := set[id[omega]] (* derived 2007 April 26 in LB-SMALL.NB *) intersection[x_,ub[SMALLER,x_]] := 0 (* derived 2004 March 6 in GT-C.NB *) intersection[UB[x_],UB[complement[x_]]] := cart[set[0],V] (* derived 2004 March 9 in IDEMLTGT.NB *) intersection[ub[x_,y_],ub[x_,intersection[y_,z_]]] := ub[x,y] (* derived 2007 June 10 in SPINE.NB *) intersection[y_,ub[union[x_,inverse[x_]],y_]] := spine[x,y] (* derived 2004 May 4 in CRHL-FIX.NB *) intersection[x_,Uclosure[x_]] := x (* added 2001 May 10 based on UCLOS-1.NB *) intersection[UCLOSURE,complement[S]] := 0 (* Theorem D-1B in D *) intersection[union[x_,y_],z_] := union[intersection[x,z],intersection[y,z]] (* derived 2006 June 10 in REPLACE.NB *) intersection[UNOPS,cliques[complement[cross[S,complement[S]]]],image[inverse[IMAGE[FIRST]],range[POWER]],P[Di]] := 0 (* derived 2006 June 11 in UNOPS-I.NB *) intersection[UNOPS,image[inverse[DORA],inverse[S]]] := UNOPS (* derived 2007 October 27 in TOPPLE.NB *) intersection[UNOPS,image[inverse[IMAGE[FIRST]],fix[UCHAINS]],P[K]] := 0 (* derived 2006 June 10 in REPLACE.NB *) intersection[UNOPS,image[inverse[IMAGE[FIRST]],set[x_]]] := map[x,x] (* derived 2006 June 10 in REPLACE.NB *) intersection[UNOPS,image[INVERSE,subcommutant[inverse[S]]],image[inverse[IMAGE[FIRST]],range[POWER]],P[Di]] := 0 (* derived 2006 June 11 in UNOPS-I.NB *) intersection[UNOPS,image[SINGLETON,Id]] := image[SINGLETON,Id] (* derived 2006 June 11 in UNOPS-I.NB *) intersection[UNOPS,invar[composite[DUP,FIRST]]] := P[Id] (* derived 2006 June 11 in UNOPS-I.NB *) intersection[UNOPS,invar[composite[DUP,SECOND]]] := PROJ (* derived 2006 June 9 in UNARY.NB *) intersection[UNOPS,P[cart[V,V]]] := UNOPS (* derived 2006 June 11 in UNOPS-I.NB *) intersection[UNOPS,P[complement[cart[x_,V]]]] := intersection[UNOPS,P[cart[complement[x],V]]] (* derived 2006 June 11 in UNOPS-I.NB *) intersection[UNOPS,P[complement[cart[V,x_]]]] := intersection[UNOPS,P[cart[V,complement[x]]]] (* derived 2006 June 11 in UNOPS-I.NB *) intersection[UNOPS,P[Id]] := P[Id] (* derived 2006 June 11 in CONSTOPS.NB *) intersection[UNOPS,range[CART]] := intersection[CONST,UNOPS] (* derived 2006 June 10 in REPLACE.NB *) intersection[UNOPS,range[PLUS]] := range[PLUS] (* derived 2006 June 11 in UNOPS-I.NB *) intersection[UNOPS,range[RCF]] := range[RCF] (* derived 2006 June 11 in UNOPS-I.NB *) intersection[UNOPS,WO] := union[image[SINGLETON,Id],set[0]] (* derived 2008 September 28 in UNOPS-Z.NB *) intersection[UNOPS,Z] := range[PLUS] (* introduced 1996 March 7 in INTERSEC.M based on Theorem I-5 in I *) intersection[V,x_] := x (* derived 2008 June 12 in WF-DORA.NB *) intersection[WF,image[inverse[DORA],S]] := set[0] (* derived 2006 June 13 in CART-SG.NB *) intersection[WF,image[SINGLETON,x_]] := image[SINGLETON,intersection[Di,x]] (* derived 2004 March 14 in WF-WO.NB *) intersection[WF,P[cart[V,V]]] := WF (* derived 2004 May 4 in ACY-WF.NB *) intersection[WF,P[Di]] := WF (* derived 2006 January 30 in WF-I.NB *) intersection[WF,P[Id]] := set[0] (* added 2003 October 7 based on WF-IND.NB *) intersection[WF,range[CART]] := image[CART,DISJOINT] (* added 2003 October 7 based on WF-IND.NB *) intersection[WF,range[SINGLETON]] := image[SINGLETON,Di] (* derived 2006 January 30 in WF-I.NB *) intersection[WF,WO] := set[0] (* derived 2006 January 30 in I-Z.NB *) intersection[WF,Z] := intersection[complement[set[id[omega]]],range[PLUS]] (* derived 2004 September 25 in LAMB-WF.NB *) intersection[WFPART,inverse[S]] := WFPART (* derived 2007 May 2 in REIF-WO.NB *) intersection[WO,complement[image[inverse[IMAGE[id[cart[V,V]]]],WO]]] := 0 (* derived 2008 March 6 in WO-ASYM.NB *) intersection[WO,image[inverse[IMAGE[id[cart[V,V]]]],WO]] := WO (* derived 2004 March 14 in WF-WO.NB *) intersection[WO,P[cart[V,V]]] := WO (* derived 2006 February 1 in WO-I.NB *) intersection[WO,P[Di]] := set[0] (* derived 2005 January 5 in WO-ID.NB *) intersection[WO,P[Id]] := union[image[SINGLETON,Id],set[0]] (* derived 2006 January 30 in I-Z.NB *) intersection[WO,Z] := 0 (* derived 2006 December 23 in NEG-INT.NB *) intersection[Z,complement[image[inverse[IMAGE[SWAP]],Z]]] := 0 (* added 2002 November 17 based on HER-Z.NB *) intersection[Z,complement[set[0]]] := Z (* derived 2006 June 13 in Z-I.NB *) intersection[Z,image[CART,x_]] := 0 (* derived 2006 December 18 in INTDIV-0.NB *) intersection[Z,image[INTDIV,x_]] := image[INTDIV,x] (* derived 2006 December 29 in INTMUL-3.NB *) intersection[Z,image[INTMUL,x_]] := image[INTMUL,x] (* derived 2008 October 31 in PERMS.NB *) intersection[Z,image[inverse[DORA],Id]] := set[id[omega]] (* derived 2008 September 28 in UNOPS-Z.NB *) intersection[Z,image[inverse[DORA],inverse[S]]] := range[PLUS] (* derived 2006 December 23 in NEG-INT.NB *) intersection[Z,image[inverse[IMAGE[SWAP]],Z]] := Z (* derived 2006 December 18 in INTDIV-0.NB *) intersection[Z,image[inverse[INTDIV],x_]] := image[inverse[INTDIV],x] (* added 2002 December 1 based on Z-PC-S.NB *) intersection[Z,image[INVERSE,range[PLUS]]] := image[INVERSE,range[PLUS]] (* derived 2006 July 23 in BINHOM-4.NB *) intersection[Z,image[inverse[IMAGE[id[cart[V,V]]]],TRV]] := set[id[omega]] (* derived 2006 June 13 in Z-I.NB *) intersection[Z,image[SINGLETON,x_]] := 0 (* added 2002 December 1 based on Z-PC-S.NB *) intersection[Z,P[cart[V,V]]] := Z (* derived 2006 January 30 in I-Z.NB *) intersection[Z,P[Di]] := intersection[Z,complement[set[id[omega]]]] (* added 2002 December 1 based on ZERO-INT.NB *) intersection[Z,P[Id]] := set[id[omega]] (* added 2002 December 1 based on Z-PC-S.NB *) intersection[Z,P[inverse[S]]] := image[INVERSE,range[PLUS]] (* added 2002 December 1 based on Z-PC-S.NB *) intersection[Z,P[S]] := range[PLUS] (* derived 2006 June 13 in Z-I.NB *) intersection[Z,range[CART]] := 0 (* added 2002 December 1 based on ZERO-INT.NB *) intersection[Z,range[PLUS]] := range[PLUS] (* derived 2006 June 13 in Z-I.NB *) intersection[Z,range[SINGLETON]] := 0 (* derived 2007 March 6 in I-Z-INT.NB *) intersection[Z,set[intadd[x_,y_]]] := set[intadd[x,y]] (* derived 2007 March 6 in I-Z-INT.NB *) intersection[Z,set[intmul[x_,y_]]] := set[intmul[x,y]] (* added 2001 July 17 based on ZN-IMG1.TXT *) intersection[ZN,composite[S,IMAGE[ZN]]] := IMAGE[ZN] (* derived 2007 January 5 based on INTMUL-5.NB *) intmul[composite[id[omega],SUCC],x_] := union[x,complement[image[V,intersection[Z,set[x]]]]] (* derived 2007 January 5 based on INTMUL-5.NB *) intmul[composite[inverse[SUCC],id[omega]],x_] := union[complement[image[V,intersection[Z,set[x]]]],inverse[x]] (* derived 2007 January 5 based on INTMUL-5.NB *) intmul[id[omega],x_] := union[complement[image[V,intersection[Z,set[x]]]],id[omega]] (* derived 2007 January 9 in DISTRIB.NB *) intmul[x_,intadd[y_,z_]] := intadd[intmul[x,y],intmul[x,z]] (* derived 2007 January 9 in NAT-ZMUL.NB *) intmul[inverse[plus[x_]],inverse[plus[y_]]] := union[complement[image[V,intersection[omega,set[x]]]], complement[image[V,intersection[omega,set[y]]]],plus[natmul[x,y]]] (* derived 2007 January 9 in NAT-ZMUL.NB *) intmul[inverse[plus[x_]],plus[y_]] := union[complement[image[V,intersection[omega,set[x]]]], complement[image[V,intersection[omega,set[y]]]],inverse[plus[natmul[x,y]]]] (* derived 2007 January 9 in NAT-ZMUL.NB *) intmul[plus[x_],plus[y_]] := union[complement[image[V,intersection[omega,set[x]]]], complement[image[V,intersection[omega,set[y]]]],plus[natmul[x,y]]] (* derived 2008 September 6 in INTMUL.NB *) intmul[x_,union[y_,complement[image[V,z_]]]] := union[complement[image[V,z]],intmul[x,y]] (* derived 2008 September 6 in INTMUL.NB *) intmul[x_,union[y_,image[V,z_]]] := union[image[V,z],intmul[x,y]] (* 2008 November 27 in AP-RO.NB *) into[x_] := flip[rotate[x]] (* derived 2008 September 15 in INTTIMES.NB *) inttimes[composite[id[omega],SUCC]] := id[Z] (* derived 2008 September 15 in INTTIMES.NB *) inttimes[composite[inverse[SUCC],id[omega]]] := composite[id[Z],INVERSE] (* derived 2008 September 15 in INTTIMES.NB *) inttimes[id[omega]] := cart[Z,set[id[omega]]] (* derived 2009 January 21 in INV.NB *) inv[0] := 0 (* derived 2009 January 21 in INV.NB *) inv[composite[cross[x_,y_],TWIST]] := cross[inv[x],inv[y]] (* derived 2009 January 21 in INV.NB *) inv[composite[x_,SWAP]] := inv[x] (* derived 2009 January 21 in INV.NB *) inv[composite[SWAP,RIF]] := SWAP (* derived 2009 January 21 in INV.NB *) inv[CUP] := cart[set[0],set[0]] (* derived 2009 January 21 in INV.NB *) inv[INTADD] := composite[id[Z],INVERSE] (* derived 2009 January 21 in INV.NB *) inv[inverse[DUP]] := Id (* derived 2009 January 21 in INV.NB *) inv[NATADD] := cart[set[0],set[0]] (* derived 2009 January 21 in INV.NB *) inv[NATMUL] := cart[set[set[0]],set[set[0]]] (* derived 2009 January 21 in INV.NB *) inv[SYMDIF] := Id (* Theorem IVR-0 in INVAR proved 1998 December 26 *) invar[0] := V (* see: INVAR.LOG session 1999 January 10 *) invar[cart[x_,y_]] := union[image[S,set[y]],P[complement[x]]] (* derived 2007 May 27 in COARSER.NB *) invar[COARSER] := fix[IMAGE[COARSER]] (* derived 2007 May 20 in IVR-CMT.NB *) invar[COMMUTE] := set[0] (* see: INVAR.LOG session 1999 January 10 *) invar[complement[cart[x_,y_]]] := union[intersection[ image[S,set[complement[y]]],P[x]],set[0]] (* see: IVR-E-C session 1999 January 10 *) invar[complement[E]] := set[0] (* added 2000 April 23 based on FINITE.NB *) invar[complement[FINITE]] := V (* see: INVAR.LOG session 1999 January 10 *) invar[complement[inverse[E]]] := set[0] (* see: IVR-IMV session 1999 January 10 *) invar[complement[image[V,x_]]] := union[image[V,x],set[0]] (* see: INVAR.LOG session 1999 January 10 *) invar[complement[inverse[S]]] := set[0] (* revised 2002 April 18 based on REPLACE.NB *) invar[complement[S]] := succ[set[0]] (* added 1999 February 11 on basis of session SUBVAR-1.LOG *) invar[composite[E,x_]] := P[complement[domain[x]]] (* see: INVAR.LOG session 1999 January 10 *) invar[composite[Id,x_]] := invar[x] (* added 2001 October 28 based on IVR-RFX.NB *) invar[composite[inverse[E],IMAGE[DUP],PAIRSET]] := image[inverse[IMAGE[id[cart[V,V]]]],RFX] (* derived 2008 February 26 in IVR-INE.NB *) invar[composite[inverse[E],SUCC]] := FULL (* derived 2008 August 15 in IVR-CO.NB *) invar[composite[inverse[E],TC]] := FULL (* derived 2006 October 18 in RS-IN.NB *) invar[composite[SWAP,x_,SWAP]] := image[inverse[IMAGE[SWAP]],invar[composite[id[cart[V,V]],x]]] (* see: IVR-DI.LOG session 1999 January 10 *) invar[Di] := set[0] (* added 2002 April 18 based on REPLACE.NB *) invar[DISJOINT] := set[0] (* Theorem IVR-E in INVAR proved 1999 January 10 *) invar[E] := set[0] (* added 2000 April 23 based on FINITE.NB *) invar[FINITE] := set[0] (* Theorem IVR-ID in INVAR proved 1998 December 26 *) invar[Id] := V (* Theorem IVR-IDX in INVAR proved 1998 December 26 *) invar[id[x_]] := V (* see: IVR-IMV session 1999 January 10 *) invar[image[V,x_]] := union[complement[image[V,x]],set[0]] (* added 2000 November 30 based on INVAR-U.NB *) invar[intersection[Di,x_]] := invar[x] (* derived 2004 January 22 in INVAR.NB *) invar[INVAR] := set[0] (* derived 2007 May 27 in COARSER.NB *) invar[inverse[COARSER]] := fix[IMAGE[inverse[COARSER]]] (* Theorem IVR-FUL in INVAR proved 1998 December 26 *) invar[inverse[E]] := FULL (* see: IVR-MORE session 1999 January 10 *) invar[inverse[FIRST]] := set[0] (* added 2000 November 30 based on INVAR-U.NB *) invar[inverse[PS]] := fix[IMAGE[inverse[S]]] (* derived 2008 December 2 in IVR-ROT.NB *) invar[inverse[ROT]] := invar[ROT] (* Theorem IVR-HER in INVAR proved 1999 January 9 *) invar[inverse[S]] := fix[IMAGE[inverse[S]]] (* see: IVR-MORE session 1999 January 10 *) invar[inverse[SECOND]] := set[0] (* added 2002 April 18 based on REPLACE.NB *) invar[K] := set[0] (* added 1999 December 29 based on INVAR.NB *) invar[PS] := set[0] (* revised 2002 April 18 based on REPLACE.NB *) invar[Q] := succ[set[0]] invar[REGULAR] := P[complement[REGULAR]] (* Theorem IVR-SR in INVAR proved 1998 December 26 *) invar[S] := set[0] (* derived 2007 May 20 in IVR-CMT.NB *) invar[SUBCOMMUTE] := set[0] (* added 2002 June 23 based on INVARTRV.NB *) invar[trv[x_]] := invar[x] (* Theorem IVR-U in INVAR proved 1999 January 9 *) invar[union[x_,y_]] := intersection[invar[x],invar[y]] (* See: INVAR.LOG session 1999 January 10 *) invar[V] := set[0] (* derived 2004 May 2 in ZN.NB *) invar[ZN] := fix[IMAGE[ZN]] (* definition added 2002 October 17 *) invariant[x_,y_] := subclass[image[x,y],y] (* Theorem IN-4A in IN1 *) inverse[0] := 0 (* introduced 1996 March 7 in INVERSE.M based on Theorem IN-8 in IN2 *) inverse[cart[x_,y_]] := cart[y,x] (* added 2001 May 18 based on COMMUTE2.NB *) inverse[COMMUTE] := COMMUTE (* Theorem ID-IN-C in ID-CO proved 1998 August 17 *) inverse[complement[x_]] := composite[Id,complement[inverse[x]]] (* Theorem CO-IN2 in CO1 *) inverse[composite[x_,y_]] := composite[inverse[y],inverse[x]] (* Theorem X-IN-2 in X3 *) inverse[cross[x_,y_]] := cross[inverse[x],inverse[y]] (* Theorem DI-IN in DI added 1998 July 2 *) inverse[Di] := Di (* Theorem DJT-IN in DJT *) inverse[DISJOINT] := DISJOINT (* derived 2008 October 7 in BNP-WRAP.NB *) inverse[domain[binop[x_]]] := domain[binop[x]] (* derived 2008 October 9 in QUASIGP.NB *) inverse[domain[quasigp[x_]]] := domain[quasigp[x]] (* derived 2008 October 19 in SEMIGP.NB *) inverse[domain[semigp[x_]]] := domain[semigp[x]] (* added 2002 November 3 based on EQUIDIFF.NB *) inverse[EQUIDIFF] := EQUIDIFF (* derived 2004 May 11 in EQV-GEN.NB *) inverse[eqv[x_]] := eqv[x] (* Theorem FIN-IN2 proved 2000 April 22 *) inverse[FINITE] := cart[V,V] (* derived 2008 October 28 in FIX-DUP.NB *) inverse[fix[composite[DUP,x_]]] := fix[composite[DUP,x]] inverse[fix[composite[x_,SWAP]]] := fix[composite[SWAP,x]] inverse[fix[composite[SWAP,x_]]] := fix[composite[x,SWAP]] (* introduced 1996 March 7 in INVERSE.M based on Theorem ID-8 in ID1 *) inverse[Id] := Id (* Theorem IDX-5 in IDX1 *) inverse[id[x_]] := id[x] (* added 1999 October 8 based on CAP-LOG.2 *) inverse[image[inverse[CAP],x_]] := image[inverse[CAP],x] (* added 1999 October 29 based on 1999 October 28 session RC-LOG.1 *) inverse[image[inverse[CUP],x_]] := image[inverse[CUP],x] (* added 2003 August 12 based on RO-ZADD.NB *) inverse[image[inverse[INTADD],x_]] := image[inverse[INTADD],x] (* derived 2008 September 13 in IMINTMUL.NB *) inverse[image[inverse[INTMUL],x_]] := image[inverse[INTMUL],x] (* added 2002 June 18 based on NATSUB.NB *) inverse[image[inverse[NATADD],x_]] := image[inverse[NATADD],x] (* added 2002 September 3 based on DIV-ZERO.NB *) inverse[image[inverse[NATMUL],x_]] := image[inverse[NATMUL],x] (* added 2001 March 31 based on BIN-FU.NB *) inverse[image[inverse[PAIRSET],x_]] := image[inverse[PAIRSET],x] (* added 1999 December 23 based on SYMDIF.NB *) inverse[image[inverse[SYMDIF],x_]] := image[inverse[SYMDIF],x] (* Theorem ID-IN-IM in ID3 *) inverse[image[V,x_]] := composite[Id,image[V,x]] (* Theorem IN-5B in IN1 *) inverse[intersection[x_,y_]] := intersection[inverse[x],inverse[y]] (* derived 2006 September 24 in INTLEQ.NB *) inverse[INTLEQ] := composite[INVERSE,INTLEQ,INVERSE] (* derived 2009 January 21 in INV.NB *) inverse[inv[x_]] := inv[x] (* added 1999 October 12 based on INVERSE.4 *) inverse[INVERSE] := INVERSE (* introduced 1996 March 7 in INVERSE.M based on Theorem ID-IN-IN in ID/ID-CO *) inverse[inverse[x_]] := composite[Id,x] (* added 2000 December 23 based on LB-LB.NB *) inverse[LB[LB[x_]]] := LB[UB[x]] (* added 2000 December 23 based on LB-LB.NB *) inverse[LB[UB[x_]]] := LB[LB[x]] (* added 1998 May 24 *) inverse[omega] := 0 (* Theorem ON-1-IN in ON1 added 1998 May 24 *) inverse[OMEGA] := 0 (* Theorem Q-5 in Q proved 2000 April 25 *) inverse[Q] := Q (* Theorem RC-IN in RC proved 2001 September 3 *) inverse[RC[x_]] := RC[x] (* Theorem REG-34 in REG2 *) inverse[REGULAR] := cart[REGULAR,REGULAR] (* derived 2006 October 16 in PAIRSET.NB *) inverse[rfx[union[x_,inverse[x_]]]] := union[inverse[rfx[x]],rfx[x]] (* added 2001 November 27 based on IN-SS.NB *) inverse[set[x_]] := cart[set[second[x]],set[first[x]]] (* derived 2004 June 15 in X1235.NB *) inverse[set[x_,y_]] := union[cart[set[second[x]],set[first[x]]], cart[set[second[y]],set[first[y]]]] (* derived 2006 October 20 in SET-WRAP.NB *) inverse[setpart[eqv[x_]]] := setpart[eqv[x]] (* Theorem SW-IN in SW3 *) inverse[SWAP] := SWAP (* derived 2004 September 30 in EQV-THNP.NB *) inverse[thinpart[eqv[x_]]] := thinpart[eqv[x]] (* derived 2007 July 17 in U-EQV.NB *) inverse[trv[union[eqv[x_],eqv[y_]]]] := trv[union[eqv[x],eqv[y]]] (* Theorem TW-IN in TWIST proved 2000 August 5 *) inverse[TWIST] := TWIST (* revised 2003 May 30 based on TWIST.NB *) inverse[twist[composite[x_,SWAP]]] := twist[composite[SWAP,x]] (* added 2003 May 30 based on TWIST.NB *) inverse[twist[composite[SWAP,x_]]] := twist[composite[x,SWAP]] (* Theorem IN-5A in IN1 *) inverse[union[x_,y_]] := union[inverse[x],inverse[y]] (* introduced 1996 March 7 in INVERSE.M based on Theorem IN-4B in IN1 *) inverse[V] := cart[V,V] (* revised 2001 June 28 *) INVFUN[g_] := and[FUNCTION[inverse[g]],equal[composite[Id,g],g]] (* added 2002 April 16 based on ITER-0.NB *) iterate[x_,0] := 0 (* added 2002 April 19 based on ITER-0.NB *) iterate[0,x_] := cart[set[0],x] (* derived 2005 January 1 in ITER-FUN.NB *) iterate[BIGCUP,set[setpart[x_]]] := composite[VERTSECT[iterate[inverse[E],setpart[x]]],id[omega]] (* added 2002 May 20 based on ITERCART.NB *) iterate[cart[x_,y_],z_] := union[ cart[intersection[omega,complement[succ[set[0]]]], intersection[y,image[V,intersection[x,y]],image[V,intersection[x,z]]]], cart[set[0],z], cart[set[set[0]],intersection[y,image[V,intersection[x,z]]]]] (* derived 2006 July 23 in ITERCLOK.NB *) iterate[clock[succ[nat[x_]]],set[0]] := modulo[succ[nat[x]]] (* derived 2006 March 12 in OLIST-OO.NB *) iterate[composite[HULL[intersection[OMEGA,x_]],id[OMEGA],SUCC],set[A[intersection[OMEGA,x_]]]] := ordlist[x] (* derived 2006 March 7 in ORDLIST.NB *) iterate[composite[HULL[intersection[OMEGA,x_]],SUCC],set[A[intersection[OMEGA,x_]]]] := ordlist[x] (* derived 2006 March 7 in ORDLIST.NB *) iterate[composite[HULL[omega],SUCC],set[0]] := id[omega] (* derived 2008 April 24 in ITERPRIM.NB *) iterate[composite[HULL[PRIMES],SINGLETON],set[succ[set[0]]]] := PRIMESEQ (* derived 2005 August 17 in PRIMESEQ.NB *) iterate[composite[HULL[PRIMES],SUCC],set[succ[set[0]]]] := PRIMESEQ (* added 2002 May 20 based on ITERCOID.NB *) iterate[composite[Id,x_],y_] := iterate[x,y] (* added 2002 July 2 based on ITER-IMV.NB *) iterate[composite[id[image[V,w_]],x_],y_] := union[cart[set[0],y],composite[id[image[V,w]],iterate[x,y]]] (* derived 2007 August 6 in OL-NAT.NB *) iterate[composite[id[nat[x_]],SUCC],set[0]] := id[union[nat[x],set[0]]] (* derived 2005 February 19 in ITR-OM-E.NB *) iterate[composite[id[omega],E],omega] := composite[id[omega],S,id[omega]] (* derived 2007 May 12 in OL-SU-S.NB *) iterate[composite[id[OMEGA],E],OMEGA] := composite[id[OMEGA],S,id[omega]] (* added 2002 June 30 based on ITER-RS.NB *) iterate[composite[id[omega],iterate[SUCC,x_]],set[0]] := composite[id[omega],iterate[iterate[SUCC,x],set[0]]] (* added 2002 June 25 based on ITERSUCC.NB *) iterate[composite[id[omega],SUCC],x_] := union[cart[set[0],x],composite[id[omega],iterate[SUCC,x]]] (* derived 2007 May 29 in ITERSUCC.NB *) iterate[composite[id[OMEGA],SUCC],set[ord[x_]]] := iterate[SUCC,set[ord[x]]] (* added 2002 May 16 based on TC.NB *) iterate[composite[inverse[E],SUCC],tc[x_]] := cart[omega,tc[x]] (* derived 2006 April 14 in PC-TOWER.NB *) iterate[composite[POWER,id[FULL]],set[0]] := composite[IMAGE[inverse[RANK]],id[omega]] (* derived 2006 March 7 in ORDLIST.NB *) iterate[composite[TC,id[P[OMEGA]],SUCC],set[0]] := id[omega] (* added 2003 May 16 based on CROSS-IT.NB *) iterate[cross[u_,v_],cart[x_,y_]] := intersection[composite[inverse[FIRST],iterate[u,x]], composite[inverse[SECOND],iterate[v,y]]] (* derived 2007 November 27 in TRVIDX-E.NB *) iterate[cross[Id,composite[x_,y_]],composite[x_,y_]] := composite[cross[Id,composite[x,y]],power[composite[x,y]]] (* derived 2004 March 21 in TRV-WRAP.NB *) iterate[cross[Id,x_],composite[Id,y_]] := composite[cross[inverse[y],Id],power[x]] (* derived 2005 April 17 in XVR-ITER.NB *) iterate[cross[x_,Id],composite[Id,y_]] := composite[SWAP,cross[y,Id],power[x]] (* added 2002 May 21 based on POWER.NB *) iterate[cross[Id,x_],Id] := power[x] (* added 2002 May 22 based on INVERSE.NB *) iterate[cross[x_,Id],Id] := composite[SWAP,power[x]] (* added 2002 June 5 based on ITER-ID.NB *) iterate[Id,x_] := cart[omega,x] (* added 2002 May 21 based on POWER.NB *) iterate[id[x_],y_] := union[cart[omega,intersection[x,y]],cart[set[0],y]] (* added 2002 May 15 based on ITER-CO.NB *) iterate[x_,image[x_,y_]] := composite[x,iterate[x,y]] (* reoriented 2002 June 13 based on LOOPING.NB *) iterate[x_,image[iterate[x_,y_],z_]] := composite[iterate[x,y],image[power[SUCC],z]] (* derived 2006 December 9 in MISC.NB *) iterate[image[power[x_],y_],z_] := composite[iterate[x,z], iterate[composite[NATADD,id[cart[V,y]],inverse[FIRST]],set[0]]] (* derived 2005 January 1 in ITER-FUN.NB *) iterate[IMAGE[thinpart[x_]],set[setpart[y_]]] := composite[VERTSECT[iterate[thinpart[x],setpart[y]]],id[omega]] (* added 2002 November 28 based on ITER-ADD.NB *) iterate[x_,intersection[y_,complement[image[V,z_]]]] := composite[id[complement[image[V,z]]],iterate[x,y]] (* added 2003 August 27 based on NATDIV.NB *) iterate[intersection[composite[inverse[FIRST],NATADD], composite[inverse[SECOND],SECOND]],cart[set[0],omega]] := inverse[rotate[NATMUL]] (* added 2003 August 27 based on NATDIV.NB *) iterate[intersection[composite[inverse[FIRST],FIRST], composite[inverse[SECOND],NATADD]],cart[omega,set[0]]] := composite[SWAP,inverse[rotate[NATMUL]]] (* derived 2005 April 16 in FACTRL.NB *) iterate[intersection[composite[inverse[SECOND],NATMUL], composite[inverse[FIRST],SUCC,FIRST]],cart[set[set[0]],set[set[0]]]] := composite[id[cart[omega,V]],intersection[composite[inverse[FIRST],SUCC], composite[inverse[SECOND],FACTORIAL]]] (* added 2002 July 2 based on ITER-IMV.NB *) iterate[x_,intersection[y_,image[V,z_]]] := composite[id[image[V,z]],iterate[x,y]] (* derived 2005 September 8 in RAVS-DIV.NB *) iterate[inverse[plus[nat[x_]]],set[nat[y_]]] := composite[image[inverse[NATADD],set[nat[y]]],times[nat[x]]] (* derived 2007 December 23 in HULL-IVR.NB *) iterate[inverse[S],x_] := union[cart[intersection[omega,complement[set[0]]], image[inverse[S],x]],cart[set[0],x]] (* added 2002 July 5 based on NATADD-1.NB *) iterate[inverse[SUCC],intersection[omega,x_]] := image[inverse[NATADD],x] (* added 2002 June 12 based on ITINSUCC.NB *) iterate[inverse[SUCC],omega] := cart[omega,omega] (* added 2002 June 13 based on NATIMIN0.NB *) iterate[inverse[SUCC],set[0]] := cart[set[0],set[0]] (* derived 2005 July 24 in RA-ITER.NB *) iterate[inverse[SUCC],set[nat[x_]]] := image[inverse[NATADD],set[nat[x]]] (* added 2002 July 30 based on REVERSAL.NB *) iterate[inverse[SUCC],set[set[0]]] := union[cart[set[0],set[set[0]]],cart[set[set[0]],set[0]]] (* added 2002 July 30 based on REVERSAL.NB *) iterate[inverse[SUCC],set[succ[set[0]]]] := union[cart[set[0],set[succ[set[0]]]], cart[set[set[0]],set[set[0]]],cart[set[succ[set[0]]],set[0]]] (* derived 2005 July 17 in TIMES.NB *) iterate[iterate[SUCC,set[nat[x_]]],set[0]] := times[nat[x]] (* added 2003 December 9 based on ITER-K.NB *) iterate[K,set[0]] := composite[inverse[CARD],id[omega]] (* derived 2006 June 22 in PLUSTIME.NB *) iterate[plus[nat[x_]],set[nat[y_]]] := composite[plus[nat[y]],times[nat[x]]] (* derived 2005 July 18 in REPLACE.NB *) iterate[plus[x_],set[0]] := union[cart[set[0],intersection[complement[image[V,intersection[omega,set[x]]]],set[0]]],times[x]] (* added 2002 May 17 based on ZN.NB *) iterate[POWER,set[0]] := composite[IMAGE[ZN],id[omega]] (* added 2002 June 13 based on ITOMSUCC.NB *) iterate[SUCC,intersection[omega,x_]] := composite[id[omega],iterate[SUCC,x]] (* added 2002 June 3 based on S-ON.TXT *) iterate[SUCC,omega] := composite[id[omega],S,id[omega]] (* added 2002 April 18 based on PLUS-0.NB *) iterate[SUCC,set[0]] := id[omega] (* derived 2005 July 24 in RA-ITER.NB *) iterate[SUCC,set[nat[x_]]] := plus[nat[x]] (* added 2002 May 24 based on LEFT.NB *) iterate[SUCC,set[set[0]]] := composite[id[omega],SUCC] (* added 2002 May 24 based on LEFT.NB *) iterate[SUCC,set[succ[y_]]] := composite[SUCC,iterate[SUCC,set[y]]] (* derived 2006 June 22 in PLUSTIME.NB *) iterate[times[nat[x_]],set[0]] := cart[omega,set[0]] (* derived 2006 June 28 in NATEXP-2.NB *) iterate[times[nat[x_]],set[nat[y_]]] := composite[times[nat[y]],NATEXP,LEFT[nat[x]]] (* derived 2006 June 27 in NATEXP-1.NB *) iterate[times[nat[x_]],set[set[0]]] := composite[NATEXP,LEFT[nat[x]]] (* added 2002 May 16 based on ITER-U.NB *) iterate[x_,union[y_,z_]] := union[iterate[x,y],iterate[x,z]] (* derived 2006 August 15 in EVEN-ODD.NB *) iterate[union[cart[set[0],set[set[0]]],cart[set[set[0]],set[0]]],set[0]] := union[cart[even,set[0]],cart[odd,set[set[0]]]] (* added 2002 June 10 based on POWERUID.NB *) iterate[union[Id,x_],y_] := composite[iterate[x,y],inverse[S],id[omega]] (* used to create functions in the lambda calculus *) lambda[x_,e_] := Module[{y=Unique[]},composite[VERTSECT[class[pair[x,y],member[y,e]]], id[class[x,True]]]] (* added 2000 November 7 based on LB-2.NB *) LB[0] := cart[set[0],V] (* derived 2004 February 19 in REPLACE.NB *) lb[0,x_] := complement[image[V,x]] (* derived 2004 February 19 in REPLACE3.NB *) lb[x_,0] := V (* added 2000 November 17 based on CO-ID.NB *) LB[cart[x_,y_]] := union[cart[P[y],x],cart[set[0],V]] (* derived 2004 February 19 in REPLACE.NB *) lb[cart[x_,y_],z_] := union[complement[image[V,z]], intersection[x,complement[image[V,intersection[z,complement[y]]]]]] (* derived 2004 December 21 in COMUTANT.NB *) lb[COMMUTE,lb[COMMUTE,lb[COMMUTE,x_]]] := lb[COMMUTE,x] (* derived 2004 February 19 in REPLACE.NB *) lb[complement[x_],y_] := complement[image[inverse[x],y]] (* added 2001 July 12 based on UB-LB-2.NB *) LB[complement[cart[x_,y_]]] := union[cart[V,complement[x]],cart[P[complement[y]],V]] (* added 2001 July 4 based on VS-1.NB *) LB[complement[composite[complement[inverse[E]],x_]]] := composite[Id,complement[composite[inverse[x],complement[S]]]] (* added 2002 January 3 based on REPLACE.NB *) LB[complement[composite[x_,inverse[E]]]] := LB[UB[complement[x]]] (* added 2001 July 8 based on ZN-2.NB *) LB[complement[cross[inverse[x_],Id]]] := UB[complement[cross[x,Id]]] (* added 2000 November 14 based on MAX.NB *) LB[complement[E]] := composite[complement[inverse[E]],BIGCUP] (* added 2000 November 7 based on LB-1.NB *) LB[complement[inverse[x_]]] := UB[complement[x]] (* added 2000 November 14 based on MAX.NB *) LB[complement[S]] := composite[complement[inverse[E]],IMAGE[inverse[S]]] (* derived 2006 June 18 in REIF-PO.NB *) lb[composite[x_,BIGCUP],y_] := image[inverse[BIGCUP],lb[x,y]] (* derived 2004 July 23 in X23--.NB *) lb[composite[complement[E],x_],y_] := complement[image[inverse[VERTSECT[x]],image[inverse[S],y]]] (* added 2000 November 14 based on MAX.NB *) LB[composite[complement[inverse[x_]],inverse[y_]]] := UB[composite[y,complement[x]]] (* derived 2004 February 20 in REPLACE1.NB *) lb[composite[E,x_],V] := 0 (* derived 2004 February 22 in IMG9BFIX.NB *) lb[composite[FIRST,intersection[composite[x_,FIRST],composite[inverse[E],SECOND]]],V] := 0 (* derived 2004 February 19 in REPLACE3.NB *) lb[composite[Id,x_],y_] := lb[x,y] (* derived 2004 December 15 in LB-UB-RS.NB *) lb[composite[id[x_],y_],z_] := intersection[complement[image[V,intersection[z,complement[x]]]],lb[y,z]] (* derived 2004 December 15 in LB-UB-RS.NB *) lb[composite[x_,id[y_]],z_] := union[complement[image[V,z]],intersection[y,lb[x,z]]] (* derived 2008 June 7 in LB-UB-E.NB *) LB[composite[x_,inverse[E]]] := composite[S,inverse[image[DORA,P[x]]]] (* derived 2006 June 16 in UB-I-CAP.NB *) lb[composite[inverse[IMAGE[DUP]],inverse[image[inverse[IMG],x_]]],y_] := ub[image[inverse[CAP],x],y] (* derived 2008 January 22 in HART-FU.NB *) LB[composite[Q,inverse[S]]] := UB[composite[Q,S]] (* derived 2005 January 5 in TC-HC.NB *) lb[composite[x_,TC],y_] := image[inverse[TC],lb[x,y]] (* derived 2005 October 6 in BINCL-X.NB *) LB[cross[x_,y_]] := union[cart[set[0],V],composite[cross[LB[x],LB[y]],DORA,id[P[cart[V,V]]]]] (* added 2000 November 14 based on MAX.NB *) LB[Di] := composite[Id,complement[inverse[E]]] (* derived 2004 February 20 in LB-UB-ID.NB *) lb[Di,x_] := complement[x] (* added 2000 December 3 based on DO-LT.NB *) LB[DISJOINT] := composite[DISJOINT,BIGCUP] (* derived 2007 April 24 in LB-UB-V.NB *) lb[DISJOINT,V] := set[0] (* derived 2005 April 19 in LBUB-DIV.NB *) lb[DIV,omega] := set[set[0]] (* derived 2005 October 5 in GLB-DIV.NB *) lb[DIV,V] := 0 (* added 2000 November 16 based on FUNPART.NB *) LB[E] := union[cart[set[0],V],composite[inverse[E],BIGCAP]] (* derived 2004 February 19 in REPLACE.NB *) lb[E,x_] := A[x] (* added 2002 November 16 based on FACTEQDF.NB *) LB[EQUIDIFF] := UB[EQUIDIFF] (* derived 2007 January 23 in EQUIDIFF.NB *) lb[EQUIDIFF,id[omega]] := id[omega] (* derived 2004 February 20 in REPLACE1.NB *) lb[FINITE,V] := V (* derived 2007 October 8 in UCL-DORA.NB *) lb[fix[composite[inverse[FIRST],inverse[IMAGE[x_]],S,IMG]],range[SINGLETON]] := intersection[P[domain[VERTSECT[x]]],transvar[SECOND,x]] (* derived 2004 February 20 in REPLACE1.NB *) lb[funpart[x_],V] := 0 (* added 2000 November 14 based on MAX.NB *) LB[Id] := union[cart[set[0],V],inverse[SINGLETON]] (* derived 2004 February 20 in LB-UB-ID.NB *) lb[Id,x_] := complement[image[Di,x]] (* added 2000 December 26 based on UB-ID.NB *) LB[id[x_]] := union[cart[set[0],V],composite[id[x],inverse[SINGLETON]]] (* derived 2004 July 26 in DORAFUNS.NB *) lb[image[DORA,FUNS],range[SINGLETON]] := complement[set[0]] (* derived 2006 June 16 in UB-I-CAP.NB *) lb[image[inverse[CAP],x_],y_] := ub[image[inverse[CAP],x],y] (* derived 2004 February 19 in REPLACE.NB *) lb[image[V,x_],y_] := union[complement[image[V,y]],image[V,x]] (* added 2000 November 7 based on LB-2.NB *) LB[intersection[x_,y_]] := intersection[LB[x],LB[y]] (* derived 2004 February 19 in REPLACE3.NB *) lb[intersection[x_,y_],z_] := intersection[lb[x,z],lb[y,z]] (* derived 2008 March 18 in UB-LB-SS.NB *) lb[x_,intersection[y_,set[z_]]] := union[complement[image[V,intersection[y,set[z]]]],image[inverse[x],set[z]]] (* derived 2004 February 20 in REPLACE1.NB *) lb[INVAR,V] := P[union[Id,complement[cart[V,V]]]] (* added 2000 November 7 based on LB-1.NB *) LB[inverse[x_]] := UB[x] (* added 2004 February 17 *) lb[inverse[x_],y_] := ub[x,y] (* derived 2007 April 24 in LB-UB-V.NB *) lb[K,V] := 0 (* derived 2004 February 22 in UB-UB.NB *) lb[LB[x_],y_] := P[ub[x,y]] (* added 2002 January 3 based on COMPOSE.NB *) LB[LB[complement[cross[Id,intersection[complement[cart[V,complement[x_]]],complement[cart[y_,V]]]]]]] := composite[inverse[IMAGE[id[cart[V,x]]]],inverse[IMAGE[FIRST]], DISJOINT,IMAGE[FIRST],IMAGE[id[cart[V,complement[y]]]]] (* added 2002 January 2 based on CRSRULES.NB *) LB[LB[cross[x_,y_]]] := union[cart[V,set[0]],cart[set[0],V], composite[id[P[cart[V,V]]],intersection[ composite[inverse[IMAGE[FIRST]],LB[LB[x]],IMAGE[FIRST]], composite[inverse[IMAGE[SECOND]],LB[LB[y]],IMAGE[SECOND]]], id[P[cart[V,V]]]]] (* derived 2004 December 10 in AP-IMG.NB *) lb[lb[rotate[x_],y_],z_] := ub[x,cart[z,y]] (* derived 2004 May 15 in VARIOUS.NB *) lb[PAIRSET,set[0]] := 0 (* derived 2007 April 24 in LB-UB-V.NB *) lb[PS,V] := 0 (* added 2000 December 18 based on LB-LB-C.NB *) LB[Q] := UB[Q] (* derived 2004 February 20 in REPLACE1.NB *) lb[Q,V] := 0 (* derived 2004 May 2 in REGULAR.NB *) LB[REGULAR] := union[cart[REGULAR,REGULAR],cart[set[0],V]] (* derived 2004 February 20 in REPLACE1.NB *) lb[REGULAR,V] := complement[image[V,complement[REGULAR]]] (* derived 2004 February 20 in REPLACE1.NB *) lb[rotate[x_],V] := composite[Id,complement[composite[FIRST,complement[inverse[x]]]]] (* added 2000 November 10 based on UB-LB-2.LOG *) LB[S] := union[cart[set[0],V],composite[inverse[S],BIGCAP]] (* derived 2004 February 19 in REPLACE.NB *) lb[S,x_] := P[A[x]] (* derived 2004 December 10 in LB-SS.NB *) lb[x_,set[y_]] := union[complement[image[V,set[y]]],image[inverse[x],set[y]]] (* derived 2004 February 20 in REPLACE1.NB *) lb[set[x_],V] := 0 (* derived 2005 October 5 in GLB-DIV.NB *) lb[setpart[x_],V] := 0 (* derived 2007 April 26 in LB-SMALL.NB *) lb[SMALLER,V] := 0 (* derived 2007 April 24 in LB-UB-V.NB *) lb[thinpart[x_],V] := 0 (* derived 2004 February 22 in UB-UB.NB *) lb[UB[x_],y_] := P[lb[x,y]] (* derived 2004 February 19 in REPLACE.NB *) lb[x_,ub[x_,lb[x_,y_]]] := lb[x,y] (* derived 2004 February 19 in REPLACE3.NB *) lb[x_,union[y_,z_]] := intersection[lb[x,y],lb[x,z]] (* derived 2006 October 9 in REIFCLIQ.NB *) LB[union[w_,cart[x_,y_]]] := union[composite[id[x],LB[w],IMAGE[id[complement[y]]]],LB[w]] (* added 2000 November 7 based on LB-2.NB *) LB[union[x_,complement[cart[y_,z_]]]] := union[cart[V,complement[y]],composite[id[y],LB[x],IMAGE[id[z]]]] (* added 2002 January 10 based on PAIRSET.NB *) LB[union[FIRST,SECOND]] := union[cart[set[0],V],composite[inverse[PAIRSET],S]] (* added 2000 November 14 based on MAX.NB *) LB[union[Id,complement[S]]] := composite[complement[inverse[E]],IMAGE[inverse[PS]]] (* derived 2006 April 22 in NESTCLOS.NB *) LB[union[S,inverse[S]]] := UB[union[S,inverse[S]]] (* added 2000 November 7 based on LB-2.NB *) LB[V] := cart[V,V] (* derived 2004 February 19 in REPLACE.NB *) lb[V,x_] := V (* added 2001 July 21 based on LB-ZN.NB *) LB[ZN] := composite[inverse[ZN],BIGCUP] (* derived 2007 March 2 in LD-1.NB *) ld[x_,x_] := image[DIV,set[x]] (* derived 2007 March 2 in LD-1.NB *) ld[x_,0] := image[DIV,set[x]] (* derived 2007 March 2 in LD-1.NB *) ld[0,y_] := intersection[image[V,intersection[omega,set[y]]],set[0]] (* derived 2007 April 17 in LD9-19.NB *) ld[x_,V] := 0 (* derived 2007 April 17 in LD9-19.NB *) ld[V,x_] := 0 (* added 2004 March 6 based on UB-LEAST.NB *) least[x_,y_] := intersection[y,lb[x,y]] (* added 2000 November 13 based on MAX.NB *) LEAST[0] := 0 (* added 2000 November 13 based on MAX.NB *) LEAST[cart[x_,y_]] := composite[inverse[E],IMAGE[id[x]],id[P[y]]] (* derived 2006 October 31 in REPLACE.NB *) LEAST[complement[cross[Di,Id]]] := union[composite[inverse[E],IMAGE[id[complement[cart[V,V]]]]], composite[inverse[E],INVERSE,FUNPART,IMAGE[SWAP]]] (* added 2002 April 6 based on SUBST.NB *) LEAST[complement[cross[Id,Di]]] := union[composite[inverse[E],FUNPART], composite[inverse[E],IMAGE[id[complement[cart[V,V]]]]]] (* added 2000 December 7 based on MOREBACK.NB *) LEAST[complement[inverse[x_]]] := GREATEST[complement[x]] (* added 2000 December 3 based on DO-LT.NB *) LEAST[complement[S]] := 0 (* added 2002 November 26 based on LT-GT-DI.NB *) LEAST[composite[Di,inverse[x_]]] := GREATEST[composite[x,Di]] (* added 2000 November 17 based on CO-ID.NB *) LEAST[composite[Id,x_]] := LEAST[x] (* added 2000 November 16 based on LEAST.NB *) LEAST[composite[x_,id[y_]]] := composite[id[y],LEAST[x]] (* added 2000 November 16 based on LEAST.NB *) LEAST[composite[id[x_],y_]] := composite[LEAST[y],id[P[x]]] (* added 2002 November 26 based on LT-GT-DI.NB *) LEAST[composite[inverse[x_],Di]] := GREATEST[composite[Di,x]] (* added 2000 November 14 based on MAX.NB *) LEAST[Di] := 0 (* derived 2006 October 12 in REPLACE.NB *) LEAST[EQUIDIFF] := composite[inverse[E],id[cliques[EQUIDIFF]]] (* derived 2006 October 8 in GT-EQV.NB *) LEAST[eqv[x_]] := composite[inverse[E],id[cliques[eqv[x]]]] (* added 2000 December 5 based on DO-GT.NB *) LEAST[FINITE] := inverse[E] (* added 2000 November 13 based on MAX.NB *) LEAST[Id] := inverse[SINGLETON] (* added 2000 December 26 based on LT-IDX.NB *) LEAST[id[x_]] := composite[id[x],inverse[SINGLETON]] (* added 2000 November 16 based on ASSINT.NB *) LEAST[intersection[x_,y_]] := intersection[LEAST[x],LEAST[y]] (* added 2000 November 13 based on MAX.NB *) LEAST[inverse[x_]] := GREATEST[x] (* derived 2006 October 12 in REPLACE.NB *) LEAST[Q] := composite[inverse[E],id[cliques[Q]]] (* derived 2004 May 2 in REGULAR.NB *) LEAST[REGULAR] := composite[inverse[E],id[REGULAR]] (* added 2000 November 13 based on MAX.NB *) LEAST[S] := intersection[BIGCAP,inverse[E]] (* added 2002 November 26 based on LT-GT-CP.NB *) LEAST[union[cart[x_,y_],composite[Di,inverse[z_]]]] := GREATEST[union[cart[y,x],composite[z,Di]]] (* added 2002 November 26 based on LT-GT-CP.NB *) LEAST[union[cart[x_,y_],composite[inverse[z_],Di]]] := GREATEST[union[cart[y,x],composite[Di,z]]] (* added 2002 November 26 based on GREATEST.NB *) LEAST[union[x_,complement[cart[y_,z_]]]] := union[composite[inverse[E],IMAGE[id[complement[y]]]], LEAST[union[x,cart[V,complement[z]]]]] (* derived 2004 July 21 in TOMINMAX.NB *) LEAST[union[composite[id[y_],complement[x_],id[y_]],id[y_]]] := composite[id[y],MAXIMAL[x],id[P[y]]] (* added 2000 November 13 based on MAX.NB *) LEAST[union[Id,complement[x_]]] := MAXIMAL[x] (* derived 2007 September 4 in U-CHAINS.NB *) LEAST[union[x_,inverse[x_]]] := GREATEST[union[x,inverse[x]]] (* added 2000 November 13 based on MAX.NB *) LEAST[V] := inverse[E] (* added 2002 August 28 based on RIGHT.NB *) LEFT[union[x_,complement[image[V,y_]]]] := composite[LEFT[x],id[image[V,y]]] (* added 2002 August 28 based on RIGHT.NB *) LEFT[union[x_,image[V,y_]]] := composite[LEFT[x],id[complement[image[V,y]]]] (* added 1999 August 16 based on session NORMAL.4 *) LEFT[V] := 0 (* derived 2008 October 20 in LIST.NB *) list[x_] := x /; and[FUNCTION[x],member[domain[x],omega]] (* derived 2005 September 27 in EXAMPLES.NB *) LUB[0] := 0 (* derived 2005 September 27 in GLB-LUB.NB *) LUB[cart[x_,y_]] := cart[P[x],intersection[x,y]] (* derived 2005 September 27 in GLB-LUB.NB *) LUB[composite[Id,x_]] := LUB[x] (* derived 2005 October 6 in GLB-S-DI.NB *) LUB[composite[id[P[x_]],S]] := composite[BIGCUP,id[P[P[x]]]] (* derived 2005 December 22 in LUB-S.NB *) LUB[composite[inverse[IMAGE[id[x_]]],S]] := composite[BIGCUP,id[P[P[x]]]] (* derived 2005 December 22 in LUB-S.NB *) LUB[composite[S,id[Uclosure[x_]]]] := composite[BIGCUP,id[P[Uclosure[x]]]] (* derived 2005 September 27 in EXAMPLES.NB *) LUB[Di] := 0 (* derived 2005 September 27 in EXAMPLES.NB *) LUB[DISJOINT] := cart[V,set[0]] (* derived 2005 October 5 in LUB-E.NB *) LUB[E] := intersection[S,inverse[E]] (* derived 2005 September 27 in EXAMPLES.NB *) LUB[Id] := inverse[SINGLETON] (* derived 2005 September 27 in EXAMPLES.NB *) LUB[id[x_]] := union[cart[set[0],intersection[x,complement[image[Di,x]]]],composite[id[x],inverse[SINGLETON]]] (* derived 2005 October 6 in GLB-S-DI.NB *) LUB[intersection[Di,x_]] := 0 (* derived 2005 September 27 in GLB-LUB.NB *) LUB[inverse[x_]] := GLB[x] (* derived 2005 September 27 in EXAMPLES.NB *) LUB[POWER] := 0 (* derived 2005 September 27 in EXAMPLES.NB *) LUB[PS] := 0 (* derived 2005 September 27 in GLB-LUB.NB *) LUB[S] := BIGCUP (* derived 2005 September 27 in EXAMPLES.NB *) LUB[V] := cart[V,V] (* added 2001 April 25 based on MAP1.NB *) map[0,x_] := set[0] (* added 2001 April 27 based on MAP6.NB *) map[x_,0] := intersection[set[0],complement[image[V,x]]] (* derived 2004 November 26 in XS-CP.NB *) map[intersection[x_,image[V,y_]],y_] := X[cart[x,y]] (* derived 2006 August 19 in CARD-MAP.NB *) map[set[nat[x_]],y_] := image[SINGLETON,cart[set[nat[x]],y]] (* derived 2008 August 17 in OPS-1.NB *) map[set[x_],set[x_]] := set[cart[set[x],set[x]]] (* derived 2004 November 26 in XS-CP.NB *) map[x_,set[setpart[y_]]] := set[cart[x,set[setpart[y]]]] (* derived 2006 July 6 in MAP-SS.NB *) map[set[setpart[x_]],y_] := image[SINGLETON,cart[set[setpart[x]],y]] (* derived 205 December 25 in AP-MAP.NB *) map[union[x_,complement[image[V,y_]]],z_] := intersection[image[V,y],map[x,z]] (* derived 205 December 25 in AP-MAP.NB *) map[x_,union[y_,complement[image[V,set[x_]]]]] := map[x,y] (* introduced 2007 December 29 in MAX-MIN.NB *) maximal[x_,y_] := intersection[y,complement[fix[composite[Di,id[y],x]]]] (* added 2000 November 13 based on MAX.NB *) MAXIMAL[0] := inverse[E] (* derived 2008 June 17 in MINMAX-C.NB *) MAXIMAL[complement[x_]] := LEAST[union[Id,x]] (* added 2000 November 16 based on RESTRICT.NB*) MAXIMAL[composite[Id,x_]] := MAXIMAL[x] (* added 2000 November 16 based on RESTRICT.NB*) MAXIMAL[composite[x_,id[y_]]] := union[composite[id[y],MAXIMAL[x]], composite[inverse[E],IMAGE[id[complement[y]]]]] (* derived 2008 July 3 in MAX-FUNP.NB *) MAXIMAL[composite[id[x_],S]] := intersection[ composite[complement[inverse[E]],IMAGE[inverse[PS]],IMAGE[id[x]]],inverse[E]] (* added 2000 November 14 based on MAX.NB *) MAXIMAL[Di] := inverse[SINGLETON] (* added 2000 November 13 based on MAX.NB *) MAXIMAL[Id] := inverse[E] (* added 2000 December 26 based on UB-ID.NB *) MAXIMAL[id[x_]] := inverse[E] (* added 2000 November 14 based on MAX.NB *) MAXIMAL[intersection[Di,x_]] := MAXIMAL[x] (* added 2000 November 13 based on MAX.NB *) MAXIMAL[inverse[x_]] := MINIMAL[x] (* added 2000 November 14 based on MAX.NB *) MAXIMAL[PS] := MAXIMAL[S] (* added 2000 November 16 based on ASSINT.NB *) MAXIMAL[union[x_,y_]] := intersection[MAXIMAL[x],MAXIMAL[y]] (* added 2000 November 14 based on MAX.NB *) MAXIMAL[V] := inverse[SINGLETON] (* axiom of pairing and unions,proper classes, and other membership facts *) (* Theorem SP-2 in SP1 *) member[u_,0] := False (* derived 2007 October 9 in A-TOWERS.NB *) member[0,A[intersection[fix[UCHAINS],invar[x_]]]] := True (* derived 2004 October 12 in CMPCT-OM.NB *) member[0,A[intersection[omega,x_]]] := not[member[0,x]] (* derived 2006 February 21 in A-SUC-ON.NB *) member[0,A[intersection[OMEGA,x_]]] := not[member[0,x]] (* derived 2006 November 21 in CUR-0.NB *) member[0,APPLY[CURRY,x_]] := or[not[member[x,V]],not[subclass[x,cart[cart[V,V],V]]]] (* derived 2006 December 13 in FACT.NB *) member[0,APPLY[FACTORIAL,x_]] := True (* derived 2006 July 23 in BINHOM-4.NB *) member[0,binhom[x_,y_]] := equal[0,fix[domain[x]]] (* derived 2006 June 10 in BINOPS.NB *) member[0,BINOPS] := True (* derived 2003 December 22 in EMPTY.NB *) member[0,card[x_]] := not[equal[0,x]] (* derived 2005 October 6 in CL.NB *) member[0,CL] := False (* derived 2005 March 26 in U-CMPCT.NB *) member[0,COMPACT] := True (* added 1999 July 21 *) member[0,composite[x_,y_]] := False (* derived 2006 June 7 in CONST.NB *) member[0,CONST] := True (* derived 2004 September 24 in COREDESC.NB *) member[0,core[DESCENDING,x_]] := False (* added 2004 April 17 based on CORE.NB *) member[0,core[invar[SUCC],complement[set[x_]]]] := not[member[x,omega]] (* added 1999 July 21 *) member[0,cross[x_,y_]] := False (* Theorem DK-0 proved 2000 May 26 *) member[0,DEDEKIND] := True (* derived 2005 February 8 in X1731.NB *) member[0,DESCENDING] := True (* derived 2004 November 18 in XS-IN-AC.NB *) member[0,domain[funpart[composite[id[P[cart[V,V]]],inverse[XS]]]]] := False (* derived 2005 January 1 in ITER-FUN.NB *) member[0,domain[funpart[iterate[x_,y_]]]] := member[y,range[SINGLETON]] (* derived 2005 October 19 in ORD-WRAP.NB *) member[0,domain[GLB[composite[id[x_],S,id[x_]]]]] := member[U[x],x] (* derived 2005 October 17 in CL-TOFIN.NB *) member[0,domain[GLB[to[fin[x_]]]]] := not[equal[0,to[fin[x]]]] (* added 2002 May 14 based on ITER-DO.NB *) member[0,domain[iterate[x_,y_]]] := not[equal[0,y]] (* derived 2006 March 12 in OLIST-OO.NB *) member[0,domain[ordlist[x_]]] := not[equal[0,intersection[OMEGA,x]]] (* added 2002 May 21 based on NILPOT.NB *) member[0,domain[power[x_]]] := True (* derived 2006 August 15 in EVEN-ODD.NB *) member[0,even] := True (* derived 2008 January 2 in FINCHR-1.NB *) member[0,FINCHAR] := True (* Theorem FIN-0 in FINITE added 2000 April 1 *) member[0,FINITE] := True (* derived 2005 February 15 in RUS-A-DJ.NB *) member[0,fix[composite[x_,BIGCAP]]] := False (* derived 2005 October 5 in LUB-E.NB *) member[0,fix[E]] := False (* derived 2007 July 17 in RA-SBV.NB *) member[0,fix[UCHAINS]] := False (* derived 2003 December 21 in INTADD.NB *) member[0,funpart[x_]] := False (* derived 2008 October 18 in GROUPS.NB *) member[0,GROUPS] := False (* derived 2005 October 25 in TOP-WRAP.NB *) member[0,hull[TOPS,x_]] := True (* added 1999 July 21 based on session MEM-0.LOG *) member[0,id[x_]] := False (* added 1999 July 21 based on session MEM-0.LOG *) member[0,image[BIGCUP,x_]] := or[member[0,x],member[set[0],x]] (* derived 2004 August 18 in X2812-61.NB *) member[0,image[CART,x_]] := or[member[0,domain[x]],member[0,range[x]]] (* added 2003 July 25 based on CPS-ZXZ.NB *) member[0,image[COMPOSE,cart[Z,Z]]] := False (* added 2001 December 31 based on DORA-DJ.NB *) member[0,image[COMPOSE,Id]] := True (* added 1999 July 21 based on session MEM-0.LOG *) member[0,image[Di,x_]] := not[subclass[x,set[0]]] (* added 2003 May 24 based on DIFCLOS.NB *) member[0,image[DIF,cart[x_,y_]]] := not[equal[0,intersection[y,image[S,x]]]] (* added 1999 July 21 based on session MEM-0.LOG *) member[0,image[DISJOINT,x_]] := not[equal[0,x]] (* derived 2007 January 27 in IM-DIV.NB *) member[0,image[DIV,x_]] := not[equal[0,intersection[omega,x]]] (* derived 2005 April 23 in FACT-S.NB *) member[0,image[FACTORIAL,x_]] := False (* derived 2008 January 12 in HAUS-MAX.NB *) member[0,image[IMAGE[id[chains[x_]]],range[POWER]]] := False (* derived 2007 July 5 in PC-TOWER.NB *) member[0,image[IMAGE[inverse[RANK]],omega]] := True (* derived 2008 June 7 in LB-UB-E.NB *) member[0,image[IMAGE[x_],P[y_]]] := True (* added 2002 November 17 based on HER-Z.NB *) member[0,image[inverse[S],x_]] := not[equal[0,x]] (* derived 2005 February 4 in DK-K.NB *) member[0,image[K,x_]] := False (* derived 2007 November 15 in XS-CART.NB *) member[0,image[MAP,x_]] := not[subclass[image[inverse[x],set[0]],set[0]]] (* derived 2005 April 16 in FACTRL.NB *) member[0,image[NATMUL,cart[x_,y_]]] := or[and[member[0,x],not[equal[0,intersection[omega,y]]]], and[member[0,y],not[equal[0,intersection[omega,x]]]]] (* derived 2005 January 7 in CARD-UP.NB *) member[0,image[PAIRSET,x_]] := False (* added 1999 July 21 based on session MEM-0.LOG *) member[0,image[POWER,x_]] := False (* derived 2008 September 4 in IM-PS-0 *) member[0,image[PS,x]] := False (* derived 2005 January 6 in IM-Q-ON.NB *) member[0,image[Q,OMEGA]] := True (* derived 2008 January 22 in HART-FU.NB *) member[0,image[Q,P[x_]]] := True (* derived 2004 January 13 in RA-RCF.NB *) member[0,image[RCF,x_]] := False (* derived 2008 January 5 in SMALLER.NB *) member[0,image[SMALLER,x_]] := False (* added 1999 July 21 based on session MEM-0.LOG *) member[0,image[SUCC,x_]] := False (* added 1999 October 16 based on 1999\OCT\15\VERTSECT.2 *) member[0,image[VERTSECT[x_],y_]] := not[subclass[y,domain[x]]] (* derived 2004 November 18 in XS-IN-AC.NB *) member[0,image[XS,P[cart[V,V]]]] := not[axch] (* derived 2003 December 21 in INTADD.NB *) member[0,intadd[x_,y_]] := or[not[member[x,Z]],not[member[y,Z]]] (* added 1999 July 21 based on session MEM-0.LOG *) member[0,inverse[x_]] := False (* derived 2007 April 5 in LD-3.NB *) member[0,ld[x_,y_]] := and[member[x,omega],member[y,omega]] (* derived 2006 June 29 in IM-VS-PC.NB *) member[0,map[x_,y_]] := equal[0,x] (* derived 2008 December 29 in MONOIDS.NB *) member[0,MONOIDS] := False (* derived 2005 February 13 in NAT.NB *) member[0,nat[x_]] := not[equal[0,nat[x]]] (* derived 2003 December 22 in POSITIVE.NB *) member[0,natadd[x_,y_]] := or[not[equal[0,x]],not[equal[0,y]]] (* derived 2007 February 4 in NATDIV-1.NB *) member[0,natdiv[x_,y_]] := or[not[equal[0,x]],not[member[pair[y,x],DIV]]] (* derived 2006 November 30 in EXPIDEMP.NB *) member[0,natexp[x_,y_]] := or[equal[0,y],not[equal[0,x]],not[member[y,omega]]] (* derived 2003 December 22 in POSITIVE.NB *) member[0,natsub[x_,y_]] := or[not[equal[x,y]],not[member[x,omega]]] (* derived 2003 December 22 in POSITIVE.NB *) member[0,natmul[x_,y_]] := or[and[not[equal[0,x]],not[equal[0,y]]], and[not[equal[0,x]],not[member[x,omega]]], and[not[equal[0,y]],not[member[y,omega]]], and[not[member[x,omega]],not[member[y,omega]]]] (* derived 2006 August 15 in EVEN-ODD.NB *) member[0,odd] := False (* proposed 1998 September 13 *) member[0,omega] := True (* proposed 1998 September 13 *) member[0,OMEGA] := True (* derived 2008 March 13 in LEAST.NB *) member[0,ord[x_]] := not[equal[0,ord[x]]] (* derived 2008 May 3 in PARTREC.NB *) member[0,partrec[x_,y_]] := True (* derived 2008 October 31 in PERMS.NB *) member[0,PERMS] := True (* derived 2003 December 28 in PTCLOSED.NB *) member[0,PointClosed] := True (* derived 2005 February 22 in PRIMES.NB *) member[0,PRIMES] := False (* derived 2008 October 7 in QUASIGPS.NB *) member[0,QUASIGPS] := True (* added 1999 November 6 based on CART-DI.NB *) member[0,range[CART]] := True (* derived 2007 June 27 in RA=CLIQ.NB *) member[0,range[CLIQUES]] := False (* added 2000 September 28 based on CROSS.NB *) member[0,range[CROSS]] := True (* derived 2005 April 16 in FACTRL.NB *) member[0,range[FACTORIAL]] := False (* added 2003 January 17 based on MEM0RAVS.NB *) member[0,range[IMAGE[x_]]] := True (* derived 2007 August 5 in RA-MAP.NB *) member[0,range[MAP]] := True (* derived 2005 January 18 in RA-KURA.NB *) member[0,range[PAIRSET]] := False (* added 2002 November 30 based on POS-NEG.NB *) member[0,range[PLUS]] := False member[0,range[POWER]] := False (* derived 2004 January 13 in RA-RCF.NB *) member[0,range[RCF]] := False member[0,range[SINGLETON]] := False (* added 2002 January 28 based on SUBVAR.NB *) member[0,range[SUBVAR]] := False member[0,range[SUCC]] := False (* derived 2006 November 18 in CURMAP-3.NB *) member[0,range[U[image[CURRY,x_]]]] := False (* derived 2006 October 19 in EQV-RAVS.NB *) member[0,range[U[image[VS,x_]]]] := False (* added 2003 January 17 based on MEM0RAVS.NB *) member[0,range[VERTSECT[x_]]] := not[equal[V,domain[x]]] (* derived 2004 November 16 in XS.NB *) member[0,range[XS]] := not[axch] (* derived 2003 December 21 in LOW-RANK.NB *) member[0,rank[x_]] := not[equal[0,x]] (* Theorem REG-9 in REG2 *) member[0,REGULAR] := True (* derived 2003 December 22 in EMPTY.NB *) member[0,RUSSELL] := True (* derived 2006 July 8 in SEMIGPS.NB *) member[0,SEMIGPS] := True (* Theorem SBV-MEM0 in SUBVAR proved 1999 February 13 *) member[0,subvar[x_]] := True (* derived 2003 December 27 in T1.NB *) member[0,T1] := True (* derived 2003 December 30 in T2.NB *) member[0,T2] := True (* derived 2005 October 25 in TOP-WRAP.NB *) member[0,top[x_]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) member[0,TOPS] := False (* derived 2005 January 27 in BA-OM.NB *) member[0,U[complement[image[inverse[BIGCAP],set[0]]]]] := False (* Tukey's Lemma derived 2008 January 4 in FNCH-UCH.NB *) member[0,U[intersection[FINCHAR,subvar[inverse[PS]]]]] := not[axch] (* derived 2007 June 23 in UCHAINS.NB *) member[0,Uchains[x_]] := True (* derived 2006 June 9 in UNARY.NB *) member[0,UNOPS] := True (* Theorem SP-5 in SP1 *) member[0,V] := True (* added 2002 November 16 based on INTEGER.NB *) member[0,Z] := False (* derived 2008 June 12 in MIN-A.NB *) member[A[x_],image[PS,x_]] := False (* derived 2005 February 12 in X3713.NB *) member[A[intersection[omega,x_]],x_] := not[equal[0,intersection[omega,x]]] (* derived 2005 February 12 in X3713.NB *) member[A[intersection[OMEGA,x_]],x_] := not[equal[0,intersection[OMEGA,x]]] (* derived 2007 September 6 in SU-A-ON.NB *) member[A[intersection[OMEGA,complement[x_]]],x_] := False (* derived 2005 February 12 in X3713.NB *) member[A[intersection[omega,x_]],omega] := not[equal[0,intersection[omega,x]]] (* derived 2005 February 12 in X3713.NB *) member[A[intersection[OMEGA,x_]],OMEGA] := not[equal[0,intersection[OMEGA,x]]] (* derived 2007 May 18 in OL-A-RA.NB *) member[A[intersection[OMEGA,x_]],range[ordlist[x_]]] := not[equal[0,intersection[OMEGA,x]]] (* derived 2006 March 30 in REG-A.NB *) member[A[reg[x_]],REGULAR] := not[equal[0,reg[x]]] (* added 1998 February 27 *) member[A[x_],V] := not[equal[0,x]] (* added 2001 November 17 based on UNWRAP.NB *) member[x_,ACLOSURE] := and[equal[Aclosure[first[x]],second[x]],member[first[x],V]] (* added 2001 June 29 based on MEMBER.NB *) member[ACLOSURE,x_] := False (* derived 2004 January 8 in FIN-FU.NB *) member[Aclosure[x_],FINITE] := member[x,FINITE] (* derived 2007 July 11 in CONSTHUL.NB *) member[Aclosure[x_],range[SINGLETON]] := member[x,range[SINGLETON]] (* derived 2006 March 21 in MEMB-REG.NB *) member[Aclosure[x_],REGULAR] := member[x,REGULAR] (* Theorems ACL-V-1 and ACL-V-2 in ACL1 proved 2001 September 29 *) member[Aclosure[x_],V] := member[x,V] (* added 2003 October 15 based on ACYCLIC.NB *) member[x_,ACYCLIC] := and[member[x,V],subclass[x,cart[V,V]],equal[0,fix[trv[x]]]] (* added 2003 October 15 based on ACYCLIC.NB *) member[ACYCLIC,x_] := False (* added 2001 November 17 based on UNWRAP.NB *) member[x_,ADJOIN[y_]] := and[equal[union[y,first[x]],second[x]],member[first[x],V]] (* added 2001 June 28 based on SETHOOD.NB *) member[ADJOIN[x_],V] := not[member[x,V]] (* derived 2007 June 23 in ALLCLOSED.NB *) member[x_,allclosed[y_]] := and[member[x,V],subclass[image[y,P[x]],x]] (* derived 2008 January 6 in ALLCL-BC.NB *) member[allclosed[composite[BIGCUP,id[x_]]],y_] := False (* added 2002 January 17 based on ANTISYM1.NB *) member[x_,ANTISYM] := and[member[x,V],ANTISYMMETRIC[x]] (* added 2003 June 4 based on SETHOOD.NB *) member[ANTISYM,x_] := False (* derived 2008 November 26 in AP-BINOP.NB *) member[APPLY[binop[x_],PAIR[y_,z_]],range[binop[x_]]] := and[member[y,fix[domain[binop[x]]]],member[z,fix[domain[binop[x]]]]] (* derived 2008 December 31 in CAT-AP.NB *) member[APPLY[cat[x_],PAIR[y_,z_]],range[cat[x_]]] := member[pair[y,z],domain[cat[x]]] (* derived 2009 January 5 in DOM-CAT.NB *) member[APPLY[cod[cat[x_]],w_],ids[cat[x_]]] := member[w,range[cat[x]]] (* derived 2006 November 21 in CUR-BO.NB *) member[APPLY[CURRY,w_],map[x_,map[x_,y_]]] := member[w,map[cart[x,x],y]] (* derived 2009 January 5 in DOM-CAT.NB *) member[APPLY[dom[cat[x_]],w_],ids[cat[x_]]] := member[w,range[cat[x]]] (* derived 2005 April 23 in FACT-S.NB *) member[APPLY[FACTORIAL,x_],x_] := False (* derived 2005 April 21 in AP-FACT.NB *) member[APPLY[FACTORIAL,x_],omega] := member[x,omega] (* derived 2006 December 13 in FACT.NB *) member[APPLY[FACTORIAL,x_],range[FACTORIAL]] := member[x,omega] (* derived 2008 August 26 in 2EXPFACT.NB *) member[APPLY[FACTORIAL,succ[x_]],natexp[succ[set[0]],x_]] := False (* derived 2006 May 28 in FUNPART.NB *) member[APPLY[funpart[x_],y_],range[funpart[x_]]] := member[y,domain[funpart[x]]] (* derived 2007 February 15 in GCD-1.NB *) member[APPLY[GLB[DIV],x_],omega] := subclass[x,omega] (* derived 2005 October 2 in POLUBGLB.NB *) member[APPLY[GLB[po[x_]],y_],fix[po[x_]]] := member[y,domain[GLB[po[x]]]] (* derived 2006 November 21 in CUR-BO.NB *) member[APPLY[inverse[CURRY],w_],BINOPS] := member[w,map[domain[w],map[domain[w],domain[w]]]] (* derived 2006 November 21 in CUR-BO.NB *) member[APPLY[inverse[CURRY],w_],map[cart[x_,x_],y_]] := member[w,map[x,map[x,y]]] (* derived 2005 October 2 in POLUBGLB.NB *) member[APPLY[LUB[po[x_]],y_],fix[po[x_]]] := member[y,domain[LUB[po[x]]]] (* derived 2007 February 15 in GCD-1.NB *) member[APPLY[LUB[DIV],x_],omega] := subclass[x,omega] (* derived 2006 May 29 in OL-AP.NB *) member[APPLY[ordlist[x_],y_],x_] := member[y,domain[ordlist[x]]] (* derived 2006 May 29 in OL-AP.NB *) member[APPLY[ordlist[x_],y_],APPLY[ordlist[x_],y_]] := False (* derived 2006 May 29 in OL-AP.NB *) member[APPLY[ordlist[x_],y_],APPLY[ordlist[x_],succ[y_]]] := member[y,domain[ordlist[x]]] (* derived 2006 May 29 in OL-AP.NB *) member[APPLY[ordlist[x_],y_],OMEGA] := member[y,domain[ordlist[x]]] (* derived 2006 May 29 in OL-AP.NB *) member[APPLY[ordlist[x_],y_],range[ordlist[x_]]] := member[y,domain[ordlist[x]]] (* derived 2007 May 15 in OL-U-RA.NB *) member[APPLY[ordlist[x_],U[domain[ordlist[x_]]]],U[intersection[OMEGA,x_]]] := False (* derived 2007 May 19 in OLDO-ORD.NB *) member[APPLY[ordlist[x_],y_],U[intersection[OMEGA,x_]]] := member[y,U[domain[ordlist[x]]]] (* derived 2005 August 17 in MONOPRSQ.NB *) member[APPLY[PRIMESEQ,x_],APPLY[PRIMESEQ,y_]] := or[and[member[x,omega],not[member[y,omega]]],and[member[x,y],member[y,omega]]] (* derived 2008 May 9 in PRIMESEQ.NB *) member[APPLY[PRIMESEQ,nat[x_]],image[PRIMESEQ,nat[x_]]] := False (* derived 2005 August 17 in PRIMESEQ.NB *) member[APPLY[PRIMESEQ,x_],omega] := member[x,omega] (* derived 2005 August 17 in PRIMESEQ.NB *) member[APPLY[PRIMESEQ,x_],PRIMES] := member[x,omega] (* derived 2008 November 26 in AP-QUAGP.NB *) member[APPLY[quasigp[x_],PAIR[y_,z_]],range[quasigp[x_]]] := and[member[y,range[quasigp[x]]],member[z,range[quasigp[x]]]] (* derived 2008 November 26 in AP-SEMGP.NB *) member[APPLY[semigp[x_],PAIR[y_,z_]],range[semigp[x_]]] := and[member[y,fix[domain[semigp[x]]]],member[z,fix[domain[semigp[x]]]]] (* added 2003 October 28 based on APPLY.NB *) member[APPLY[x_,y_],V] := member[y,domain[x]] (* added 2001 June 29 based on MEMBER.NB *) member[ASSOC,x_] := False (* derived 2009 January 22 in ASS-SETP.NB *) member[assoc[setpart[x_]],V] := True (* derived 2004 December 7 in ASV-DIV.NB *) member[x_,ASSOCIATIVE] := and[associative[x],member[x,V]] (* added 2003 July 2 based on ASS-SC.NB *) member[ASSOCIATIVE,x_] := False (* added 2001 November 17 based on UNWRAP.NB *) member[x_,BIGCAP] := and[equal[A[first[x]],second[x]],not[equal[0,first[x]]]] member[BIGCAP,x_] := False (* added 2001 November 17 based on UNWRAP.NB *) member[x_,BIGCUP] := and[equal[U[first[x]],second[x]],member[first[x],V]] member[BIGCUP,x_] := False (* replaced 2001 November 23 based on FUN-3.NB *) member[x_,BIJ] := and[FUNCTION[x],FUNCTION[inverse[x]],member[x,V]] (* added 2001 June 29 based on MEMBER.NB *) member[BIJ,x_] := False (* derived 2008 October 31 in BIJ.NB *) member[x_,bij[domain[x_],domain[x_]]] := member[x,PERMS] (* derived 2008 September 30 in BIJ-V.NB *) member[bij[x_,y_],V] := True (* added 2003 May 21 based on BINCLOSE.NB *) member[y_,binclosed[x_]] := and[member[y,V],subclass[image[x,cart[y,y]],y]] (* revised 2003 May23 based on DEF-CLOS.NB *) member[binclosed[CAP],x_] := False (* derived 2004 May 4 in BIN-CPS.NB *) member[binclosed[COMPOSE],x_] := False (* revised 2003 May23 based on DEF-CLOS.NB *) member[binclosed[CUP],x_] := False (* revised 2003 May23 based on DEF-CLOS.NB *) member[binclosed[DIF],x_] := False (* derived 2006 March 30 in BINCLOS.NB *) member[binclosed[setpart[x_]],y_] := False (* derived 2006 December 5 in MIXTIMES.NB *) member[binhom[NATADD,INTADD],V] := True (* derived 2006 October 20 in NAT-FIN.NB *) member[binhom[NATADD,NATADD],FINITE] := False (* derived 2006 August 6 in PTWISE.NB *) member[binhom[x_,setpart[y_]],V] := True (* derived 2006 August 6 in PTWISE.NB *) member[binhom[x_,x_],V] := True (* derived 2008 October 7 in BNP-WRAP.NB *) member[binop[x_],BINOPS] := True (* derived 2008 December 3 in CURRY-BO.NB *) member[binop[x_],map[domain[binop[x_]],fix[domain[binop[x_]]]]] := True (* derived 2008 October 7 in BNP-WRAP.NB *) member[binop[x_],V] := True (* derived 2006 August 6 in PROPER.NB *) member[BINOPS,x_] := False (* added 2001 June 29 based on MEMBER.NB *) member[CAP,x_] := False (* added 2001 November 16 *) member[x_,CAP] := and[member[first[first[x]],V], equal[intersection[first[first[x]],second[first[x]]],second[x]]] (* added 2001 December 1 based on CARD-X.NB *) member[x_,CARD] := and[equal[card[first[x]],second[x]],member[first[x],V]] (* added 2001 December 19 based on SETHOOD2.NB *) member[CARD,x_] := False (* derived 2007 April 29 in ORD-CARD.NB *) member[x_,card[x_]] := and[member[x,V],not[member[x,image[Q,OMEGA]]]] (* derived 2005 November 4 in CARD-SU.NB *) member[card[x_],card[x_]] := False (* derived 2005 November 5 in FIN-FU.NB *) member[card[domain[fin[funpart[x_]]]],card[range[fin[funpart[x_]]]]] := False (* derived 2007 April 29 in DO-CARD.NB *) member[card[x_],image[Q,OMEGA]] := member[x,image[Q,OMEGA]] (* derived 2005 January 7 in CARD-FIN.NB *) member[card[x_],omega] := member[x,FINITE] (* added 2002 May 28 based on CARD-OM.NB *) member[card[x_],OMEGA] := member[x,image[Q,OMEGA]] (* derived 2008 June 3 in CARD-ORD.NB *) member[card[ord[x_]],image[Q,card[ord[x_]]]] := False (* derived 2005 November 4 in CARD-SU.NB *) member[card[x_],U[card[x_]]] := False (* added 2001 December 1 based on CARD-X.NB *) member[card[x_],V] := member[x,image[Q,OMEGA]] (* added 2001 June 29 based on MEMBER.NB *) member[CART,x_] := False (* added 2001 November 13 based on 1ST-2ND.NB *) member[x_,cart[y_,z_]] := and[member[first[x],y],member[second[x],z]] (* derived 2006 June 10 in SYMDIF.NB *) member[cart[cart[x_,x_],set[y_]],BINOPS] := or[and[member[x,V],member[y,x]],equal[0,x],not[member[y,V]]] (* derived 2008 December 10 in SS-GPS.NB *) member[cart[cart[set[x_],set[x_]],set[x_]],GROUPS] := member[x,V] (* derived 2008 December 29 in MONOIDS.NB *) member[cart[cart[set[x_],set[x_]],set[x_]],MONOIDS] := member[x,V] (* derived 2008 December 10 in SS-GPS.NB *) member[cart[cart[set[x_],set[x_]],set[x_]],QUASIGPS] := True (* derived 2008 August 16 in SGPS-SS.NB *) member[cart[cart[set[x_],set[x_]],set[x_]],SEMIGPS] := True (* derived 2007 April 21 in CL-EG.NB *) member[cart[x_,y_],CL] := and[equal[x,y],member[x,range[SINGLETON]]] (* derived 2004 December 6 in FIN-CP.NB *) member[cart[x_,y_],FINITE] := or[and[member[x,FINITE],member[y,FINITE]],equal[0,x],equal[0,y]] (* derived 2006 July 18 in BINHOM-2.NB *) member[cart[omega,set[0]],binhom[NATADD,NATADD]] := True (* derived 2006 July 23 in BINHOM-4.NB *) member[cart[omega,set[0]],binhom[NATMUL,NATMUL]] := True (* derived 2006 November 26 in BH-IDEMP.NB *) member[cart[omega,set[id[omega]]],binhom[NATADD,INTADD]] := True (* derived 2006 July 18 in BINHOM-2.NB *) member[cart[omega,set[set[0]]],binhom[NATADD,NATMUL]] := True (* derived 2006 July 18 in BINHOM-2.NB *) member[cart[omega,set[set[0]]],binhom[NATMUL,NATMUL]] := True (* derived 2004 August 9 in RS-2.NB *) member[cart[x_,y_],range[SINGLETON]] := and[member[x,range[SINGLETON]],member[y,range[SINGLETON]]] (* derived 2006 March 30 in REG-CART.NB *) member[cart[reg[x_],reg[y_]],REGULAR] := True (* derived 2007 December 17 in DESC-REG.NB *) member[cart[x_,x_],REGULAR] := member[x,REGULAR] (* derived 2004 June 28 in X1773-1800.NB *) member[cart[REGULAR,REGULAR],x_] := False (* derived 2006 June 7 in CONST.NB *) member[cart[x_,set[y_]],CONST] := or[member[x,V],not[member[y,V]]] (* derived 2005 July 22 in CARD-MUL.NB *) member[cart[x_,set[y_]],image[Q,OMEGA]] := or[member[x,image[Q,OMEGA]],not[member[y,V]]] (* derived 2006 November 4 in CONSTMAP.NB *) member[cart[u_,set[v_]],map[x_,y_]] := or[and[equal[0,u],equal[0,x]], and[equal[0,x],not[member[v,V]]],and[equal[u,x],member[u,V],member[v,y]]] (* derived 2005 October 6 in CL.NB *) member[cart[set[x_],set[x_]],CL] := member[x,V] (* derived 2008 September 28 in PERMS.NB *) member[cart[set[set[set[0]]],set[set[0]]],PERMS] := False (* restored 2002 January 6 based on CART-SG.NB *) member[cart[x_,y_],V] := or[and[member[x,V],member[y,V]],equal[0,x],equal[0,y]] (* derived 2005 June 28 in X1819.NB *) member[cart[V,V],x_] := False (* derived 2006 July 23 in BINHOM-4.NB *) member[cart[Z,set[id[omega]]],binhom[INTADD,INTADD]] := True (* derived 2005 December 22 in SETHOOD.NB *) member[CATOFUNS,x_] := False (* derived 2005 December 22 in SETHOOD.NB *) member[CATORELN,x_] := False (* added 2007 May 6 in CHN-FU.NB *) member[x_,CHAINS] := and[equal[chains[first[x]],second[x]],member[first[x],V]] (* derived 2007 May 6 in CHN-FU.NB *) member[CHAINS,x_] := False (* added 2007 May 5 in REPLACE.NB *) member[x_,chains[y_]] := and[member[x,V],subclass[cart[x,x],union[y,inverse[y]]]] (* derived 2008 January 2 in FINCHR-1.NB *) member[chains[x_],FINCHAR] := member[fix[x],V] (* derived 2007 May 7 in FINITE.NB *) member[chains[x_],FINITE] := member[fix[x],FINITE] (* derived 2007 December 17 in DESC-REG.NB *) member[chains[x_],REGULAR] := member[fix[x],REGULAR] (* derived 2007 July 6 in SETPART.NB *) member[chains[setpart[x_]],range[CLIQUES]] := True (* derived 2007 May 7 in APCHAINS.NB *) member[chains[x_],V] := member[fix[x],V] (* derived 2006 August 22 in CHAR.NB *) member[w_,CHAR[x_]] := and[member[first[w],V],subclass[first[w],x], equal[second[w],union[cart[first[w],set[set[0]]],cart[dif[x,first[w]],set[0]]]]] (* derived 2008 November 5 in CHAR-FIN.NB *) member[CHAR[x_],FINITE] := or[member[x,FINITE],not[member[x,V]]] (* derived 2006 August 22 in CHAR.NB *) member[CHAR[x_],map[P[x_],map[x_,succ[set[0]]]]] := member[x,V] (* derived 2006 August 22 in CHAR.NB *) member[CHAR[x_],V] := True (* derived 2005 December 22 in SETHOOD.NB *) member[CL,x_] := False (* derived 2007 May 6 in CLIQUES.NB *) member[x_,CLIQUES] := and[equal[cliques[first[x]],second[x]],member[first[x],V]] (* added 2001 June 29 based on MEMBER.NB *) member[CLIQUES,x_] := False (* introduced 1996 July 1 *) member[w_,cliques[z_]] := and[member[w,V],subclass[cart[w,w],z]] (* derived 2008 January 2 in FINCHR-1.NB *) member[cliques[x_],FINCHAR] := member[fix[x],V] (* derived 2006 October 20 in CLIQ-FIN.NB *) member[cliques[x_],FINITE] := member[fix[x],FINITE] (* derived 2006 March 21 in MEMB-REG.NB *) member[cliques[x_],REGULAR] := member[fix[x],REGULAR] (* derived 2007 June 26 in FIX-HULL.NB *) member[cliques[setpart[x_]],range[CLIQUES]] := True (* added 2002 May 2 based on CLIQUES.NB *) member[cliques[x_],V] := member[fix[x],V] (* definition of clock[x] introduced 2006 July 13 in CLOCK.NB *) member[x_,clock[y_]] := and[equal[natmod[succ[first[x]],y],second[x]],member[first[x],y]] (* derived 2006 July 13 in CLOCK.NB *) member[clock[x_],FINITE] := True (* derived 2006 July 13 in CLOCK.NB *) member[clock[x_],map[nat[x_],nat[x_]]] := True (* derived 2006 July 13 in CLOCK.NB *) member[clock[succ[nat[x_]]],map[succ[nat[x_]],succ[nat[x_]]]] := True (* derived 2006 July 13 in CLOCK.NB *) member[clock[x_],UNOPS] := True (* derived 2006 July 13 in CLOCK.NB *) member[clock[x_],V] := True (* derived 2005 December 22 in SETHOOD.NB *) member[COARSER,x_] := False (* derived 2008 December 25 in COD-DOM.NB *) member[w_,cod[x_]] := and[member[w,inverse[domain[x]]],member[second[w],ids[x]]] (* derived 2004 December 21 in COMUTANT.NB *) member[w_,commutant[x_]] := and[equal[composite[w,x],composite[x,w]],member[w,V]] (* derived 2006 January 8 in SETHOOD.NB *) member[commutant[x_],y_] := False (* derived 2006 September 19 in COMMTIVE.NB *) member[x_,COMMUTATIVE] := and[equal[x,composite[x,SWAP]],member[x,V]] (* derived 2006 October 20 in PROPER.NB *) member[COMMUTATIVE,x_] := False (* added 2001 November 18 based on CO-IDX.NB *) member[x_,COMMUTE] := and[member[first[x],V], equal[composite[first[x],second[x]],composite[second[x],first[x]]]] (* added 2001 June 29 based on MEMBER.NB *) member[COMMUTE,x_] := False (* derived 2004 October 9 in CMPCT-V.NB *) member[COMPACT,x_] := False (* Axioms AX-C-1 and AX-C-2 in AX-B *) member[u_,complement[x_]] := and[member[u,V],not[member[u,x]]] (* added 2001 March 17 based on H-FULL.NB *) member[complement[A[x_]],V] := equal[0,x] (* Theorem SP-CP-C2 in SP3 proved 1999 February 28 *) member[complement[cart[x_,y_]],z_] := False (* derived 2004 October 9 in CMPCT-V.NB *) member[complement[COMPACT],x_] := False member[complement[composite[x_,y_]],z_] := False member[complement[cross[x_,y_]],z_] := False member[complement[E],x_] := False (* derived 2004 June 21 in X18--.NB *) member[complement[DESCENDING],x_] := False (* Theorem FINC-MEM in FINITE proved 2000 March 14 *) member[complement[FINITE],x_] := False (* Theorem FULC-MEM in FUL2 proved 1999 March 27 *) member[complement[FULL],x_] := False (* derived 2004 September 18 in SSIM-PRS.NB *) member[complement[image[PAIRSET,Di]],x_] := False (* added 2002 November 30 based on Z-PLUS.NB *) member[complement[image[V,x_]],y_] := and[member[0,y],not[equal[0,x]]] member[complement[inverse[x_]],y_] := False (* Theorem ON-C-SP in ON1 proved 1999 March 2 *) member[complement[OMEGA],x_] := False member[complement[P[x_]],y_] := and[equal[V,x],member[0,y]] (* Theorem POW-RA-C in POW5 proved 1999 March 2 *) member[complement[range[POWER]],x_] := False (* derived 2004 September 18 in SSIM-PRS.NB *) member[complement[range[SINGLETON]],x_] := False (* derived 2004 December 30 in REPLACE.NB *) member[complement[REGULAR],V] := AxReg member[complement[S],x_] := False (* derived 2004 November 17 in AC-SEL-C.NB *) member[complement[SELECT],V] := axch (* added 2001 November 18 based on BIN-FNS.NB *) member[x_,COMPOSE] := and[member[first[first[x]],V],equal[composite[first[first[x]],second[first[x]]],second[x]]] (* added 2001 June 29 based on MEMBER.NB *) member[COMPOSE,x_] := False (* derived 2008 December 3 in CURRY-BO.NB *) member[composite[binop[x_],LEFT[y_]],map[fix[domain[binop[x_]]],fix[domain[binop[x_]]]]] := or[equal[0,binop[x]],member[y,fix[domain[binop[x]]]]] (* derived 2008 October 18 in BINOP-LR.NB *) member[composite[binop[x_],LEFT[y_]],UNOPS] := True (* derived 2008 December 3 in CURRY-BO.NB *) member[composite[binop[x_],RIGHT[y_]],map[fix[domain[binop[x_]]],fix[domain[binop[x_]]]]] := or[equal[0,binop[x]],member[y,fix[domain[binop[x]]]]] (* derived 2008 October 18 in BINOP-LR.NB *) member[composite[binop[x_],RIGHT[y_]],UNOPS] := True (* derived 2006 June 10 in BINOPS.NB *) member[composite[CAP,id[cart[P[x_],P[x_]]]],BINOPS] := member[x,V] (* derived 2006 July 1 in BIN-MAP.NB *) member[composite[CAP,id[cart[P[x_],P[x_]]]],map[cart[P[x_],P[x_]],P[x_]]] := member[x,V] (* derived 2006 July 8 in SEMIGPS.NB *) member[composite[CAP,id[cart[P[x_],P[x_]]]],SEMIGPS] := member[x,V] (* derived 2009 January 2 in UNOP-MON.NB *) member[composite[COMPOSE,id[cart[bij[x_,x_],bij[x_,x_]]]],MONOIDS] := member[x,V] (* derived 2008 October 2 in BIJ-MOND.NB *) member[composite[COMPOSE,id[cart[bij[x_,x_],bij[x_,x_]]]],SEMIGPS] := True (* derived 2006 July 13 in SGP-CPS.NB *) member[composite[COMPOSE,id[cart[map[x_,x_],map[x_,x_]]]],BINOPS] := True (* derived 2006 July 1 in BIN-MAP.NB *) member[composite[COMPOSE,id[cart[map[x_,x_],map[x_,x_]]]], map[cart[map[x_,x_],map[x_,x_]],map[x_,x_]]] := True (* derived 2009 January 2 in UNOP-MON.NB *) member[composite[COMPOSE,id[cart[map[x_,x_],map[x_,x_]]]],MONOIDS] := member[x,V] (* derived 2006 July 13 in SGP-CPS.NB *) member[composite[COMPOSE,id[cart[map[x_,x_],map[x_,x_]]]],SEMIGPS] := True (* derived 2008 October 24 in ASS-CPS.NB *) member[composite[COMPOSE,id[cart[P[cart[x_,y_]],P[cart[x_,y_]]]]],BINOPS] := or[and[member[x,V],member[y,V]],equal[0,x],equal[0,y]] (* derived 2009 January 2 in UNOP-MON.NB *) member[composite[COMPOSE,id[cart[P[cart[x_,x_]],P[cart[x_,x_]]]]],MONOIDS] := member[x,V] (* derived 2008 October 24 in ASS-CPS.NB *) member[composite[COMPOSE,id[cart[P[cart[x_,y_]],P[cart[x_,y_]]]]],SEMIGPS] := or[and[member[x,V],member[y,V]],equal[0,x],equal[0,y]] (* derived 2008 December 28 in GP-DIR.NB *) member[composite[cross[binop[x_],binop[y_]],TWIST],BINOPS] := True (* derived 2006 September 3 in BO-POWER.NB *) member[composite[cross[NATADD,NATADD],TWIST],BINOPS] := True (* derived 2006 September 3 in BO-POWER.NB *) member[composite[cross[NATADD,NATADD],TWIST],SEMIGPS] := True (* derived 2008 December 28 in GP-DIR.NB *) member[composite[cross[quasigp[x_],quasigp[y_]],TWIST],QUASIGPS] := True (* derived 2008 December 28 in GP-DIR.NB *) member[composite[cross[semigp[x_],semigp[y_]],TWIST],SEMIGPS] := True (* derived 2006 June 10 in BINOPS.NB *) member[composite[DIF,id[cart[P[x_],P[x_]]]],BINOPS] := member[x,V] (* derived 2006 July 1 in BIN-MAP.NB *) member[composite[DIF,id[cart[P[x_],P[x_]]]],map[cart[P[x_],P[x_]],P[x_]]] := member[x,V] (* added 2002 January 10 based on MORE-PRS.NB *) member[x_,composite[y_,DUP]] := and[member[first[x],V],member[pair[pair[first[x],first[x]],second[x]],y]] member[composite[E,x_],V] := equal[0,domain[x]] (* derived 2006 December 25 in INTMUL-2.NB *) member[composite[eval[x_],id[binhom[INTADD,INTADD]]], binhom[composite[IMAGE[cross[inverse[DUP],INTADD]],CROSS, id[cart[binhom[INTADD,INTADD],binhom[INTADD,INTADD]]]],INTADD]] := member[x,Z] (* derived 2006 December 25 in INTMUL-2.NB *) member[composite[eval[x_],id[binhom[INTADD,INTADD]]],map[binhom[INTADD,INTADD],Z]] := member[x,Z] (* added 2002 January 10 based on MORE-PRS.NB *) member[x_,composite[y_,FIRST]] := and[member[first[first[x]],V],member[pair[first[first[x]],second[x]],y]] (* derived 2008 October 28 in ASSOCTIV.NB *) member[composite[FIRST,id[cart[x_,x_]]],BINOPS] := member[x,V] (* derived 2008 October 28 in ASSOCTIV.NB *) member[composite[FIRST,id[cart[x_,x_]]],map[cart[x_,x_],x_]] := member[x,V] (* derived 2009 January 15 in FIRST.NB *) member[composite[FIRST,id[cart[x_,x_]]],MONOIDS] := member[x,range[SINGLETON]] (* derived 2008 October 28 in ASSOCTIV.NB *) member[composite[FIRST,id[cart[x_,x_]]],SEMIGPS] := member[x,V] (* derived 2004 November 19 in SETHOOD.NB *) member[composite[funpart[x_],setpart[y_]],V] := True (* derived 2004 March 29 based on HULL.NB *) member[x_,composite[y_,HULL[z_]]] := and[member[first[x],image[inverse[S],z]], member[pair[hull[z,first[x]],second[x]],y]] (* derived 2004 June 11 in x713-x744-x793-x801.NB *) member[x_,composite[Id,y_]] := and[member[x,y],member[first[x],V]] (* derived 2004 June 11 in x713-x744-x793-x801.NB *) member[x_,composite[y_,id[z_]]] := and[member[x,y],member[first[x],z]] (* derived 2004 June 11 in x713-x744-x793-x801.NB *) member[x_,composite[id[y_],z_]] := and[member[x,z],member[second[x],y]] (* derived 2005 October 19 in FIN-RS.NB *) member[composite[id[x_],E],FINITE] := and[member[x,FINITE],subclass[x,FINITE]] (* derived 2006 March 1 in ACY-FIN.NB *) member[composite[id[fin[x_]],y_,id[fin[z_]]],FINITE] := True (* derived 2005 October 16 in FIN-CO.NB *) member[composite[Id,x_],FINITE] := and[member[domain[x],FINITE],member[range[x],FINITE]] (* derived 2005 October 19 in TO-CL-WO.NB *) member[composite[id[x_],inverse[y_],id[z_]],CL] := member[composite[id[z],y,id[x]],CL] (* derived 2005 October 19 in FIN-RS.NB *) member[composite[id[x_],inverse[S],id[x_]],FINITE] := member[x,FINITE] (* derived 2006 October 14 in SETHOOD.NB *) member[composite[x_,id[y_],inverse[x_]],V] := member[image[x,y],V] (* derived 2005 December 28 in CL-NAT.NB *) member[composite[id[nat[x_]],S,id[nat[x_]]],CL] := not[equal[0,nat[x]]] (* derived 2007 September 18 in UCH-WO.NB *) member[composite[id[omega],inverse[S],id[omega]],Uchains[WO]] := True (* derived 2005 October 19 in ORD-WRAP.NB *) member[composite[id[omega],S,id[omega]],CL] := False (* derived 2007 September 25 in UCH-CL.NB *) member[composite[id[omega],S,id[omega]],Uchains[CL]] := True (* added 2002 November 30 based on Z-PLUS.NB *) member[composite[id[omega],SUCC],range[PLUS]] := True (* added 2002 October 6 based on OMEGA-1.NB *) member[composite[id[omega],SUCC],V] := True (* added 2002 November 16 based on INTEGER.NB *) member[composite[id[omega],SUCC],Z] := True (* derived 2005 October 19 in ORD-WRAP.NB *) member[composite[id[ord[x_]],S,id[ord[x_]]],CL] := member[U[ord[x]],ord[x]] (* derived 2008 October 22 in WORDS.NB *) member[composite[id[P[cart[omega,x_]]],JOIN],BINOPS] := member[x,V] (* derived 2008 October 22 in WORDS.NB *) member[composite[id[P[cart[omega,x_]]],JOIN],SEMIGPS] := member[x,V] (* derived 2006 June 10 in BINOPS.NB *) member[composite[id[P[x_]],CUP],BINOPS] := member[x,V] (* derived 2006 July 1 in BIN-MAP.NB *) member[composite[id[P[x_]],CUP],map[cart[P[x_],P[x_]],P[x_]]] := member[x,V] (* derived 2006 July 8 in SEMIGPS.NB *) member[composite[id[P[x_]],CUP],SEMIGPS] := member[x,V] (* derived 2005 October 6 in CL.NB *) member[composite[id[P[x_]],S],CL] := member[x,V] (* derived 2008 August 18 in CL-S.NB *) member[composite[id[P[x_]],S,id[image[S,set[y_]]]],CL] := and[member[x,V],subclass[y,x]] (* derived 2008 August 19 in RS-S-CL.NB *) member[composite[id[x_],S],CL] := and[equal[x,P[U[x]]],member[x,V]] (* derived 2007 June 19 in FIN-S.NB *) member[composite[id[x_],S],FINITE] := and[member[x,FINITE],subclass[x,FINITE]] (* derived 2005 October 17 in WO-FIN.NB *) member[composite[id[x_],S,id[x_]],FINITE] := member[x,FINITE] (* derived 2005 October 19 in ORD-WRAP.NB *) member[composite[id[succ[omega]],S,id[succ[omega]]],CL] := True (* derived 2005 October 19 in ORD-WRAP.NB *) member[composite[id[succ[ord[x_]]],S,id[succ[ord[x_]]]],CL] := True (* derived 2005 December 28 in IMIN-DUP.NB *) member[composite[id[succ[set[0]]],S],CL] := True (* derived 2005 December 22 in UCL-CL.NB *) member[composite[id[top[x_]],S,id[top[x_]]],CL] := True (* derived 2005 December 22 in UCL-CL.NB *) member[composite[id[Uclosure[x_]],S,id[Uclosure[x_]]],CL] := member[x,V] member[composite[Id,x_],V] := and[member[domain[x],V],member[range[x],V]] (* added 2003 May 14 based on CO-V.NB *) member[composite[x_,id[y_]],V] := and[member[image[x,y],V],member[intersection[y,domain[x]],V]] (* added 2003 May 14 based on CO-V.NB *) member[composite[id[x_],y_],V] := and[member[image[inverse[y],x],V],member[intersection[x,range[y]],V]] (* derived 2006 August 1 in ZBCLHULL.NB *) member[composite[id[Z],INVERSE],binhom[INTADD,INTADD]] := True (* derived 2006 August 1 in ZBCLHULL.NB *) member[composite[id[Z],INVERSE],map[Z,Z]] := True (* derived 2006 August 6 in PTWISE.NB *) member[composite[IMAGE[cross[inverse[DUP],x_]],CROSS],y_] := False (* derived 2006 December 23 in ZTIMES-4.NB *) member[composite[IMAGE[cross[inverse[DUP],INTADD]],CROSS, id[cart[binhom[INTADD,INTADD],binhom[INTADD,INTADD]]]],BINOPS] := True (* derived 2006 September 3 in BO-POWER.NB *) member[composite[IMAGE[cross[NATADD,NATADD]],CROSS,id[cart[P[cart[omega,omega]],P[cart[omega,omega]]]]],BINOPS] := True (* derived 2006 September 3 in BO-POWER.NB *) member[composite[IMAGE[cross[NATADD,NATADD]],CROSS,id[cart[P[cart[omega,omega]],P[cart[omega,omega]]]]],SEMIGPS] := True (* derived 2006 June 20 in UO-SP.NB *) member[composite[image[inverse[INTADD],set[x_]],INVERSE],UNOPS] := True (* derived 2006 September 3 in BO-POWER.NB *) member[composite[IMAGE[NATADD],CART,id[cart[P[omega],P[omega]]]],BINOPS] := True (* derived 2006 September 3 in BO-POWER.NB *) member[composite[IMAGE[NATADD],CART,id[cart[P[omega],P[omega]]]],SEMIGPS] := True (* derived 2006 June 10 in BINOPS.NB *) member[composite[INTADD,cross[Id,INVERSE]],BINOPS] := True (* derived 2006 July 1 in BIN-MAP.NB *) member[composite[INTADD,cross[Id,INVERSE]],map[cart[Z,Z],Z]] := True (* derived 2006 June 10 in BINOPS.NB *) member[composite[INTADD,cross[INVERSE,Id]],BINOPS] := True (* derived 2006 July 1 in BIN-MAP.NB *) member[composite[INTADD,cross[INVERSE,Id]],map[cart[Z,Z],Z]] := True (* derived 2005 August 5 in BINHOM-5.NB *) member[composite[INTADD,DUP],binhom[INTADD,INTADD]] := True (* derived 2005 August 5 in BINHOM-5.NB *) member[composite[INTADD,DUP],map[Z,Z]] := True (* derived 2004 December 6 in FIN-CP.NB *) member[composite[inverse[E],id[x_]],FINITE] := and[member[x,FINITE],subclass[x,FINITE]] (* derived 2007 September 19 in UCH-WF.NB *) member[composite[inverse[E],id[omega]],Uchains[WF]] := True (* added 2002 January 10 based on MORE-PRS.NB *) member[x_,composite[inverse[FIRST],y_]] := and[member[first[x],V], member[first[second[x]],V],member[pair[first[x],first[second[x]]],y]] (* derived 2004 March 29 based on HULL.NB *) member[x_,composite[inverse[HULL[y_]],z_]] := and[member[pair[first[x],hull[y,second[x]]],z],member[second[x],image[inverse[S],y]]] (* derived 2006 October 14 in SETHOOD.NB *) member[composite[inverse[x_],id[y_],x_],V] := member[image[inverse[x],y],V] (* derived 2006 September 17 in IDS-INCL.NB *) member[x_,composite[inverse[IMAGE[DUP]],S]] := subclass[first[x],id[second[x]]] (* derived 2006 December 13 in INV-MXML.NB *) member[composite[INVERSE,MIXMUL,LEFT[x_]],binhom[NATADD,INTADD]] := member[x,Z] (* derived 2006 December 3 in MIXDIV.NB *) member[composite[INVERSE,PLUS],binhom[NATADD,INTADD]] := True (* added 2003 August 8 based on REPLACE.NB *) member[composite[inverse[plus[x_]],plus[y_]],V] := True (* added 2003 August 8 based on REPLACE.NB *) member[composite[inverse[plus[x_]],plus[y_]],Z] := and[member[x,omega],member[y,omega]] (* derived 2006 July 27 in IND-Z.NB *) member[composite[inverse[plus[x_]],SUCC],Z] := member[x,omega] (* derived 2006 December 13 in BHPOSNEG.NB *) member[composite[INVERSE,PLUS,times[t_]],binhom[NATADD,INTADD]] := member[t,omega] (* derived 2008 June 27 in SETHOOD.NB *) member[composite[inverse[x_],S,x_],V] := member[domain[x],V] (* derived 2007 April 21 in CL-EG.NB *) member[composite[inverse[S],id[P[x_]]],CL] := member[x,V] (* derived 2005 December 28 in IMIN-DUP.NB *) member[composite[inverse[S],id[succ[set[0]]]],CL] := True member[composite[inverse[S],x_],V] := and[member[domain[x],V],member[range[x],V]] (* added 2002 January 10 based on MORE-PRS.NB *) member[x_,composite[inverse[SECOND],y_]] := and[member[first[x],V], member[first[second[x]],V],member[pair[first[x],second[second[x]]],y]] (* derived 2005 January 16 in FUN-RFX.NB *) member[composite[inverse[setpart[x_]],y_,setpart[x_]],V] := True (* derived 2006 December 16 in BHNATINT.NB *) member[composite[INVERSE,setpart[x_]],V] := True (* derived 2008 September 3 in LT-RT-V.NB *) member[composite[x_,LEFT[y_]],V] := True /; member[x,V] (* derived 2006 December 11 in MIXDISTR.NB *) member[composite[MIXMUL,LEFT[x_]],binhom[NATADD,INTADD]] := member[x,Z] (* derived 2006 December 14 in MIXMUL-3.NB *) member[composite[MIXMUL,LEFT[x_],times[y_]],binhom[NATADD,INTADD]] := and[member[x,Z],member[y,omega]] (* derived 2006 December 9 in SETHOOD.NB *) member[composite[MIXMUL,LEFT[x_]],V] := True (* derived 2006 December 9 in SETHOOD.NB *) member[composite[MIXMUL,RIGHT[x_]],V] := True (* derived 2006 July 8 in SEMIGPS.NB *) member[composite[modulo[x_],NATADD],BINOPS] := True (* derived 2006 July 11 in SGP-MOD.NB *) member[composite[modulo[x_],NATADD,id[cart[x_,x_]]],BINOPS] := True (* derived 2006 July 11 in SGP-MOD.NB *) member[composite[modulo[x_],NATADD,id[cart[x_,x_]]],map[cart[nat[x_],nat[x_]],nat[x_]]] := True (* derived 2006 July 11 in SGP-MOD.NB *) member[composite[modulo[x_],NATADD,id[cart[x_,x_]]],SEMIGPS] := True (* derived 2006 July 8 in SEMIGPS.NB *) member[composite[modulo[x_],NATADD],SEMIGPS] := True (* derived 2006 July 8 in SEMIGPS.NB *) member[composite[modulo[x_],NATADD],V] := True (* derived 2006 July 8 in SEMIGPS.NB *) member[composite[modulo[x_],NATMUL],BINOPS] := True (* derived 2006 July 11 in SGP-MOD.NB *) member[composite[modulo[x_],NATMUL,id[cart[x_,x_]]],BINOPS] := True (* derived 2006 July 11 in SGP-MOD.NB *) member[composite[modulo[x_],NATMUL,id[cart[x_,x_]]],map[cart[nat[x_],nat[x_]],nat[x_]]] := True (* derived 2006 July 11 in SGP-MOD.NB *) member[composite[modulo[x_],NATMUL,id[cart[x_,x_]]],SEMIGPS] := True (* derived 2006 July 8 in SEMIGPS.NB *) member[composite[modulo[x_],NATMUL],SEMIGPS] := True (* derived 2006 July 8 in SEMIGPS.NB *) member[composite[modulo[x_],NATMUL],V] := True (* derived 2006 July 18 in BINHOM-2.NB *) member[composite[NATADD,DUP],binhom[NATADD,NATADD]] := True (* derived 2006 July 18 in BINHOM-2.NB *) member[composite[NATEXP,LEFT[x_]],binhom[NATADD,NATMUL]] := member[x,omega] (* derived 2006 December 9 in SETHOOD.NB *) member[composite[NATEXP,LEFT[x_]],V] := True (* derived 2006 July 18 in BINHOM-2.NB *) member[composite[NATEXP,RIGHT[x_]],binhom[NATMUL,NATMUL]] := member[x,omega] (* derived 2006 December 9 in SETHOOD.NB *) member[composite[NATEXP,RIGHT[x_]],V] := True (* derived 2006 July 18 in BINHOM-2.NB *) member[composite[NATMUL,DUP],binhom[NATMUL,NATMUL]] := True (* derived 2006 September 4 in PLUS-CO.NB *) member[composite[plus[x_],inverse[plus[y_]]],Z] := or[and[equal[0,x],member[y,omega]],and[equal[0,y],member[x,omega]]] (* derived 2006 September 4 in PLUS-CO.NB *) member[composite[plus[x_],inverse[plus[y_]]],V] := True (* derived 2006 December 13 in BHPOSNEG.NB *) member[composite[PLUS,times[x_]],binhom[NATADD,INTADD]] := member[x,omega] (* added 2002 February 3 based on RCF.NB *) member[composite[x_,RC[y_]],V] := or[member[image[x,P[y]],V],not[member[y,V]]] (* added 2002 February 4 based on RCF-NORM.NB *) member[x_,composite[y_,RCF]] := and[member[first[x],V],member[pair[RC[first[x]],second[x]],y]] (* added 2001 December 21 based on Q-RT-2.NB *) member[composite[RIGHT[x_],id[y_]],V] := or[member[y,V],not[member[x,V]]] (* derived 2008 September 3 in LT-RT-V.NB *) member[composite[x_,RIGHT[y_]],V] := True /; member[x,V] (* derived 2006 September 13 in CATORELN.NB *) member[x_,composite[S,IMAGE[SECOND]]] := and[member[first[x],V], subclass[range[first[x]],second[x]]] (* derived 2008 June 27 in SETHOOD.NB *) member[composite[x_,S,inverse[x_]],V] := member[range[x],V] member[composite[S,x_],V] := equal[0,domain[x]] member[composite[x_,S],V] := and[member[domain[x],V],member[range[x],V]] (* added 2002 January 10 based on MORE-PRS.NB *) member[x_,composite[y_,SECOND]] := and[member[first[first[x]],V], member[pair[second[first[x]],second[x]],y]] (* derived 2009 January 15 in FIRST.NB *) member[composite[SECOND,id[cart[x_,x_]]],BINOPS] := member[x,V] (* derived 2009 January 15 in FIRST.NB *) member[composite[SECOND,id[cart[x_,x_]]],MONOIDS] := member[x,range[SINGLETON]] (* derived 2009 January 15 in FIRST.NB *) member[composite[SECOND,id[cart[x_,x_]]],SEMIGPS] := member[x,V] (* derived 2004 November 19 in SETHOOD.NB *) member[composite[setpart[x_],inverse[funpart[y_]]],V] := True (* derived 2006 August 1 in BCL-ZADD.NB *) member[composite[setpart[x_],inverse[thinpart[y_]]],V] := True (* derived 2004 December 26 in SETPART.NB *) member[composite[setpart[x_],oopart[y_]],V] := True (* derived 2004 November 19 in SETHOOD.NB *) member[composite[setpart[x_],setpart[y_]],V] := True (* derived 2006 July 27 in IND-Z.NB *) member[composite[SUCC,plus[x_]],Z] := member[x,omega] (* added 2002 November 3 based on FLIP.NB *) member[x_,composite[y_,SWAP]] := and[member[first[first[x]],V], member[pair[pair[second[first[x]],first[first[x]]],second[x]],y]] (* added 2002 November 3 based on FLIP.NB *) member[x_,composite[SWAP,y_]] := and[member[first[second[x]],V], member[pair[first[x],pair[second[second[x]],first[second[x]]]],y]] (* derived 2008 October 2 in BIN-FLIP.NB *) member[composite[x_,SWAP],BINOPS] := member[composite[x,id[cart[V,V]]],BINOPS] (* derived 2008 October 7 in QUASIGPS.NB *) member[composite[x_,SWAP],QUASIGPS] := member[composite[x,id[cart[V,V]]],QUASIGPS] (* derived 2008 October 19 in SEMIGP.NB *) member[composite[x_,SWAP],SEMIGPS] := member[composite[x,id[cart[V,V]]],SEMIGPS] (* derived 2004 December 26 in SETPART.NB *) member[composite[setpart[x_],SWAP],V] := True (* derived 2006 June 10 in SYMDIF.NB *) member[composite[SYMDIF,id[cart[P[x_],P[x_]]]],BINOPS] := member[x,V] (* derived 2008 October 18 in GROUPS.NB *) member[composite[SYMDIF,id[cart[P[x_],P[x_]]]],GROUPS] := member[x,V] (* derived 2006 July 1 in BIN-MAP.NB *) member[composite[SYMDIF,id[cart[P[x_],P[x_]]]],map[cart[P[x_],P[x_]],P[x_]]] := member[x,V] (* derived 2008 October 7 in QUASIGPS.NB *) member[composite[SYMDIF,id[cart[P[x_],P[x_]]]],QUASIGPS] := member[x,V] (* derived 2006 August 29 in SYMDIF.NB *) member[composite[SYMDIF,id[cart[P[x_],P[x_]]]],SEMIGPS] := member[x,V] (* derived 2004 November 9 in AC2-AC3.NB *) member[composite[thinpart[x_],setpart[y_]],V] := True (* derived 2004 November 9 in AC2-AC3.NB unsafe because it slows down the rec1 example member[composite[x_,y_],V] := True /; unsafe && cond && thin[x] && member[y,V] *) (* The following general rule is valid, but it significantly slows down the sc6 and rec1 test suite examples. Only special cases of this rule are considered safe. member[composite[x_,y_],V] := and[member[image[x,range[y]],V], member[image[inverse[y],domain[x]],V]] /; unsafe *) (* derived 2004 November 19 in SETHOOD.NB member[composite[x_,y_],V] := True /; unsafe && and[FUNCTION[x],member[y,V]] *) (* derived 2004 November 19 in SETHOOD.NB member[composite[x_,y_],V] := True /; unsafe && and[member[x,V],FUNCTION[inverse[y]]] *) (* derived 2004 November 19 in SETHOOD.NB member[composite[x_,y_],V] := True /; unsafe && and[member[x,V],member[y,V]] *) (* added 2002 February 3 based on RCF.NB *) member[x_,composite[y_,VERTSECT[z_]]] := and[member[first[x],V],member[image[z,set[first[x]]],V], member[pair[image[z,set[first[x]]],second[x]],y]] (* derived 2006 August 6 in PROPER.NB *) member[CONST,x_] := False (* derived 2004 April 17 in REPLACE.NB *) member[x_,CORE[y_]] := and[equal[core[y,first[x]],second[x]],member[first[x],V]] (* added 2001 June 29 based on MEMBER.NB *) member[CORE[x_],y_] := False (* derived 2005 December 22 in UCL-CL.NB *) member[core[y_,x_],image[inverse[S],intersection[P[x_],Uclosure[y_]]]] := member[intersection[y,P[x]],V] (* derived 2005 October 27 in TOP-THMS.NB *) member[core[top[x_],y_],top[x_]] := True (* added 2004 April 17 based on CORE.NB *) member[core[x_,y_],V] := member[intersection[x,P[y]],V] (* added 2001 November 18 based on BIN-FNS.NB *) member[x_,CROSS] := and[member[first[first[x]],V], equal[cross[first[first[x]],second[first[x]]],second[x]]] (* added 2001 June 29 based on MEMBER.NB *) member[CROSS,x_] := False (* removed 2001 December 26 based on SETHOOD.NB member[cross[x_,y_],V] := or[and[member[domain[x],V],member[domain[y],V], member[range[x],V],member[range[y],V]],equal[0,domain[x]],equal[0,domain[y]]] *) (* added 2001 June 29 based on MEMBER.NB *) member[CUP,x_] := False (* added 2001 November 17 based on CUP.NB *) member[x_,CUP] := and[member[first[first[x]],V], equal[union[first[first[x]],second[first[x]]],second[x]]] (* derived 2006 December 9 in SETHOOD.NB *) member[CURRY,x_] := False (* added 2001 June 29 based on MEMBER.NB *) member[DEDEKIND,x_] := False (* derived 2004 December 30 in REPLACE.NB *) member[DESCENDING,V] := AxReg (* added 2001 November 14 based on DI.NB *) member[x_,Di] := and[member[first[x],V],not[equal[first[x],second[x]]]] (* Theorem SP-DI in SP4 *) member[Di,x_] := False (* added 2001 November 18 based on BIN-FNS.NB *) member[x_,DIF] := and[member[first[first[x]],V], equal[intersection[complement[second[first[x]]],first[first[x]]],second[x]]] (* added 2000 October 4 based on PROPER.NB *) member[DIF,x_] := False (* added 2001 November 17 based on UNWRAP.NB *) member[x_,DISJOINT] := and[member[first[x],V],subclass[first[x],complement[second[x]]]] (* Theorem SP-DJT3 in SP4 proved 1999 March 19 *) member[DISJOINT,x_] := False (* derived 2005 October 6 in CL.NB *) member[DIV,CL] := True (* derived 2005 October 7 based on FIN-PO.NB *) member[DIV,FINITE] := False (* derived 2008 July 27 in PRS-REG.NB *) member[DIV,REGULAR] := True (* added 2002 August 30 based on DIVIDES.NB *) member[DIV,V] := True (* derived 2008 December 25 in COD-DOM.NB *) member[w_,dom[x_]] := and[member[w,domain[x]],member[second[w],ids[x]]] (* derived 2006 October 24 in EVAL.NB *) member[x_,domain[eval[y_]]] := and[member[x,V],member[y,domain[funpart[x]]]] (* derived 2005 November 5 in FIN-RELN.NB *) member[domain[fin[x_]],FINITE] := True (* derived 2005 November 5 in FIN-RELN.NB *) member[domain[fin[x_]],image[Q,OMEGA]] := True (* derived 2006 September 17 in CATR-IDS.NB *) member[domain[first[x_]],V] := member[first[x],V] (* derived 2005 August 5 in IDS-UNIQ.NB *) member[y_,domain[fix[composite[inverse[SECOND],Di,x_]]]] := not[subclass[composite[x,LEFT[y]],Id]] (* derived 2005 January 31 in X4210.NB *) member[domain[funpart[x_]],FINITE] := member[funpart[x],FINITE] (* derived 2005 December 22 in SETHOOD.NB *) member[domain[funpart[x_]],V] := member[funpart[x],V] (* derived 2004 February 19 in REPLACE2.NB *) member[x_,domain[GREATEST[y_]]] := and[member[x,V],not[equal[0,intersection[x,ub[y,x]]]]] (* derived 2008 November 18 in INTEGER.NB *) member[domain[intadd[x_,y_]],V] := and[member[x,Z],member[y,Z]] (* derived 2008 November 18 in INTEGER.NB *) member[domain[intmul[x_,y_]],V] := and[member[x,Z],member[y,Z]] (* derived 2007 May 19 in DO-ITER.NB *) member[domain[iterate[x_,y_]],domain[iterate[x_,y_]]] := False (* derived 2006 May 16 in DO-ITER.NB *) member[domain[iterate[x_,y_]],OMEGA] := True (* added 2002 April 16 based on ITER-0.NB *) member[domain[iterate[x_,y_]],V] := True (* derived 2004 February 19 in REPLACE2.NB *) member[x_,domain[LB[y_]]] := and[member[x,V],not[equal[0,lb[y,x]]]] (* derived 2006 March 21 in MEMB-REG.NB *) member[domain[LB[x_]],REGULAR] := member[range[x],REGULAR] (* derived 2004 August 1 in SETHOOD.NB *) member[domain[LB[x_]],V] := member[range[x],V] (* derived 2004 February 19 in REPLACE2.NB *) member[x_,domain[LEAST[y_]]] := and[member[x,V],not[equal[0,intersection[x,lb[y,x]]]]] (* derived 2008 October 20 in LIST.NB *) member[domain[list[x_]],omega] := True (* derived 2005 August 8 in PIGEON.NB *) member[domain[oopart[x_]],FINITE] := member[oopart[x],FINITE] (* derived 2005 December 22 in SETHOOD.NB *) member[domain[oopart[x_]],V] := member[oopart[x],V] (* derived 2007 May 15 in OL-U-RA.NB *) member[domain[ordlist[x_]],domain[ordlist[x_]]] := False (* derived 2006 March 18 in OL-DO.NB *) member[domain[ordlist[x_]],omega] := member[intersection[OMEGA,x],FINITE] (* derived 2006 March 17 in OL-CARD.NB *) member[domain[ordlist[x_]],OMEGA] := True (* derived 2007 May 19 in OLDO-ORD.NB *) member[domain[ordlist[x_]],U[domain[ordlist[x_]]]] := False (* added 2002 May 21 based on POWER.NB *) member[domain[power[x_]],V] := True (* derived 2006 March 30 in REG-DORA.NB *) member[domain[reg[x_]],REGULAR] := True (* derived 2007 May 6 in CLIQUES.NB *) member[domain[second[x_]],V] := member[first[x],V] (* derived 2004 February 19 in REPLACE2.NB *) member[x_,domain[UB[y_]]] := and[member[x,V],not[equal[0,ub[y,x]]]] (* derived 2006 March 21 in MEMB-REG.NB *) member[domain[UB[x_]],REGULAR] := member[domain[x],REGULAR] (* derived 2004 August 1 in SETHOOD.NB *) member[domain[UB[x_]],V] := member[domain[x],V] (* added 1999 July 14 *) member[x_,domain[VERTSECT[y_]]] := and[member[x,V],member[image[y,set[x]],V]] (* derived 2005 December 22 in SETHOOD.NB *) member[domain[VERTSECT[x_]],V] := member[VERTSECT[x],V] (* derived 2004 May 2 in ZN.NB *) member[domain[VERTSECT[ZN]],x_] := False (* added 2001 December 19 based on SETHOOD2.NB *) member[DORA,x_] := False member[DUP,x_] := False (* added 2001 November 15 based on UNWRAP-1.NB *) member[x_,E] := member[first[x],second[x]] (* Theorem SP-E in SP4 *) member[E,x_] := False (* added 2002 November 3 based on EQUIDIFF.NB *) member[x_,EQUIDIFF] := and[member[first[first[x]],omega],member[first[second[x]],omega], member[second[first[x]],omega],member[second[second[x]],omega], equal[natadd[first[first[x]],second[second[x]]], natadd[first[second[x]],second[first[x]]]]] (* derived 2006 October 20 in INT-FIN.NB *) member[EQUIDIFF,FINITE] := False (* added 2002 November 5 based on EQDF-TRV.NB *) member[EQUIDIFF,V] := True (* derived 2004 May 12 in EQUIV.NB *) member[x_,EQUIV] := and[equal[eqv[first[x]],second[x]],member[first[x],V]] (* derived 2005 December 22 in SETHOOD.NB *) member[EQUIV,x_] := False (* introduced 2004 March 20 in EQV-WRAP.NB *) member[x_,EQV] := and[member[x,V],EQUIVALENCE[x]] (* added 2003 June 4 based on SETHOOD.NB *) member[EQV,x_] := False (* derived 2004 May 12 in EQUIV.NB *) member[eqv[setpart[x_]],V] := True (* derived 2006 October 24 in EVAL.NB *) member[eval[x_],V] := not[member[x,V]] (* derived 2006 August 16 in OL-SU-OM.NB *) member[even,FINITE] := False (* derived 2006 August 17 in CTBL-U.NB *) member[even,image[Q,OMEGA]] := True (* derived 2007 March 6 in EVENODD.NB *) member[even,range[VERTSECT[DIV]]] := True (* derived 2006 August 15 in EVEN-ODD.NB *) member[even,V] := True (* derived 2006 October 20 in NAT-FIN.NB *) member[FACTORIAL,FINITE] := False (* derived 2008 October 31 in MAP.NB *) member[FACTORIAL,map[omega,omega]] := True (* derived 2006 June 20 in UO-SP.NB *) member[FACTORIAL,UNOPS] := True (* derived 2005 April 23 in FACT-S.NB *) member[FACTORIAL,V] := True (* derived 2005 November 2 in FIN.NB *) member[fin[x_],COMPACT] := True (* derived 2005 November 2 in FIN.NB *) member[fin[x_],DEDEKIND] := True (* derived 2005 October 17 in TO-FIN.NB *) member[fin[x_],FINITE] := True (* derived 2005 November 2 in FIN.NB *) member[fin[x_],image[Q,OMEGA]] := True (* derived 2006 March 30 in FIN-REG.NB *) member[fin[reg[x_]],REGULAR] := True (* derived 2005 October 17 in TO-FIN.NB *) member[fin[x_],V] := True (* derived 2008 January 2 in FINCHR-1.NB *) member[FINCHAR,x_] := False (* Theorem FIN-MEM in FINITE proved 2000 March 10 *) member[FINITE,x_] := False (* added 2001 November 17 based on UNWRAP.NB *) member[x_,FIRST] := and[equal[first[first[x]],second[x]],member[first[first[x]],V]] member[FIRST,x_] := False (* replaced 2003 June 17 with a wrapped rule member[x_,fix[y_]] := and[member[x,V],member[pair[x,x],y]] *) (* derived 2008 November 6 in FIX-A.NB *) member[fix[A[x_]],V] := not[equal[0,x]] (* added 2003 June 29 based on FIX-E.NB *) member[x_,fix[ACLOSURE]] := and[equal[x,Aclosure[x]],member[x,V]] (* added 2001 September 30 based on FP-ACL.NB *) member[fix[ACLOSURE],x_] := False (* added 2003 June 25 based on FP-E.NB *) member[x_,fix[BIGCUP]] := and[equal[x,U[x]],member[x,V]] (* derived 2007 July 7 in PROPER.NB *) member[fix[BIGCUP],x_] := False (* added 2003 June 25 based on FP-E.NB *) member[x_,fix[CARD]] := and[equal[x,card[x]],member[x,V]] (* derived 2007 April 24 in LB-UB-V.NB *) member[fix[CARD],range[SINGLETON]] := False (* added 2003 June 15 based on FP-ADJ.NB *) member[x_,fix[composite[ADJOIN[y_],BIGCUP]]] := and[equal[x,union[y,U[x]]],member[x,V]] (* added 2003 June 15 based on FP-ADJ.NB *) member[x_,fix[composite[ADJOIN[y_],IMAGE[z_]]]] := and[equal[x,union[y,image[z,x]]],member[x,V]] (* derived 2007 November 7 in CLQ-C.NB *) member[x_,fix[composite[DISJOINT,IMAGE[y_]]]] := and[equal[0,intersection[x,image[y,x]]],member[x,V],member[image[y,x],V]] (* derived 2008 February 9 in ASYM-TRV.NB *) member[x_,fix[composite[DISJOINT,INVERSE]]] := and[equal[0,fix[composite[x,x]]],member[x,V],subclass[x,cart[V,V]]] (* derived 2008 February 9 in ASYM.NB *) member[fix[composite[DISJOINT,INVERSE]],x_] := False (* derived 2008 November 21 in FIX-1-2.NB *) member[x_,fix[composite[y_,DUP]]] := and[member[x,V],member[pair[pair[x,x],x],y]] (* derived 2008 June 3 in CARD-ORD.NB *) member[x_,fix[composite[E,y_]]] := member[x,image[inverse[y],x]] (* derived 2004 August 1 in SETHOOD.NB *) member[fix[composite[E,BIGCAP]],x_] := False (* derived 2008 March 13 in LEAST.NB *) member[x_,fix[composite[E,BIGCAP]]] := and[member[x,V],member[A[x],x]] (* derived 2007 November 23 in ZORN-MAX.NB *) member[x_,fix[composite[E,complement[composite[inverse[S],MAXIMAL[S]]]]]] := and[member[x,V], not[subclass[x,image[inverse[S],intersection[x,complement[image[inverse[PS],x]]]]]]] (* derived 2004 March 7 in FP-LB-UB.NB *) member[x_,fix[composite[E,y_,LB[z_]]]] := and[member[x,V],not[equal[0,intersection[x,image[y,lb[z,x]]]]]] (* derived 2004 March 7 in FP-LB-UB.NB *) member[x_,fix[composite[E,y_,UB[z_]]]] := and[member[x,V],not[equal[0,intersection[x,image[y,ub[z,x]]]]]] (* added 2003 June 25 based on CART-DUP.NB *) member[x_,fix[composite[IMAGE[y_],CART,DUP]]] := and[equal[x,image[y,cart[x,x]]],member[x,V]] (* derived 2005 July 22 in CARD-MUL.NB *) member[x_,fix[composite[y_,IMAGE[composite[id[z_],inverse[SECOND]]]]]] := and[member[x,V],member[image[inverse[z],x],V],member[pair[composite[id[x],z],x],y]] (* derived 2006 September 17 in IDS-INCL.NB *) member[x_,fix[composite[y_,IMAGE[DUP]]]] := and[member[x,V],member[pair[id[x],x],y]] (* derived 2008 May 22 in IN-Q.NB *) member[x_,fix[composite[y_,IMAGE[SWAP]]]] := and[member[x,V],member[pair[inverse[x],x],y]] (* derived 2007 April 12 in LD-4.NB *) member[x_,fix[composite[IMG,id[inverse[IMAGE[inverse[NATADD]]]],inverse[SECOND]]]] := and[equal[x,image[image[inverse[NATADD],x],x]],member[x,V]] (* derived 2006 February 15 in ACYFUPOW.NB *) member[y_,fix[composite[inverse[x_],cross[Di,Id],x_]]] := and[member[y,V],not[FUNCTION[inverse[image[x,set[y]]]]]] (* derived 2004 June 17 in X21--.NB *) member[x_,fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := member[U[x],x] (* derived 2007 February 10 in COMPOS-2.NB *) member[x_,fix[composite[inverse[E],IMAGE[NATMUL],CART,DUP]]] := member[x,image[NATMUL,cart[x,x]]] (* derived 2007 November 29 in FP-TRV-E.NB *) member[x_,fix[composite[inverse[E],TC]]] := member[x,tc[x]] (* derived 2008 November 21 in FIX-1-2.NB *) member[pair[x_,y_],fix[composite[inverse[FIRST],z_]]] := and[member[x,V],member[y,V],member[pair[pair[x,y],x],z]] (* derived 2008 February 9 in ACY-TRV.NB *) member[x_,fix[composite[inverse[HULL[invar[SWAP]]],S,IMAGE[id[Di]],CART,DUP,CUP,DORA]]] := and[member[x,V],subclass[cart[union[domain[x],range[x]],union[domain[x],range[x]]], union[Id,x,inverse[x]]]] (* derived 2008 February 5 in TOT-RELN.NB *) member[x_,fix[composite[inverse[HULL[SYM]],CART,DUP,CUP,DORA]]] := and[member[x,V], equal[cart[union[domain[x],range[x]],union[domain[x],range[x]]],union[x,inverse[x]]]] (* derived 2008 February 9 in DICHOT.NB *) member[x_,fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]]] := and[equal[cart[fix[x],fix[x]],union[x,inverse[x]]],member[x,V]] (* derived 2008 February 10 in TRICH-I.NB *) member[x_,fix[composite[inverse[HULL[SYM]],IMAGE[id[Di]],CART,DUP,CUP,DORA]]] := and[equal[0,fix[x]],member[x,V],subclass[x,cart[V,V]], subclass[cart[union[domain[x],range[x]],union[domain[x],range[x]]],union[Id,x,inverse[x]]]] (* derived 2008 February 10 in TRICH-I.NB *) member[x_,fix[composite[inverse[HULL[SYM]],S,IMAGE[id[Di]],CART,DUP,CUP,DORA]]] := and[member[x,V],subclass[x,cart[V,V]], subclass[cart[union[domain[x],range[x]],union[domain[x],range[x]]],union[Id,x,inverse[x]]]] (* derived 2006 July 18 in BINHOM-1.NB *) member[w_,fix[composite[inverse[IMAGE[cross[inverse[x_],Id]]],IMAGE[cross[Id,y_]],CROSS,DUP]]] := and[equal[composite[w,x],composite[y,cross[w,w]]],member[w,V]] (* derived 2007 November 15 in ZORN-LEM.NB *) member[x_,fix[composite[inverse[IMAGE[inverse[PS]]],S,UCHAINS]]] := and[member[x,V],subclass[Uchains[x],image[inverse[PS],x]]] (* derived 2007 November 23 in INDUCTIV.NB *) member[x_,fix[composite[inverse[IMAGE[inverse[S]]],S,UCHAINS]]] := and[member[x,V],subclass[Uchains[x],image[inverse[S],x]]] (* derived 2008 January 24 in CARD-ON.NB *) member[x_,fix[composite[inverse[S],CARD]]] := and[member[x,image[Q,OMEGA]],subclass[x,card[x]]] (* derived 2007 September 20 in UCH-IDEM.NB *) member[x_,fix[composite[inverse[S],COMPOSE,DUP]]] := and[member[x,V],subclass[x,composite[x,x]]] (* derived 2007 October 7 in UCL-MONO.NB corrected 2008 February 9 *) member[x_,fix[composite[inverse[S],funpart[y_]]]] := and[member[x,domain[funpart[y]]],subclass[x,APPLY[funpart[y],x]]] (* derived 2006 September 17 in CATR-IDS.NB *) member[x_,fix[composite[y_,inverse[S],IMAGE[FIRST]]]] := member[x,image[y,P[domain[x]]]] (* derived 2008 November 21 in FIX-1-2.NB *) member[pair[x_,y_],fix[composite[inverse[SECOND],z_]]] := and[member[x,V],member[y,V],member[pair[pair[x,y],y],z]] (* derived 2008 July 8 in ZORN-UBD.NB *) member[x_,fix[composite[inverse[UBD],S,CHAINS]]] := and[member[x,V],subclass[chains[x],domain[UB[x]]]] (* derived 2005 October 16 in FIN-CO.NB *) member[fix[eqv[x_]],FINITE] := member[eqv[x],FINITE] (* derived 2005 October 16 in FIN-CO.NB *) member[fix[eqv[x_]],V] := member[eqv[x],V] (* derived 2007 May 7 in FINITE.NB *) member[fix[fin[x_]],FINITE] := True (* derived 2007 May 6 in CLIQUES.NB *) member[fix[first[x_]],V] := member[first[x],V] (* derived 2008 June 20 in FIX-FUNP.NB *) member[t_,fix[funpart[x_]]] := and[equal[image[x,set[t]],set[t]],member[t,V]] (* derived 2004 May 4 in CRHL-FIX.NB *) member[x_,fix[HULL[y_]]] := and[equal[x,hull[y,x]],member[x,V]] (* derived 2006 March 21 in FINITE.NB *) member[fix[HULL[x_]],FINITE] := member[x,FINITE] (* derived 2007 July 11 in CONSTHUL.NB *) member[fix[HULL[x_]],range[SINGLETON]] := member[x,range[SINGLETON]] (* derived 2006 March 21 in MEMB-REG.NB *) member[fix[HULL[x_]],REGULAR] := member[x,REGULAR] (* added 2003 May 10 based on LAMBHULL.NB *) member[fix[HULL[x_]],V] := member[x,V] (* added 2003 June 25 based on FP-E.NB *) member[x_,fix[IMAGE[y_]]] := and[equal[x,image[y,x]],member[x,V]] (* derived 2007 May 27 in COARSER.NB *) member[fix[IMAGE[COARSER]],x_] := False (* derived 2008 July 16 in FPINCART.NB *) member[x_,fix[image[inverse[CART],y_]]] := member[cart[x,x],y] (* derived 2007 May 27 in COARSER.NB *) member[fix[IMAGE[inverse[COARSER]]],x_] := False (* derived 2007 July 7 in PROPER.NB *) member[fix[IMAGE[inverse[S]]],x_] := False (* derived 2005 October 7 based on FIN-PO.NB *) member[fix[po[x_]],FINITE] := member[po[x],FINITE] (* derived 2005 October 2 in CPLT-LAT.NB *) member[fix[po[x_]],V] := member[po[x],V] (* derived 2006 March 30 in REG-DORA.NB *) member[fix[reg[x_]],REGULAR] := True (* derived 2004 June 18 in NON-FUNS.NB *) member[x_,fix[SINGLETON]] := equal[x,set[x]] (* derived 2007 May 6 in CLIQUES.NB *) member[fix[second[x_]],V] := member[first[x],V] (* added 2004 July 14 based on X2530-41.NB *) member[x_,fix[set[y_]]] := and[equal[y,pair[x,x]],member[x,V]] (* derived 2005 October 16 in FIN-TO.NB *) member[fix[to[x_]],FINITE] := member[to[x],FINITE] (* derived 2005 October 16 in FIN-TO.NB *) member[fix[to[x_]],V] := member[to[x],V] (* derived 2007 July 7 in PROPER.NB *) member[fix[UCHAINS],x_] := False (* derived 2007 August 14 in UCH-SPIN.NB *) member[x_,fix[UCHAINS]] := and[equal[x,Uchains[x]],member[x,V]] (* added 2003 June 29 based on FIX-E.NB *) member[x_,fix[UCLOSURE]] := and[equal[x,Uclosure[x]],member[x,V]] (* added 2001 September 30 based on FP-ACL.NB *) member[fix[UCLOSURE],x_] := False (* derived 2005 October 16 in WO-WRAP.NB *) member[fix[wo[x_]],FINITE] := member[wo[x],FINITE] (* derived 2005 October 16 in WO-WRAP.NB *) member[fix[wo[x_]],V] := member[wo[x],V] (* Definition DF-FUL-1 and DF-FUL-2 in FUL1 and Theorems FUL-DF-11 and FUL-DF12 in FUL2 *) member[x_,FULL] := and[member[x,V],subclass[U[x],x]] (* added 98/02/07 *) member[FULL,x_] := False (* derived 2007 December 10 in FUND.NB *) member[x_,FUND] := and[member[x,V],WELLFOUNDED[composite[id[x],E]]] (* derived 2007 December 10 in FUND.NB *) member[FUND,x_] := False (* added 2001 November 18 based on CO-IDX.NB *) member[x_,FUNPART] := and[equal[funpart[first[x]],second[x]],member[first[x],V]] (* added 2000 September 9 based on FNP-4.NB *) member[FUNPART,x_] := False (* derived 2005 November 4 in FIN-FUNP.NB *) member[funpart[fin[x_]],FINITE] := True (* derived 2006 March 30 in REG-FUNP.NB *) member[funpart[reg[x_]],REGULAR] := True (* derived 2004 May 9 in OOPART.NB *) member[funpart[setpart[x_]],V] := True (* replacement rule added 2001 November 23 based on FUN-2.M *) member[x_,FUNS] := and[FUNCTION[x],member[x,V]] (* Theorem FS-RP-1 in FS *) member[FUNS,x_] := False (* derived 2007 February 15 in GCD-1.NB *) member[GLB[DIV],map[P[omega],omega]] := True (* derived 2007 February 15 in GCD-1.NB *) member[GLB[DIV],V] := True (* derived 2005 September 27 in LUB-SET.NB *) member[GLB[setpart[x_]],V] := True (* derived 2008 October 18 in GROUPS.NB *) member[GROUPS,x_] := False (* added 2001 March 15 *) member[x_,H[y_]] := and[member[x,y],subclass[tc[x],y]] (* derived 2006 March 30 in REG-H.NB *) member[H[reg[x_]],REGULAR] := True (* derived 2008 July 15 in H-RUS.NB *) member[H[RUSSELL],x_] := False (* derived 2008 January 22 in HART-FU.NB *) member[HARTOGS,x_] := False (* added 2001 November 17 based on UNWRAP.NB *) member[x_,HC] := and[equal[H[first[x]],second[x]],member[first[x],V]] (* added 2001 June 29 based on MEMBER.NB *) member[HC,x_] := False (* derived 2004 March 29 based on HULL.NB *) member[x_,HULL[y_]] := and[equal[hull[y,first[x]],second[x]], member[first[x],image[inverse[S],y]]] (* derived 2007 July 11 in CONSTHUL.NB *) member[HULL[x_],CONST] := or[equal[0,x],member[x,range[SINGLETON]]] (* derived 2005 January 31 in X4210.NB *) member[HULL[x_],FINITE] := and[member[x,FINITE],subclass[x,FINITE]] (* derived 2005 October 5 in GLB-DIV.NB *) member[hull[image[VERTSECT[DIV],omega],x_],image[VERTSECT[DIV],omega]] := subclass[x,omega] (* derived 2007 May 30 in NEXT-LIM.NB *) member[hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x_]]], hull[invar[SUCC],set[ord[x_]]]] := False (* derived 2007 May 29 in NEXT-LIM.NB *) member[hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x_]]],OMEGA] := True (* derived 2007 May 30 in NEXT-LIM.NB *) member[hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x_]]],ord[x_]] := False (* derived 2007 July 3 in ITERSING.NB *) member[hull[invar[SINGLETON],set[0]],FINITE] := False (* derived 2007 July 3 in ITERSING.NB *) member[hull[invar[SINGLETON],set[0]],REGULAR] := True (* derived 2005 August 8 in NEXTPRIM.NB *) member[hull[PRIMES,x_],omega] := and[member[x,FINITE],subclass[x,omega]] (* derived 2005 August 8 in NEXTPRIM.NB *) member[hull[PRIMES,x_],PRIMES] := and[member[x,FINITE],subclass[x,omega]] (* derived 2006 January 21 in RA-VS.NB *) member[HULL[x_],range[LAMBHULL]] := member[x,V] (* derived 2005 September 16 in HULL-DIV.NB *) member[hull[range[VERTSECT[DIV]],x_],range[VERTSECT[DIV]]] := subclass[x,omega] (* derived 2007 May 23 in HULL-SS.NB *) member[y_,hull[x_,set[y_]]] := member[y,V] (* derived 2006 March 12 in HULL.NB *) member[y_,hull[x_,succ[y_]]] := member[y,V] (* derived 2005 October 25 in TOP-WRAP.NB *) member[hull[TOPS,x_],TOPS] := member[x,V] (* derived 2007 June 26 in HULL.NB *) member[HULL[x_],UNOPS] := member[x,V] (* added 2001 June 28 based on SETHOOD.NB *) member[HULL[x_],V] := member[x,V] (* derived 2004 March 29 based on HULL.NB *) member[hull[x_,y_],V] := member[y,image[inverse[S],x]] (* derived 2007 January 20 in HULL-Z.NB *) member[hull[Z,x_],Z] := and[not[equal[0,x]],subclass[cart[x,x],EQUIDIFF]] (* added 2001 December 7 based on ID-RULES.NB *) member[x_,Id] := and[equal[first[x],second[x]],member[first[x],V]] (* Theorem SP-ID in SP4 *) member[Id,x_] := False (* added 2001 December 7 based on ID-RULES.NB *) member[x_,id[y_]] := and[equal[first[x],second[x]],member[first[x],y]] (* derived 2008 October 2 in BIJ-MOND.NB *) member[id[x_],bij[x_,x_]] := member[x,V] (* derived 2005 December 28 in IMIN-DUP.NB *) member[id[x_],CL] := member[x,range[SINGLETON]] (* derived 2004 January 10 in FIN-IDX.NB *) member[id[x_],FINITE] := member[x,FINITE] (* derived 2009 January 2 in UNOP-MON.NB *) member[id[x_],ids[composite[COMPOSE,id[cart[bij[x_,x_],bij[x_,x_]]]]]] := member[x,V] (* derived 2009 January 2 in UNOP-MON.NB *) member[id[x_],ids[composite[COMPOSE,id[cart[map[x_,x_],map[x_,x_]]]]]] := member[x,V] (* derived 2009 January 2 in UNOP-MON.NB *) member[id[x_],ids[composite[COMPOSE,id[cart[P[cart[x_,x_]],P[cart[x_,x_]]]]]]] := member[x,V] (* added 2003 June 4 based on IMAGE.NB *) member[id[x_],image[IMAGE[DUP],y_]] := member[x,y] (* derived 2004 January 13 in RA-RCF.NB *) member[id[x_],image[RCF,y_]] := and[equal[x,set[0]],member[0,y]] (* derived 2006 June 20 in UOBCLCPS.NB *) member[id[x_],map[x_,x_]] := member[x,V] (* derived 2006 July 18 in BINHOM-2.NB *) member[id[omega],binhom[NATADD,NATADD]] := True (* derived 2006 July 18 in BINHOM-2.NB *) member[id[omega],binhom[NATMUL,NATMUL]] := True (* derived 2008 September 28 in PERMS.NB *) member[id[x_],PERMS] := member[x,V] (* added 2002 December 1 based on ZERO-INT.NB *) member[id[x_],range[PLUS]] := equal[omega,x] (* derived 2004 January 13 in RA-RCF.NB *) member[id[x_],range[RCF]] := equal[x,set[0]] (* derived 2004 June 18 in NON-FUNS.NB *) member[id[x_],range[SINGLETON]] := member[x,range[SINGLETON]] (* added 2003 June 5 based on REG.NB *) member[id[x_],REGULAR] := member[x,REGULAR] (* derived 2006 June 9 in UNARY.NB *) member[id[x_],UNOPS] := member[x,V] (* Theorems RP-IDX1 and RP-IDX2 in RP2 *) member[id[x_],V] := member[x,V] (* added 2002 December 1 based on ZERO-INT.NB *) member[id[x_],Z] := equal[omega,x] (* derived 2005 August 5 in BINHOM-5.NB *) member[id[Z],binhom[INTADD,INTADD]] := True (* derived 2004 December 14 in IDEMPROJ.NB *) member[x_,IDEM] := and[member[x,V],equal[composite[x,x],x]] (* derived 2005 December 22 in SETHOOD.NB *) member[IDEM,x_] := False (* derived 2004 August 1 in SETHOOD.NB *) member[image[ACLOSURE,x_],V] := member[x,V] (* added 2003 September 13 based on UCL-TOPS.NB *) member[image[ADJOIN[x_],y_],V] := or[member[y,V],not[member[x,V]]] (* derived 2006 March 21 in MEMB-REG.NB *) member[image[BIGCUP,x_],REGULAR] := member[x,REGULAR] member[image[BIGCUP,x_],V] := member[x,V] (* derived 2008 June 3 in CARD-ORD.NB *) member[x_,image[CARD,x_]] := False (* added 2001 October 20 based on SQUARE.NB *) member[x_,image[CART,Id]] := and[equal[x,cart[fix[x],fix[x]]],member[x,V]] (* added 2001 October 20 based in CART-SQ.NB *) member[w_,image[CART,id[x_]]] := and[equal[w,cart[fix[w],fix[w]]],member[w,V],member[fix[w],x]] (* added 2002 January 1 based on ROTATE.NB *) member[z_,image[w_,cart[set[x_],set[y_]]]] := and[member[x,V],member[y,V],member[z,V],member[pair[pair[x,y],z],w]] (* derived 2006 September 3 in BO-POWER.NB *) member[image[CART,cart[x_,x_]],V] := member[x,V] (* derived 2007 April 26 in RA-FU.NB *) member[image[CART,Id],x_] := False (* derived 2007 August 7 in CLIQUES.NB *) member[image[CLIQUES,P[x_]],V] := member[fix[x],V] (* derived 2006 March 21 in MEMB-REG.NB *) member[image[COARSER,x_],REGULAR] := member[x,REGULAR] (* derived 2004 October 9 in IM-COA.NB *) member[image[COARSER,x_],V] := member[x,V] (* derived 2008 October 24 in ASS-CPS.NB *) member[image[COMPOSE,cart[P[cart[x_,y_]],P[cart[x_,y_]]]],V] := or[and[member[x,V],member[y,V]],equal[0,intersection[x,y]]] (* added 2001 March 17 based on H-FULL.NB *) member[image[CUP,x_],V] := and[member[domain[x],V],member[range[x],V]] (* added 2001 November 15 *) member[x_,image[Di,y_]] := and[member[x,V],not[subclass[y,set[x]]]] member[image[Di,x_],y_] := and[equal[0,x],member[0,y]] (* derived 2006 October 26 in CARDARTH.NB *) member[image[DIV,set[x_]],FINITE] := or[equal[0,x],not[member[x,omega]]] (* derived 2005 October 5 in GLB-DIV.NB *) member[image[DIV,set[x_]],image[VERTSECT[DIV],omega]] := member[x,omega] (* derived 2005 September 8 in RAVS-DIV.NB *) member[image[DIV,set[x_]],range[VERTSECT[DIV]]] := True (* derived 2006 October 20 in PROPER.NB *) member[IMAGE[DUP],x_] := False (* derived 2005 October 17 in TO-FIN.NB *) member[image[funpart[x_],fin[y_]],FINITE] := True (* derived 2006 October 20 in PROPER.NB *) member[IMAGE[id[x_]],y_] := False (* derived 2006 March 4 in OO-FIN.NB *) member[image[IMAGE[DUP],x_],FINITE] := member[x,FINITE] (* derived 2004 October 28 in AC2.NB *) member[x_,image[IMAGE[FIRST],intersection[FUNS,y_]]] := not[equal[0,intersection[y,map[x,V]]]] (* derived 2008 January 3 in FIN-CUT.NB *) member[image[IMAGE[id[fin[x_]]],y_],FINITE] := True (* derived 2005 October 27 in TOP-THMS.NB *) member[image[IMAGE[id[x_]],top[y_]],TOPS] := True (* derived 2005 May 21 in NATSUB.NB *) member[y_,image[image[inverse[NATADD],set[x_]],z_]] := member[natsub[x,y],z] (* derived 2005 October 27 in TOP-THMS.NB *) member[image[IMAGE[oopart[x_]],top[y_]],TOPS] := True (* added 2002 October 15 based on MEMBER.NB *) member[v_,image[x_,image[y_,set[u_]]]] := member[pair[u,v],composite[x,y]] (* added 1999 December 12 based on FLIP.NB *) member[v_,image[image[x_,set[w_]],set[u_]]] := member[w,image[inverse[x],cart[set[u],set[v]]]] (* derived 2007 January 6 in IVR-INV.NB *) member[image[INTDIV,set[x_]],range[VERTSECT[INTDIV]]] := True (* added 2001 June 28 based on INVFUN.NB *) member[x_,image[INVERSE,y_]] := and[member[x,V],member[inverse[x],y],subclass[x,cart[V,V]]] (* revised 2001 October 14 based on ACL-2.NB *) member[x_,image[inverse[ACLOSURE],y_]] := member[Aclosure[x],y] (* added 2001 May 4 based on PAIRSET.NB *) member[x_,image[inverse[ADJOIN[y_]],z_]] := member[union[x,y],z] (* added 2001 March 11 based on IMIN.NB *) member[x_,image[inverse[BIGCAP],y_]] := and[member[x,V],member[A[x],y]] (* added 2001 March 11 based on IMIN.NB *) member[x_,image[inverse[BIGCUP],y_]] := member[U[x],y] (* derived 2006 March 21 in MEMB-REG.NB *) member[image[inverse[BIGCUP],x_],REGULAR] := member[x,REGULAR] (* added 2001 March 17 based on H-FULL.NB *) member[image[inverse[BIGCUP],x_],V] := member[x,V] (* added 2002 March 16 based on IM-IN.NB *) member[x_,image[inverse[CAP],y_]] := and[member[first[x],V], member[intersection[first[x],second[x]],y]] (* added 2001 December 2 based on CARD-FUN.NB *) member[x_,image[inverse[CARD],y_]] := member[card[x],y] (* derived 2007 May 7 in APCHAINS.NB *) member[x_,image[inverse[CHAINS],y_]] := and[member[x,V],member[chains[x],y]] (* added 2001 April 30 based on CLIQUES5.NB *) member[x_,image[inverse[CLIQUES],y_]] := and[member[x,V],member[cliques[x],y]] (* derived 2007 June 2 in COARSER.NB *) member[IMAGE[inverse[COARSER]],x_] := False (* derived 2004 October 9 in IM-COA.NB *) member[image[inverse[COARSER],x_],V] := member[x,V] (* derived 2004 September 12 in WF-REC-5.NB *) member[z_,image[inverse[y_],complement[x_]]] := not[subclass[image[y,set[z]],x]] (* derived 2004 April 18 in REPLACE.NB *) member[x_,image[inverse[CORE[y_]],z_]] := and[member[x,V],member[core[y,x],z]] (* added 2002 March 16 based on IM-IN.NB *) member[x_,image[inverse[CUP],y_]] := member[union[first[x],second[x]],y] (* derived 2007 January 30 in FIN-DIV.NB *) member[image[inverse[DIV],x_],FINITE] := and[member[intersection[omega,x],FINITE],not[member[0,x]]] (* derived 2007 January 30 in FIN-DIV.NB *) member[image[inverse[DIV],x_],image[Q,OMEGA]] := True (* derived 2005 February 22 in PRIMES.NB *) member[image[inverse[DIV],set[x_]],image[PAIRSET,Di]] := member[x,PRIMES] (* derived 2008 March 18 in MEM-RAVS.NB *) member[image[inverse[DIV],set[x_]],range[VERTSECT[inverse[DIV]]]] := True (* added 2001 December 19 based on INV-DORA.NB *) member[x_,image[inverse[DORA],y_]] := and[member[x,V],member[pair[domain[x],range[x]],y]] (* derived 2006 October 20 in PROPER.NB *) member[IMAGE[inverse[DUP]],x_] := False (* derived 2004 December 11 in MEM-IMIN.NB *) member[x_,image[inverse[EQUIV],y_]] := and[member[x,V],member[eqv[x],y]] (* derived 2006 November 3 in EVAL-IM.NB *) member[x_,image[inverse[eval[y_]],z_]] := and[member[x,V],member[y,image[inverse[funpart[x]],z]]] (* derived 2006 September 17 in CATR-IDS.NB *) member[x_,image[inverse[fix[composite[inverse[SECOND],Di,COMPOSE]]],y_]] := and[member[x,V],not[subclass[y,fix[IMAGE[cross[Id,x]]]]]] (* derived 2008 September 4 in IN-2-SBV.NB *) member[x_,image[inverse[fix[composite[inverse[SECOND],IMG]]],y_]] := and[member[x,V],not[equal[0,intersection[y,fix[IMAGE[x]]]]]] (* added 2001 March 11 based on IMIN.NB *) member[x_,image[inverse[FUNPART],y_]] := and[member[x,V],member[funpart[x],y]] (* added 2001 April 10 based on HC-IMIN.NB *) member[x_,image[inverse[HC],y_]] := and[member[x,V],member[H[x],y]] (* derived 2004 March 29 based on HULL.NB *) member[x_,image[inverse[HULL[y_]],z_]] := member[hull[y,x],z] (* added 2001 March 11 based on IMIN.NB *) member[x_,image[inverse[IMAGE[z_]],y_]] := and[member[x,V],member[image[z,x],y]] (* derived 2004 December 11 in MEM-IMIN.NB *) member[x_,image[inverse[IMG],y_]] := and[member[first[x],V],member[image[first[x],second[x]],y]] (* derived 2006 June 20 in UO-SP.NB *) member[image[inverse[INTADD],set[x_]],UNOPS] := True (* derived 2008 September 15 in INTTIMES.NB *) member[x_,image[inverse[INTTIMES],y_]] := and[member[x,Z],member[inttimes[x],y]] (* added 2003 May 12 based on LAMBHULL.NB *) member[x_,image[inverse[LAMBHULL],y_]] := member[HULL[x],y] (* derived 2004 March 7 in IMINLBUB.NB *) member[x_,image[inverse[LB[y_]],z_]] := and[member[x,V],not[equal[0,intersection[z,lb[y,x]]]]] (* derived 2004 December 11 in MEM-IMIN.NB *) member[x_,image[inverse[MAP],y_]] := and[member[first[x],V],member[map[first[x],second[x]],y]] (* derived 2005 December 23 in INIM.NB *) member[x_,image[inverse[modulo[y_]],z_]] := member[natmod[x,y],z] (* derived 2005 January 31 in X4210.NB *) member[image[inverse[NATADD],set[x_]],FINITE] := True (* derived 2004 December 11 in MEM-IMIN.NB *) member[y_,image[inverse[OOPART],z_]] := and[member[y,V],member[oopart[y],z]] (* revised 2002 April 18 based on REPLACE.NB *) member[x_,image[inverse[PAIRSET],y_]] := and[member[first[x],V],member[set[first[x],second[x]],y]] (* added 2003 August 8 based on REPLACE.NB *) member[x_,image[inverse[PLUS],y_]] := and[member[x,omega],member[plus[x],y]] (* derived 2004 December 11 in MEM-IMIN.NB *) member[x_,image[inverse[plus[y_]],z_]] := member[natadd[x,y],z] (* added 2001 March 11 based on IMIN.NB *) member[x_,image[inverse[POWER],y_]] := member[P[x],y] (* added 2001 August 20 based based on BOTTOM.NB *) member[x_,image[inverse[RANK],y_]] := and[member[x,V],member[rank[x],y]] (* added 2002 February 4 based on RCF-NORM.NB *) member[x_,image[inverse[RCF],y_]] := and[member[x,V],member[RC[x],y]] (* derived 2007 June 2 in IMS.NB *) member[IMAGE[inverse[S]],x_] := False (* derived 2004 January 23 in P-FINITE.NB *) member[image[inverse[S],x_],FINITE] := and[member[x,FINITE],subclass[x,FINITE]] (* derived 2005 November 17 in FIN-SBCV.NB *) member[x_,image[inverse[S],image[BIGCUP,intersection[FINITE,P[y_]]]]] := and[member[image[IMAGE[id[x]],y],image[COARSER,FINITE]],subclass[x,U[y]]] (* derived 2007 December 28 in MEMB-IMS.NB *) member[x_,image[inverse[S],intersection[y_,complement[z_]]]] := not[subclass[intersection[y,image[S,set[x]]],z]] (* derived 2006 March 7 in REGULAR.NB *) member[x_,image[inverse[S],intersection[REGULAR,x_]]] := False (* derived 2005 August 8 in NEXTPRIM.NB *) member[x_,image[inverse[S],omega]] := and[member[x,FINITE],subclass[x,omega]] (* derived 2008 September 17 in TUKEY.NB *) member[image[inverse[S],omega],FINCHAR] := False (* derived 2008 July 8 in CHN-TFM.NB *) member[image[inverse[S],omega],image[IMAGE[inverse[S]],chains[S]]] := True (* derived 2006 October 11 in RA-CLIQ.NB *) member[image[inverse[S],omega],range[CLIQUES]] := False (* derived 2006 March 21 in MEMB-REG.NB *) member[image[inverse[S],x_],REGULAR] := member[x,REGULAR] (* Theorem RP-1-HER in RP1 and RP-8-COR in RP2 *) member[image[inverse[S],x_],V] := member[x,V] (* added 2001 October 10 based IM-IN-SG.NB *) member[x_,image[inverse[SINGLETON],y_]] := and[member[x,V],member[set[x],y]] (* added 2001 March 11 based on IMIN.NB *) member[x_,image[inverse[SUBVAR],y_]] := and[member[x,V],member[subvar[x],y]] (* revised 2002 April 18 based on REPLACE.NB *) member[x_,image[inverse[SUCC],y_]] := member[succ[x],y] (* added 2001 March 11 based on IMIN.NB *) member[x_,image[inverse[TC],y_]] := member[tc[x],y] (* added 2001 March 17 based on H-FULL.NB *) member[image[inverse[TC],x_],V] := member[intersection[FULL,x],V] (* derived 2006 October 21 in INTDIV.NB *) member[x_,image[inverse[TIMES],y_]] := and[member[x,omega],member[times[x],y]] (* derived 2005 December 23 in INIM.NB *) member[x_,image[inverse[times[y_]],z_]] := member[natmul[x,y],z] (* derived 2004 March 7 in IMINLBUB.NB *) member[x_,image[inverse[UB[y_]],z_]] := and[member[x,V],not[equal[0,intersection[z,ub[y,x]]]]] (* derived 2008 July 5 in UBD-DEFN.NB *) member[x_,image[inverse[UBD],y_]] := and[member[x,V],member[domain[UB[x]],y]] (* derived 2007 July 6 in SETPART.NB *) member[x_,image[inverse[UCHAINS],y_]] := member[Uchains[x],y] (* added 2001 September 22 based on UCL.NB *) member[x_,image[inverse[UCLOSURE],y_]] := member[Uclosure[x],y] (* added 2001 March 11 based on IMIN.NB *) member[x_,image[inverse[VERTSECT[z_]],y_]] := and[member[x,V],member[image[z,set[x]],y]] (* derived 2004 December 11 in MEM-IMIN.NB *) member[x_,image[inverse[VS],y_]] := and[member[x,V],member[composite[VERTSECT[x],id[domain[x]]],y]] (* derived 2004 December 11 in MEM-IMIN.NB *) member[x_,image[inverse[WFPART],y_]] := and[member[x,V],member[wf[x],y]] (* derived 2004 December 11 in MEM-IMIN.NB *) member[x_,image[inverse[XS],y_]] := and[member[x,V],member[X[x],y]] (* derived 2006 March 4 in KURA.NB *) member[image[KURA,x_],FINITE] := and[member[domain[x],FINITE],member[range[x],FINITE]] (* derived 2006 March 4 in KURA.NB *) member[image[KURA,x_],V] := and[member[domain[x],V],member[range[x],V]] (* derived 2006 July 18 in BINHOM-2.NB *) member[image[NATEXP,x_],V] := True (* derived 2006 August 24 in NAT-SQR.NB *) member[image[NATMUL,Id],FINITE] := False (* derived 2006 March 4 in OO-FIN.NB *) member[image[oopart[x_],y_],FINITE] := member[intersection[y,domain[oopart[x]]],FINITE] (* derived 2005 January 17 in REPLACE.NB *) member[image[oopart[x_],y_],V] := member[intersection[y,domain[oopart[x]]],V] (* derived 2006 March 4 in KURA.NB *) member[image[PAIRSET,x_],FINITE] := and[member[domain[x],FINITE],member[range[x],FINITE]] (* added 2001 March 17 based on H-FULL.NB *) member[image[PAIRSET,x_],V] := and[member[domain[x],V],member[range[x],V]] (* derived 2005 May 21 in NATSUB.NB *) member[x_,image[plus[y_],z_]] := member[natsub[x,y],z] (* added 2003 June 29 based on POWER.NB *) member[x_,image[POWER,y_]] := and[equal[x,P[U[x]]],member[U[x],y]] (* derived 2006 March 4 in OO-FIN.NB *) member[image[POWER,x_],FINITE] := member[x,FINITE] (* derived 2006 March 21 in MEMB-REG.NB *) member[image[POWER,x_],REGULAR] := member[x,REGULAR] member[image[POWER,x_],V] := member[x,V] (* derived 2007 September 6 in SU-A-ON.NB *) member[x_,image[Q,card[x_]]] := and[member[x,V],not[member[x,image[Q,OMEGA]]]] (* derived 2006 October 20 in PROPER.NB *) member[image[Q,OMEGA],x_] := False (* derived 2008 June 5 in CARDHART.NB *) member[x_,image[Q,P[x_]]] := member[x,V] (* derived 2006 August 16 in HER-CTBL.NB *) member[x_,image[Q,succ[omega]]] := or[equal[omega,card[x]],member[x,FINITE]] (* derived 2008 September 18 in REPLACE.NB *) member[image[Q,x_],V] := subclass[x,set[0]] (* derived 2006 March 2 in IMINRANK.NB *) member[image[RANK,x_],V] := member[intersection[REGULAR,x],V] (* added 2002 May 14 based on IND-C.NB *) member[x_,image[RC[y_],z_]] := and[member[y,V],member[intersection[y,complement[x]],z],subclass[x,y]] (* derived 2004 January 1 in COFIN-T1.NB *) member[image[RC[x_],FINITE],PointClosed] := True (* derived 2004 January 1 in COFIN-T1.NB *) member[image[RC[x_],FINITE],T1] := True (* derived 2003 December 27 based on COFINITE.TXT *) member[image[RC[x_],FINITE],TOPS] := member[x,FINITE] (* derived 2003 December 30 in T2.NB *) member[image[RC[omega],FINITE],T2] := False (* derived 2004 October 12 in CMPCT-OM.NB *) member[image[RC[omega],omega],COMPACT] := True (* derived 2004 October 12 in CMPCT-OM.NB *) member[image[RC[omega],omega],FINITE] := False (* derived 2006 March 4 in OO-FIN.NB *) member[image[RCF,x_],FINITE] := member[x,FINITE] (* derived 2006 March 4 in OO-FIN.NB *) member[image[RCF,x_],V] := member[x,V] (* derived 2004 May 4 in ALLCLOSED.NB *) member[x_,image[S,y_]] := and[member[x,V],not[equal[0,intersection[y,P[x]]]]] member[image[S,x_],y_] := and[equal[0,x],member[0,y]] (* added 2001 December 6 based on MEMBER.NB *) member[y_,image[z_,set[x_]]] := and[member[x,V],member[y,V],member[pair[x,y],z]] (* derived 2006 January 21 in RA-VS.NB *) member[image[x_,set[y_]],image[VERTSECT[x_],domain[x_]]] := and[member[y,domain[x]],member[image[x,set[y]],V]] (* derived 2004 August 1 in COMMON2.NB *) member[image[x_,set[y_]],range[SINGLETON]] := member[y,domain[funpart[x]]] (* derived 2008 March 18 in MEM-RAVS.NB *) member[image[setpart[x_],set[y_]],range[VERTSECT[setpart[x_]]]] := True (* derived 2008 September 22 in UCHAINS.NB *) member[image[setpart[x_],setpart[y_]],range[IMAGE[setpart[x_]]]] := True (* derived 2005 January 21 in SS-U.NB *) member[x_,image[SINGLETON,y_]] := and[member[x,range[SINGLETON]],subclass[x,y]] (* derived 2006 March 4 in KURA.NB *) member[image[SINGLETON,x_],FINITE] := member[x,FINITE] (* derived 2006 March 21 in MEMB-REG.NB *) member[image[SINGLETON,x_],REGULAR] := member[x,REGULAR] (* Theorem SG-IM-V in SG2 *) member[image[SINGLETON,x_],V] := member[x,V] member[image[SUCC,x_],V] := member[x,V] (* added 2000 October 31 based on TC-1.NB *) member[image[TC,x_],V] := member[x,V] (* derived 2006 March 21 in MEMB-REG.NB *) member[image[UCLOSURE,x_],REGULAR] := member[x,REGULAR] (* derived 2004 August 1 in SETHOOD.NB *) member[image[UCLOSURE,x_],V] := member[x,V] (* added 2000 September 12 based on NEWRULES.TXT *) member[IMAGE[x_],V] := member[domain[VERTSECT[x]],V] (* Added 1999 February 6 based on session 0-V.LOG *) member[image[V,x_],y_] := and[equal[0,x],member[0,y]] (* added 2001 March 11 based on IMV.NB *) member[x_,image[V,y_]] := and[member[x,V],not[equal[0,y]]] (* derived 2005 December 7 in ZN-ORD.NB *) member[image[ZN,ord[x_]],V] := True (* derived 2007 September 6 in SU-A-ON.NB *) member[x_,image[ZN,rank[x_]]] := and[member[x,V],not[member[x,REGULAR]]] (* derived 2006 March 30 in ZN-SU.NB *) member[image[ZN,reg[x_]],image[IMAGE[ZN],REGULAR]] := True (* derived 2006 March 30 in ZN-SU.NB *) member[image[ZN,reg[x_]],REGULAR] := True (* derived 2006 March 30 in REG-ZN.NB *) member[image[ZN,reg[x_]],V] := True (* derived 2004 August 14 in X4052-57.NB *) member[x_,image[ZN,succ[rank[x_]]]] := member[x,V] (* added 2001 November 18 based on BIN-FNS.NB *) member[x_,IMG] := and[member[first[first[x]],V], equal[image[first[first[x]],second[first[x]]],second[x]]] (* added 2000 October 4 based on PROPER.NB *) member[IMG,x_] := False (* derived 2008 November 29 in INT-WRAP.NB *) member[int[x_],V] := True (* derived 2008 November 29 in INT-WRAP.NB *) member[int[x_],Z] := True (* derived 2006 June 10 in BINOPS.NB *) member[INTADD,BINOPS] := True (* derived 2006 October 20 in INT-FIN.NB *) member[INTADD,FINITE] := False (* derived 2008 October 18 in GROUPS.NB *) member[INTADD,GROUPS] := True (* derived 2006 July 1 in BIN-MAP.NB *) member[INTADD,map[cart[Z,Z],Z]] := True (* derived 2008 December 29 in MONOIDS.NB *) member[INTADD,MONOIDS] := True (* derived 2008 October 7 in QUASIGPS.NB *) member[INTADD,QUASIGPS] := True (* derived 2006 July 8 in SEMIGPS.NB *) member[INTADD,SEMIGPS] := True (* derived 2005 December 22 in SETHOOD.NB *) member[INTADD,V] := True (* added 2003 August 9 based on INTADDXY.NB *) member[intadd[x_,y_],V] := and[member[x,Z],member[y,Z]] (* added 2003 August 9 based on INTADDXY.NB *) member[intadd[x_,y_],Z] := and[member[x,Z],member[y,Z]] (* derived 2006 October 26 in CARDARTH.NB *) member[INTDIV,FINITE] := False (* derived 2006 October 21 in INTDIV.NB *) member[INTDIV,V] := True member[u_,intersection[x_,y_]] := and[member[u,x],member[u,y]] (* derived 2004 July 17 in AP-IN-SG.NB *) member[intersection[x_,complement[image[Di,x_]]],V] := True (* derived 2004 December 6 in I-C-IMV.NB *) member[intersection[x_,complement[image[V,y_]]],z_] := or[and[equal[0,y],member[x,z]],and[member[0,z],not[equal[0,y]]]] (* derived 2004 November 18 in XS-IN-AC.NB *) member[intersection[complement[SELECT],P[cart[V,V]]],range[SINGLETON]] := False (* derived 2004 November 18 in XS-IN-AC.NB *) member[intersection[complement[SELECT],P[cart[V,V]]],V] := axch (* derived 2004 October 10 in COMPACT0.NB *) member[intersection[x_,complement[set[0]]],COMPACT] := member[x,COMPACT] (* derived 2004 January 1 in COFIN-T1.NB *) member[intersection[x_,complement[set[0]]],T1] := member[x,T1] (* derived 2004 February 7 in T1-FIN.NB *) member[intersection[x_,complement[set[y_]]],FINITE] := member[x,FINITE] (* derived 2004 June 19 in X14--.NB *) member[intersection[x_,complement[set[y_]]],V] := member[x,V] (* derived 2008 November 6 in EQV-ON-X.NB *) member[intersection[EQV,image[inverse[IMAGE[inverse[DUP]]],set[x_]]],V] := True (* derived 2005 November 2 in FIN.NB *) member[intersection[x_,fin[y_]],FINITE] := True (* derived 2006 March 2 in SBV-INPS.NB *) member[intersection[FINITE,P[x_]],FINITE] := member[x,FINITE] (* derived 2006 March 2 in SBV-INPS.NB *) member[intersection[FINITE,P[x_]],V] := member[x,V] (* derived 2005 February 10 in X3589.NB *) member[intersection[FULL,P[RUSSELL]],x_] := False (* derived 2004 December 29 in I-FUL-REG.NB *) member[intersection[FULL,REGULAR],x_] := False (* derived 2007 April 26 in RA-FU.NB *) member[intersection[FUNS,P[cart[x_,y_]]],V] := or[and[member[x,V],member[y,V]],equal[0,x],equal[0,y]] (* derived 2007 April 26 in FUNS-1.NB *) member[intersection[FUNS,P[x_]],range[SINGLETON]] := equal[0,domain[x]] (* derived 2008 November 6 in EQV-ON-X.NB *) member[intersection[image[inverse[IMAGE[inverse[DUP]]],set[x_]],P[cart[x_,x_]]],V] := True (* derived 2004 November 17 in INTERVAL.NB *) member[intersection[image[S,set[x_]],P[y_]],V] := or[member[y,V],not[member[x,V]],not[subclass[x,y]]] (* derived 2004 December 6 in FIN-CP.NB *) member[intersection[x_,image[V,y_]],z_] := or[and[equal[0,y],member[0,z]],and[member[x,z],not[equal[0,y]]]] (* derived 2008 October 22 in WORDS.NB *) member[intersection[LISTS,P[cart[omega,x_]]],V] := member[x,V] (* derived 2005 November 2 in FIN.NB *) member[intersection[x_,nat[y_]],FINITE] := True (* derived 2005 July 9 in MM10-12.NB *) member[intersection[nat[x_],nat[y_]],nat[z_]] := or[member[nat[x],nat[z]],member[nat[y],nat[z]]] (* derived 2005 April 28 in MAX-MIN.NB *) member[intersection[nat[x_],nat[y_]],omega] := True (* added 2003 June 3 based on ON-SC-4B.NB *) member[intersection[OMEGA,complement[fix[BIGCUP]]],x_] := False (* derived 2007 May 22 in SU-OM.NB *) member[intersection[omega,complement[nat[x_]]],FINITE] := False (* derived 2007 May 23 in SU-ON.NB *) member[intersection[OMEGA,complement[ord[x_]]],y_] := False (* added 2003 June 4 based on LIMITORD.NB *) member[intersection[OMEGA,fix[BIGCUP]],x_] := False (* derived 2008 June 5 in CARDHART.NB *) member[intersection[OMEGA,image[Q,P[x_]]],image[Q,P[x_]]] := False (* derived 2007 August 1 in TO-CHN-S.NB *) member[intersection[OMEGA,image[S,set[ord[x_]]]],V] := False (* derived 2006 March 25 in PCON-RUS.NB *) member[intersection[OMEGA,x_],REGULAR] := member[intersection[OMEGA,x],V] (* derived 2007 May 9 in ON-IN-S.NB *) member[intersection[P[OMEGA],subvar[inverse[E]]],x_] := False (* derived 2008 November 6 in EQV-ON-X.NB *) member[intersection[PO,image[inverse[IMAGE[inverse[DUP]]],set[x_]]],V] := True (* derived 2006 March 30 in REG-A.NB *) member[intersection[x_,reg[y_]],REGULAR] := True (* derived 2004 February 3 in FIN-RANK.NB *) member[intersection[REGULAR,H[FINITE]],V] := True (* derived 2006 October 20 in PROPER.NB *) member[intersection[RFX,SYM],x_] := False (* derived 2008 August 20 in CANT-REG.NB *) member[intersection[REGULAR,x_],x_] := False (* derived 2008 August 20 in CANT-REG.NB *) member[intersection[REGULAR,x_],REGULAR] := member[intersection[REGULAR,x],V] (* derived 2004 June 27 in X1704-09.NB *) member[intersection[RUSSELL,x_],x_] := False (* derived 2006 March 12 in FIN-SUC.NB *) member[intersection[x_,set[y__]],FINITE] := True (* derived 2005 January 7 in UP-K.NB *) member[intersection[x_,set[y_]],range[SINGLETON]] := member[y,x] (* derived 2006 March 12 in FIN-SUC.NB *) member[intersection[x_,succ[y_]],FINITE] := member[intersection[x,y],FINITE] (* derived 2006 October 20 in INT-FIN.NB *) member[INTLEQ,FINITE] := False (* derived 2006 September 24 in INTLEQ.NB *) member[INTLEQ,V] := True (* derived 2006 December 29 in INTMUL-3.NB *) member[INTMUL,BINOPS] := True (* derived 2008 December 7 in NATMUL.NB *) member[INTMUL,GROUPS] := False (* derived 2006 December 21 in INTMUL-1.NB *) member[INTMUL,map[cart[Z,Z],Z]] := True (* derived 2008 December 29 in MONOIDS.NB *) member[INTMUL,MONOIDS] := True (* derived 2008 October 7 in QUASIGPS.NB *) member[INTMUL,QUASIGPS] := False (* derived 2006 December 29 in INTMUL-3.NB *) member[INTMUL,SEMIGPS] := True (* derived 2006 December 21 in INTMUL-1.NB *) member[INTMUL,V] := True (* derived 2007 January 5 based on INTMUL-5.NB *) member[intmul[x_,y_],V] := and[member[x,Z],member[y,Z]] (* derived 2007 January 5 based on INTMUL-5.NB *) member[intmul[x_,y_],Z] := and[member[x,Z],member[y,Z]] (* derived 2008 September 15 in INTTIMES.NB *) member[x_,inttimes[y_]] := and[equal[intmul[y,first[x]],second[x]],member[first[x],V]] (* derived 2006 December 23 in ZTIMES-4.NB *) member[INTTIMES,binhom[INTADD,composite[IMAGE[cross[inverse[DUP],INTADD]],CROSS, id[cart[binhom[INTADD,INTADD],binhom[INTADD,INTADD]]]]]] := True (* derived 2008 September 15 in INTTIMES.NB *) member[inttimes[x_],binhom[INTADD,INTADD]] := member[x,Z] (* derived 2006 December 21 in ZTIMES-2.NB *) member[INTTIMES,map[Z,binhom[INTADD,INTADD]]] := True (* derived 2006 December 21 in ZTIMES-2.NB *) member[INTTIMES,map[Z,map[Z,Z]]] := True (* derived 2008 October 31 in MAP.NB *) member[inttimes[x_],map[Z,Z]] := member[x,Z] (* derived 2006 December 19 in ZTIMES-1.NB *) member[INTTIMES,V] := True (* derived 2008 September 15 in INTTIMES.NB *) member[inttimes[x_],V] := True member[x_,invar[y_]] := and[member[x,V],subclass[image[y,x],x]] (* added 2002 April 10 *) member[x_,INVAR] := and[member[first[x],V],subclass[image[first[x],second[x]],second[x]]] (* added 2003 June 4 based on SETHOOD.NB *) member[INVAR,x_] := False (* derived 2007 May 29 in IVR-HULL.NB *) member[invar[ACLOSURE],x_] := False (* derived 2007 May 29 in IVR-CORE.NB *) member[invar[CORE[x_]],y_] := False (* derived 2004 December 26 in SETPART.NB *) member[invar[funpart[x_]],y_] := False (* derived 2007 May 29 in IVR-HULL.NB *) member[invar[HULL[x_]],y_] := False (* derived 2007 May 29 in IVR-HULL.NB *) member[invar[IMAGE[id[x_]]],y_] := False (* derived 2007 May 29 in IVR-HULL.NB *) member[invar[IMAGE[inverse[S]]],x_] := False (* derived 2004 August 1 in SETHOOD.NB *) member[invar[thinpart[x_]],y_] := False (* derived 2007 May 29 in IVR-HULL.NB *) member[invar[UCLOSURE],x_] := False (* added 2001 November 18 based on CO-IDX.NB *) member[x_,INVERSE] := and[equal[inverse[first[x]],second[x]], member[first[x],V],subclass[first[x],cart[V,V]]] (* removed 2003 June 23 based on INVERSE.NB member[x_,inverse[y_]] := and[member[first[x],V],member[pair[second[x],first[x]],y]] *) (* added 2000 October 4 based on PROPER.NB *) member[INVERSE,x_] := False (* derived 2008 October 31 in BIJ.NB *) member[inverse[x_],bij[y_,z_]] := member[composite[Id,x],bij[z,y]] (* derived 2005 October 19 in TO-CL-WO.NB *) member[inverse[x_],CL] := member[composite[Id,x],CL] (* derived 2005 October 16 in FIN-CO.NB *) member[inverse[x_],FINITE] := and[member[domain[x],FINITE],member[range[x],FINITE]] (* derived 2006 September 17 in IDS-INCL.NB *) member[x_,inverse[IMAGE[DUP]]] := equal[first[x],id[second[x]]] (* derived 2007 January 21 in IN-ZADD.NB *) member[inverse[intadd[x_,y_]],Z] := and[member[x,Z],member[y,Z]] (* derived 2006 August 17 in CTBL-U.NB *) member[inverse[plus[x_]],image[Q,OMEGA]] := True (* derived 2007 January 11 in PLUSINEQ.NB *) member[inverse[plus[x_]],range[PLUS]] := equal[0,x] (* added 2003 August 8 based on REPLACE.NB *) member[inverse[plus[x_]],Z] := member[x,omega] (* derived 2006 March 30 in REG-IN.NB *) member[inverse[reg[x_]],REGULAR] := True (* derived 2006 December 26 in ISOTIMES.NB *) member[inverse[TIMES],binhom[composite[IMAGE[cross[inverse[DUP],NATADD]],CROSS, id[cart[binhom[NATADD,NATADD],binhom[NATADD,NATADD]]]],NATADD]] := True (* derived 2006 December 26 in ISOTIMES.NB *) member[inverse[TIMES],map[binhom[NATADD,NATADD],omega]] := True member[inverse[x_],V] := and[member[domain[x],V],member[range[x],V]] (* derived 2006 February 4 in INVOL.NB *) member[x_,INVOL] := and[member[x,V],FUNCTION[x],equal[x,inverse[x]]] (* derived 2006 February 4 in INVOL.NB *) member[INVOL,x_] := False (* derived 2005 January 1 in ITER-FUN.NB *) member[iterate[inverse[E],x_],V] := member[x,V] (* derived 2005 January 1 in ITER-FUN.NB *) member[iterate[inverse[S],x_],V] := member[x,V] (* added 2002 September 11 based on ITERATE.NB *) member[iterate[SUCC,set[x_]],V] := True (* derived 2004 August 1 in THINNESS.NB *) member[iterate[thinpart[x_],y_],V] := member[y,V] (* added 2000 October 4 based on PROPER.NB *) member[K,x_] := False (* added 2002 January 11 based on KURA.NB *) member[x_,KURA] := and[member[first[first[x]],V], equal[set[set[first[first[x]],second[first[x]]], set[first[first[x]]]],second[x]]] (* added 2003 June 4 based on SETHOOD.NB *) member[KURA,x_] := False (* added 2003 May 10 based on LAMBHULL.NB *) member[x_,LAMBHULL] := and[member[first[x],V],equal[second[x],HULL[first[x]]]] (* added 2003 June 4 based on SETHOOD.NB *) member[LAMBHULL,x_] := False (* added 2001 June 29 based on MEMBER.NB *) member[LB[x_],y_] := False (* added 2004 February 17 *) member[x_,lb[y_,z_]] := and[member[x,V],subclass[z,image[y,set[x]]]] (* derived 2007 April 5 in LD-4.NB *) member[x_,ld[x_,y_]] := and[member[x,omega],member[y,omega]] (* derived 2007 March 2 in LD-2.NB *) member[ld[x_,y_],range[VERTSECT[DIV]]] := True (* derived 2007 March 2 in LD-1.NB *) member[ld[x_,y_],V] := True (* added 1999 Novermber 9 based on SESSION1.NB *) member[LEFT[x_],V] := not[member[x,V]] (* derived 2005 December 22 in SETHOOD.NB *) member[LeftPairV,x_] := False (* derived 2008 October 20 in LIST.NB *) member[list[x_],FINITE] := True (* derived 2008 October 20 in LIST.NB *) member[list[x_],V] := True (* added 2003 May 14 based on LIST-DEF.NB *) member[x_,LISTS] := and[FUNCTION[x],member[domain[x],omega]] (* added 2003 June 4 based on SETHOOD.NB *) member[LISTS,x_] := False (* derived 2007 February 15 in GCD-1.NB *) member[LUB[DIV],map[P[omega],omega]] := True (* derived 2007 February 15 in GCD-1.NB *) member[LUB[DIV],V] := True (* derived 2005 September 27 in LUB-SET.NB *) member[LUB[setpart[x_]],V] := True (* added 2001 November 18 based on BIN-FNS.NB *) member[x_,MAP] := and[member[first[first[x]],V], equal[map[first[first[x]],second[first[x]]],second[x]]] (* added 2001 June 29 based on MEMBER.NB *) member[MAP,x_] := False (* derived 2006 July 11 in BINOP-RS.NB *) member[x_,map[cart[fix[domain[x_]],fix[domain[x_]]],fix[domain[x_]]]] := member[x,BINOPS] (* derived 2006 June 17 in BIN-UNOP.NB *) member[map[cart[x_,x_],x_],image[MAP,composite[inverse[DUP],inverse[CART]]]] := member[x,V] (* derived 2006 July 9 in UNOP-POW.NB *) member[x_,map[domain[x_],domain[x_]]] := member[x,UNOPS] (* derived 2008 October 31 in MAP.NB *) member[x_,map[domain[x_],range[x_]]] := and[FUNCTION[x],member[x,V]] (* derived 2008 October 31 in MAP.NB *) member[x_,map[domain[x_],V]] := and[FUNCTION[x],member[x,V]] (* derived 2006 August 19 in CARD-MAP.NB *) member[map[fin[x_],fin[y_]],FINITE] := True (* derived 2004 November 25 in MAP-DUP.NB *) member[map[x_,x_],image[MAP,Id]] := member[x,V] (* derived 2008 June 28 in IM-MAP.NB *) member[map[x_,x_],image[MAP,id[y_]]] := member[x,y] (* derived 2007 August 5 in RA-MAP.NB *) member[map[x_,y_],range[MAP]] := or[equal[0,x],member[y,V],not[member[x,V]]] (* derived 2008 November 5 in CHAR-FIN.NB *) member[map[x_,succ[set[0]]],FINITE] := or[member[x,FINITE],not[member[x,V]]] (* added 2001 April 27 based on MAP3.NB *) member[map[x_,y_],V] := or[equal[0,x],member[y,V],not[member[x,V]]] (* added 2001 June 29 based on MEMBER.NB *) member[MAXIMAL[x_],y_] := False (* added 2001 June 29 based on MEMBER.NB *) member[MINIMAL[x_],y_] := False (* derived 2006 December 9 in SETHOOD.NB *) member[MIXDIV,V] := True (* derived 2006 December 6 in MIXMUL-1.NB *) member[MIXMUL,map[cart[Z,omega],Z]] := True (* derived 2006 December 6 in MIXMUL-1.NB *) member[MIXMUL,V] := True (* derived 2006 December 5 in MIXTIMES.NB *) member[MIXTIMES,map[Z,binhom[NATADD,INTADD]]] := True (* derived 2006 December 5 in MIXTIMES.NB *) member[MIXTIMES,map[Z,map[omega,Z]]] := True (* derived 2006 December 5 in MIXTIMES.NB *) member[MIXTIMES,V] := True (* derived 2005 July 18 in MODULO.NB *) member[x_,modulo[y_]] := and[equal[natmod[first[x],y],second[x]],member[first[x],V]] (* derived 2006 July 18 in BINHOM-2.NB *) member[modulo[x_],binhom[NATADD,composite[modulo[x_],NATADD]]] := member[x,omega] (* derived 2006 July 18 in BINHOM-2.NB *) member[modulo[x_],binhom[NATMUL,composite[modulo[x_],NATMUL]]] := member[x,omega] (* derived 2008 October 31 in MAP.NB *) member[modulo[x_],map[omega,omega]] := member[x,omega] (* derived 2006 June 20 in UO-SP.NB *) member[modulo[x_],UNOPS] := True (* derived 2005 July 18 in MODULO.NB *) member[modulo[x_],V] := True (* derived 2007 May 18 in OL-SS.NB *) member[x_,nat[x_]] := False (* derived 2005 November 2 in FIN.NB *) member[nat[x_],COMPACT] := True (* derived 2005 November 2 in FIN.NB *) member[nat[x_],DEDEKIND] := True (* derived 2005 July 22 in CARD-MUL.NB *) member[nat[x_],FINITE] := True (* derived 2005 July 22 in CARD-MUL.NB *) member[nat[x_],image[Q,OMEGA]] := True (* derived 2008 August 10 in SMALL-OM.NB *) member[nat[x_],image[Q,P[nat[y_]]]] := not[member[nat[y],nat[x]]] (* derived 2007 April 17 in LD9-19.NB *) member[nat[y_],ld[nat[x_],nat[y_]]] := or[equal[0,nat[y]],not[equal[0,nat[x]]]] (* derived 2005 February 13 in NAT.NB *) member[nat[x_],nat[x_]] := False (* derived 2005 July 9 in O26.NB *) member[nat[z_],natadd[nat[x_],nat[natsub[nat[z_],nat[y_]]]]] := or[member[nat[y],nat[x]],member[nat[z],nat[x]]] (* derived 2005 August 5 in MODADD.NB *) member[nat[y_],natmod[nat[x_],nat[y_]]] := and[equal[0,nat[y]],not[equal[0,nat[x]]]] (* derived 2005 June 28 in O-MUL.NB *) member[nat[x_],natmul[nat[x_],nat[y_]]] := and[member[set[0],nat[y]],not[equal[0,nat[x]]]] (* derived 2007 April 17 in LT-MONUS.NB *) member[x_,nat[natsub[y_,z_]]] := and[member[y,omega],member[natadd[x,z],y]] (* derived 2007 April 5 in LD-4.NB *) member[nat[natsub[x_,y_]],ld[x_,y_]] := and[member[x,omega],member[y,omega]] (* derived 2007 April 5 in LD-4.NB *) member[nat[natsub[natmul[u_,x_],y_]],ld[x_,y_]] := and[member[x,omega],member[y,omega]] (* derived 2007 April 5 in LD-4.NB *) member[nat[natsub[x_,natmul[v_,y_]]],ld[x_,y_]] := and[member[x,omega],member[y,omega]] (* derived 2007 April 5 in LD-3.NB *) member[nat[natsub[natmul[u_,x_],natmul[v_,y_]]],ld[x_,y_]] := and[member[x,omega],member[y,omega]] (* derived 2005 February 13 in NAT.NB *) member[nat[x_],omega] := True (* derived 2005 February 17 in NAT-ACL.NB *) member[nat[x_],OMEGA] := True (* derived 2005 February 13 in NAT.NB *) member[nat[x_],REGULAR] := True (* derived 2005 February 13 in NAT.NB *) member[nat[x_],V] := True (* added 2002 June 24 based on MEMBER.NB *) member[x_,NATADD] := and[member[pair[first[first[x]],second[x]], iterate[SUCC,set[second[first[x]]]]],member[second[x],omega]] (* added 2002 October 14 based on WEAKINEQ.NB *) member[natadd[x_,y_],x_] := False (* derived 2007 March 15 in LT-ADD.NB *) member[x_,natadd[x_,y_]] := or[and[member[x,V],not[equal[0,y]]], and[member[x,V],not[member[x,omega]]]] (* derived 2006 June 10 in BINOPS.NB *) member[NATADD,BINOPS] := True (* derived 2007 March 6 in EVENODD.NB *) member[natadd[x_,x_],even] := member[x,omega] (* derived 2006 October 20 in NAT-FIN.NB *) member[NATADD,FINITE] := False (* derived 2008 December 7 in NATMUL.NB *) member[NATADD,GROUPS] := False (* derived 2006 July 1 in BIN-MAP.NB *) member[NATADD,map[cart[omega,omega],omega]] := True (* derived 2008 December 29 in MONOIDS.NB *) member[NATADD,MONOIDS] := True (* derived 2007 March 25 in Q13-Q14.NB *) member[natadd[nat[x_],nat[y_],nat[z_]], natadd[natmod[nat[x_],nat[y_]],natmod[nat[z_],nat[y_]]]] := False (* derived 2005 July 10 in O21.NB *) member[natadd[nat[x_],nat[x_]],natadd[nat[y_],nat[y_]]] := member[nat[x],nat[y]] (* derived 2007 March 25 in Q13-Q14.NB *) member[natadd[nat[x_],nat[y_]],natadd[natmod[nat[x_],nat[z_]],natmod[nat[y_],nat[z_]]]] := False (* derived 2007 April 17 in LT-MONUS.NB *) member[natadd[nat[x_],nat[natsub[nat[y_],nat[z_]]]],nat[y_]] := and[member[nat[x],nat[y]],member[nat[x],nat[z]]] (* derived 2005 June 1 in O18-O20.NB *) member[natadd[x_,z_],natadd[y_,z_]] := or[and[member[x,omega],member[z,omega],not[member[y,omega]]], and[member[x,y],member[y,omega],member[z,omega]]] (* derived 2007 March 24 in Q17.NB *) member[natadd[x_,y_],natmod[x_,z_]] := and[member[x,omega],member[y,omega],not[member[z,omega]]] (* derived 2007 March 24 in Q17.NB *) member[natadd[x_,natmod[y_,z_]],natmod[natadd[x_,y_],z_]] := False (* derived 2007 March 24 in Q17.NB *) member[natadd[natmod[x_,z_],natmod[y_,z_]],natmod[natadd[x_,y_],z_]] := False (* derived 2007 March 16 in MOD-SUB.NB *) member[x_,natadd[natmod[x_,z_],natmul[y_,z_]]] := or[and[member[x,V],not[member[x,omega]]],member[x,natmul[y,z]]] (* derived 2007 April 5 in EVEN-ODD.NB *) member[natadd[x_,natmul[x_,x_]],even] := member[x,omega] (* derived 2007 March 6 in EVENODD.NB *) member[natadd[x_,x_],odd] := False (* added 2002 July 28 based on ADD-NAT.NB *) member[natadd[x_,y_],omega] := and[member[x,omega],member[y,omega]] (* derived 2008 October 7 in QUASIGPS.NB *) member[NATADD,QUASIGPS] := False (* derived 2006 July 8 in SEMIGPS.NB *) member[NATADD,SEMIGPS] := True (* added 2002 July 28 based on ADD-NAT.NB *) member[natadd[x_,y_],V] := and[member[x,omega],member[y,omega]] (* added 2002 June 15 based on OM-NAT.NB *) member[NATADD,V] := True (* derived 2007 March 13 in RUS-NAT.NB *) member[natdiv[x_,y_],natdiv[x_,y_]] := False (* derived 2007 February 4 in NATDIV-1.NB *) member[natdiv[x_,y_],omega] := member[pair[y,x],DIV] (* derived 2007 February 4 in NATDIV-1.NB *) member[natdiv[x_,y_],V] := member[pair[y,x],DIV] (* derived 2006 July 1 in BIN-MAP.NB *) member[NATEXP,BINOPS] := True (* derived 2006 October 20 in NAT-FIN.NB *) member[NATEXP,FINITE] := False (* derived 2006 July 1 in BIN-MAP.NB *) member[NATEXP,map[cart[omega,omega],omega]] := True (* derived 2007 January 18 in EXP-MONO.NB *) member[natexp[nat[w_],nat[x_]],natmul[nat[w_],natexp[nat[w_],nat[x_]]]] := member[set[0],nat[w]] (* derived 2006 November 30 in EXP-INEQ.NB *) member[natexp[x_,y_],natexp[x_,y_]] := False (* derived 2006 June 27 in NATEXP-1.NB *) member[natexp[x_,y_],omega] := and[member[x,omega],member[y,omega]] (* derived 2007 January 16 in EXP-MONO.NB *) member[natexp[succ[set[0]],nat[x_]],natexp[succ[set[0]],nat[y_]]] := member[nat[x],nat[y]] (* derived 2007 January 18 in EXP-MONO.NB *) member[natexp[succ[succ[nat[w_]]],nat[x_]],natexp[succ[succ[nat[w_]]],nat[y_]]] := member[nat[x],nat[y]] (* derived 2006 October 28 in NATEXP.NB *) member[NATEXP,V] := True (* derived 2006 June 27 in NATEXP-1.NB *) member[natexp[x_,y_],V] := and[member[x,omega],member[y,omega]] (* derived 2005 May 27 in MOD-SU-1.NB *) member[x_,natmod[x_,y_]] := or[and[member[x,V],not[member[x,omega]]], and[member[x,V],not[member[y,omega]]]] (* derived 2007 March 17 in MOD-LT.NB *) member[natmod[x_,y_],x_] := and[member[x,omega],member[y,omega],not[equal[0,y]],not[member[x,y]]] (* derived 2005 May 25 in MOD-CHAR.NB *) member[natmod[x_,y_],y_] := and[member[x,omega],member[y,omega],not[equal[0,y]]] (* derived 2006 June 10 in BINOPS.NB *) member[NATMOD,BINOPS] := True (* derived 2006 October 20 in NAT-FIN.NB *) member[NATMOD,FINITE] := False (* derived 2007 April 17 in LD9-19.NB *) member[natmod[x_,y_],ld[x_,y_]] := and[member[x,omega],member[y,omega]] (* derived 2006 July 1 in BIN-MAP.NB *) member[NATMOD,map[cart[omega,omega],omega]] := True (* derived 2007 March 13 in RUS-NAT.NB *) member[natmod[x_,y_],natmod[x_,y_]] := False (* derived 2005 May 17 based on NATMOD.NB *) member[natmod[x_,y_],omega] := and[member[x,omega],member[y,omega]] (* derived 2005 December 22 in SETHOOD.NB *) member[NATMOD,V] := True (* derived 2005 May 17 based on NATMOD.NB *) member[natmod[x_,y_],V] := and[member[x,omega],member[y,omega]] (* added 2002 October 14 based on WORK-O16.NB *) member[natmul[x_,y_],x_] := and[equal[0,y],member[x,omega],not[equal[0,x]]] (* derived 2007 March 10 in MUL-LT.NB *) member[x_,natmul[x_,y_]] := or[and[member[x,V],not[member[x,omega]]], and[member[x,V],not[member[y,omega]]],and[member[x,V],member[set[0],y],not[equal[0,x]]]] (* derived 2006 June 10 in BINOPS.NB *) member[NATMUL,BINOPS] := True (* derived 2007 April 5 in EVEN-ODD.NB *) member[natmul[x_,x_],even] := member[x,even] (* derived 2006 October 20 in NAT-FIN.NB *) member[NATMUL,FINITE] := False (* derived 2008 December 7 in NATMUL.NB *) member[NATMUL,GROUPS] := False (* derived 2007 April 5 in LD-4.NB *) member[natmul[u_,x_],ld[x_,y_]] := and[member[u,omega],member[x,omega],member[y,omega]] (* derived 2006 July 1 in BIN-MAP.NB *) member[NATMUL,map[cart[omega,omega],omega]] := True (* derived 2008 December 29 in MONOIDS.NB *) member[NATMUL,MONOIDS] := True (* derived 2006 November 30 in EXP-INEQ.NB *) member[natmul[nat[x_],nat[y_]],natexp[succ[nat[x_]],nat[y_]]] := True (* derived 2007 March 11 in SQRTINEQ.NB *) member[natmul[x_,x_],natmul[y_,y_]] := or[and[member[x,omega],member[x,y]],and[member[x,omega],not[member[y,omega]]]] (* derived 2007 March 10 in MUL-INEQ.NB *) member[natmul[x_,y_],natmul[x_,z_]] := or[and[member[x,omega],member[y,omega],not[member[z,omega]]], and[member[x,omega],member[y,omega],member[y,z],not[equal[0,x]]]] (* derived 2007 April 5 in EVEN-ODD.NB *) member[natmul[x_,x_],odd] := member[x,odd] (* added 2002 August 21 based on NATMUL.NB *) member[natmul[x_,y_],omega] := and[member[x,omega],member[y,omega]] (* derived 2008 October 7 in QUASIGPS.NB *) member[NATMUL,QUASIGPS] := False (* derived 2006 July 8 in SEMIGPS.NB *) member[NATMUL,SEMIGPS] := True (* added 2002 August 24 based on SETHOOD.NB *) member[NATMUL,V] := True (* added 2002 August 21 based on NATMUL.NB *) member[natmul[x_,y_],V] := and[member[x,omega],member[y,omega]] (* derived 2005 June 7 in O14COR.NB *) member[x_,natsub[x_,y_]] := or[and[member[x,V],not[member[x,omega]]],and[member[x,V],not[member[y,omega]]],member[x,y]] (* derived 2007 March 13 in LT-SUB.NB *) member[x_,natsub[y_,z_]] := or[and[member[x,V],member[y,z]], and[member[x,V],not[member[y,omega]]],and[member[x,V],not[member[z,omega]]], and[member[y,omega],member[z,omega],member[natadd[x,z],y],not[member[y,z]]]] (* derived 2005 May 25 in NATSUB.NB *) member[natsub[x_,y_],x_] := and[member[x,omega],member[y,omega],not[equal[0,y]],not[member[x,y]]] (* derived 2007 April 5 in LD-4.NB *) member[natsub[x_,y_],ld[x_,y_]] := and[member[x,omega],member[y,omega],subclass[y,x]] (* derived 2007 March 2 in LD-1.NB *) member[natsub[natmul[u_,x_],natmul[v_,y_]],ld[x_,y_]] := and[member[u,omega],member[v,omega], member[x,omega],member[y,omega],subclass[natmul[v,y],natmul[u,x]]] (* derived 2007 March 13 in RUS-NAT.NB *) member[natsub[x_,y_],natsub[x_,y_]] := False (* added 2002 September 18 based on SET-SUB.NB *) member[natsub[x_,y_],omega] := and[member[x,omega],member[y,omega],subclass[y,x]] (* added 2002 September 18 based on SET-SUB.NB *) member[natsub[x_,y_],V] := and[member[x,omega],member[y,omega],subclass[y,x]] (* derived 2006 August 16 in OL-SU-OM.NB *) member[odd,FINITE] := False (* derived 2006 August 17 in CTBL-U.NB *) member[odd,image[Q,OMEGA]] := True (* derived 2006 August 15 in EVEN-ODD.NB *) member[odd,V] := True (* derived 2004 October 12 in CMPCT-OM.NB *) member[omega,COMPACT] := False (* Theorem DK-C-OM in DEDEKIND proved 2000 June 12 *) member[omega,DEDEKIND] := False (* Theorem FIN-C-OM in FINITE proved 2000 March 14 *) member[omega,FINITE] := False (* derived 2004 October 12 in CMPCT-OM.NB *) member[omega,image[COARSER,FINITE]] := False (* derived 2005 February 20 in CARD-TWO.NB *) member[omega,image[PAIRSET,Di]] := False (* added 2002 May 29 based on ALEPH0.NB *) member[omega,image[Q,OMEGA]] := True (* added 1999 November 11 based on a session in 1999/NOV/10/WORK *) member[omega,omega] := False (* added 2001 August 23 based on OMEGA.NB *) member[omega,OMEGA] := True (* derived 2007 May 15 in OL-U-RA.NB *) member[omega,PRIMES] := False (* derived 2003 December 30 in T2.NB *) member[omega,range[SINGLETON]] := False (* derived 2007 July 20 in OMRA-SBV.NB *) member[omega,range[SUBVAR]] := False (* added 2002 May 26 based on EXAMPLE.NB *) member[omega,range[SUCC]] := False (* derived 2005 September 16 in HULL-DIV.NB *) member[omega,range[VERTSECT[DIV]]] := True (* derived 2008 March 18 in MEM-RAVS.NB *) member[omega,range[VERTSECT[inverse[DIV]]]] := True (* added 2001 December 2 based on RANK-2.NB *) member[omega,REGULAR] := True (* derived 2003 December 25 in TOPSDEFN.NB *) member[omega,TOPS] := False (* derived 2007 September 26 in UCH-TOPS.NB *) member[omega,Uchains[COMPACT]] := True (* derived 2007 September 26 in UCH-TOPS.NB *) member[omega,Uchains[DEDEKIND]] := True (* derived 2007 September 26 in UCH-TOPS.NB *) member[omega,Uchains[FINITE]] := True (* derived 2007 September 26 in UCH-TOPS.NB *) member[omega,Uchains[TOPS]] := True member[omega,V] := True (* added 98/02/07 Theorem ON-BF-2 in ON4 *) member[OMEGA,x_] := False (* introduced 2004 May 9 in OOPART.NB *) member[x_,OOPART] := and[equal[oopart[first[x]],second[x]],member[first[x],V]] (* derived 2005 December 22 in SETHOOD.NB *) member[OOPART,x_] := False (* derived 2006 March 30 in REG-FUNP.NB *) member[oopart[reg[x_]],REGULAR] := True (* derived 2004 May 9 in OOPART.NB *) member[oopart[setpart[x_]],V] := True (* derived 2007 May 18 in OL-SS.NB *) member[x_,ord[x_]] := False (* derived 2005 October 19 in TO-CL-WO.NB *) member[ord[x_],FINITE] := member[ord[x],omega] (* derived 2006 March 14 in ORDRULES.NB *) member[ord[x_],image[inverse[S],ord[x_]]] := False (* derived 2007 April 29 in DO-CARD.NB *) member[ord[x_],image[Q,OMEGA]] := True (* derived 2005 October 19 in ORD-WRAP.NB *) member[ord[x_],OMEGA] := True (* derived 2005 October 19 in ORD-WRAP.NB *) member[ord[x_],ord[x_]] := False (* derived 2005 December 6 in ORDINAL.NB *) member[ord[x_],REGULAR] := True (* derived 2006 March 25 in PCON-RUS.NB *) member[ord[x_],RUSSELL] := True (* derived 2005 October 19 in ORD-WRAP.NB *) member[ord[x_],U[ord[x_]]] := False (* derived 2005 October 19 in ORD-WRAP.NB *) member[ord[x_],V] := True (* derived 2006 March 17 in OL-CARD.NB *) member[ordlist[x_],V] := True member[x_,P[y_]] := and[member[x,V],subclass[x,y]] (* derived 2004 February 7 in COMPACT.NB *) member[P[x_],COMPACT] := member[x,FINITE] (* derived 2005 February 6 in DESCEND.NB *) member[P[x_],DESCENDING] := False (* derived 2008 January 2 in FINCHR-1.NB *) member[P[x_],FINCHAR] := member[x,V] (* Theorems FIN-PC1 and FIN-PC3 in FINITE proved 2000 April 3 *) member[P[x_],FINITE] := member[x,FINITE] (* derived 2007 July 18 in SBV-DI.NB *) member[P[x_],fix[UCHAINS]] := member[x,V] (* derived 2005 January 9 in PC-CARD2.NB *) member[P[x_],image[PAIRSET,Di]] := member[x,range[SINGLETON]] (* derived 2008 January 27 in Q-S.NB *) member[P[x_],image[Q,P[x_]]] := False (* derived 2008 September 18 in SU-PC-OM.NB *) member[P[x_],omega] := subclass[x,set[0]] (* derived 2008 September 18 in SU-PC-OM.NB *) member[P[x_],OMEGA] := subclass[x,set[0]] (* derived 2003 December 28 in PTCLOSED.NB *) member[P[x_],PointClosed] := member[x,V] (* derived 2007 July 18 in RA-CLIQ.NB *) member[P[x_],range[CLIQUES]] := member[x,V] (* derived 2005 January 9 in PC-CARD2.NB *) member[P[x_],range[PAIRSET]] := or[equal[0,x],member[x,range[SINGLETON]]] (* derived 2004 January 2 in CUT-EQNS.NB *) member[P[x_],range[SINGLETON]] := equal[0,x] (* derived 2007 July 17 in RA-SBV.NB *) member[P[x_],range[SUBVAR]] := member[x,V] (* Theorems REG-6 and REG-14 in REG2 *) member[P[x_],REGULAR] := member[x,REGULAR] (* derived 2005 January 15 in HILBERT.NB *) member[P[x_],RUSSELL] := member[x,V] (* derived 2004 June 27 in X1704-09.NB *) member[P[RUSSELL],x_] := False (* derived 2003 December 27 in T1.NB *) member[P[x_],T1] := member[x,V] (* derived 2003 December 30 in T2.NB *) member[P[x_],T2] := member[x,V] (* derived 2003 December 25 in TOPSDEFN.NB *) member[P[x_],TOPS] := member[x,V] (* derived 2008 October 22 in P-U.NB *) member[P[U[x_]],x_] := False (* added 98/02/27 *) member[P[x_],V] := member[x,V] (* power set axiom *) (* added 2002 January 1 based on PAIR-MEM.NB *) member[z_,PAIR[x_,y_]] := or[and[member[z,V],not[member[x,V]]], and[member[z,V],not[member[y,V]]],member[z,pair[x,y]]] (* replaced 2002 January 1 based on REPLACE.NB *) member[PAIR[x_,y_],z_] := and[member[x,V],member[y,V],member[pair[x,y],z]] (* derived 2005 April 16 in FACTRL.NB *) member[pair[0,0],FACTORIAL] := False (* derived 2004 July 26 in DORAFUNS.NB *) member[pair[0,0],image[DORA,FUNS]] := True (* derived 2005 May 17 in IMIN-ADD.NB *) member[pair[x_,0],composite[image[inverse[NATADD],set[y_]],z_]] := and[member[x,V],member[y,omega],member[pair[x,y],z]] (* derived 2005 January 27 in DIV.NB *) member[pair[0,x_],DIV] := equal[0,x] (* derived 2005 January 27 in DIV.NB *) member[pair[x_,0],DIV] := member[x,omega] (* derived 2005 February 5 in X3307.NB *) member[pair[0,x_],Q] := equal[0,x] (* derived 2005 February 5 in X3307.NB *) member[pair[x_,0],Q] := equal[0,x] (* derived 2008 August 25 in IMINFACT.NB *) member[pair[0,set[0]],FACTORIAL] := True (* revised 2001 November 15 *) member[pair[x_,y_],ACLOSURE] := and[equal[Aclosure[x],y],member[y,V]] (* revised 2001 November 15 *) member[pair[x_,y_],ADJOIN[z_]] := and[member[x,V],member[y,V],equal[union[x,z],y]] (* derived 2009 January 5 in CAT-AX-2.NB *) member[pair[u_,APPLY[cat[x_],PAIR[u_,v_]]],composite[cat[x_],inverse[FIRST]]] := member[pair[u,v],domain[cat[x]]] (* derived 2009 January 5 in CAT-AX-2.NB *) member[pair[v_,APPLY[cat[x_],PAIR[u_,v_]]],composite[cat[x_],inverse[SECOND]]] := member[pair[u,v],domain[cat[x]]] (* derived 2009 January 9 in CAT-DO.NB *) member[pair[APPLY[cod[cat[x_]],u_],u_],domain[cat[x_]]] := member[u,range[cat[x]]] (* derived 2009 January 9 in CAT-DO.NB *) member[pair[u_,APPLY[cod[cat[x_]],v_]],domain[cat[x_]]] := member[pair[u,v],domain[cat[x]]] (* derived 2009 January 9 in CAT-DO.NB *) member[pair[u_,APPLY[dom[cat[x_]],u_]],domain[cat[x_]]] := member[u,range[cat[x]]] (* derived 2009 January 9 in CAT-DO.NB *) member[pair[APPLY[dom[cat[x_]],u_],v_],domain[cat[x_]]] := member[pair[u,v],domain[cat[x]]] (* derived 2007 May 13 in PAIRFACT.NB *) member[pair[x_,APPLY[FACTORIAL,x_]],FACTORIAL] := member[x,omega] (* derived 2005 December 19 in FUNPART.NB *) member[pair[x_,APPLY[funpart[y_],x_]],funpart[y_]] := member[x,domain[funpart[y]]] (* derived 2007 April 20 in GCD-UP.NB *) member[pair[APPLY[GLB[DIV],set[nat[x_],nat[y_]]],nat[x_]],DIV] := True (* derived 2005 December 20 in POGLBLUB.NB *) member[pair[x_,APPLY[GLB[po[y_]],x_]],GLB[po[y_]]] := member[x,domain[GLB[po[y]]]] (* derived 2005 December 20 in POGLBLUB.NB *) member[pair[x_,APPLY[LUB[po[y_]],x_]],LUB[po[y_]]] := member[x,domain[LUB[po[y]]]] (* revised 2001 November 15 *) member[pair[x_,y_],BIGCAP] := and[member[x,V],member[y,V],equal[A[x],y]] (* revised 2001 November 15 *) member[pair[x_,y_],BIGCUP] := and[member[x,V],member[y,V],equal[U[x],y]] (* added 2001 November 16 *) member[pair[x_,y_],CAP] := and[equal[intersection[first[x],second[x]],y],member[first[x],V]] (* added 2001 December 2 based on CARD-FUN.NB *) member[pair[x_,y_],CARD] := and[equal[card[x],y],member[y,V]] (* derived 2008 April 17 in EQ-CARD.NB *) member[pair[card[x_],card[y_]],Q] := and[equal[card[x],card[y]],member[x,image[Q,OMEGA]]] (* derived 2005 January 7 in CARD-Q.NB *) member[pair[x_,card[x_]],Q] := member[x,image[Q,OMEGA]] (* derived 2008 June 5 in CARDHART.NB *) member[pair[card[x_],x_],Q] := member[x,image[Q,OMEGA]] (* added 2003 October 16 based on MEMBCART.NB *) member[pair[u_,v_],cart[x_,y_]] := and[member[u,x],member[v,y]] (* added 2001 April 29 based on CLIQUES2.NB *) member[pair[x_,y_],CLIQUES] := and[equal[cliques[x],y],member[x,V],member[y,V]] (* added 2003 July 4 based on COARSER.NB *) member[pair[x_,y_],COARSER] := and[member[y,V],subclass[x,y],equal[U[x],U[y]]] (* added 2001 May 18 based on COMMUTE3.NB *) member[pair[x_,y_],COMMUTE] := and[member[x,V],member[y,V], equal[composite[x,y],composite[y,x]]] (* derived 2007 April 3 in DIV-DV.NB *) member[pair[x_,complement[image[V,y_]]],DIV] := and[member[x,omega],not[equal[0,y]]] (* added 2002 January 23 based on HULL-ACL.TXT *) member[pair[x_,y_],composite[z_,ACLOSURE]] := and[member[x,V],member[y,V],member[pair[Aclosure[x],y],z]] (* added 2002 May 7 based on FIX-HULL.NB *) member[pair[x_,y_],composite[w_,ADJOIN[z_]]] := and[member[x,V],member[y,V],member[z,V],member[pair[union[x,z],y],w]] (* added 2002 May 6 based on A-IMS.NB *) member[pair[x_,y_],composite[z_,BIGCAP]]:= and[member[x,V],member[y,V],member[pair[A[x],y],z],not[equal[0,x]]] (* added 2002 January 13 based on RA-POW.NB *) member[pair[x_,y_],composite[z_,BIGCUP]] := and[member[x,V],member[y,V],member[pair[U[x],y],z]] (* added 2001 December 10 based on CARD-ALL.NB *) member[pair[x_,y_],composite[z_,CARD]] := and[member[x,image[Q,OMEGA]],member[y,V],member[pair[card[x],y],z]] (* added 2002 May 2 based on CLIQUES.NB *) member[pair[x_,y_],composite[z_,CLIQUES]] := and[member[x,V],member[y,V],member[pair[cliques[x],y],z]] (* added 2002 October 19 based on E-RULES.NB *) member[pair[x_,y_],composite[complement[E],z_]] := and[member[y,V],not[subclass[image[z,set[x]],y]]] (* added 2003 October 28 based on APPLY.NB *) member[pair[x_,y_],composite[complement[inverse[E]],z_]] := and[member[x,image[inverse[z],P[complement[set[y]]]]],member[y,V]] (* added 2002 October 19 based on E-RULES.NB *) member[pair[x_,y_],composite[z_,complement[inverse[E]]]] := and[member[x,V],not[subclass[image[inverse[z],set[y]],x]]] (* derived 2004 March 30 in CO-ES-ID.NB *) member[pair[x_,y_],composite[complement[S],IMAGE[z_]]] := and[member[x,V],member[y,V],member[image[z,x],V],not[subclass[image[z,x],y]]] (* derived 2006 October 19 in IMVS-EQV.NB *) member[pair[x_,y_],composite[COMPOSE,id[INVERSE],inverse[SECOND]]] := and[equal[y,composite[inverse[x],x]],member[x,V],member[y,V],subclass[x,cart[V,V]]] (* derived 2004 April 18 in REPLACE.NB *) member[pair[x_,y_],composite[z_,CORE[w_]]] := and[member[x,V],member[y,V],member[pair[core[w,x],y],z]] (* derived 2004 October 30 in MEMB-CO.NB *) member[pair[u_,v_],composite[x_,cross[y_,z_]]] := and[member[u,composite[inverse[z],image[inverse[x],set[v]],y]],member[first[u],V]] (* derived 2004 May 15 in VARIOUS.NB *) member[pair[x_,y_],composite[Di,z_]] := and[member[y,V],not[subclass[image[z,set[x]],set[y]]]] (* derived 2004 May 15 in VARIOUS.NB *) member[pair[x_,y_],composite[z_,Di]] := and[member[x,V],not[subclass[image[inverse[z],set[y]],set[x]]]] (* derived 2007 October 19 in RECT-CUT.NB *) member[pair[x_,y_],composite[z_,DORA]] := and[member[x,V],member[y,V],member[pair[pair[domain[x],range[x]],y],z]] (* added 2002 May 6 based on FIX-HULL.NB *) member[pair[x_,y_],composite[z_,DUP]] := and[member[x,V],member[y,V],member[pair[pair[x,x],y],z]] (* added 2001 May 24 based on IM-C.NB *) member[pair[x_,y_],composite[E,z_]] := and[member[x,image[inverse[z],y]],member[y,V]] (* added 2002 October 19 based on E-RULES.NB *) member[pair[x_,y_],composite[z_,E]] := member[x,U[image[inverse[z],set[y]]]] (* derived 2005 May 21 in NATSUB.NB *) member[pair[x_,y_],composite[FIRST,id[cart[V,z_]],inverse[NATADD]]] := member[natsub[x,y],z] (* added 2002 May 18 based on FUNPART.NB *) member[pair[x_,y_],composite[z_,FUNPART]] := and[member[x,V],member[y,V],member[pair[funpart[x],y],z]] (* added 2001 December 6 based on MEMBER.NB *) member[pair[x_,y_],composite[Id,z_]] := and[member[x,V],member[y,V],member[pair[x,y],z]] (* added 2001 December 6 based on MEMBER.NB *) member[pair[u_,v_],composite[w_,id[x_]]] := and[member[u,x],member[v,V],member[pair[u,v],w]] (* added 2001 December 6 based on MEMBER.NB *) member[pair[u_,v_],composite[id[y_],w_]] := and[member[u,V],member[v,y],member[pair[u,v],w]] (* derived 2008 May 22 in IN-Q.NB *) member[pair[composite[Id,x_],inverse[x_]],Q] := and[member[domain[x],V],member[range[x],V]] (* derived 2005 July 22 in CARD-MUL.NB *) member[pair[x_,y_],composite[w_,IMAGE[composite[id[z_],inverse[SECOND]]]]] := and[member[x,V],member[y,V],member[image[inverse[z],x],V],member[pair[composite[id[x],z],y],w]] (* added 2002 June 1 based on RCF.NB *) member[pair[x_,y_],composite[z_,IMAGE[id[w_]]]] := and[member[x,V],member[y,V],member[pair[intersection[w,x],y],z]] (* derived 2006 January 24 in RALAMHUL.NB *) member[pair[x_,y_],composite[z_,IMAGE[inverse[DUP]]]] := and[member[x,V],member[y,V],member[pair[fix[x],y],z]] (* derived 2007 March 2 in LD-1.NB *) member[pair[x_,y_],composite[image[inverse[NATADD],image[DIV,set[z_]]],DIV]] := member[y,ld[z,x]] (* added 2002 January 15 based on EQV-2.NB *) member[pair[x_,y_],composite[z_,id[IMAGE[SWAP]],inverse[FIRST]]] := and[member[x,V],member[y,V],member[pair[pair[x,inverse[x]],y],z]] (* added 2002 May 10 based on RESTRICT.NB *) member[pair[x_,y_],composite[z_,IMAGE[FIRST]]] := and[member[x,V],member[y,V],member[pair[domain[x],y],z]] (* derived 2005 May 22 in SUB-DIV.NB *) member[pair[y_,z_],composite[image[inverse[NATADD],set[x_]],DIV]] := member[pair[y,natsub[x,z]],DIV] (* derived 2004 July 26 in DORAFUNS.NB *) member[pair[x_,y_],composite[z_,IMAGE[SECOND]]] := and[member[x,V],member[y,V],member[pair[range[x],y],z]] (* added 2002 May 24 based on ADJOIN.NB *) member[pair[x_,y_],composite[z_,IMAGE[SUCC]]] := and[member[x,V],member[y,V],member[pair[image[SUCC,x],y],z]] (* derived 2005 February 5 in X3249.NB *) member[pair[x_,y_],composite[z_,IMAGE[SWAP]]] := and[member[x,V],member[y,V],member[pair[inverse[x],y],z]] (* derived 2004 December 24 in X2997.NB *) member[pair[u_,v_],composite[x_,intersection[composite[inverse[FIRST],y_],composite[inverse[SECOND],z_]]]] := member[u,image[inverse[z],image[image[inverse[x],set[v]],image[y,set[u]]]]] (* added 2003 January 25 based on INVAR.NB *) member[pair[x_,y_],composite[z_,INVAR]] := and[member[x,V],member[y,image[z,invar[x]]]] (* added 2002 January 15 based on EQV-1.NB *) member[pair[x_,y_],composite[z_,INVERSE]] := and[member[x,V],member[y,V], member[pair[inverse[x],y],z],subclass[x,cart[V,V]]] (* added 2003 July 25 based on CLIQEQDF.NB *) member[pair[x_,y_],composite[INVERSE,z_]] := and[member[x,V],member[y,V], member[pair[x,inverse[y]],z],subclass[y,cart[V,V]]] (* derived 2004 June 12 in X997.NB *) member[pair[x_,x_],composite[inverse[y_],y_]] := member[x,domain[y]] (* derived 2004 June 12 in X997.NB *) member[pair[x_,x_],composite[y_,inverse[y_]]] := member[x,range[y]] (* derived 2004 July 22 in X21--.NB *) member[pair[x_,y_],composite[inverse[BIGCAP],z_]] := and[member[x,V],member[y,V],member[pair[x,A[y]],z],not[equal[0,y]]] (* derived 2008 August 17 in CLQ-CMT.NB *) member[pair[x_,y_],composite[inverse[BIGCUP],z_]] := and[member[x,V],member[y,V],member[pair[x,U[y]],z]] (* derived 2007 May 3 in SMALLWOB.NB *) member[pair[x_,y_],composite[inverse[CARD],z_]] := and[member[x,V],member[y,image[Q,OMEGA]],member[pair[x,card[y]],z]] (* derived 2004 June 5 in THPT-TRV.NB *) member[pair[u_,v_],composite[inverse[x_],complement[x_]]] := and[member[u,V],not[subclass[image[x,set[v]],image[x,set[u]]]]] (* added 2003 May 18 based on SQRTUNIQ.NB *) member[pair[x_,y_],composite[inverse[DUP],z_]] := and[member[x,V],member[y,V],member[pair[x,pair[y,y]],z]] (* added 2001 October 12 based on CO-FU-3.NB *) member[pair[x_,y_],composite[z_,inverse[E]]] := and[member[x,V],member[y,image[z,x]]] (* added 2002 October 19 based on E-RULES.NB *) member[pair[x_,y_],composite[inverse[E],z_]] := member[y,U[image[z,set[x]]]] (* added 2002 May 12 based on OM-SC-2B.NB *) member[pair[x_,y_],composite[inverse[E],IMAGE[inverse[BIGCUP]]]] := and[member[x,V],member[U[y],x]] (* derived 2009 January 9 in CAT-DO.NB *) member[pair[u_,v_],composite[inverse[funpart[x_]],funpart[y_]]] := and[equal[APPLY[funpart[x],v],APPLY[funpart[y],u]],member[v,domain[funpart[x]]]] (* derived 2004 July 26 in DORAFUNS.NB *) member[pair[u_,v_],composite[inverse[IMAGE[FIRST]],z_]] := and[member[u,V],member[v,V],member[pair[u,domain[v]],z]] (* derived 2006 July 18 in BINHOM-1.NB *) member[pair[u_,v_],composite[inverse[IMAGE[x_]],IMAGE[y_]]] := and[equal[image[x,v],image[y,u]],member[u,V],member[v,V],member[image[x,v],V]] (* derived 2005 January 6 in DJ-U-Q.NB *) member[pair[x_,y_],composite[inverse[IMAGE[SECOND]],z_]] := and[member[x,V],member[y,V],member[pair[x,range[y]],z]] (* added 2003 August 8 based on REPLACE.NB *) member[pair[x_,y_],composite[inverse[PLUS],z_]] := and[member[x,V],member[y,omega],member[pair[x,plus[y]],z]] (* added 2003 August 8 based on CLIQEQDF.NB *) member[pair[x_,y_],composite[inverse[plus[x_]],plus[y_]]] := and[member[x,omega],member[y,omega]] (* derived 2004 April 7 in PCDORA-Q.NB *) member[pair[x_,y_],composite[inverse[POWER],z_]] := and[member[x,V],member[y,V],member[pair[x,P[y]],z]] (* derived 2008 January 29 in CO-IN-S.NB *) member[pair[x_,y_],composite[z_,inverse[S]]] := and[member[x,V],member[y,image[z,P[x]]]] (* derived 2008 February 10 in TRICH-I.NB *) member[pair[x_,y_],composite[inverse[S],id[z_],S]] := member[union[x,y],image[inverse[S],z]] (* derived 2004 August 19 in X2901-93.NB *) member[pair[x_,y_],composite[inverse[S],IMAGE[z_]]] := and[member[x,V],member[image[z,x],V],subclass[y,image[z,x]]] (* derived 2007 November 23 in ZORN-MAX.NB *) member[pair[x_,y_],composite[inverse[S],MAXIMAL[S]]] := and[member[x,V],not[subclass[intersection[x,image[S,set[y]]],image[inverse[PS],x]]]] (* added 2002 January 17 based on ANTISYM1.NB *) member[pair[x_,y_],composite[inverse[SINGLETON],z_]] := and[member[x,V],member[y,V],member[pair[x,set[y]],z]] (* added 2002 May 24 based on ADJOIN.NB *) member[pair[x_,y_],composite[inverse[SUCC],z_]] := and[member[x,V],member[y,V],member[pair[x,succ[y]],z]] (* derived 2005 February 4 in X3943.NB *) member[pair[x_,y_],composite[inverse[TC],z_]] := and[member[x,V],member[y,V],member[pair[x,tc[y]],z]] (* derived 2007 March 2 in LD-2.NB *) member[pair[u_,v_],composite[inverse[times[x_]],z_,times[y_]]] := and[member[u,omega], member[v,omega],member[x,omega],member[y,omega],member[pair[natmul[u,y],natmul[v,x]],z]] (* derived 2004 July 15 in X1698.NB *) member[pair[u_,v_],composite[inverse[VERTSECT[x_]],y_]] := and[member[u,V],member[v,V],member[image[x,set[v]],V],member[pair[u,image[x,set[v]]],y]] (* added 2002 June 25 based on LEFTMEMB.NB *) member[pair[u_,v_],composite[w_,LEFT[x_]]] := and[member[u,V],member[v,V],member[x,V],member[pair[pair[x,u],v],w]] (* derived 2005 May 21 in NATSUB.NB *) member[pair[x_,y_],composite[NATADD,id[cart[V,z_]],inverse[FIRST]]] := member[natsub[y,x],z] (* added 2003 August 8 based on REPLACE.NB *) member[pair[x_,y_],composite[z_,PLUS]] := and[member[x,omega],member[y,V],member[pair[plus[x],y],z]] (* added 2003 August 8 based on CLIQEQDF.NB *) member[pair[x_,y_],composite[plus[y_],inverse[plus[x_]]]] := and[member[x,omega],member[y,omega]] (* added 2002 May 10 based on U-A.NB *) member[pair[x_,y_],composite[z_,POWER]] := and[member[x,V],member[y,V],member[pair[P[x],y],z]] (* derived 2008 January 27 in Q-S.NB *) member[pair[x_,y_],composite[Q,S]] := and[member[x,image[Q,P[y]]],member[y,V]] (* added 2002 June 1 based on RCF.NB *) member[pair[x_,y_],composite[z_,RC[w_]]] := and[member[w,V],member[y,V], member[pair[intersection[w,complement[x]],y],z],subclass[x,w]] (* added 2002 June 24 based on MEMBER.NB *) member[pair[u_,v_],composite[w_,RIGHT[x_]]] := and[member[u,V],member[v,V],member[x,V],member[pair[pair[u,x],v],w]] (* derived 2008 January 29 in CO-IN-S.NB *) member[pair[x_,y_],composite[S,z_]] := and[member[x,image[inverse[z],P[y]]],member[y,V]] (* added 2002 January 17 based on ANTISYM1.NB *) member[pair[x_,y_],composite[z_,SINGLETON]] := and[member[x,V],member[y,V],member[pair[set[x],y],z]] (* added 2002 April 26 based on FULSUC-A.NB *) member[pair[x_,y_],composite[z_,SUCC]] := and[member[x,V],member[y,V],member[pair[succ[x],y],z]] (* added 2002 November 3 based on FLIP.NB *) member[pair[x_,y_],composite[z_,SWAP]] := and[member[y,V],member[first[x],V], member[pair[pair[second[x],first[x]],y],z]] (* added 2002 November 3 based on FLIP.NB *) member[pair[x_,y_],composite[SWAP,z_]] := and[member[x,V],member[first[y],V], member[pair[x,pair[second[y],first[y]]],z]] (* added 2002 October 15 based on MEMBER.NB *) member[pair[u_,v_],composite[w_,VERTSECT[x_]]] := and[member[u,V],member[v,V],member[image[x,set[u]],V], member[pair[image[x,set[u]],v],w]] (* derived 2006 January 25 in VS-CO.NB *) member[pair[x_,y_],composite[z_,VS]] := and[member[x,V],member[y,V], member[pair[composite[VERTSECT[x],id[domain[x]]],y],z]] (* derived 2004 April 17 in REPLACE.NB *) member[pair[x_,y_],CORE[z_]] := and[equal[y,core[z,x]],member[x,V],member[y,V]] (* added 2002 June 22 based on X-RO-ASS.NB *) member[pair[u_,v_],cross[x_,y_]] := and[member[first[u],V],member[first[v],V], member[pair[first[u],first[v]],x],member[pair[second[u],second[v]],y]] (* added 2001 November 17 based on CUP.NB *) member[pair[x_,y_],CUP] := and[equal[union[first[x],second[x]],y],member[first[x],V]] (* added 2001 November 14 based on DI.NB *) member[pair[x_,y_],Di] := and[member[x,V],member[y,V],not[equal[x,y]]] (* New rule added 1998 December 24 *) member[pair[u_,v_],DISJOINT] := and[member[u,V],member[v,V],disjoint[u,v]] (* derived 2005 January 29 in DIV.NB *) member[pair[x_,x_],DIV] := member[x,omega] (* derived 2008 November 26 in SEMIGP.NB *) member[pair[x_,y_],domain[binop[z_]]] := and[member[x,fix[domain[binop[z]]]],member[y,fix[domain[binop[z]]]]] (* derived 2005 January 18 in OO-Q.NB *) member[pair[domain[funpart[setpart[x_]]],funpart[setpart[x_]]],Q] := True (* derived 2004 December 11 in OO-Q.NB *) member[pair[domain[oopart[x_]],range[oopart[x_]]],Q] := member[domain[oopart[x]],V] (* derived 2005 January 18 in OO-Q.NB *) or[member[pair[domain[x_],x_],Q],not[FUNCTION[x_]],not[member[x_,y_]]] := True (* derived 2008 November 26 in QUASIGP.NB *) member[pair[x_,y_],domain[quasigp[z_]]] := and[member[x,range[quasigp[z]]],member[y,range[quasigp[z]]]] (* derived 2008 November 26 in SEMIGP.NB *) member[pair[x_,y_],domain[semigp[z_]]] := and[member[x,fix[domain[semigp[z]]]],member[y,fix[domain[semigp[z]]]]] (* added 2004 July 14 based on X2530-41.NB *) member[pair[x_,y_],DUP] := and[equal[y,pair[x,x]],member[x,V]] (* Axiom AX-E-2 in AX-B and Theorems E-V1 and E-V2 in E1 *) member[pair[u_,v_],E] := and[member[u,v],member[v,V]] (* added 2002 November 3 based on EQUIDIFF.NB *) member[pair[x_,y_],EQUIDIFF] := and[equal[natadd[first[x],second[y]],natadd[first[y],second[x]]], member[first[x],omega],member[first[y],omega], member[second[x],omega],member[second[y],omega]] (* derived 2004 May 12 in EQUIV.NB *) member[pair[x_,y_],EQUIV] := and[equal[y,eqv[x]],member[x,V],member[y,V]] (* derived 2006 October 24 in EVAL.NB *) member[pair[x_,y_],eval[z_]] := and[equal[image[x,set[z]],set[y]],member[x,V],member[y,V]] (* derived 2006 August 17 in CTBL-U.NB *) member[pair[even,x_],Q] := equal[omega,card[x]] (* derived 2006 August 17 in CTBL-U.NB *) member[pair[x_,even],Q] := equal[omega,card[x]] (* derived 2008 August 26 in FIX-FACT.NB *) member[pair[x_,x_],FACTORIAL] := or[equal[x,set[0]],equal[x,succ[set[0]]]] (* derived 2006 December 13 in FACT.NB removed 2007 May 12 due to looping problems member[pair[x_,y_],FACTORIAL] := and[equal[y,APPLY[FACTORIAL,x]],member[x,omega]] *) (* added 2001 November 14 based on MEM-CART.NB *) member[pair[x_,y_],FIRST] := and[equal[first[x],y],member[y,V]] (* derived 2004 October 30 in MEMB-CO.NB *) member[pair[first[w_],second[w_]],composite[x_,y_]] := member[w,composite[x,y]] (* derived 2006 November 30 in EXP-INEQ.NB *) member[pair[u_,v_],fix[composite[inverse[NATEXP],inverse[IMAGE[inverse[times[nat[x_]]]]],E,SECOND]]] := and[member[u,omega],member[v,omega],member[natmul[v,nat[x]],natexp[u,v]]] (* derived 2008 September 4 in IN-2-SBV.NB *) member[pair[x_,y_],fix[composite[inverse[SECOND],IMG]]] := and[equal[y,image[x,y]],member[x,V]] (* derived 2008 May 20 in OO-Q.NB *) member[pair[x_,y_],fix[composite[inverse[SECOND],z_,IMG]]] := and[member[x,V],member[y,V],member[pair[image[x,y],y],z]] (* added 2000 September 8 based on FUNPART.NB *) member[pair[x_,y_],FUNPART] := and[member[x,V],member[y,V],equal[funpart[x],y]] (* derived 2006 December 13 in FACT.NB removed 2006 December 15 due to looping problems member[pair[x_,y_],funpart[z_]] := and[equal[y,APPLY[funpart[z],x]],member[x,domain[funpart[z]]]] *) (* derived 2007 February 15 in GCD-1.NB *) member[pair[x_,y_],GLB[DIV]] := and[equal[y,APPLY[GLB[DIV],x]],subclass[x,omega]] (* added 2000 November 21 based on MEMBER.NB *) member[pair[x_,y_],GREATEST[z_]] := and[member[x,V],member[y,x],subclass[x,image[inverse[z],set[y]]]] (* derived 2008 January 22 in HART-FU.NB *) member[pair[x_,y_],HARTOGS] := and[equal[y,intersection[OMEGA,image[Q,P[x]]]],member[x,V],member[y,V]] (* derived 2004 March 29 based on HULL.NB *) member[pair[x_,y_],HULL[z_]] := and[equal[y,hull[z,x]],member[x,V],member[y,V]] (* Theorems ID-1,ID-2 and ID-3 in ID1 *) member[pair[u_,v_],Id] := and[member[u,V],equal[u,v]] (* Theorems IDX-OP-1,IDX-EQ and IDX-6 in IDX1 *) member[pair[u_,v_],id[x_]] := and[member[u,x],equal[u,v]] (* derived 2006 November 27 in BH-IDEMP.NB *) member[pair[id[omega],id[omega]],INTDIV] := True (* derived 2007 January 11 in PLUSINEQ.NB *) member[pair[id[omega],inverse[plus[x_]]],INTLEQ] := equal[0,x] (* derived 2007 January 11 in PLUSINEQ.NB *) member[pair[id[omega],plus[x_]],INTLEQ] := member[x,omega] (* derived 2008 December 16 in IDS.NB *) member[pair[u_,v_],ids[CATORELN]] := and[equal[u,id[v]],member[v,V]] (* revised 2001 November 15 *) member[pair[x_,y_],IMAGE[z_]] := and[member[x,V],member[y,V],equal[image[z,x],y]] (* added 2001 March 11 based on IMIN.NB *) member[pair[x_,y_],image[inverse[CAP],z_]] := and[member[x,V],member[y,V],member[intersection[x,y],z]] (* added 2001 March 11 based on IMIN.NB *) member[pair[x_,y_],image[inverse[CART],z_]] := and[member[x,V],member[y,V],member[cart[x,y],z]] (* derived 2009 January 21 in INV.NB *) member[pair[u_,v_],image[inverse[cat[x_]],y_]] := member[APPLY[cat[x],PAIR[u,v]],y] (* added 2001 March 11 based on IMIN.NB *) member[pair[x_,y_],image[inverse[COMPOSE],z_]] := and[member[x,V],member[y,V],member[composite[x,y],z]] (* added 2001 March 11 based on IMIN.NB *) member[pair[x_,y_],image[inverse[CROSS],z_]] := and[member[x,V],member[y,V],member[cross[x,y],z]] (* added 2001 March 11 based on IMIN.NB *) member[pair[x_,y_],image[inverse[CUP],z_]] := member[union[x,y],z] (* added 2001 March 11 based on IMIN.NB *) member[pair[x_,y_],image[inverse[DIF],z_]] := and[member[x,V],member[y,V],member[intersection[x,complement[y]],z]] (* added 2001 March 11 based on IMIN.NB *) member[pair[x_,y_],image[inverse[IMG],z_]] := and[member[x,V],member[y,V],member[image[x,y],z]] (* derived 2006 July 31 in IMIN-ADD.NB *) member[pair[x_,y_],image[inverse[INTADD],z_]] := member[intadd[x,y],z] (* derived 2005 January 17 based on KURADEFN.NB *) member[pair[x_,y_],image[inverse[KURA],z_]] := and[member[x,V],member[y,V],member[set[set[x],set[x,y]],z]] (* added 2001 September 4 based on BIN-IMIN.NB *) member[pair[x_,y_],image[inverse[MAP],z_]] := and[member[x,V],member[y,V],member[map[x,y],z]] (* added 2002 July 30 based on IMIN-ADD.NB *) member[pair[x_,y_],image[inverse[NATADD],z_]] := member[natadd[x,y],z] (* derived 2006 July 31 in IMIN-ADD.NB *) member[pair[x_,y_],image[inverse[NATEXP],z_]] := member[natexp[x,y],z] (* derived 2005 September 8 in RAVS-DIV.NB *) member[pair[x_,y_],image[inverse[NATMOD],z_]] := member[natmod[x,y],z] (* added 2002 August 21 based on NATMUL.NB *) member[pair[x_,y_],image[inverse[NATMUL],z_]] := member[natmul[x,y],z] (* revised 2002 April 18 based on REPLACE.NB *) member[pair[x_,y_],image[inverse[PAIRSET],z_]] := and[member[x,V],member[y,V],member[set[x,y],z]] (* added 2001 September 4 based on BIN-IMIN.NB *) member[pair[x_,y_],image[inverse[SYMDIF],z_]] := and[member[x,V],member[y,V], member[union[intersection[x,complement[y]],intersection[y,complement[x]]],z]] (* derived 2007 April 3 in DIV-DV.NB *) member[pair[x_,image[V,y_]],DIV] := and[equal[0,y],member[x,omega]] (* derived 2007 April 3 in DIV-DV.NB *) member[pair[image[V,x_],y_],DIV] := and[equal[0,x],equal[0,y]] (* derived 2006 December 18 in INTDIV.NB *) member[pair[x_,x_],INTDIV] := member[x,Z] (* derived 2005 January 7 in UP-K.NB *) member[pair[intersection[x_,complement[set[y_]]],x_],K] := and[member[x,V],member[y,x]] (* derived 2007 January 23 in BINOM.NB *) member[pair[intersection[x_,domain[oopart[y_]]],image[oopart[y_],x_]],Q] := member[intersection[x,domain[oopart[y]]],V] (* derived 2008 June 5 in FP-HART.NB *) member[pair[intersection[OMEGA,image[Q,P[x_]]],x_],Q] := False (* derived 2006 December 19 in ZTIMES-1.NB *) member[pair[x_,t_],INTTIMES] := and[equal[image[t,set[composite[id[omega],SUCC]]],set[x]], member[t,binhom[INTADD,INTADD]],member[x,V]] (* revised 2001 November 15 *) member[pair[u_,v_],INVERSE] := and[member[u,V],member[v,V],subclass[u,cart[V,V]],equal[inverse[u],v]] (* added 2001 December 6 based on MEMBER.NB *) member[pair[x_,y_],inverse[z_]] := and[member[x,V],member[y,V],member[pair[y,x],z]] (* derived 2008 May 22 in IN-Q.NB *) member[pair[inverse[x_],composite[Id,x_]],Q] := and[member[domain[x],V],member[range[x],V]] (* derived 2007 January 11 in ZLEQPLUS.NB *) member[pair[inverse[plus[x_]],id[omega]],INTLEQ] := member[x,omega] (* derived 2007 January 11 in ZLEQPLUS.NB *) member[pair[inverse[plus[x_]],inverse[plus[y_]]],INTLEQ] := and[member[x,omega],member[y,omega],not[member[x,y]]] (* derived 2007 January 11 in ZLEQPLUS.NB *) member[pair[inverse[plus[x_]],plus[y_]],INTLEQ] := and[member[x,omega],member[y,omega]] (* derived 2005 January 9 *) member[pair[x_,x_],K] := False (* added 2003 October 21 based on LAMHUL-2.NB *) member[pair[x_,y_],LAMBHULL] := and[equal[y,HULL[x]],member[x,V]] (* added 2000 November 21 based on MEMBER.NB *) member[pair[x_,y_],LB[z_]] := and[member[x,V],member[y,V],subclass[x,image[z,set[y]]]] (* added 2000 November 21 based on MEMBER.NB *) member[pair[x_,y_],LEAST[z_]] := and[member[x,V],member[y,x], subclass[x,image[z,set[y]]]] (* added 2001 November 14 based on MEM-CART.NB *) member[pair[x_,y_],LEFT[z_]] := and[equal[first[y],z],equal[second[y],x],member[x,V]] (* revised 2001 November 15 *) member[pair[x_,y_],LeftPairV] := and[member[x,V],equal[pair[V,x],y]] (* derived 2007 February 15 in GCD-1.NB *) member[pair[x_,y_],LUB[DIV]] := and[equal[y,APPLY[LUB[DIV],x]],subclass[x,omega]] (* derived 2008 June 17 in MIN-MEMB.NB *) member[pair[x_,y_],MAXIMAL[z_]] := and[member[x,V],member[y,x], not[member[y,fix[composite[Di,id[x],z]]]]] (* derived 2008 June 17 in MIN-MEMB.NB *) member[pair[x_,y_],MINIMAL[z_]] := and[member[x,V],member[y,x], not[member[y,fix[composite[z,id[x],Di]]]]] (* derived 2006 December 5 in MIXTIMES.NB *) member[pair[x_,t_],MIXTIMES] := and[equal[image[t,set[set[0]]],set[x]],member[t,binhom[NATADD,INTADD]],member[x,V]] (* derived 2008 August 10 in SMALL-OM.NB *) member[pair[nat[x_],nat[y_]],SMALLER] := member[nat[x],nat[y]] (* derived 2008 August 26 in FIX-FACT.NB *) member[pair[nat[x_],set[0]],FACTORIAL] := or[equal[0,nat[x]],equal[nat[x],set[0]]] (* derived 2005 May 22 in DIV-ADD.NB *) member[pair[x_,natadd[x_,y_]],DIV] := member[pair[x,y],DIV] (* derived 2007 April 3 in DIV-DV.NB *) member[pair[x_,natdiv[y_,z_]],DIV] := member[pair[natmul[x,z],y],DIV] (* derived 2007 February 4 in NATDIV-1.NB *) member[pair[natdiv[x_,y_],x_],DIV] := member[pair[y,x],DIV] (* derived 2007 April 3 in DIV-DV.NB *) member[pair[natdiv[x_,y_],z_],DIV] := or[and[equal[0,x],equal[0,z],member[y,omega]], and[member[pair[x,natmul[y,z]],DIV],member[pair[y,x],DIV],not[equal[0,y]]]] (* derived 2006 January 24 in EXP-DIV.NB *) member[pair[x_,natexp[x_,y_]],DIV] := or[and[equal[x,set[0]],member[y,omega]], and[member[x,omega],member[y,omega],not[equal[0,y]]]] (* derived 2005 March 26 in DIV-MUL.NB *) member[pair[x_,natmul[x_,y_]],DIV] := and[member[x,omega],member[y,omega]] (* derived 2007 April 3 in DIV-MUL.NB *) member[pair[natmul[x_,y_],y_],DIV] := or[and[equal[0,y],member[x,omega]],and[equal[x,set[0]],member[y,omega]]] (* derived 2007 April 3 in DIV-MUL.NB *) member[pair[natmul[x_,z_],natmul[y_,z_]],DIV] := or[and[member[z,omega],member[pair[x,y],DIV]], and[equal[0,z],member[x,omega],member[y,omega]]] (* derived 2005 June 24 in MOD-CALC.NB *) member[pair[y_,natsub[x_,y_]],DIV] := and[member[pair[y,x],DIV],subclass[y,x]] (* derived 2005 May 25 in MOD-A.NB *) member[pair[y_,natsub[x_,natmod[x_,y_]]],DIV] := and[member[x,omega],member[y,omega]] (* derived 2006 August 17 in CTBL-U.NB *) member[pair[odd,x_],Q] := equal[omega,card[x]] (* derived 2006 August 17 in CTBL-U.NB *) member[pair[x_,odd],Q] := equal[omega,card[x]] (* derived 2006 March 12 in DENUM.NB *) member[pair[omega,x_],Q] := equal[omega,card[x]] (* derived 2006 March 12 in DENUM.NB *) member[pair[x_,omega],Q] := equal[omega,card[x]] (* derived 2004 February 3 in FIN-RANK.NB *) member[pair[omega,intersection[REGULAR,H[FINITE]]],ZN] := True (* derived 2007 April 30 in Q-ORD.NB *) member[pair[x_,ord[y_]],Q] := equal[card[x],card[ord[y]]] (* derived 2007 April 30 in Q-ORD.NB *) member[pair[ord[x_],y_],Q] := equal[card[y],card[ord[x]]] (* derived 2006 March 14 in ZN-ON.NB *) member[pair[ord[x_],y_],thinpart[ZN]] := subclass[rank[y],ord[x]] (* derived 2006 March 14 in ZN-ON.NB *) member[pair[ord[x_],y_],ZN] := subclass[rank[y],ord[x]] (* derived 2007 June 30 in CANTOR.NB *) member[pair[x_,P[x_]],Q] := False (* derived 2006 August 22 in CHAR.NB *) member[pair[P[setpart[x_]],map[setpart[x_],succ[set[0]]]],Q] := True (* derived 2006 November 28 in NATEXP-5.NB *) member[pair[pair[x_,y_],0],NATEXP] := and[equal[0,x],member[y,omega],not[equal[0,y]]] (* derived 2008 November 26 in AP-BINOP.NB *) member[pair[pair[x_,y_],APPLY[binop[z_],PAIR[x_,y_]]],binop[z_]] := and[member[x,fix[domain[binop[z]]]],member[y,fix[domain[binop[z]]]]] (* derived 2008 December 31 in CAT-AP.NB *) member[pair[pair[u_,v_],APPLY[cat[x_],PAIR[u_,v_]]],cat[x_]] := member[pair[u,v],domain[cat[x]]] (* derived 2008 November 26 in AP-QUAGP.NB *) member[pair[pair[x_,y_],APPLY[quasigp[z_],PAIR[x_,y_]]],quasigp[z_]] := and[member[x,range[quasigp[z]]],member[y,range[quasigp[z]]]] (* derived 2008 November 26 in AP-SEMGP.NB *) member[pair[pair[x_,y_],APPLY[semigp[z_],PAIR[x_,y_]]],semigp[z_]] := and[member[x,fix[domain[semigp[z]]]],member[y,fix[domain[semigp[z]]]]] (* revised 2001 November 15 *) member[pair[pair[x_,y_],z_],CAP] := and[member[x,V],member[y,V],member[z,V],equal[intersection[x,y],z]] (* revised 2001 November 15 *) member[pair[pair[x_,y_],z_],CART] := and[member[x,V],member[y,V],member[z,V],equal[cart[x,y],z]] (* derived 2006 September 13 in CATORELN.NB *) member[pair[pair[x_,y_],z_],CATORELN] := and[equal[composite[first[x],first[y]],first[z]], equal[domain[first[x]],second[y]],equal[second[x],second[z]], subclass[first[x],cart[V,second[x]]],subclass[first[y],cart[V,second[y]]]] (* revised 2002 May 6 based on FIX-HULL.NB *) member[pair[pair[x_,y_],z_],COMPOSE] := and[equal[z,composite[x,y]],member[x,V],member[y,V]] (* derived 2004 June 25 in X2750.NB *) member[pair[pair[u_,v_],w_],composite[x_,CAP]] := and[member[u,V],member[v,V],member[w,V],member[pair[intersection[u,v],w],x]] (* derived 2004 October 29 in A8-SIMP.NB *) member[pair[pair[x_,z_],w_],composite[CAP,cross[BIGCUP,Id]]] := and[equal[w,intersection[z,U[x]]],member[x,V],member[z,V]] (* added 2001 December 26 based on CART.NB *) member[pair[pair[u_,v_],w_],composite[x_,CART]] := and[member[u,V],member[v,V],member[w,V],member[pair[cart[u,v],w],x]] (* derived 2006 January 25 in CROSS.NB *) member[pair[pair[u_,v_],w_],composite[x_,CROSS]] := and[member[u,V],member[v,V],member[w,V],member[pair[cross[u,v],w],x]] (* derived 2004 June 25 in X2750.NB *) member[pair[pair[u_,v_],w_],composite[x_,CUP]] := and[member[u,V],member[v,V],member[w,V],member[pair[union[u,v],w],x]] (* derived 2004 June 25 in X2750.NB *) member[pair[pair[u_,v_],w_],composite[x_,DIF]] := and[member[u,V],member[v,V],member[w,V],member[pair[intersection[u,complement[v]],w],x]] (* added 2001 December 26 based on CART.NB *) member[pair[u_,pair[v_,w_]],composite[inverse[CART],x_]] := and[member[u,V],member[v,V],member[w,V],member[pair[u,cart[v,w]],x]] (* derived 2005 January 27 in DK-SU.NB *) member[pair[w_,pair[x_,y_]],composite[inverse[CUP],z_]] := and[member[w,V],member[x,V],member[y,V],member[pair[w,union[x,y]],z]] (* derived 2004 June 25 in X2750.NB *) member[pair[pair[u_,v_],w_],composite[x_,inverse[DUP]]] := and[equal[u,v],member[u,V],member[w,V],member[pair[u,w],x]] (* added 2001 December 22 based on DORA-1.NB *) member[pair[z_,pair[x_,y_]],composite[inverse[FIRST],w_]] := and[member[x,V],member[y,V],member[z,V],member[pair[z,x],w]] (* derived 2006 July 4 in MAP-Q.NB *) member[pair[w_,pair[u_,v_]],composite[inverse[MAP],x_]] := and[member[u,V],member[v,V],member[w,V],member[pair[w,map[u,v]],x]] (* derived 2007 March 2 in LD-1.NB *) member[pair[x_,pair[y_,z_]],composite[inverse[NATADD],DIV]] := member[pair[x,natadd[y,z]],DIV] (* added 2001 December 22 based on DORA-1.NB *) member[pair[z_,pair[x_,y_]],composite[inverse[SECOND],w_]] := and[member[x,V],member[y,V],member[z,V],member[pair[z,y],w]] (* derived 2006 July 4 in MAP-Q.NB *) member[pair[pair[u_,v_],w_],composite[x_,MAP]] := and[member[u,V],member[v,V],member[w,V],member[pair[map[u,v],w],x]] (* added 2002 January 1 based on ROTATE.NB *) member[pair[pair[x_,y_],z_],composite[w_,SWAP]] := and[member[x,V],member[y,V],member[z,V],member[pair[pair[y,x],z],w]] (* added 2002 January 1 based on ROTATE.NB *) member[pair[x_,pair[y_,z_]],composite[SWAP,w_]] := and[member[x,V],member[y,V],member[z,V],member[pair[x,pair[z,y]],w]] (* derived 2006 September 13 in CATORELN.NB *) member[pair[pair[x_,y_],z_],composite[w_,TWIST]] := and[member[z,V],member[first[x],V],member[first[y],V], member[pair[pair[pair[first[x],first[y]],pair[second[x],second[y]]],z],w]] (* revised 2001 November 15 *) member[pair[pair[x_,y_],z_],CROSS] := and[member[x,V],member[y,V],member[z,V],equal[cross[x,y],z]] (* added 2001 November 17 based on CUP.NB *) member[pair[pair[x_,y_],z_],CUP] := and[equal[union[x,y],z],member[x,V],member[y,V]] (* revised 2001 November 15 *) member[pair[pair[x_,y_],z_],DIF] := and[member[x,V],member[y,V],member[z,V], equal[intersection[x,complement[y]],z]] (* added 2001 December 22 based on DORA-1.NB *) member[pair[z_,pair[x_,y_]],DORA] := and[equal[x,domain[z]],equal[y,range[z]],member[z,V]] member[pair[w_,pair[u_,v_]],DUP] := and[member[w,V],equal[u,w],equal[v,w]] (* added 2002 November 5 based on EQDF-MEM.NB *) member[pair[pair[u_,v_],w_],EQUIDIFF] := and[equal[natadd[u,second[w]],natadd[v,first[w]]],member[u,omega], member[v,omega],member[first[w],omega],member[second[w],omega]] (* added 2002 November 5 based on EQDF-MEM.NB *) member[pair[u_,pair[v_,w_]],EQUIDIFF] := and[equal[natadd[v,second[u]],natadd[w,first[u]]],member[v,omega], member[w,omega],member[first[u],omega],member[second[u],omega]] member[pair[pair[u_,v_],w_],FIRST] := and[member[u,V],member[v,V],equal[u,w]] (* derived 2008 September 14 in INTARITH.NB *) member[pair[pair[x_,y_],id[omega]],INTMUL] := or[and[equal[x,id[omega]],member[y,Z]],and[equal[y,id[omega]],member[x,Z]]] (* revised 2001 November 15 *) member[pair[pair[x_,y_],z_],IMG] := and[member[x,V],member[y,V],member[z,V],equal[image[x,y],z]] (* added 2003 July 25 based on INTADD.NB *) member[pair[pair[x_,y_],z_],INTADD] := and[member[x,Z],member[y,Z],member[z,Z],subclass[composite[x,y],z]] (* derived 2008 September 6 in INTMUL.NB *) member[pair[pair[x_,y_],intmul[x_,y_]],INTMUL] := and[member[x,Z],member[y,Z]] (* derived 2005 January 17 based on KURADEFN.NB *) member[pair[pair[x_,y_],z_],KURA] := and[equal[z,set[set[x],set[x,y]]],member[x,V],member[y,V]] member[pair[w_,pair[u_,v_]],LEFT[x_]] := and[equal[w,v],equal[x,u],member[u,V],member[v,V],member[w,V],member[x,V]] (* revised 2001 November 15 *) member[pair[pair[x_,y_],z_],MAP] := and[equal[map[x,y],z],member[x,V],member[y,V],member[z,V]] (* added 2002 June 24 based on MEMBER.NB *) member[pair[pair[x_,y_],z_],NATADD] := and[member[z,omega],member[pair[x,z],iterate[SUCC,set[y]]]] (* derived 2006 July 2 in NATEXP-2.NB found to be unsafe 2006 October 31 because it can lead to looping member[pair[pair[x_,y_],z_],NATEXP] := and[equal[z,natexp[x,y]],member[z,V]] /; unsafe *) (* derived 2005 May 17 based on NATMOD.NB *) member[pair[pair[x_,y_],z_],NATMOD] := and[equal[z,natmod[x,y]],member[x,omega],member[y,omega]] (* derived 2007 January 14 in MUL-INEQ.NB removed 2007 January 23 due to looping member[pair[pair[x_,y_],z_],NATMUL] := and[equal[z,natmul[x,y]],member[z,V]] *) (* added 2002 June 22 based on X-RO-ASS.NB *) member[pair[pair[u_,v_],pair[x_,y_]],ASSOC] := and[equal[v,second[y]], equal[x,first[u]],equal[first[y],second[u]], member[u,V],member[v,V],member[x,V],member[y,V]] (* added 2002 June 22 based on X-RO-ASS.NB *) member[pair[pair[u_,v_],pair[x_,y_]],cross[w_,z_]] := and[member[u,V],member[v,V],member[x,V],member[y,V], member[pair[u,x],w],member[pair[v,y],z]] (* added 2002 November 5 based on EQDF-MEM.NB *) member[pair[pair[u_,v_],pair[x_,y_]],EQUIDIFF] := and[equal[natadd[u,y],natadd[v,x]],member[u,omega], member[v,omega],member[x,omega],member[y,omega]] (* added 2002 June 22 based on X-RO-ASS.NB *) member[pair[pair[pair[u_,v_],w_],pair[x_,pair[y_,z_]]],ASSOC] := and[equal[u,x],equal[v,y],equal[w,z],member[u,V],member[v,V],member[w,V]] (* derived 2005 August 1 in CATOFUNS.NB *) member[pair[pair[pair[u_,v_],pair[x_,y_]],pair[w_,z_]],CATOFUNS] := and[equal[v,z],equal[w,composite[u,x]],equal[y,domain[u]],FUNCTION[u],FUNCTION[x], member[u,V],member[v,V],member[x,V],member[y,V],subclass[range[u],v],subclass[range[x],y]] (* derived 2005 August 1 in CATOFUNS.NB *) member[pair[pair[pair[u_,v_],pair[x_,y_]],pair[w_,z_]],CATORELN] := and[equal[v,z],equal[w,composite[u,x]],equal[y,domain[u]],member[u,V],member[v,V],member[x,V],member[y,V], subclass[u,cart[V,V]],subclass[x,cart[V,V]],subclass[range[u],v],subclass[range[x],y]] (* derived 2005 August 1 in CATOFUNS.NB *) member[pair[pair[pair[u_,v_],pair[x_,y_]],pair[w_,z_]],composite[t_,TWIST]] := and[member[u,V],member[v,V],member[x,V],member[y,V],member[pair[pair[pair[u,x],pair[v,y]],pair[w,z]],t]] member[pair[pair[u_,v_],pair[x_,y_]],SWAP] := and[member[u,V],member[v,V],member[x,V],member[y,V],equal[v,x],equal[u,y]] (* added 2002 January 1 based on ROTATE.NB *) member[pair[pair[u_,v_],pair[x_,y_]],twist[w_]] := and[member[u,V],member[v,V],member[x,V],member[y,V],member[pair[pair[u,x],pair[v,y]],w]] (* revised 2001 November 15 *) member[pair[pair[x_,y_],z_],PAIRSET] := and[equal[set[x,y],z],member[x,V],member[y,V],member[z,V]] member[pair[w_,pair[u_,v_]],RIGHT[x_]] := and[equal[w,u],equal[x,v], member[u,V],member[v,V],member[w,V],member[x,V]] (* added 2002 January 1 based on ROTATE.NB *) member[pair[pair[x_,y_],z_],rotate[w_]] := and[member[x,V],member[y,V],member[z,V],member[pair[pair[y,z],x],w]] member[pair[pair[u_,v_],w_],SECOND] := and[member[u,V],member[v,V],equal[v,w]] (* revised 2001 November 15 *) member[pair[pair[x_,y_],z_],SYMDIF] := and[member[x,V],member[y,V],member[z,V], equal[union[intersection[x,complement[y]], intersection[y,complement[x]]],z]] (* added 2002 November 2 based on TWISTMEM.NB *) member[pair[pair[u_,v_],w_],twist[x_]] := and[member[u,V],member[v,V],member[first[w],V], member[pair[pair[u,first[w]],pair[v,second[w]]],x]] (* added 2002 November 2 based on TWISTMEM.NB *) member[pair[u_,pair[v_,w_]],twist[x_]] := and[member[v,V],member[w,V],member[first[u],V], member[pair[pair[first[u],v],pair[second[u],w]],x]] (* derived 2007 January 11 in ZLEQPLUS.NB *) member[pair[plus[x_],id[omega]],INTLEQ] := equal[0,x] (* derived 2007 January 11 in ZLEQPLUS.NB *) member[pair[plus[x_],inverse[plus[y_]]],INTLEQ] := and[equal[0,x],equal[0,y]] (* derived 2007 January 11 in ZLEQPLUS.NB *) member[pair[plus[x_],plus[y_]],INTLEQ] := and[member[x,omega],member[y,omega],not[member[y,x]]] member[pair[u_,v_],POWER] := and[member[u,V],member[v,V],equal[P[u],v]] (* derived 2005 February 3 in MEMB-PS.NB *) member[pair[x_,y_],PS] := and[member[y,V],not[equal[x,y]],subclass[x,y]] (* derived 2005 January 27 in DK-SU.NB *) member[pair[x_,x_],Q] := member[x,V] (* derived 2004 December 11 in OO-Q.NB *) member[pair[range[oopart[x_]],domain[oopart[x_]]],Q] := member[domain[oopart[x]],V] (* revised 2001 November 15 *) member[pair[x_,y_],RANK] := and[equal[rank[x],y],member[y,V]] (* derived 2004 August 14 in RANK.NB *) member[pair[rank[x_],x_],ZN] := member[x,REGULAR] (* added 2000 November 23 based on RC-1.NB *) member[pair[x_,y_],RC[z_]] := and[equal[z,union[x,y]],member[x,V],member[y,V],member[z,V], subclass[x,complement[y]]] (* derived 2004 August 10 in RS-3.NB *) member[pair[x_,y_],RESTRICT] := and[equal[y,composite[x,id[domain[y]]]],member[x,V],member[y,V]] (* derived 2007 May 8 in PAIRSET.NB *) member[pair[x_,y_],rfx[z_]] := and[member[x,fix[z]],member[y,fix[z]],member[pair[x,y],z]] (* added 2001 November 14 based on MEM-CART.NB *) member[pair[x_,y_],RIGHT[z_]] := and[equal[first[y],x],equal[second[y],z], member[x,V]] (* revised 2001 November 15 *) member[pair[x_,y_],RightPairV] := and[member[x,V],equal[pair[x,V],y]] (* added 2002 June 22 based on X-RO-ASS.NB *) member[pair[x_,y_],rotate[z_]] := and[member[y,V],member[first[x],V], member[pair[pair[second[x],y],first[x]],z]] (* revised 2001 December 6 based on MEMBER.NB *) member[pair[x_,y_],S] := and[member[y,V],subclass[x,y]] (* added 2001 November 14 based on MEM-CART.NB *) member[pair[x_,y_],SECOND] := and[equal[second[x],y],member[y,V]] (* derived 2005 January 27 in DIV.NB *) member[pair[x_,set[0]],DIV] := equal[x,set[0]] (* derived 2005 January 27 in DIV.NB *) member[pair[set[0],x_],DIV] := member[x,omega] (* revised 2001 November 15 *) member[pair[x_,y_],SINGLETON] := and[member[x,V],member[y,V],equal[set[x],y]] (* derived 2005 January 7 in UP-K.NB *) member[pair[set[x_],set[x_,y_]],K] := and[member[y,V],not[equal[x,y]]] (* derived 2007 May 3 in SMALLWOB.NB *) member[pair[x_,x_],SMALLER] := False (* derived 2007 August 14 in SMALLER.NB *) member[pair[x_,P[x_]],SMALLER] := member[x,V] (* added 2001 November 17 based on SUBVAR.NB *) member[pair[x_,y_],SUBVAR] := and[equal[subvar[x],y],member[x,V]] (* revised 2001 November 15 *) member[pair[x_,y_],SUCC] := and[member[x,V],member[y,V],equal[succ[x],y]] (* derived 2005 January 13 in REG-RUS.NB *) member[pair[x_,succ[x_]],K] := and[member[x,V],not[member[x,x]]] (* derived 2006 August 15 in EVEN-ODD.NB *) member[pair[succ[set[0]],x_],DIV] := member[x,even] (* revised 2001 November 15 *) member[pair[x_,y_],SWAP] := and[equal[first[x],second[y]],equal[second[x],first[y]],member[first[x],V]] (* derived 2005 February 4 in X3943.NB *) member[pair[x_,y_],TC] := and[equal[y,tc[x]],member[y,V]] (* added 2002 November 2 based on TWISTMEM.NB *) member[pair[x_,y_],twist[z_]] := and[member[first[x],V],member[first[y],V], member[pair[pair[first[x],first[y]],pair[second[x],second[y]]],z]] (* added 2000 November 21 based on MEMBER.NB *) member[pair[x_,y_],UB[z_]] := and[member[x,V],member[y,V], subclass[x,image[inverse[z],set[y]]]] (* revised 2001 November 15 *) member[pair[x_,y_],UCLOSURE] := and[equal[Uclosure[x],y],member[y,V]] (* derived 2006 January 6 in PAIR-CO.NB *) member[pair[union[u_,complement[image[V,v_]]],w_],composite[x_,y_]] := and[member[pair[u,w],composite[x,y]],not[equal[0,v]]] (* derived 2006 January 6 in PAIR-CO.NB *) member[pair[u_,union[v_,complement[image[V,w_]]]],composite[x_,y_]] := and[member[pair[u,v],composite[x,y]],not[equal[0,w]]] (* derived 2005 May 22 in DIV-ADD.NB *) member[pair[x_,union[y_,complement[image[V,z_]]]],DIV] := and[member[pair[x,y],DIV],not[equal[0,z]]] (* derived 2007 April 10 in IMV-DIV.NB *) member[pair[union[x_,complement[image[V,y_]]],z_],DIV] := and[member[pair[x,z],DIV],not[equal[0,y]]] (* derived 2005 May 25 in MOD-CHAR.NB *) member[pair[x_,union[y_,image[V,z_]]],DIV] := and[equal[0,z],member[pair[x,y],DIV]] (* derived 2007 April 10 in IMV-DIV.NB *) member[pair[union[x_,image[V,y_]],z_],DIV] := and[equal[0,y],member[pair[x,z],DIV]] (* derived 2005 January 7 in UP-K.NB *) member[pair[x_,union[x_,set[y_]]],K] := and[member[x,V],member[y,V],not[member[y,x]]] member[pair[x_,y_],V] := True (* added 2002 January 1 based on PAIR-MEM.NB *) member[PAIR[x_,y_],V] := and[member[x,V],member[y,V]] (* derived 2007 February 4 in NATDIV-1.NB *) member[pair[x_,V],DIV] := False (* revised 2001 November 15 *) member[pair[x_,y_],VERTSECT[z_]] := and[equal[image[z,set[x]],y],member[x,V],member[y,V]] (* added 2003 June 11 based on VS.NB *) member[pair[x_,y_],VS] := and[equal[y,composite[VERTSECT[x],id[domain[x]]]],member[x,V]] (* derived 2008 June 13 in WF-DO-RA.NB *) member[pair[x_,x_],wf[y_]] := False (* derived 2007 May 2 in WOB.NB *) member[pair[wob[x_],wob[y_]],Q] := equal[card[wob[x]],card[wob[y]]] (* derived 2007 May 3 in SMALLWOB.NB *) member[pair[wob[x_],wob[y_]],SMALLER] := member[card[wob[x]],card[wob[y]]] (* derived 2006 December 5 in MIXTIMES.NB *) member[pair[Z,binhom[NATADD,INTADD]],Q] := True (* added 2001 November 18 based on BIN-FNS.NB *) member[x_,PAIRSET] := and[member[first[first[x]],V],equal[set[first[first[x]],second[first[x]]],second[x]]] (* added 2000 October 4 based on PROPER.NB *) member[PAIRSET,x_] := False (* derived 2008 September 30 in PERMS.NB *) member[PERMS,x_] := False (* added 2003 August 7 based on PLUS.NB *) member[x_,PLUS] := and[equal[plus[first[x]],second[x]],member[first[x],omega]] (* added 2003 August 7 based on PLUS.NB *) member[x_,plus[y_]] := and[equal[natadd[y,first[x]],second[x]],member[first[x],V]] (* derived 2006 September 23 in CMTV-CMT.NB *) member[PLUS,binhom[NATADD,COMPOSE]] := True (* derived 2006 July 18 in BINHOM-2.NB *) member[PLUS,binhom[NATADD,INTADD]] := True (* derived 2006 October 20 in INT-FIN.NB *) member[PLUS,FINITE] := False (* derived 2005 January 31 in X4210.NB *) member[plus[x_],FINITE] := not[member[x,omega]] (* derived 2006 August 17 in CTBL-U.NB *) member[plus[x_],image[Q,OMEGA]] := True (* derived 2006 July 1 in PLUS-MAP.NB *) member[PLUS,map[omega,map[omega,omega]]] := True (* derived 2006 July 1 in PLUS-MAP.NB *) member[plus[x_],map[omega,omega]] := member[x,omega] (* derived 2006 June 20 in UO-SP.NB *) member[PLUS,map[omega,Z]] := True (* derived 2008 October 31 in PERMS.NB *) member[plus[x_],PERMS] := equal[0,nat[x]] (* added 2003 August 8 based on REPLACE.NB *) member[plus[x_],range[PLUS]] := member[x,omega] (* derived 2006 June 13 in Z-I.NB *) member[plus[x_],range[SINGLETON]] := False (* derived 2006 June 20 in UO-SP.NB *) member[plus[x_],UNOPS] := True (* added 2003 June 4 based on SETHOOD.NB *) member[PLUS,V] := True (* added 2003 August 8 based on REPLACE.NB *) member[plus[x_],V] := True (* added 2003 August 8 based on REPLACE.NB *) member[plus[x_],Z] := member[x,omega] (* added 2002 January 19 based on PO.NB *) member[x_,PO] := and[member[x,V],PARTIALORDER[x]] (* added 2003 June 4 based on SETHOOD.NB *) member[PO,x_] := False (* derived 2007 June 12 in FIN-PO.NB *) member[po[fin[x_]],FINITE] := True (* derived 2005 October 1 in PO-SETPT.NB *) member[po[setpart[x_]],V] := True (* added 2003 July 3 based on T1T2PTCL.NB *) member[PointClosed,x_] := False (* added 2001 November 17 based on UNWRAP.NB *) member[x_,POWER] := and[equal[P[first[x]],second[x]],member[first[x],V]] (* added 98/07/18 Theorem POW-RP in POW3 *) member[POWER,x_] := False (* derived 2006 January 8 in SETHOOD.NB *) member[power[x_],y_] := False (* derived 2005 April 21 in U-PRIMES.NB *) member[PRIMES,FINITE] := False (* derived 2005 February 22 in PRIMES.NB *) member[PRIMES,V] := True (* derived 2008 October 31 in MAP.NB *) member[PRIMESEQ,map[omega,PRIMES]] := True (* derived 2006 June 20 in UO-SP.NB *) member[PRIMESEQ,UNOPS] := True (* derived 2005 August 17 in PRIMESEQ.NB *) member[PRIMESEQ,V] := True (* added 2002 February 9 based on IDEM.NB *) member[x_,PROJ] := and[equal[x,composite[x,x]],FUNCTION[x],member[x,V]] (* added 2003 June 4 based on SETHOOD.NB *) member[PROJ,x_] := False member[x_,PS] := and[member[x,S],not[member[x,Id]]] member[PS,x_] := False (* added 2000 October 4 based on PROPER.NB *) member[Q,x_] := False (* derived 2008 October 9 in QUASIGP.NB *) member[quasigp[x_],BINOPS] := True (* derived 2008 October 9 in QUASIGP.NB *) member[quasigp[x_],QUASIGPS] := True (* derived 2008 October 9 in QUASIGP.NB *) member[quasigp[x_],V] := True (* derived 2004 May 15 in VARIOUS.NB *) member[x_,range[CART]] := and[equal[x,cart[domain[x],range[x]]],member[x,V]] (* derived 2007 April 26 in RA-FU.NB *) member[range[CART],x_] := False (* derived 2006 October 14 in HULLCLIQ.NB *) member[range[CLIQUES],x_] := False (* derived 2007 April 26 in RA-FU.NB *) member[range[CROSS],x_] := False (* derived 2005 November 5 in FIN-RELN.NB *) member[range[fin[x_]],FINITE] := True (* derived 2005 November 5 in FIN-RELN.NB *) member[range[fin[x_]],image[Q,OMEGA]] := True (* derived 2007 May 6 in CLIQUES.NB *) member[range[first[x_]],V] := member[first[x],V] (* derived 2005 August 5 in IDS-UNIQ.NB *) member[y_,range[fix[composite[inverse[FIRST],Di,x_]]]] := not[subclass[composite[x,RIGHT[y]],Id]] (* derived 2004 August 1 in THINNESS.NB *) member[range[IMAGE[x_]],V] := member[range[VERTSECT[x]],V] (* derived 2008 November 18 in INTEGER.NB *) member[range[intadd[x_,y_]],V] := and[member[x,Z],member[y,Z]] (* derived 2008 November 18 in INTEGER.NB *) member[range[intmul[x_,y_]],V] := and[member[x,Z],member[y,Z]] (* derived 2004 August 1 in THINNESS.NB *) member[range[iterate[x_,y_]],V] := member[iterate[x,y],V] (* derived 2006 January 24 in RALAMHUL.NB *) member[x_,range[LAMBHULL]] := and[equal[x,HULL[fix[x]]],member[x,V]] (* derived 2007 April 26 in RA-FU.NB *) member[range[LAMBHULL],x_] := False (* derived 2004 August 1 in SETHOOD.NB *) member[range[MAP],x_] := False (* derived 2005 August 8 in PIGEON.NB *) member[range[oopart[x_]],FINITE] := member[oopart[x],FINITE] (* derived 2004 December 11 in OO-Q.NB *) member[range[oopart[x_]],V] := member[domain[oopart[x]],V] (* derived 2006 March 20 in PCSU-FIN.NB *) member[range[ordlist[x_]],FINITE] := member[intersection[OMEGA,x],FINITE] (* derived 2007 August 6 in RK-RA-OL.NB *) member[range[ordlist[x_]],REGULAR] := True (* derived 2007 April 26 in RA-FU.NB *) member[range[PAIRSET],x_] := False (* derived 2006 October 20 in INT-FIN.NB *) member[range[PLUS],FINITE] := False (* added 2002 January 13 based on RA-POW.NB *) member[x_,range[POWER]] := and[equal[x,P[U[x]]],member[x,V]] member[range[POWER],x_] := False (* derived 2006 October 20 in PROPER.NB *) member[range[RCF],x_] := False (* derived 2006 March 30 in REG-DORA.NB *) member[range[reg[x_]],REGULAR] := True (* derived 2007 May 6 in CLIQUES.NB *) member[range[second[x_]],V] := member[first[x],V] (* Theorem SP-RA-SG in SP2 proved 1998 October 24 *) member[range[SINGLETON],x_] := False (* derived 2004 August 1 in SETHOOD.NB *) member[range[SUBVAR],x_] := False member[range[SUCC],x_] := False (* derived 2005 September 16 in HULL-DIV.NB *) member[range[VERTSECT[DIV]],V] := True (* derived 2007 January 6 in IVR-INV.NB *) member[range[VERTSECT[INTDIV]],V] := True (* derived 2004 November 12 in XS-CO.NB *) member[range[VERTSECT[setpart[x_]]],V] := True (* derived 2007 April 26 in RA-FU.NB *) member[range[XS],x_] := False (* added 2001 November 18 based on CO-IDX.NB *) member[x_,RANK] := and[equal[rank[first[x]],second[x]],member[first[x],V]] (* added 2001 August 23 based on PROPER.NB *) member[RANK,x_] := False (* added 2003 June 25 based on RANK.NB *) member[rank[x_],x_] := False (* derived 2007 June 30 in RANK-FIN.NB *) member[rank[x_],FINITE] := member[rank[x],omega] (* added 2003 June 25 based on RANK.NB *) member[rank[x_],OMEGA] := member[x,REGULAR] (* added 2001 December 2 based on RANK-2.NB *) member[rank[x_],V] := member[x,REGULAR] (* derived 2004 August 14 in RANK.NB *) member[rank[x_],rank[x_]] := False (* derived 2006 March 30 in REG-RANK.NB *) member[rank[x_],REGULAR] := member[x,REGULAR] (* derived 2006 May 21 in RK-SC.NB *) member[rank[x_],U[rank[x_]]] := False (* derived 2005 January 31 in X4210.NB *) member[RC[x_],FINITE] := or[member[x,FINITE],not[member[x,V]]] (* added 2003 June 4 based on IMAGE.NB *) member[RC[x_],image[RCF,y_]] := member[x,y] (* derived 2005 December 18 in ZER7DUAL.NB *) member[RC[x_],map[P[x_],P[x_]]] := member[x,V] (* derived 2008 September 28 in PERMS.NB *) member[RC[x_],PERMS] := True (* derived 2004 January 13 in RA-RCF.NB *) member[RC[x_],range[RCF]] := member[x,V] (* derived 2006 June 9 in UNARY.NB *) member[RC[x_],UNOPS] := True (* added 2001 June 28 based on SETHOOD.NB *) member[RC[x_],V] := True (* defining rule for RCF *) member[x_,RCF] := and[equal[RC[first[x]],second[x]],member[first[x],V]] (* added 2003 June 4 based on SETHOOD.NB *) member[RCF,x_] := False (* derived 2006 March 30 in REG-SU.NB *) member[reg[x_],image[inverse[S],reg[x_]]] := False (* derived 2006 March 30 in REG-ZN.NB *) member[reg[x_],image[ZN,rank[reg[x_]]]] := False (* derived 2005 December 9 in ORD-REG.NB *) member[reg[x_],reg[x_]] := False (* derived 2005 December 8 in REG.NB *) member[reg[x_],REGULAR] := True (* derived 2007 November 29 in FP-TRV-E.NB *) member[reg[x_],tc[reg[x_]]] := False (* derived 2006 March 30 in REG-MEMB.NB *) member[reg[x_],U[reg[x_]]] := False (* derived 2005 December 8 in REG.NB *) member[reg[x_],V] := True (* Theorem REG-28 in REG2 *) member[REGULAR,x_] := False (* derived 2004 August 10 in RS-3.NB *) member[x_,RESTRICT] := and[equal[composite[first[x],id[domain[second[x]]]],second[x]],member[first[x],V]] (* added 2003 June 4 based on SETHOOD.NB *) member[RESTRICT,x_] := False (* introduced 2004 March 18 in RFX-WRAP.NB *) member[x_,RFX] := and[member[x,V],REFLEXIVE[x]] (* added 2001 December 19 based on SETHOOD2.NB *) member[RFX,x_] := False (* derived 2004 December 16 in RFX-CORE.NB *) member[rfx[x_],V] := member[fix[x],V] (* added 2001 June 29 based on MEMBER.NB *) member[RIF,x_] := False (* added 1999 Novermber 9 based on SESSION1.NB *) member[RIGHT[x_],V] := not[member[x,V]] (* derived 2005 December 22 in SETHOOD.NB *) member[RightPairV,x_] := False (* added 2000 October 4 based on PROPER.NB *) member[ROT,x_] := False (* derived 2008 October 9 in QUASIGP.NB *) member[rotate[composite[quasigp[x_],SWAP]],BINOPS] := True (* derived 2008 October 7 in QUASIGPS.NB *) member[rotate[INTMUL],BINOPS] := False (* derived 2008 October 7 in QUASIGPS.NB *) member[rotate[NATADD],BINOPS] := False (* added 2002 June 15 based on ROTATE.NB *) member[rotate[NATADD],V] := True (* derived 2008 October 7 in QUASIGPS.NB *) member[rotate[NATMUL],BINOPS] := False (* derived 2008 October 9 in QUASIGP.NB *) member[rotate[quasigp[x_]],BINOPS] := True (* derived 2008 October 7 in QG-RO.NB *) member[rotate[x_],QUASIGPS] := member[composite[x,id[cart[V,V]]],QUASIGPS] (* derived 2006 March 30 in REG-ROT.NB *) member[rotate[reg[x_]],REGULAR] := True (* derived 2004 August 7 in RS-1.NB *) member[x_,RS[y_]] := and[equal[x,composite[y,id[domain[x]]]],member[x,V]] (* derived 2006 January 21 in RA-VS.NB *) member[RS[x_],range[VERTSECT[RESTRICT]]] := member[thinpart[x],V] (* derived 2007 December 17 in DESC-REG.NB *) member[RS[x_],REGULAR] := member[thinpart[x],REGULAR] (* derived 2004 August 7 in RS-1.NB *) member[RS[x_],V] := member[thinpart[x],V] (* removed 2003 June 17 member[w_,RUSSELL] := and[member[w,V],not[member[w,w]]] *) (* added 98/02/07 *) member[RUSSELL,x_] := False (* added 2001 November 15 based on UNWRAP-2.NB *) member[x_,S] := and[member[first[x],V],subclass[first[x],second[x]]] (* Theorem SP-SR in SP4 *) member[S,x_] := False (* added 2001 November 17 based on UNWRAP.NB *) member[x_,SECOND] := and[equal[second[first[x]],second[x]],member[first[first[x]],V]] member[SECOND,x_] := False (* added 2001 November 14 based on MEM-CART.NB *) member[second[x_],V] := member[first[x],V] (* introduced 2004 November 2 in SELECT.NB *) member[x_,SELECT] := and[member[x,V],not[equal[0,X[x]]]] (* derived 2004 November 2 in SELECT.NB *) member[SELECT,x_] := False (* derived 2008 October 19 in SEMIGP.NB *) member[semigp[x_],BINOPS] := True (* derived 2008 October 19 in SEMIGP.NB *) member[semigp[x_],SEMIGPS] := True (* derived 2008 October 19 in SEMIGP.NB *) member[semigp[x_],V] := True (* derived 2006 July 8 in SEMIGPS.NB *) member[SEMIGPS,x_] := False (* introduced 2005 January 10 in SET.NB *) member[x_,set[y_,z___]] := or[and[member[x,V],equal[x,y]],member[x,set[z]]] (* derived 2008 August 26 in FIX-FACT.NB *) member[set[0],APPLY[FACTORIAL,nat[x_]]] := member[set[0],nat[x]] (* derived 2006 August 15 in EVEN-ODD.NB *) member[set[0],even] := False (* derived 2008 January 2 in FINCHR-1.NB *) member[set[0],FINCHAR] := True (* derived 2007 July 18 in SBV-DI.NB *) member[set[0,x_],fix[UCHAINS]] := True (* derived 2007 January 27 in IM-DIV.NB *) member[set[0],image[DIV,x_]] := member[set[0],x] (* derived 2007 February 8 in COMPOS-1.NB *) member[set[0],image[NATMUL,cart[complement[succ[set[0]]],complement[succ[set[0]]]]]] := False (* derived 2005 September 17 in ACL-DIV.NB *) member[set[0],image[VERTSECT[DIV],omega]] := True (* derived 2007 February 4 in NATDIV-1.NB *) member[set[0],natdiv[x_,y_]] := or[member[y,x],not[member[pair[y,x],DIV]]] (* derived 2006 November 30 in EXPIDEMP.NB *) member[set[0],natexp[x_,y_]] := or[and[member[set[0],x],not[equal[0,y]]],not[member[x,omega]],not[member[y,omega]]] (* derived 2006 August 15 in EVEN-ODD.NB *) member[set[0],odd] := True (* added 2001 August 23 based on OM.NB *) member[set[0],omega] := True (* derived 2005 February 22 in PRIMES.NB *) member[set[0],PRIMES] := False (* derived 2006 December 13 in FACT.NB *) member[set[0],range[CLIQUES]] := True (* derived 2006 December 13 in FACT.NB *) member[set[0],range[FACTORIAL]] := True (* derived 2006 March 1 in ACY-FIN.NB *) member[set[0],range[SUBVAR]] := True (* derived 2006 February 19 in RA-SUCC.NB *) member[set[0],range[SUCC]] := True (* derived 2005 September 8 in RAVS-DIV.NB *) member[set[0],range[VERTSECT[DIV]]] := True (* derived 2004 November 26 in XS-SS-0.NB *) member[set[0],range[XS]] := True (* derived 2007 July 18 in RA-CLIQ.NB *) member[set[0,set[x_]],range[CLIQUES]] := True (* derived 2007 June 27 in TOPS.NB *) member[set[0,set[set[0]],succ[set[0]]],TOPS] := True (* derived 2007 June 27 in TOPS.NB *) member[set[0,succ[set[0]]],range[CLIQUES]] := False (* derived 2007 July 18 in SBV-DI.NB *) member[set[0,succ[set[0]]],range[SUBVAR]] := True (* derived 2003 December 27 in T1.NB *) member[set[0,x_],T1] := or[equal[0,x],member[x,range[SINGLETON]],not[member[x,V]]] (* derived 2003 December 30 in T2.NB *) member[set[0,x_],T2] := or[equal[0,x],member[x,range[SINGLETON]],not[member[x,V]]] (* derived 2007 April 24 in LB-UB-V.NB *) member[set[cart[set[0],set[0]]],range[XS]] := True (* derived 2005 January 11 in FIN-SET.NB *) member[set[x__],COMPACT] := True (* Theorem DK-SS proved 2000 May 26 *) member[set[x_],DEDEKIND] := True (* derived 2005 February 6 in DESCEND.NB *) member[set[x_],DESCENDING] := or[member[x,x],not[member[x,V]]] (* derived 2008 January 2 in FINCHR-1.NB *) member[set[x_],FINCHAR] := or[equal[0,x],not[member[x,V]]] (* derived 2005 January 11 in FIN-SET.NB *) member[set[x__],FINITE] := True (* derived 2007 July 11 in FP-UCH.NB *) member[set[x_],fix[UCHAINS]] := equal[0,x] (* derived 2007 January 6 in IVR-INV.NB *) member[set[id[omega]],range[VERTSECT[INTDIV]]] := True (* derived 2004 September 18 in SSIM-PRS.NB *) member[set[x_],image[PAIRSET,y_]] := member[x,fix[y]] (* derived 2005 January 7 in CARD-UP.NB *) member[set[x_,y_],image[PAIRSET,Di]] := and[member[x,V],member[y,V],not[equal[x,y]]] (* derived 2005 January 11 in FIN-SET.NB *) member[set[x__],image[Q,OMEGA]] := True (* added 2002 May 12 based on OM-SS.NB *) member[set[x_],omega] := or[equal[0,x],not[member[x,V]]] (* added 2001 August 23 based on OM.NB *) member[set[x_],OMEGA] := or[equal[0,x],not[member[x,V]]] (* derived 2004 June 14 in TP-SYM.NB *) member[set[pair[x_,y_],pair[y_,x_]],image[PAIRSET,SWAP]] := and[member[x,V],member[y,V]] (* derived 2003 December 28 in PTCLOSED.NB *) member[set[x_],PointClosed] := or[equal[0,x],not[member[x,V]]] (* derived 2007 June 26 in FIX-HULL.NB *) member[set[x_],range[CLIQUES]] := equal[0,x] (* derived 2007 August 5 in RA-MAP.NB *) member[set[x_],range[MAP]] := or[member[x,CONST],not[member[x,V]]] (* derived 2005 January 8 in RA-PRS.NB *) member[set[x_],range[PAIRSET]] := member[x,V] (* derived 2005 January 8 in RA-PRS.NB *) member[set[x_,y_],range[PAIRSET]] := or[member[x,V],member[y,V]] (* added 2001 November 22 based on VS-Q.NB *) member[set[x_],range[SINGLETON]] := member[x,V] (* derived 2004 June 18 in NON-FUNS.NB *) member[set[x_,y_],range[SINGLETON]] := or[and[equal[x,y],member[y,V]], and[member[x,V],not[member[y,V]]],and[member[y,V],not[member[x,V]]]] (* added 2003 June 5 based on REG.NB *) member[set[x_],REGULAR] := or[member[x,REGULAR],not[member[x,V]]] (* derived 2007 July 23 in ON-IMS.NB *) member[set[set[0]],ord[x_]] := False (* derived 2008 March 18 in MEM-RAVS.NB *) member[set[set[0]],range[VERTSECT[inverse[DIV]]]] := True (* derived 2003 December 27 in T1.NB *) member[set[set[0],set[x_]],T1] := True (* derived 2003 December 30 in T2.NB *) member[set[set[0],set[x_]],T2] := True (* derived 2008 March 18 in MEM-RAVS.NB *) member[set[set[0],succ[set[0]]],range[VERTSECT[inverse[DIV]]]] := True (* derived 2003 December 27 in T1.NB *) member[set[x_],T1] := or[equal[0,x],member[x,range[SINGLETON]],not[member[x,V]]] (* derived 2003 December 30 in T2.NB *) member[set[x_],T2] := or[equal[0,x],member[x,range[SINGLETON]],not[member[x,V]]] (* derived 2003 December 25 in TOPSDEFN.NB *) member[set[x_],TOPS] := equal[0,x] (* derived 2003 December 25 in TOPSDEFN.NB *) member[set[x_,y_],TOPS] := or[equal[0,x],equal[0,y]] (* derived 2005 January 10 in SET.NB *) member[set[x__],V] := True (* derived 2004 March 14 in WO-TRV.NB *) member[setpart[x_],V] := True (* added 2001 November 15 *) member[x_,SINGLETON] := equal[set[first[x]],second[x]] (* Theorem SP-SG in SP4 *) member[SINGLETON,x_] := False (* derived 2005 December 22 in SETHOOD.NB *) member[SMALLER,x_] := False (* definition of spine[x,y] introduced 2007 June 10 in SPINE.NB *) member[w_,spine[x_,y_]] := and[member[w,y], subclass[y,union[image[x,set[w]],image[inverse[x],set[w]]]]] (* derived 2008 January 4 in SPINSETP.NB *) member[spine[x_,fin[y_]],FINITE] := True (* derived 2008 January 4 in SPINSETP.NB *) member[spine[x_,fin[y_]],V] := True (* derived 2007 August 10 in SPINE.NB *) member[spine[x_,setpart[y_]],V] := True member[w_,subcommutant[x_]] := and[member[w,V],subclass[composite[x,w],composite[w,x]]] (* derived 2004 June 24 in SBCOMTNT.NB *) member[subcommutant[x_],y_] := False (* added 2002 December 27 based on SBCOMMUT.NB *) member[x_,SUBCOMMUTE] := and[member[first[x],V],subcommute[first[x],second[x]]] (* added 2003 June 4 based on SETHOOD.NB *) member[SUBCOMMUTE,x_] := False (* added 2000 October 4 based on PROPER.NB *) member[SUBVAR,x_] := False (* added 2001 November 17 based on SUBVAR.NB *) member[x_,SUBVAR] := and[equal[subvar[first[x]],second[x]],member[first[x],V]] (* Theorems SBV-1 and SBV-2 in SUBVAR proved 1999 February 13 *) member[w_,subvar[x_]] := and[member[w,V],subclass[w,image[x,w]]] (* derived 2007 May 7 in FINITE.NB *) member[subvar[fin[x_]],FINITE] := True (* derived 2007 July 4 in SBV-INE.NB *) member[subvar[inverse[E]],x_] := False (* derived 2004 August 1 in SETHOOD.NB *) member[subvar[PS],x_] := False (* derived 2007 July 5 in SBV-ENS.NB *) member[subvar[setpart[x_]],range[SUBVAR]] := True (* added 2001 November 17 based on UNWRAP.NB *) member[x_,SUCC] := and[equal[succ[first[x]],second[x]],member[first[x],V]] member[SUCC,x_] := False (* added 2001 August 5 *) member[x_,succ[y_]] := or[and[equal[x,y],member[x,V]],member[x,y]] (* derived 2006 August 15 in EVEN-ODD.NB *) member[succ[x_],even] := member[x,odd] (* added 2001 August 23 based on FINITE.NB *) member[succ[x_],FINITE] := member[x,FINITE] (* derived 2005 July 12 in O25REVIS.NB *) member[succ[nat[x_]],nat[x_]] := False (* derived 2007 July 20 in OMRA-SBV.NB *) member[succ[nat[x_]],range[SUBVAR]] := True (* derived 2005 November 19 in TOP.NB *) member[succ[nat[x_]],TOPS] := True (* derived 2006 August 15 in EVEN-ODD.NB *) member[succ[x_],odd] := member[x,even] (* added 2001 August 23 based on OM.NB *) member[succ[x_],omega] := member[x,omega] (* added 2001 August 23 based on OMEGA.NB *) member[succ[x_],OMEGA] := member[x,OMEGA] (* derived 2004 October 12 in CMPCT-OM.NB *) member[succ[omega],COMPACT] := False (* derived 2004 October 12 in CMPCT-OM.NB *) member[succ[omega],image[COARSER,FINITE]] := True (* derived 2007 July 20 in OMRA-SBV.NB *) member[succ[omega],range[SUBVAR]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) member[succ[omega],TOPS] := True (* derived 2005 December 6 in ORDINAL.NB *) member[succ[ord[x_]],ord[x_]] := False (* derived 2005 November 19 in TOP.NB *) member[succ[ord[x_]],TOPS] := True (* derived 2004 June 18 in NON-FUNS.NB *) member[succ[x_],range[SINGLETON]] := or[equal[0,x],equal[x,set[x]]] (* derived 2006 February 19 in RA-SUCC.NB *) member[succ[x_],range[SUCC]] := member[x,V] (* derived 2007 August 21 in REG.NB *) member[succ[rank[x_]],rank[x_]] := False (* added 2003 June 5 based on REG.NB *) member[succ[x_],REGULAR] := member[x,REGULAR] (* derived 2007 January 27 in IM-DIV.NB *) member[succ[set[0]],image[DIV,x_]] := or[member[set[0],x],member[succ[set[0]],x]] (* derived 2005 January 11 in SET-SUCC.NB *) member[succ[set[0]],image[PAIRSET,Di]] := True (* derived 2004 January 1 in COFIN-T1.NB *) member[succ[set[0]],PointClosed] := True (* derived 2005 February 22 in PRIMES.NB *) member[succ[set[0]],PRIMES] := True (* derived 2007 July 18 in RA-CLIQ.NB *) member[succ[set[0]],range[CLIQUES]] := True (* derived 2007 July 17 in RA-SBV.NB *) member[succ[set[0]],range[SUBVAR]] := True (* derived 2003 December 27 in T1.NB *) member[succ[set[0]],T1] := True (* derived 2003 December 30 in T2.NB *) member[succ[set[0]],T2] := True (* derived 2007 June 27 in TOPS.NB *) member[succ[set[0]],TOPS] := True (* derived 2005 March 26 in OM-PLUS2.NB *) member[succ[succ[omega]],COMPACT] := True (* derived 2005 March 26 in OM-PLUS2.NB *) member[succ[succ[omega]],TOPS] := True (* derived 2007 January 27 in IM-DIV.NB *) member[succ[succ[set[0]]],image[DIV,x_]] := or[member[set[0],x],member[succ[succ[set[0]]],x]] (* derived 2005 July 25 in 3-5-7.NB *) member[succ[succ[set[0]]],PRIMES] := True (* derived 2007 July 27 in TOPS.NB *) member[succ[succ[set[0]]],range[CLIQUES]] := False (* derived 2007 July 17 in RA-SBV.NB *) member[succ[succ[set[0]]],range[SUBVAR]] := True (* derived 2003 December 27 in T1.NB *) member[succ[succ[set[0]]],T1] := False (* derived 2003 December 30 in T2.NB *) member[succ[succ[set[0]]],T2] := False (* derived 2003 December 27 in T1.NB *) member[succ[succ[set[0]]],TOPS] := True (* derived 2005 July 25 in 3-5-7.NB *) member[succ[succ[succ[set[0]]]],PRIMES] := False (* derived 2005 July 25 in 3-5-7.NB *) member[succ[succ[succ[succ[set[0]]]]],PRIMES] := True (* derived 2005 July 25 in 3-5-7.NB *) member[succ[succ[succ[succ[succ[set[0]]]]]],PRIMES] := False (* derived 2005 July 25 in 3-5-7.NB *) member[succ[succ[succ[succ[succ[succ[set[0]]]]]]],PRIMES] := True (* derived 2005 July 25 in 3-5-7.NB *) member[succ[succ[succ[succ[succ[succ[succ[set[0]]]]]]]],PRIMES] := False (* derived 2005 July 25 in 3-5-7.NB *) member[succ[succ[succ[succ[succ[succ[succ[succ[set[0]]]]]]]]],PRIMES] := False (* derived 2005 July 25 in 3-5-7.NB *) member[succ[succ[succ[succ[succ[succ[succ[succ[succ[set[0]]]]]]]]]],PRIMES] := False (* derived 2007 May 15 in OL-U-RA.NB *) member[succ[U[domain[ordlist[x_]]]],domain[ordlist[x_]]] := False (* derived 2005 December 7 in SUCC-ORD.NB *) member[succ[U[ord[x_]]],ord[x_]] := False (* added 2001 August 23 based on PROPER.NB *) member[succ[x_],V] := member[x,V] (* derived 2004 July 14 in X2431-32.NB *) member[x_,SWAP] := and[equal[first[first[x]],second[second[x]]], equal[first[second[x]],second[first[x]]], member[first[first[x]],V],member[first[second[x]],V]] member[SWAP,x_] := False (* added 2001 October 10 based on SYM-1.NB *) member[x_,SYM] := and[member[x,V],equal[inverse[x],x]] (* added 2001 December 19 based on SETHOOD2.NB *) member[SYM,x_] := False (* added 2001 November 18 based on BIN-FNS.NB *) member[x_,SYMDIF] := and[member[first[first[x]],V],equal[union[ intersection[complement[first[first[x]]],second[first[x]]], intersection[complement[second[first[x]]],first[first[x]]]], second[x]]] (* added 2000 October 4 based on PROPER.NB *) member[SYMDIF,x_] := False (* added 2003 June 23 based on T1.NB *) member[T1,x_] := False (* added 2003 June 23 based on T2.NB *) member[T2,x_] := False (* added 2001 November 17 based on UNWRAP.NB *) member[x_,TC] := and[equal[tc[first[x]],second[x]],member[first[x],V]] (* added 2000 October 4 based on PROPER.NB *) member[TC,x_] := False (* Theorems TC-ON-1 and TC-ON-2 in TC2 proved 2001 August 8 *) member[tc[x_],OMEGA] := and[member[x,V],subclass[x,OMEGA]] (* derived 2004 March 14 in TC-REG.NB *) member[tc[x_],REGULAR] := member[x,REGULAR] (* added 2000 October 26 based on TC-4.NB *) member[tc[x_],V] := member[x,V] (* derived 2006 September 23 in TIMES.NB *) member[x_,TIMES] := and[equal[times[first[x]],second[x]],member[first[x],omega]] (* derived 2005 July 17 in TIMES.NB *) member[x_,times[y_]] := and[equal[natmul[y,first[x]],second[x]],member[first[x],V]] (* derived 2008 October 31 in BIJ.NB *) member[TIMES,bij[omega,binhom[NATADD,NATADD]]] := True (* derived 2006 December 26 in ISOTIMES.NB *) member[TIMES,binhom[NATADD,composite[IMAGE[cross[inverse[DUP],NATADD]],CROSS, id[cart[binhom[NATADD,NATADD],binhom[NATADD,NATADD]]]]]] := True (* derived 2006 July 18 in BINHOM-2.NB *) member[times[x_],binhom[NATADD,NATADD]] := member[x,omega] (* derived 2006 September 23 in TIMES.NB *) member[TIMES,binhom[NATMUL,COMPOSE]] := True (* derived 2006 October 20 in NAT-FIN.NB *) member[TIMES,FINITE] := False (* derived 2006 September 23 in TIMES.NB *) member[TIMES,map[omega,binhom[NATADD,NATADD]]] := True (* derived 2008 October 31 in MAP.NB *) member[times[x_],map[omega,omega]] := member[x,omega] (* derived 2008 October 31 in PERMS.NB *) member[times[x_],PERMS] := or[equal[x,set[0]],not[member[x,omega]]] (* derived 2006 June 20 in UO-SP.NB *) member[times[x_],UNOPS] := True (* derived 2006 September 23 in TIMES.NB *) member[TIMES,V] := True (* derived 2005 July 17 in TIMES.NB *) member[times[x_],V] := True (* added 2003 September 27 *) member[x_,TO] := and[member[x,V],TOTALORDER[x]] (* derived 2004 August 1 in SETHOOD.NB *) member[TO,x_] := False (* derived 2005 October 17 in TO-FIN.NB *) member[to[fin[x_]],FINITE] := True (* derived 2005 October 17 in TO-FIN.NB *) member[to[fin[x_]],V] := True (* derived 2005 October 15 in TO-SETPT.NB *) member[to[setpart[x_]],V] := True (* derived 2005 October 25 in TOP-WRAP.NB *) member[top[x_],TOPS] := True (* derived 2005 October 25 in TOP-WRAP.NB *) member[top[x_],V] := True (* added 2001 December 19 based on SETHOOD2.NB *) member[TOPS,x_] := False (* derived 2004 June 16 in TRANSVAR.NB *) member[z_,transvar[x_,y_]] := and[member[z,V],subclass[image[x,z],image[y,z]]] (* introduced 2004 March 20 in EQV-WRAP.NB *) member[x_,TRV] := and[member[x,V],TRANSITIVE[x]] (* added 2001 December 19 based on SETHOOD2.NB *) member[TRV,x_] := False (* derived 2005 October 7 in FIN-TRV.NB *) member[trv[x_],FINITE] := member[composite[Id,x],FINITE] (* added 2003 January 27 *) member[trv[x_],V] := and[member[domain[x],V],member[range[x],V]] (* added 2000 October 4 based on PROPER.NB *) member[TWIST,x_] := False (* removed 2003 June 29 based on TWIST.NB member[x_,twist[y_]] := and[member[first[first[x]],V],member[first[second[x]],V], member[pair[pair[first[first[x]],first[second[x]]], pair[second[first[x]],second[second[x]]]],y]] *) (* derived 2004 December 26 in SETPART.NB *) member[twist[setpart[x_]],V] := True (* derived 2005 February 23 in X2408.NB *) member[x_,U[complement[x_]]] := member[x,V] (* derived 2007 May 19 in OLDO-ORD.NB *) member[U[domain[ordlist[x_]]],domain[ordlist[x_]]] := and[member[intersection[OMEGA,x],FINITE],not[equal[0,intersection[OMEGA,x]]]] (* derived 2007 May 19 in OLDO-ORD.NB *) member[U[domain[ordlist[x_]]],U[domain[ordlist[x_]]]] := False (* added 2001 August 23 based on FINITE.NB *) member[U[x_],FINITE] := and[member[x,FINITE],subclass[x,FINITE]] (* derived 2007 November 1 in IN-PS-PC.TXT *) member[U[x_],image[inverse[PS],x_]] := False (* derived 2007 September 3 in IMS-P-U.NB *) member[U[x_],image[inverse[S],x_]] := member[U[x],x] (* derived 2004 October 9 in IM-COA.NB *) member[U[x_],image[inverse[S],image[BIGCUP,intersection[y_,P[x_]]]]] := member[x,image[COARSER,y]] (* derived 2005 December 22 in UCL-CL.NB *) member[U[x_],image[inverse[S],Uclosure[x_]]] := member[x,V] (* added 2003 May 7 based on UNOPS.NB *) member[x_,U[image[MAP,y_]]] := and[FUNCTION[x],member[x,V], member[pair[domain[x],range[x]],composite[inverse[S],y]]] (* derived 2005 February 23 in X2408.NB member[x_,U[image[y_,set[x_]]]] := member[x,fix[composite[inverse[E],y]]] /; unsafe *) (* derived 2007 May 22 in SU-OM.NB *) member[U[intersection[omega,x_]],omega] := not[equal[omega,U[intersection[omega,x]]]] (* derived 2007 May 19 in OLDO-ORD.NB *) member[U[intersection[OMEGA,x_]],range[ordlist[x_]]] := and[member[intersection[OMEGA,x],FINITE],not[equal[0,intersection[OMEGA,x]]]] (* derived 2006 March 25 in PCON-RUS.NB *) member[U[intersection[OMEGA,x_]],RUSSELL] := member[intersection[OMEGA,x],V] (* derived 2006 March 25 in PCON-RUS.NB *) member[U[intersection[OMEGA,x_]],U[intersection[OMEGA,x_]]] := False (* derived 2005 July 12 in O25REVIS.NB *) member[x_,U[nat[y_]]] := member[succ[x],nat[y]] (* derived 2005 February 13 in NAT.NB *) member[U[nat[x_]],nat[x_]] := not[equal[0,nat[x]]] (* derived 2005 February 13 in NAT.NB *) member[U[nat[x_]],omega] := True (* derived 2006 March 14 in ORDRULES.NB *) member[x_,U[ord[y_]]] := member[succ[x],ord[y]] (* derived 2005 October 19 in ORD-WRAP.NB *) member[U[ord[x_]],OMEGA] := True (* derived 2006 March 14 in ORDRULES.NB *) member[U[ord[x_]],ord[x_]] := not[equal[ord[x],U[ord[x]]]] (* derived 2006 March 25 in PCON-RUS.NB *) member[U[ord[x_]],RUSSELL] := True (* derived 2007 May 31 in OL.NB *) member[U[range[ordlist[x_]]],OMEGA] := True (* derived 2007 May 15 in OL-U-RA.NB *) member[U[range[ordlist[x_]]],range[ordlist[x_]]] := and[member[intersection[OMEGA,x],FINITE],not[equal[0,intersection[OMEGA,x]]]] (* derived 2006 March 30 in REG-SU.NB *) member[U[reg[x_]],U[reg[x_]]] := False (* Theorems REG-7 and REG-15 in REG2 *) member[U[x_],REGULAR] := member[x,REGULAR] (* derived 2007 October 4 in TOWERS.NB *) member[U[spine[S,A[intersection[fix[UCHAINS],invar[x_]]]]], A[intersection[fix[UCHAINS],invar[x_]]]] := True (* derived 2008 January 4 in SPINSETP.NB *) member[U[spine[S,fin[x_]]],fin[x_]] := not[equal[0,spine[S,fin[x]]]] (* derived 2007 August 11 in UCH-UIMS.NB *) member[U[spine[S,setpart[x_]]],Uchains[setpart[x_]]] := True (* derived 2004 June 24 in SBCOMTNT.NB *) member[U[subcommutant[x_]],y_] := False (* derived 2005 October 25 in TOP-WRAP.NB *) member[U[top[x_]],top[x_]] := True (* derived 2007 May 31 in SU-ON.NB *) member[U[U[intersection[OMEGA,x_]]],U[intersection[OMEGA,x_]]] := not[equal[U[intersection[OMEGA,x]],U[U[intersection[OMEGA,x]]]]] (* added 98/02/27 *) member[U[x_],V] := member[x,V] (* sum set axiom *) (* added 2001 June 29 based on MEMBER.NB *) member[UB[x_],y_] := False (* added 2004 February 17 *) member[x_,ub[y_,z_]] := and[member[x,V],subclass[z,image[inverse[y],set[x]]]] (* derived 2008 July 5 in UBD-DEFN.NB *) member[x_,UBD] := and[equal[domain[UB[first[x]]],second[x]],member[first[x],V]] (* derived 2008 July 5 in UBD-DEFN.NB *) member[UBD,x_] := False (* derived 2007 June 25 in UCH-HULL.NB *) member[x_,UCHAINS] := and[equal[second[x],Uchains[first[x]]],member[first[x],V]] (* derived 2007 June 23 in UCHAINS.NB *) member[Uchains[x_],FINITE] := member[x,FINITE] (* derived 2007 June 23 in UCHAINS.NB *) member[Uchains[x_],REGULAR] := member[x,REGULAR] (* derived 2007 July 6 in SETPART.NB *) member[Uchains[setpart[x_]],range[UCHAINS]] := True (* derived 2007 June 23 in UCHAINS.NB *) member[Uchains[x_],V] := member[x,V] (* derived 2004 May 4 in CRHL-FIX.NB *) member[x_,Uclosure[y_]] := and[equal[x,core[y,x]],member[x,V]] (* added 2001 November 17 based on UNWRAP.NB *) member[x_,UCLOSURE] := and[equal[Uclosure[first[x]],second[x]],member[first[x],V]] (* added 2001 June 29 based on MEMBER.NB *) member[UCLOSURE,x_] := False (* derived 2007 June 29 in ACL-FXHL.NB *) member[Uclosure[Aclosure[x_]],TOPS] := member[x,V] (* derived 2004 January 8 in FIN-FU.NB *) member[Uclosure[x_],FINITE] := member[x,FINITE] (* derived 2003 December 28 in PTCLOSED.NB *) member[Uclosure[x_],PointClosed] := member[x,T1] (* derived 2006 March 21 in MEMB-REG.NB *) member[Uclosure[x_],REGULAR] := member[x,REGULAR] (* derived 2003 December 27 in T1.NB *) member[Uclosure[x_],T1] := member[x,T1] (* derived 2003 December 30 in T2.NB *) member[Uclosure[x_],T2] := member[x,T2] (* added 2001 September 22 based on UCL.NB *) member[Uclosure[x_],V] := member[x,V] member[u_,union[x_,y_]] := or[member[u,x],member[u,y]] (* derived 2007 June 26 in HULL.NB *) member[union[cart[set[0],set[set[0]]],cart[set[set[0]],set[0]]],UNOPS] := True (* derived 2008 September 28 in PERMS.NB *) member[union[cart[set[x_],set[y_]],cart[set[y_],set[x_]]],PERMS] := True (* derived 2005 October 8 in U-CL.NB *) member[union[cart[set[x_],set[y_]],id[set[x_,y_]]],CL] := or[member[x,V],member[y,V]] (* added 2002 November 3 based on SIMPLIFY.NB *) member[union[x_,complement[image[V,y_]]],z_] := and[member[x,z],not[equal[0,y]]] (* added 2001 August 23 based on FINITE.NB *) member[union[x_,y_],FINITE] := and[member[x,FINITE],member[y,FINITE]] (* derived 2004 January 1 in COFIN-T1.NB *) member[union[image[RC[x_],FINITE],set[0]],PointClosed] := True (* derived 2003 December 27 based on COFINITE.TXT *) member[union[image[RC[x_],FINITE],set[0]],TOPS] := True (* derived 2004 October 12 in CMPCT-OM.NB *) member[union[image[RC[omega],omega],singleton[0]],TOPS] := True (* added 2002 November 3 based on SIMPLIFY.NB *) member[union[x_,image[V,y_]],z_] := and[equal[0,y],member[x,z]] (* derived 2007 April 5 in LD-5.NB *) member[union[x_,nat[y_]],nat[y_]] := False (* derived 2005 July 9 in MM10-12.NB *) member[union[nat[x_],nat[y_]],nat[z_]] := and[member[nat[x],nat[z]],member[nat[y],nat[z]]] (* derived 2005 April 28 in MAX-MIN.NB *) member[union[nat[x_],nat[y_]],omega] := True (* derived 2005 June 29 in OO-TIMES.NB *) member[union[x_,y_],range[SINGLETON]] := or[and[equal[0,x],member[y,range[SINGLETON]]], and[equal[0,y],member[x,range[SINGLETON]]],and[equal[x,y],member[x,range[SINGLETON]]]] (* added 2003 June 5 based on REG.NB *) member[union[x_,y_],REGULAR] := and[member[x,REGULAR],member[y,REGULAR]] (* derived 2004 October 10 in COMPACT0.NB *) member[union[x_,set[0]],COMPACT] := member[x,COMPACT] (* derived 2005 January 3 in FULL.NB *) member[union[set[0],succ[set[set[0]]]],omega] := False (* derived 2005 January 3 in FULL.NB *) member[union[set[0],succ[set[set[0]]]],OMEGA] := False (* derived 2006 October 11 in RA-CLIQ.NB *) member[union[set[0],succ[set[set[0]]]],range[CLIQUES]] := True (* derived 2003 December 27 in T1.NB *) member[union[x_,set[0]],T1] := member[x,T1] (* derived 2003 December 30 in T2.NB *) member[union[x_,set[0]],T2] := member[x,T2] member[union[x_,y_],V] := and[member[x,V],member[y,V]] (* derived 2006 August 6 in PROPER.NB *) member[UNOPS,x_] := False (* Theorem SP-6 in SP2 *) member[V,x_] := False (* added 2002 January 27 based on FIXCORE1.NB removed 2002 April 8 because it messes up lambda[x,VERTSECT[x]] = 0 member[x_,VERTSECT[y_]] := and[equal[image[y,set[first[x]]],second[x]], member[image[y,set[first[x]]],V]] *) (* derived 2004 December 26 in SETPART.NB *) member[VERTSECT[setpart[x_]],y_] := False (* derived 2004 December 26 in SETPART.NB *) member[VERTSECT[thinpart[x_]],y_] := False (* derived 2005 December 22 in SETHOOD.NB *) member[VERTSECT[trv[x_]],V] := member[invar[x],V] (* added 2003 June 11 based on VS.NB *) member[x_,VS] := and[equal[composite[VERTSECT[first[x]], id[domain[first[x]]]],second[x]],member[first[x],V]] (* derived 2005 December 22 in SETHOOD.NB *) member[VS,x_] := False (* added 2003 September 27 *) member[x_,WF] := and[member[x,V],WELLFOUNDED[x]] (* added 2003 September 29 based on WF.NB *) member[WF,x_] := False (* introduced 2004 September 25 in LAMB-WF.NB *) member[x_,WFPART] := and[member[first[x],V],equal[second[x],wf[first[x]]]] (* derived 2005 December 22 in SETHOOD.NB *) member[WFPART,x_] := False (* added 2003 September 27 *) member[x_,WO] := and[member[x,V],WELLORDER[x]] (* derived 2005 December 22 in SETHOOD.NB *) member[WO,x_] := False (* derived 2008 March 4 in WO-SETP.NB *) member[wo[setpart[x_]],V] := True (* derived 2007 May 2 in WOB.NB *) member[wob[x_],image[Q,OMEGA]] := True (* derived 2008 May 17 in CARDMONO.NB *) member[wob[x_],image[Q,P[wob[y_]]]] := not[member[card[wob[y]],card[wob[x]]]] (* derived 2007 May 2 in WOB.NB *) member[wob[x_],V] := True (* introduced 2004 October 28 in X.NB *) member[w_,X[x_]] := and[equal[domain[w],domain[x]],FUNCTION[w],member[w,V],subclass[w,x]] (* derived 2006 April 4 in REG-X.NB *) member[X[reg[x_]],REGULAR] := True (* derived 2007 July 6 in SETPART.NB *) member[X[setpart[x_]],range[XS]] := True (* derived 2004 October 31 in U-X.NB *) member[X[x_],V] := or[equal[0,X[x]],member[range[x],V]] (* derived 2004 November 16 in XS.NB *) member[x_,XS] := and[member[first[x],V],equal[second[x],X[first[x]]]] (* derived 2005 December 22 in SETHOOD.NB *) member[XS,x_] := False (* derived 2006 October 20 in INT-FIN.NB *) member[Z,FINITE] := False (* derived 2007 January 1 in INTMUL-4.NB *) member[Z,range[SINGLETON]] := False (* derived 2007 January 10 in Z-IDEAL.NB *) member[Z,range[VERTSECT[INTDIV]]] := True (* added 2002 November 16 based on INTEGER.NB *) member[Z,V] := True (* added 2001 August 23 based on PROPER.NB *) member[ZN,x_] := False (* introduced 2007 December 29 in MAX-MIN.NB *) minimal[x_,y_] := intersection[y,complement[fix[composite[x,id[y],Di]]]] (* added 2000 November 13 based on MAX.NB *) MINIMAL[0] := inverse[E] (* derived 2008 June 17 in MINMAX-C.NB *) MINIMAL[complement[x_]] := GREATEST[union[Id,x]] (* added 2000 November 16 based on RESTRICT.NB*) MINIMAL[composite[Id,x_]] := MINIMAL[x] (* added 2000 November 16 based on RESTRICT.NB*) MINIMAL[composite[id[x_],y_]] := union[composite[id[x],MINIMAL[y]], composite[inverse[E],IMAGE[id[complement[x]]]]] (* added 2000 November 14 based on MAX.NB *) MINIMAL[Di] := inverse[SINGLETON] (* added 2000 November 14 based on MAX.NB *) MINIMAL[Id] := inverse[E] (* added 2000 December 26 based on UB-ID.NB *) MINIMAL[id[x_]] := inverse[E] (* added 2000 November 14 based on MAX.NB *) MINIMAL[intersection[Di,x_]] := MINIMAL[x] (* added 2000 November 13 based on MAX.NB *) MINIMAL[inverse[x_]] := MAXIMAL[x] (* added 2000 November 14 based on MAX.NB *) MINIMAL[PS] := MINIMAL[S] (* added 2000 November 14 based on MAX.NB *) MINIMAL[V] := inverse[SINGLETON] (* derived 2005 July 18 in MODULO.NB *) modulo[0] := id[omega] (* derived 2005 July 18 in MODULO.NB *) modulo[set[0]] := cart[omega,set[0]] (* derived 2006 August 15 in EVEN-ODD.NB *) modulo[succ[set[0]]] := union[cart[even,set[0]],cart[odd,set[set[0]]]] (* derived 2005 June 17 in DF.NB *) monus[x_,y_] := nat[natsub[x,y]] (* derived 2005 June 17 in DF.NB *) nat[complement[image[V,x_]]] := 0 (* derived 2005 June 17 in DF.NB *) nat[image[V,x_]] := 0 (* derived 2005 June 17 in DF.NB *) nat[intersection[x_,complement[image[V,y_]]]] := intersection[complement[image[V,y]],nat[x]] (* derived 2005 June 17 in DF.NB *) nat[intersection[x_,image[V,y_]]] := intersection[image[V,y],nat[x]] (* derived 2005 February 13 in NAT.NB *) nat[nat[x_]] := nat[x] (* derived 2005 June 17 in DF.NB *) nat[natsub[nat[natsub[nat[x_],nat[y_]]],nat[z_]]] := nat[natsub[nat[x],natadd[nat[y],nat[z]]]] (* derived 2005 July 10 in O25.NB *) nat[natsub[nat[x_],set[0]]] := U[nat[x]] (* derived 2005 June 17 in DF.NB *) nat[union[x_,complement[image[V,y_]]]] := intersection[image[V,y],nat[x]] (* derived 2005 June 17 in DF.NB *) nat[union[x_,image[V,y_]]] := intersection[complement[image[V,y]],nat[x]] (* added 2002 July 28 based on ADDRULES.NB *) natadd[0,x_] := union[x,complement[image[V,intersection[omega,set[x]]]]] (* derived 2005 July 16 in DBLCOUNT.NB *) natadd[card[intersection[x_,y_]],card[union[x_,y_]]] := natadd[card[x],card[y]] (* derived 2007 March 4 in IMV-NAT.NB *) natadd[x_,complement[image[V,y_]]] := union[x,complement[image[V,y]],complement[image[V,intersection[omega,set[x]]]]] (* derived 2007 March 4 in IMV-NAT.NB *) natadd[x_,image[V,y_]] := union[x,complement[image[V,intersection[omega,set[x]]]],image[V,y]] (* derived 2005 April 28 in MAX-MIN.NB *) natadd[intersection[nat[x_],nat[y_]],union[nat[x_],nat[y_]]] := natadd[nat[x],nat[y]] (* derived 2005 July 2 in MM-MONUS.NB *) natadd[nat[y_],nat[natsub[nat[x_],nat[y_]]]] := union[nat[x],nat[y]] (* derived 2005 July 9 in MM10-12.NB *) natadd[nat[natsub[nat[x_],nat[y_]]],nat[natsub[nat[y_],nat[z_]]]] := natsub[union[nat[x],nat[y]],intersection[nat[y],nat[z]]] (* added 2002 October 31 based on ADD-SUB.NB *) natadd[x_,natsub[y_,z_]] := union[image[V,intersection[z,complement[y]]],natsub[natadd[x,y],z]] (* added 2002 July 28 based on ADDRULES.NB *) natadd[x_,set[0]] := union[complement[image[V,intersection[omega,set[x]]]],succ[x]] (* added 2002 July 28 based on ADDRULES.NB *) natadd[x_,succ[y_]] := succ[natadd[x,y]] (* added 2002 July 28 based on ADDRULES.NB *) natadd[x_,union[y_,complement[image[V,z_]]]] := union[complement[image[V,z]],natadd[x,y]] (* added 2002 November 1 based on IMV.NB *) natadd[x_,union[y_,image[V,z_]]] := union[image[V,z],natadd[x,y]] (* derived 2007 February 4 in NATDIV-1.NB *) natdiv[x_,x_] := union[complement[image[V,intersection[omega,set[x]]]], intersection[image[V,x],set[0]]] (* derived 2007 February 4 in NATDIV-1.NB *) natdiv[0,x_] := complement[image[V,intersection[omega,set[x]]]] (* derived 2007 February 4 in NATDIV-1.NB *) natdiv[x_,0] := image[V,x] (* derived 2007 March 4 in NTDV-Q1.TXT *) natdiv[image[V,x_],y_] := union[complement[image[V,intersection[omega,set[y]]]],image[V,x]] (* derived 2007 March 4 in NTDV-Q1.TXT *) natdiv[x_,image[V,y_]] := union[image[V,x],image[V,y]] (* derived 2007 March 4 in NTDV-Q1.TXT *) natdiv[intersection[x_,complement[image[V,y_]]],z_] := union[complement[image[V,intersection[omega,set[z]]]], intersection[complement[image[V,y]],natdiv[x,z]]] (* derived 2007 March 4 in NTDV-Q1.TXT *) natdiv[intersection[x_,image[V,y_]],z_] := union[complement[image[V,intersection[omega,set[z]]]],intersection[image[V,y],natdiv[x,z]]] (* derived 2007 March 6 in EVENODD.NB *) natdiv[natadd[x_,x_],succ[set[0]]] := union[x,complement[image[V,intersection[omega,set[x]]]]] (* derived 2007 February 4 in NATDIV-1.NB *) natdiv[natmul[x_,y_],y_] := union[complement[image[V,intersection[omega,set[x]]]], complement[image[V,intersection[omega,set[y]]]],intersection[x,image[V,y]]] (* derived 2007 February 4 in NATDIV-1.NB *) natdiv[x_,set[0]] := union[x,complement[image[V,intersection[omega,set[x]]]]] (* derived 2007 February 4 in NATDIV-1.NB *) natdiv[set[0],x_] := union[complement[image[V,intersection[x,set[0]]]], image[V,intersection[x,complement[set[0]]]],set[0]] (* derived 2007 March 4 in NTDV-Q1.TXT *) natdiv[union[x_,complement[image[V,y_]]],z_] := union[complement[image[V,y]],natdiv[x,z]] (* derived 2007 March 4 in NTDV-Q1.TXT *) natdiv[x_,union[y_,complement[image[V,z_]]]] := union[complement[image[V,z]],natdiv[x,y]] (* derived 2007 March 4 in NTDV-Q1.TXT *) natdiv[union[x_,image[V,y_]],z_] := union[image[V,y],natdiv[x,z]] (* derived 2007 March 4 in NTDV-Q1.TXT *) natdiv[x_,union[y_,image[V,z_]]] := union[image[V,z],natdiv[x,y]] (* derived 2007 February 4 in NATDIV-1.NB *) natdiv[x_,V] := V (* derived 2006 July 2 in NATEXP-2.NB *) natexp[x_,0] := union[complement[image[V,intersection[omega,set[x]]]],set[0]] (* derived 2006 June 27 in NATEXP-1.NB *) natexp[0,nat[x_]] := intersection[complement[image[V,nat[x]]],set[0]] (* derived 2006 June 28 in NATEXP-2.NB *) natexp[x_,natadd[y_,z_]] := natmul[natexp[x,y],natexp[x,z]] (* derived 2006 June 28 in NATEXP-2.NB *) natexp[natexp[x_,y_],z_] := natexp[x,natmul[y,z]] (* derived 2006 June 28 in NATEXP-2.NB *) natexp[natmul[x_,y_],z_] := natmul[natexp[x,z],natexp[y,z]] (* derived 2006 November 28 in NATEXP-5.NB *) natexp[x_,set[0]] := union[x,complement[image[V,intersection[omega,set[x]]]]] (* derived 2006 June 27 in NATEXP-1.NB *) natexp[set[0],nat[x_]] := set[0] (* derived 2006 November 29 in EXP-SUCC.NB *) natexp[x_,succ[y_]] := natmul[x,natexp[x,y]] (* derived 2007 February 3 in EX-2-COR.NB *) natexp[x_,union[y_,complement[image[V,z_]]]] := union[complement[image[V,z]],natexp[x,y]] (* derived 2007 February 3 in EX-2-COR.NB *) natexp[x_,union[z_,image[V,y_]]] := union[image[V,y],natexp[x,z]] (* derived 2005 May 21 in MOD-DUP.NB *) natmod[x_,x_] := complement[image[V,intersection[omega,set[x]]]] (* derived 2005 May 17 based on NATMOD.NB *) natmod[x_,0] := union[x,complement[image[V,intersection[omega,set[x]]]]] (* derived 2005 May 17 based on NATMOD.NB *) natmod[0,x_] := complement[image[V,intersection[omega,set[x]]]] (* derived 2007 March 4 in IMV-NAT.NB *) natmod[complement[image[V,x_]],y_] := union[complement[image[V,x]], complement[image[V,intersection[omega,set[y]]]]] (* derived 2007 March 4 in IMV-NAT.NB *) natmod[x_,complement[image[V,y_]]] := union[x,complement[image[V,y]],complement[image[V,intersection[omega,set[x]]]]] (* derived 2007 March 4 in IMV-NAT.NB *) natmod[x_,image[V,y_]] := union[x,complement[image[V,intersection[omega,set[x]]]],image[V,y]] (* derived 2007 March 4 in IMV-NAT.NB *) natmod[image[V,x_],y_] := union[complement[image[V,intersection[omega,set[y]]]],image[V,x]] (* derived 2007 March 23 in Q9.NB *) natmod[nat[natsub[nat[x_],nat[y_]]],nat[y_]] := intersection[complement[image[V,intersection[nat[y],set[nat[x]]]]],natmod[nat[x],nat[y]]] (* derived 2007 March 23 in Q9.NB *) natmod[nat[natsub[x_,natmul[y_,z_]]],y_] := union[complement[image[V,intersection[omega,set[y]]]], intersection[complement[image[V,intersection[natmul[y,z],set[x]]]], image[V,intersection[omega,set[x]]],image[V,intersection[omega,set[z]]],natmod[x,y]]] (* derived 2007 March 6 in IMV-MOD.NB *) natmod[natadd[x_,y_],y_] := natmod[x,y] (* derived 2005 July 20 in Q10.NB *) natmod[natadd[x_,natmod[y_,z_]],z_] := natmod[natadd[x,y],z] (* derived 2007 March 6 in IMV-MOD.NB *) natmod[natadd[x_,natmul[y_,z_]],z_] := union[complement[image[V,intersection[omega,set[y]]]],natmod[x,z]] (* derived 2005 June 24 in MOD-FIX.NB *) natmod[natmod[x_,y_],y_] := natmod[x,y] (* derived 2005 May 21 in MOD-DUP.NB *) natmod[natmul[x_,y_],x_] := union[complement[image[V,intersection[omega,set[x]]]], complement[image[V,intersection[omega,set[y]]]]] (* derived 2005 July 21 in Q15.NB *) natmod[natmul[x_,natmod[y_,z_]],z_] := natmod[natmul[x,y],z] (* derived 2005 June 30 in MOD-DSTB.NB *) natmod[natmul[x_,y_],natmul[x_,z_]] := natmul[x,natmod[y,z]] (* derived 2007 March 22 in MOD-SUB.NB *) natmod[natsub[x_,y_],y_] := union[image[V,intersection[y,complement[x]]],natmod[x,y]] (* derived 2007 March 4 in IMV-NAT.NB *) natmod[natsub[x_,natmod[x_,y_]],y_] := union[complement[image[V,intersection[omega,set[x]]]], complement[image[V,intersection[omega,set[y]]]]] (* derived 2007 March 16 in MOD-SUB.NB *) natmod[natsub[x_,natmul[y_,z_]],z_] := union[complement[image[V,intersection[omega,set[y]]]], image[V,intersection[complement[x],natmul[y,z]]],natmod[x,z]] (* derived 2005 May 17 based on NATMOD.NB *) natmod[x_,set[0]] := complement[image[V,intersection[omega,set[x]]]] (* derived 2005 May 17 based on NATMOD.NB *) natmod[union[x_,complement[image[V,y_]]],z_] := union[complement[image[V,y]],natmod[x,z]] (* derived 2005 December 24 in AP-NAT.NB *) natmod[x_,union[y_,complement[image[V,z_]]]] := union[complement[image[V,z]],natmod[x,y]] (* derived 2007 March 4 in IMV-NAT.NB *) natmod[union[x_,image[V,y_]],z_] := union[image[V,y],natmod[x,z]] (* derived 2007 March 4 in IMV-NAT.NB *) natmod[x_,union[y_,image[V,z_]]] := union[image[V,z],natmod[x,y]] (* added 2002 August 21 based on NATMUL.NB *) natmul[0,x_] := complement[image[V,intersection[omega,set[x]]]] (* derived 2007 March 4 in IMV-NAT.NB *) natmul[x_,complement[image[V,y_]]] := union[complement[image[V,y]], complement[image[V,intersection[omega,set[x]]]]] (* derived 2007 March 4 in IMV-NAT.NB *) natmul[x_,image[V,y_]] := union[complement[image[V,intersection[omega,set[x]]]],image[V,y]] (* derived 2007 March 4 in IMV-NAT.NB *) natmul[x_,intersection[y_,image[V,x_]]] := intersection[image[V,x],natmul[x,y]] (* derived 2007 April 17 in LD9-19.NB *) natmul[nat[x_],nat[natsub[y_,z_]]] := nat[natsub[natmul[y,nat[x]],natmul[z,nat[x]]]] (* added 2002 August 27 based on DISTRIB.NB *) natmul[natadd[x_,y_],z_] := natadd[natmul[x,z],natmul[y,z]] (* derived 2007 March 6 in MUL-DIV.NB *) natmul[y_,natdiv[x_,y_]] := union[complement[image[V,intersection[image[DIV,set[y]],set[x]]]], intersection[x,image[V,y]]] (* derived 2007 March 4 in NTDV-Q1.TXT *) natmul[y_,natdiv[natsub[x_,natmod[x_,y_]],y_]] := natsub[x,natmod[x,y]] (* added 2002 October 5 based on SUB-MUL.NB *) natmul[x_,natsub[y_,z_]] := union[image[V,intersection[z,complement[y]]],natsub[natmul[x,y],natmul[x,z]]] (* added 2002 August 21 based on NATMUL.NB *) natmul[x_,set[0]] := union[x,complement[image[V,intersection[omega,set[x]]]]] (* added 2002 August 23 based on MULREC.NB *) natmul[x_,succ[y_]] := natadd[x,natmul[x,y]] (* added 2002 September 17 based on MUL-IMV.NB *) natmul[x_,union[y_,complement[image[V,z_]]]] := union[complement[image[V,z]],natmul[x,y]] (* added 2002 November 1 based on IMV.NB *) natmul[x_,union[y_,image[V,z_]]] := union[image[V,z],natmul[x,y]] (* floored division introduced 2007 March 25 *) natquot[x_,y_] := natdiv[natsub[x,natmod[x,y]],y] (* added 2002 Septemeber 16 based on SUB-DUP.NB *) natsub[x_,x_] := complement[image[V,intersection[omega,set[x]]]] (* added 2002 Septemeber 16 based on SUB-DUP.NB *) natsub[0,x_] := image[V,x] (* added 2002 Septemeber 16 based on SUB-DUP.NB *) natsub[x_,0] := union[x,complement[image[V,intersection[omega,set[x]]]]] (* derived 2007 March 4 in IMV-NAT.NB *) natsub[complement[image[V,x_]],y_] := union[complement[image[V,x]],image[V,y]] (* derived 2007 March 4 in IMV-NAT.NB *) natsub[x_,complement[image[V,y_]]] := union[x,complement[image[V,y]], complement[image[V,intersection[omega,set[x]]]]] (* derived 2007 March 4 in IMV-NAT.NB *) natsub[image[V,x_],y_] := union[image[V,x],image[V,y]] (* derived 2007 March 4 in IMV-NAT.NB *) natsub[x_,image[V,y_]] := union[x,complement[image[V,intersection[omega,set[x]]]],image[V,y]] (* derived 2005 July 2 in MM-MONUS.NB *) natsub[nat[x_],intersection[nat[x_],nat[y_]]] := nat[natsub[nat[x],nat[y]]] (* derived 2005 July 2 in MM-MONUS.NB *) natsub[nat[x_],nat[natsub[nat[x_],nat[y_]]]] := intersection[nat[x],nat[y]] (* added 2002 September 17 based on DIFFER.NB *) natsub[natadd[x_,y_],x_] := union[y,complement[image[V,intersection[omega,set[x]]]],complement[image[V,intersection[omega,set[y]]]]] (* added 2002 September 19 based on CANCEL.NB *) natsub[natadd[x_,z_],natadd[y_,z_]] := union[complement[image[V,intersection[omega,set[z]]]],natsub[x,y]] (* added 2002 September 21 based on ROTATE.NB *) natsub[x_,natadd[y_,natsub[x_,z_]]] := union[complement[image[V,intersection[omega,set[x]]]], complement[image[V,intersection[set[z],succ[x]]]],natsub[z,y]] (* added 2002 September 17 based on SUBRECUR.NB *) natsub[natsub[y_,z_],x_] := natsub[y,natadd[x,z]] (* added 2002 September 17 based on EQUAL.NB *) natsub[x_,natsub[x_,y_]] := union[y,complement[image[V,intersection[omega,set[x]]]],complement[image[V,intersection[set[y],succ[x]]]]] (* derived 2005 May 25 in ADD-SUB.NB *) natsub[x_,natsub[y_,z_]] := union[image[V,intersection[z,complement[y]]],natsub[natadd[x,z],y]] (* derived 2005 March 26 in NATSUB.NB *) natsub[succ[x_],x_] := union[complement[image[V,intersection[omega,set[x]]]],set[0]] (* added 2002 September 17 based on PREDSUCC.NB *) natsub[succ[x_],set[0]] := union[x,complement[image[V,intersection[omega,set[x]]]]] (* added 2002 September 16 based on SUB-SUCC.NB *) natsub[succ[x_],succ[y_]] := natsub[x,y] (* added 2002 September 17 based on DIFFER.NB *) natsub[union[x_,complement[image[V,z_]]],y_] := union[complement[image[V,z]],natsub[x,y]] (* added 2002 September 17 based on DIFFER.NB *) natsub[x_,union[y_,complement[image[V,z_]]]] := union[complement[image[V,z]],natsub[x,y]] (* added 2002 October 31 based on REPLACE.NB *) natsub[union[x_,image[V,y_]],z_] := union[image[V,y],natsub[x,z]] (* added 2002 October 31 based on REPLACE.NB *) natsub[x_,union[y_,image[V,z_]]] := union[image[V,z],natsub[x,y]] (* derived 2005 July 2 in MM-MONUS.NB *) natsub[union[nat[x_],nat[y_]],nat[y_]] := nat[natsub[nat[x],nat[y]]] ONEONE[h_] := and[FUNCTION[h],FUNCTION[inverse[h]]] (* derived 2004 May 9 in OOPART.NB *) oopart[composite[Id,x_]] := oopart[x] (* derived 2004 May 14 in CROSSFUN.NB *) oopart[cross[x_,y_]] := cross[oopart[x],oopart[y]] (* derived 2004 May 7 in OOPART.NB *) oopart[inverse[x_]] := inverse[oopart[x]] (* derived 2006 July 6 in CARDPLUS.NB *) oopart[times[x_]] := composite[times[x],id[image[V,x]]] (* derived 2004 May 9 in OOPART.NB *) oopart[union[x_,complement[image[V,y_]]]] := composite[oopart[x],id[image[V,y]]] (* added 2003 June 7 based on EQUAL.NB *) or[and[equal[x_,z_],equal[y_,z_]],equal[x_,y_]] := equal[x,y] (* derived 2006 January 8 in FU-SV.NB *) or[and[p_,FUNCTION[composite[Id,x_]]],not[FUNCTION[x_]]] := or[p,not[FUNCTION[x]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[composite[u_,v_],V]],not[member[u_,x_]],not[member[v_,y_]]] := or[p,not[member[u,x]],not[member[v,y]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[domain[domain[x_]],V]],not[member[x_,y_]]] := or[p,not[member[x,y]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[domain[x_],V]],not[member[x_,z_]]] := or[p,not[member[x,z]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[first[x_],V]],not[member[x_,inverse[y_]]]] := or[p,not[member[x,inverse[y]]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[H[x_],V]],not[member[x_,y_]]] := or[p,not[member[x,y]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[image[IMAGE[x_],y_],V]],not[member[y_,z_]]] := or[p,not[member[y,z]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[image[x_,y_],V]],not[FUNCTION[x_]],not[member[y_,z_]]] := or[p,not[FUNCTION[x]],not[member[y,z]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[image[x_,y_],V]],not[member[x_,z_]]] := or[p,not[member[x,z]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[intersection[w_,image[x_,y_]],V]],not[member[x_,z_]]] := or[p,not[member[x,z]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[intersection[x_,P[y_]],V]],not[member[y_,z_]]] := or[p,not[member[y,z]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[intersection[x_,U[y_]],V]],not[member[y_,z_]]] := or[p,not[member[y,z]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[intersection[x_,y_],V]],not[member[x_,z_]]] := or[p,not[member[x,z]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[range[x_],V]],not[member[x_,y_]]] := or[p,not[member[x,y]]] (* added 2003 August 9 based on INTADDXY.NB *) or[and[member[u_,V],member[v_,V]],not[member[pair[u_,v_],y_]],not[subclass[y_,cart[V,V]]]] := True (* derived 2004 June 10 in X297.NB *) or[and[p_,member[x_,V]],not[member[x_,y_]]] := or[p,not[member[x,y]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[x_,V]],not[member[first[x_],y_]]] := or[p,not[member[first[x],y]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[x_,V]],not[member[y_,z_]],not[subclass[x_,y_]]] := or[p,not[member[y,z]],not[subclass[x,y]]] (* derived 2004 June 11 in x713-x744-x793-x801.NB *) or[and[p_,member[u_,V]],not[member[pair[u_,v_],composite[x_,y_]]]] := or[p,not[member[pair[u,v],composite[x,y]]]] (* derived 2004 June 11 in x713-x744-x793-x801.NB *) or[and[p_,member[v_,V]],not[member[pair[u_,v_],composite[x_,y_]]]] := or[p,not[member[pair[u,v],composite[x,y]]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[x_,V]],not[member[second[x_],y_]]] := or[p,not[member[second[x],y]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[x_,V]],not[member[U[x_],y_]]] := or[p,not[member[U[x],y]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,member[x_,V]],not[subclass[x_,omega]]] := or[p,not[subclass[x,omega]]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,not[equal[0,x_]]],member[x_,V]] := or[p,member[x,V]] (* derived 2005 January 25 in 0-V.NB *) or[and[p_,not[equal[0,y_]]],not[member[x_,y_]]] := or[p,not[member[x,y]]] (* derived 2005 January 25 in 0-V.NB *) or[and[p_,not[equal[0,x_]]],subclass[x_,y_]] := or[p,subclass[x,y]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,not[member[x_,y_]]],member[x_,V]] := or[p,member[x,V]] (* derived 2005 January 25 in SETHOOD.NB *) or[and[p_,not[member[y_,z_]]],member[x_,V],not[subclass[x_,y_]]] := or[p,member[x,V],not[subclass[x,y]]] (* added 2001 November 3 based on MONOTONE.NB *) or[and[subclass[intersection[u_,v_],x_],subclass[intersection[u_,v_],y_]], not[subclass[u_,x_]],not[subclass[v_,y_]]] := True (* derived 2005 January 25 in 0-V.NB *) or[and[p_,subclass[x_,y_]],not[equal[V,y_]]] := or[p,not[equal[V,y]]] (* derived 2005 January 25 in SUBCLASS.NB *) or[and[p_,subclass[x_,z_]],not[subclass[x_,y_]],not[subclass[y_,z_]]] := or[p,not[subclass[x,y]],not[subclass[y,z]]] (* added 2001 November 3 based on MONOTONE.NB *) or[and[subclass[u_,union[x_,y_]],subclass[v_,union[x_,y_]]], not[subclass[u_,x_]],not[subclass[v_,y_]]] := True (* derived 2009 January 22 in ASS-RS.NB *) or[associative[composite[assoc[x_],id[cart[y_,y_]]]], not[subclass[image[assoc[x_],cart[y_,y_]],y_]]] := True (* derived 2004 December 4 in ASS-HOM.NB *) or[associative[composite[x_,y_,cross[z_,z_]]],not[associative[y_]], not[equal[composite[z_,x_,y_],y_]]] := True (* derived 2004 December 4 in ASS-HOM.NB *) or[associative[composite[x_,y_,cross[z_,z_]]],not[associative[y_]], not[equal[composite[z_,x_],id[w_]]],not[subclass[range[y_],w_]]] := True (* derived 2004 December 4 in ASS-HOM.NB *) or[associative[composite[x_,y_,cross[z_,z_]]],not[associative[y_]], not[equal[Id,composite[z_,x_]]]] := True (* added 2003 July 17 based on DIR-PROD.NB *) or[associative[composite[cross[x_,y_],TWIST]], not[associative[x_]],not[associative[y_]]] := True (* derived 2006 September 28 in BH-SGPS.NB *) or[associative[composite[y_,id[cart[range[w_],range[w_]]]]], not[associative[x_]],not[member[w_,binhom[x_,y_]]]] := True (* added 2003 July 1 based on ASS-TRV.NB *) or[associative[composite[x_,id[cart[V,V]]]],not[associative[x_]]] := True (* added 2003 July 1 based on ASSOC.NB *) or[associative[composite[x_,id[cart[V,V]]]],not[equal[composite[x_,cross[x_,Id]], composite[x_,cross[Id,x_],ASSOC]]]] := True (* added 2003 August 21 based on ASSOC-RS.NB *) or[associative[composite[x_,id[cart[z_,z_]]]],not[associative[x_]], not[subclass[image[x_,cart[z_,z_]],z_]]] := True (* derived 2008 November 17 in ASS-WRAP.NB *) or[associative[composite[IMAGE[assoc[x_]],CART]],not[equal[V,domain[VERTSECT[assoc[x_]]]]]] := True (* added 2003 July 19 based on IMGASSOC.NB *) or[associative[composite[IMAGE[x_],CART]],not[associative[x_]],not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2006 August 6 in PTWISE.NB *) or[associative[composite[IMAGE[cross[inverse[DUP],x_]],CROSS]], not[associative[x_]],not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2004 December 4 in ASS-HOM.NB *) or[associative[composite[inverse[x_],y_,cross[x_,x_]]], not[associative[y_]],not[FUNCTION[x_]],not[subclass[range[y_],range[x_]]]] := True (* derived 2004 December 4 in ASS-HOM.NB *) or[associative[composite[inverse[funpart[x_]],y_,cross[funpart[x_],funpart[x_]]]], not[associative[y_]],not[subclass[range[y_],range[funpart[x_]]]]] := True (* derived 2008 December 15 in ASSOC.NB *) or[associative[x_],equal[0,x_]] := associative[x] (* derived 2008 November 17 in ASS-WRAP.NB *) or[associative[x_],equal[0,assoc[x_]]] := True (* added 2003 July 1 based on ASS-EQ.NB *) or[associative[x_],not[associative[y_]],not[equal[x_,y_]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) or[associative[x_],not[category[x_]]] := True (* derived 2008 December 16 in ASSOC.NB *) or[associative[x_],not[equal[composite[x_,cross[x_,Id]],composite[x_,cross[Id,x_],ASSOC]]], not[subclass[x_,cart[cart[u_,v_],w_]]]] := True (* derived 2008 November 12 in ASSOCTIV.NB *) or[associative[x_],not[member[x_,GROUPS]]] := True (* derived 2008 December 29 in MONOIDS.NB *) or[associative[x_],not[member[x_,MONOIDS]]] := True (* derived 2006 July 13 in SGPS-RS.NB *) or[associative[x_],not[member[x_,SEMIGPS]]] := True (* derived 2004 October 26 in AXCH-AC1.NB *) or[axch,not[AxCh]] := True (* derived 2004 October 26 in AXCH.NB *) or[AxCh,not[equal[complement[set[0]],domain[CHOICE]]], not[FUNCTION[CHOICE]],not[subclass[CHOICE,inverse[E]]]] := True (* derived 2005 July 20 in WO-AC.NB *) or[axch,not[equal[V,image[Q,OMEGA]]]] := True (* derived 2004 December 30 in AXREG.NB *) or[AxReg,not[member[complement[REGULAR],x_]]] := True (* derived 2004 December 30 in AXREG.NB *) or[AxReg,not[member[DESCENDING,x_]]] := True (* derived 2008 December 30 in CAT-WRAP.NB *) or[category[composite[x_,SWAP]],not[category[x_]]] := True (* derived 2009 January 11 in CAT-SPEC.NB *) or[category[composite[SWAP,RIF,id[cart[x_,x_]]]],not[REFLEXIVE[x_]],not[TRANSITIVE[x_]]] := True (* derived 2008 December 30 in CAT-WRAP.NB *) or[category[x_],equal[0,x_]] := category[x] (* derived 2008 December 30 in CAT-DEFN.NB *) or[category[x_],not[associative[x_]],not[FUNCTION[x_]], not[subclass[composite[x_,inverse[FIRST],domain[x_]],domain[x_]]], not[subclass[domain[x_],cart[range[x_],range[x_]]]], not[subclass[range[x_],domain[cod[x_]]]],not[subclass[range[x_],domain[dom[x_]]]]] := True (* derived 2008 December 31 in CAT-MON.NB *) or[category[x_],not[member[x_,MONOIDS]]] := True (* derived 2004 June 21 in X18--.NB *) or[equal[0,A[complement[x_]]],not[member[x_,y_]]] := True (* added 2003 February 26 based on ACL-Z.NB *) or[equal[0,A[x_]],equal[0,intersection[x_,image[DISJOINT,x_]]]] := True (* added 2003 February 26 based on ACL-Z.NB *) or[equal[0,A[z_]],not[equal[0,intersection[x_,y_]]], not[member[x_,z_]],not[member[y_,z_]]] := True (* added 2001 December 9 based on EQUAL-V.NB *) or[equal[0,A[x_]],not[equal[V,x_]]] := True (* added 2002 May 10 based on P-A.NB *) or[equal[0,A[x_]],not[member[0,x_]]] := True (* derived 2004 March 4 in A-SC-PC.NB *) or[equal[0,A[x_]],not[subclass[P[y_],x_]]] := True (* derived 2005 January 27 in BA-OM.NB *) or[equal[0,A[succ[x_]]],not[member[x_,omega]]] := True (* derived 2006 July 20 in BINHOM-3.NB *) or[equal[0,APPLY[x_,0]],not[member[x_,binhom[NATADD,NATADD]]]] := True (* derived 2007 March 6 in LCM.NB *) or[equal[0,APPLY[LUB[DIV],x_]],member[x_,FINITE],not[subclass[x_,omega]]] := True (* derived 2007 March 6 in LCM.NB *) or[equal[0,APPLY[LUB[DIV],x_]],not[equal[omega,U[x_]]],not[subclass[x_,omega]]] := True (* derived 2007 March 6 in LCM.NB *) or[equal[0,APPLY[LUB[DIV],x_]],not[member[0,x_]],not[subclass[x_,omega]]] := True (* derived 2006 November 25 in U-BINHOM.NB *) or[equal[0,binhom[x_,y_]],equal[domain[U[binhom[x_,y_]]],fix[domain[x_]]]] := True (* derived 2007 June 16 in SUBTWINE.NB *) or[equal[0,domain[x_]],equal[V,domain[x_]], not[subclass[composite[x_,Di],composite[Di,x_]]]] := True (* derived 2006 January 6 in FU-X.NB *) or[equal[0,domain[x_]],FUNCTION[composite[Id,x_]]] := FUNCTION[composite[Id,x]] (* added 1998 September 15 *) or[equal[0,domain[x_]],not[equal[0,x_]]] := True (* derived 2004 June 24 in SP-E-CO.NB *) or[equal[0,domain[x_]],not[equal[composite[E,x_],composite[x_,E]]],not[member[x_,V]]] := True (* derived 2008 June 12 in WF-DORA.NB *) or[equal[0,domain[x_]],not[member[domain[x_],y_]], not[subclass[domain[x_],range[x_]]],not[WELLFOUNDED[x_]]] := True (* derived 2005 August 5 in X-ID.NB *) or[equal[0,domain[y_]],not[subclass[cross[x_,y_],Id]],subclass[composite[Id,x_],Id]] := True (* derived 2005 August 5 in X-ID.NB *) or[equal[0,domain[x_]],not[subclass[cross[x_,y_],Id]],subclass[composite[Id,y_],Id]] := True (* derived 2008 April 18 in SU-X.NB *) or[equal[0,domain[x_]],subclass[composite[Id,x_],y_]] := subclass[composite[Id,x],y] (* derived 2008 January 18 in THICK.NB *) or[equal[0,domain[thinpart[x_]]],not[equal[0,domain[VERTSECT[x_]]]]] := True (* derived 2005 January 27 in BA-OM.NB *) or[equal[0,x_],equal[0,A[x_]],not[member[x_,omega]]] := True (* derived 2005 January 27 in BA-ON.NB *) or[equal[0,x_],equal[0,A[x_]],not[member[x_,OMEGA]]] := True (* derived 2008 October 24 in ASS-CPS.NB *) or[equal[0,x_],equal[0,intersection[x_,y_]]] := equal[0,intersection[x,y]] (* derived 2006 November 11 in CUR-LEFT.NB *) or[equal[0,y_],equal[APPLY[APPLY[CURRY,w_],s_],composite[w_,LEFT[s_]]], not[member[s_,x_]],not[member[w_,map[cart[x_,y_],z_]]]] := True (* derived 2006 November 11 in CUR-LEFT.NB *) or[equal[0,y_],equal[APPLY[w_,s_],composite[APPLY[inverse[CURRY],w_],LEFT[s_]]], not[member[s_,x_]],not[member[w_,map[x_,map[y_,z_]]]]] := True (* derived 2006 November 16 in CURMAP-2.NB *) or[equal[0,y_],equal[APPLY[inverse[CURRY],w_], composite[inverse[SINGLETON],IMG,cross[w_,SINGLETON]]], not[member[w_,map[x_,map[y_,z_]]]]] := True (* derived 2006 November 16 in CURMAP-2.NB *) or[equal[0,y_],equal[APPLY[inverse[CURRY],w_],composite[rotate[E],cross[w_,Id]]], not[member[w_,map[x_,map[y_,z_]]]]] := True (* derived 2006 November 11 in CUR-LEFT.NB *) or[equal[0,y_],equal[APPLY[inverse[CURRY],w_],rotate[composite[inverse[w_],E]]], not[member[w_,map[x_,map[y_,z_]]]]] := True (* derived 2007 June 6 in IDEMWRAP.NB *) or[equal[0,x_],equal[x_,composite[x_,x_]]] := equal[x,composite[x,x]] (* derived 2008 November 6 in EQV-ON-X.NB *) or[equal[0,x_],equal[y_,fix[A[x_]]],not[subclass[image[IMAGE[inverse[DUP]],x_],set[y_]]]] := True (* derived 2006 July 23 in ITERCLOK.NB *) or[equal[0,x_],equal[x_,hull[invar[clock[x_]],set[0]]],not[member[x_,omega]]] := True (* derived 2006 September 2 in HULL-Z.NB *) or[equal[0,x_],equal[y_,hull[Z,x_]],not[member[y_,Z]],not[subclass[x_,y_]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[equal[0,y_],equal[image[inverse[x_],set[APPLY[GLB[x_],y_]]],lb[x_,y_]], not[member[x_,CL]],not[subclass[y_,fix[x_]]]] := True (* derived 2005 December 31 in CL-VS-UB.NB *) or[equal[0,y_],equal[image[x_,set[APPLY[LUB[x_],y_]]],ub[x_,y_]],not[member[x_,CL]],not[subclass[y_,fix[x_]]]] := True (* derived 2006 July 23 in ITERCLOK.NB *) or[equal[0,x_],equal[iterate[clock[x_],set[0]],modulo[x_]],not[member[x_,omega]]] := True (* derived 2005 February 22 in DIVRULES.NB *) or[equal[0,y_],equal[x_,y_],member[x_,y_],not[member[pair[x_,y_],DIV]]] := True (* derived 2006 July 6 in CARDPLUS.NB *) or[equal[0,x_],equal[omega,card[image[DIV,set[x_]]]],not[member[x_,omega]]] := True (* added 2002 May 14 based on ITER-DO.NB *) or[equal[0,y_],equal[omega,domain[iterate[x_,y_]]],not[equal[V,domain[x_]]]] := True (* added 2002 July 1 based on DOIT-IVR.NB *) or[equal[0,y_],equal[omega,domain[iterate[x_,y_]]], not[subclass[y_,domain[x_]]],not[subclass[image[x_,y_],y_]]] := True (* derived 2003 December 18 in RA-ITER.NB *) or[equal[0,y_],equal[omega,domain[iterate[x_,y_]]], not[subclass[y_,domain[x_]]],not[subclass[image[trv[x_],y_],domain[x_]]]] := True (* derived 2005 February 17 in X3741-49.NB *) or[equal[0,x_],equal[omega,U[x_]],member[U[x_],x_],not[subclass[x_,omega]]] := True (* derived 2008 September 17 in MEMB-2.NB *) or[equal[0,x_],equal[x_,set[0]]] := subclass[x,set[0]] (* added 2003 July 5 based on EQ-SS.NB *) or[equal[0,x_],equal[x_,set[y_]],not[subclass[x_,set[y_]]]] := True (* added 2002 April 17 based on BC-SUCC.NB *) or[equal[0,x_],equal[x_,succ[U[x_]]],not[member[x_,omega]]] := True (* derived 2005 February 23 in X3729.NB *) or[equal[0,x_],equal[x_,Uclosure[x_]],not[member[x_,omega]]] := True (* added 2003 November 4 based on SBCOMMUT.NB *) or[equal[0,x_],equal[V,image[inverse[S],x_]],not[equal[x_,image[S,x_]]]] := True (* derived 2004 June 21 in X18--.NB *) or[equal[0,x_],equal[V,x_],not[equal[x_,A[complement[x_]]]]] := True (* derived 2004 June 21 in X18--.NB *) or[equal[0,x_],equal[V,x_],not[equal[A[x_],complement[x_]]]] := True (* derived 2006 October 14 in A-CLOSED.NB *) or[equal[0,x_],EQUIVALENCE[A[x_]],not[subclass[x_,EQV]]] := True (* derived 2008 July 13 in TRV-WF.NB *) or[equal[0,eqv[x_]],not[equal[0,fix[trv[x_]]]]] := True (* derived 2007 June 12 in FIN-PO.NB *) or[equal[0,fin[x_]],member[x_,FINITE]] := True (* derived 2006 November 26 in BH-IDEMP.NB *) or[equal[0,fix[composite[y_,DUP]]],equal[domain[U[binhom[x_,y_]]],fix[domain[x_]]], not[member[x_,BINOPS]],not[member[y_,BINOPS]]] := True (* derived 2006 November 26 in BH-IDEMP.NB *) or[equal[0,fix[composite[y_,DUP]]],not[equal[0,binhom[x_,y_]]], not[member[x_,BINOPS]],not[member[y_,BINOPS]]] := True (* derived 2008 July 13 in CHN-C-E.NB *) or[equal[0,fix[composite[inverse[E],BIGCUP]]],not[AxReg]] := True (* derived 2007 November 29 in FP-TRV-E.NB *) or[equal[0,fix[composite[inverse[E],TC]]],not[AxReg]] := True (* derived 2004 December 31 in X4291-99.NB *) or[equal[0,fix[composite[inverse[IMAGE[inverse[S]]],E]]],not[AxReg]] := True (* derived 2004 February 26 in IN-DJ-SU.NB *) or[equal[0,fix[composite[x_,inverse[y_]]]],not[equal[0,intersection[x_,y_]]]] := True (* derived 2004 February 26 in IN-DJ-SU.NB *) or[equal[0,fix[composite[inverse[x_],y_]]],not[equal[0,intersection[x_,y_]]]] := True (* added 2002 May 17 based on FIX-0.NB *) or[equal[0,fix[composite[x_,y_]]],not[equal[0,fix[composite[y_,x_]]]]] := True (* derived 2008 February 5 in SU-FP-CO.NB *) or[equal[0,fix[composite[x_,z_]]],not[equal[0,fix[composite[y_,z_]]]],not[subclass[x_,y_]]] := True (* derived 2008 February 5 in SU-FP-CO.NB *) or[equal[0,fix[composite[w_,x_]]],not[equal[0,fix[composite[w_,y_]]]],not[subclass[x_,y_]]] := True (* derived 2008 February 5 in SU-FP-CO.NB *) or[equal[0,fix[composite[w_,x_,z_]]],not[equal[0,fix[composite[w_,y_,z_]]]], not[subclass[x_,y_]]] := True (* derived 2004 April 4 in IRR-TRV.NB *) or[equal[0,fix[composite[x_,x_]]],not[equal[0,fix[x_]]],not[TRANSITIVE[x_]]] := True (* derived 2006 January 30 in ACY-I.NB *) or[equal[0,fix[composite[x_,x_]]],not[equal[0,fix[trv[x_]]]]] := True (* derived 2004 July 27 in WF-FP.NB *) or[equal[0,fix[composite[x_,x_]]],not[WELLFOUNDED[x_]]] := True (* derived 2006 January 16 in SUBFIXED.NB *) or[equal[0,fix[composite[S,x_]]],not[equal[0,fix[x_]]], not[FUNCTION[x_]],not[subclass[composite[x_,S],composite[S,x_]]]] := True (* derived 2004 December 30 in AXREG.NB *) or[equal[0,fix[E]],not[AxReg]] := True (* added 2002 June 8 based on POWER-SU.NB *) or[equal[0,fix[x_]],equal[omega,domain[power[x_]]]] := True (* derived 2008 October 6 in DO-FP-0.NB *) or[equal[0,fix[x_]],not[equal[0,domain[fix[x_]]]],not[subclass[domain[x_],cart[V,V]]]] := True (* derived 2008 October 6 in DO-FP-0.NB *) or[equal[0,fix[x_]],not[equal[0,domain[fix[x_]]]],not[subclass[range[x_],cart[V,V]]]] := True (* derived 2004 April 4 in IRR-TRV.NB *) or[equal[0,fix[x_]],not[equal[0,fix[composite[x_,x_]]]]] := True (* added 2003 October 15 based on ACYCLIC.NB *) or[equal[0,fix[x_]],not[equal[0,fix[y_]]],not[subclass[x_,y_]]] := True (* derived 2004 April 4 in IRR-TRV.NB *) or[equal[0,fix[x_]],not[equal[0,fix[trv[x_]]]]] := True (* derived 2006 January 3 in 0-LUB.NB *) or[equal[0,fix[x_]],not[equal[0,GLB[x_]]]] := True (* derived 2004 April 4 in IRR-TRV.NB *) or[equal[0,fix[x_]],not[equal[0,intersection[x_,inverse[x_]]]]] := True (* derived 2006 January 3 in 0-LUB.NB *) or[equal[0,fix[x_]],not[equal[0,LUB[x_]]]] := True (* added 2003 September 29 based on WF.NB *) or[equal[0,fix[x_]],not[WELLFOUNDED[x_]]] := True (* derived 2004 September 12 in WF-REC-5.NB *) or[equal[0,fix[x_]],not[WELLFOUNDED[inverse[x_]]]] := True (* derived 2008 July 13 in TRV-WF.NB *) or[equal[0,fix[trv[x_]]],not[equal[0,eqv[x_]]]] := True (* added 2003 October 15 based on ACYCLIC.NB *) or[equal[0,fix[trv[x_]]],not[equal[0,fix[trv[y_]]]],not[subclass[x_,y_]]] := True (* added 2003 October 15 based on ACYCLIC.NB *) or[equal[0,fix[trv[x_]]],not[WELLFOUNDED[x_]]] := True (* derived 2007 September 22 in UCH-ACY.NB *) or[equal[0,fix[trv[U[x_]]]],not[subclass[x_,ACYCLIC]], not[subclass[cart[x_,x_],union[S,inverse[S]]]]] := True (* derived 2006 October 14 in A-CLOSED.NB *) or[equal[0,x_],FUNCTION[A[x_]],not[subclass[x_,FUNS]]] := True (* derived 2008 July 3 in MAX-FUNP.NB *) or[equal[0,funpart[composite[oopart[x_],y_]]],not[equal[0,funpart[y_]]], not[subclass[range[y_],domain[oopart[x_]]]]] := True (* derived 2008 July 3 in MAX-FUNP.NB *) or[equal[0,funpart[composite[VERTSECT[inverse[po[setpart[x_]]]],po[setpart[x_]]]]], not[equal[0,funpart[po[setpart[x_]]]]]] := True (* derived 2008 July 3 in MAX-FUNP.NB *) or[equal[0,funpart[y_]],not[equal[0,funpart[composite[funpart[x_],y_]]]], not[subclass[range[y_],domain[funpart[x_]]]]] := True (* derived 2004 December 30 in AXREG.NB *) or[equal[0,H[complement[set[0]]]],not[AxReg]] := True (* derived 2007 December 6 in IDEMFUNP.NB *) or[equal[0,idem[funpart[x_]]],not[equal[0,fix[idem[funpart[x_]]]]]] := True (* derived 2008 December 28 in E.NB *) or[equal[0,ids[x_]],member[e[x_],ids[x_]],not[member[x_,BINOPS]]] := True (* derived 2008 December 28 in E.NB *) or[equal[0,ids[x_]],member[e[x_],V]] := True (* derived 2008 December 28 in E.NB *) or[equal[0,ids[x_]],member[ids[x_],range[SINGLETON]],not[member[x_,BINOPS]]] := True (* derived 2008 December 29 in MONOIDS.NB *) or[equal[0,ids[x_]],member[x_,MONOIDS],not[member[x_,SEMIGPS]]] := True (* derived 2008 December 28 in E.NB *) or[equal[0,ids[x_]],not[equal[V,e[x_]]]] := True (* derived 2005 February 15 in RUS-A-DJ.NB *) or[equal[0,intersection[x_,A[x_]]],not[AxReg]] := True (* derived 2005 May 17 in NATRULES.NB *) or[equal[0,intersection[x_,A[x_]]],not[member[x_,omega]]] := True (* derived 2005 February 15 in ON-IND-4.NB *) or[equal[0,intersection[x_,A[x_]]],not[subclass[x_,omega]]] := True (* derived 2006 March 12 in PC-ON-A.NB *) or[equal[0,intersection[x_,A[x_]]],not[subclass[x_,OMEGA]]] := True (* derived 2005 February 15 in RUS-A-DJ.NB *) or[equal[0,intersection[x_,A[x_]]],not[subclass[x_,REGULAR]]] := True (* derived 2005 February 15 in RUS-A-DJ.NB *) or[equal[0,intersection[x_,A[x_]]],not[subclass[x_,RUSSELL]]] := True (* derived 2006 January 7 in CL-FP.NB *) or[equal[0,intersection[cliques[complement[cross[x_,complement[x_]]]], map[fix[x_],fix[x_]],P[Di]]],not[member[x_,CL]]] := True (* derived 2004 April 4 in IRR-TRV.NB *) or[equal[0,intersection[x_,composite[z_,inverse[y_]]]],not[equal[0,intersection[z_,composite[x_,y_]]]]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) or[equal[0,intersection[composite[y_,z_],inverse[x_]]],not[equal[0,intersection[composite[x_,y_],inverse[z_]]]]] := True (* derived 2004 April 4 in IRR-TRV.NB *) or[equal[0,intersection[x_,composite[z_,y_]]], not[equal[0,intersection[z_,composite[x_,inverse[y_]]]]]] := True (* derived 2004 July 16 in X1903-46.NB *) or[equal[0,intersection[x_,composite[PS,x_]]],not[FUNCTION[x_]]] := True (* added 2003 December 19 based on DO-ITER.NB *) or[equal[0,intersection[y_,domain[x_]]],equal[omega,domain[iterate[x_,y_]]], not[subclass[range[x_],domain[x_]]]] := True (* derived 2004 February 28 in RA-IM.NB *) or[equal[0,intersection[x_,domain[y_]]],not[equal[0,y_]]] := True (* added 2003 February 26 based on ACL-Z.NB *) or[equal[0,intersection[x_,y_]],equal[x_,y_],not[member[x_,Z]],not[member[y_,Z]]] := True (* derived 2004 January 24 in FIN-DJ3.NB *) or[equal[0,intersection[FINITE,x_]],not[subclass[x_,image[PS,x_]]]] := True (* derived 2004 December 31 in X4291-99.NB *) or[equal[0,intersection[fix[BIGCUP],range[SINGLETON]]],not[AxReg]] := True (* derived 2008 February 22 in WF-RS.NB *) or[equal[0,intersection[y_,fix[composite[x_,id[y_],x_]]]], not[WELLFOUNDED[composite[id[y_],x_]]]] := True (* added 2002 December 23 based on REPLACE.NB *) or[equal[0,intersection[fix[x_],fix[composite[Di,x_]]]],not[FUNCTION[x_]]] := True (* derived 2005 October 2 in POLUBGLB.NB *) or[equal[0,intersection[fix[po[x_]],lb[po[x_],y_],ub[po[x_],intersection[fix[po[x_]],lb[po[x_],y_]]]]], member[y_,domain[GLB[po[x_]]]],not[member[y_,V]]] := True (* derived 2005 October 2 in POLUBGLB.NB *) or[equal[0,intersection[fix[po[x_]],lb[po[x_],intersection[fix[po[x_]],ub[po[x_],y_]]],ub[po[x_],y_]]], member[y_,domain[LUB[po[x_]]]],not[member[y_,V]]] := True (* derived 2007 October 4 in TOWERS.NB *) or[equal[0,intersection[fix[UCHAINS],invar[x_]]], not[equal[w_,Uchains[w_]]],not[subclass[image[x_,w_],w_]], subclass[A[intersection[fix[UCHAINS],invar[x_]]],w_]] := True (* derived 2008 November 2 in IM-EQV.NB *) or[equal[0,intersection[y_,image[eqv[x_],z_]]], not[equal[0,intersection[z_,image[eqv[x_],y_]]]]] := True (* derived 2008 January 12 in HAUS-MAX.NB *) or[equal[0,intersection[image[IMAGE[id[chains[x_]]],range[POWER]], subvar[inverse[PS]]]],not[axch]] := True (* derived 2007 November 7 in CLQ-C.NB *) or[equal[0,intersection[x_,image[z_,x_]]],not[equal[0,intersection[y_,image[z_,y_]]]], not[subclass[x_,y_]]] := True (* derived 2005 February 19 in ONE-DIV.NB *) or[equal[0,intersection[image[PAIRSET,Di],P[image[x_,set[y_]]]]],not[member[y_,domain[funpart[x_]]]]] := True (* derived 2005 February 19 in ONE-DIV.NB *) or[equal[0,intersection[image[PAIRSET,Di],P[x_]]],not[member[x_,range[SINGLETON]]]] := True (* derived 2004 February 26 in IN-DJ-SU.NB *) or[equal[0,intersection[inverse[x_],inverse[y_]]],not[equal[0,intersection[x_,y_]]]] := True (* derived 2004 April 4 in IRR-TRV.NB *) or[equal[0,intersection[x_,inverse[x_]]],not[equal[0,fix[x_]]],not[TRANSITIVE[x_]]] := True (* derived 2004 February 26 in IN-DJ-SU.NB *) or[equal[0,intersection[x_,inverse[y_]]],not[equal[0,intersection[y_,inverse[x_]]]]] := True (* derived 2007 April 26 in PO-TOP.NB *) or[equal[0,intersection[y_,lb[po[x_],y_]]], member[intersection[y_,lb[po[x_],y_]],range[SINGLETON]]] := True (* derived 2008 July 27 in REGRESS.NB *) or[equal[0,intersection[map[omega,V],transvar[cross[inverse[SUCC],Id],cross[Id,inverse[E]]]]], not[AxReg]] := True (* derived 2004 November 28 in SKOLEM.NB *) or[equal[0,intersection[map[x_,y_],P[z_]]],subclass[x_,image[inverse[z_],y_]]] := True (* derived 2005 February 8 in X1734.NB *) or[equal[0,intersection[x_,y_]],member[union[x_,set[y_]],DESCENDING],not[member[x_,DESCENDING]]] := True (* added 2002 September 10 based on IMV-RULE.NB *) or[equal[0,intersection[x_,y_]],not[equal[0,x_]]] := True (* derived 2004 March 14 in WF-WO.NB *) or[equal[0,intersection[u_,w_]],not[equal[0,intersection[v_,w_]]],not[equal[u_,v_]]] := True (* added 2003 January 14 based on CHAIN-C.NB *) or[equal[0,intersection[x_,y_]],not[equal[0,intersection[y_,z_]]],not[subclass[x_,z_]]] := True (* derived 2004 August 21 in X1775.NB *) or[equal[0,intersection[x_,y_]],not[equal[0,intersection[y_,P[complement[y_]]]]],not[member[x_,REGULAR]]] := True (* derived 2004 August 21 in X1775.NB *) or[equal[0,intersection[x_,y_]],not[equal[0,intersection[y_,P[complement[y_]]]]],not[subclass[x_,REGULAR]]] := True (* derived 2005 February 8 in X1775.NB *) or[equal[0,intersection[x_,y_]],not[member[x_,DESCENDING]],not[member[y_,REGULAR]]] := True (* derived 2007 December 14 in CANTOR.NB *) or[equal[0,intersection[x_,y_]],not[member[intersection[x_,y_],DESCENDING]], not[WELLFOUNDED[composite[id[x_],E]]]] := True (* added 2003 August 8 based on CLIQEQDF.NB *) or[equal[0,intersection[x_,y_]],not[member[y_,Z]],not[subclass[cart[x_,x_],EQUIDIFF]],subclass[x_,y_]] := True (* derived 2004 June 19 based on X1421-45.NB *) or[equal[0,intersection[x_,y_]],not[member[x_,range[SINGLETON]]],subclass[x_,y_]] := True (* derived 2005 April 17 in XVR-ITER.NB *) or[equal[0,intersection[omega,x_]],member[0,x_],not[subclass[image[inverse[SUCC],x_],x_]]] := True (* derived 2005 February 12 in X3673-76.NB *) or[equal[0,intersection[OMEGA,x_]],not[equal[0,intersection[x_,P[complement[x_]]]]]] := True (* derived 2008 July 27 in TC-0.NB *) or[equal[0,intersection[x_,P[complement[x_]]]],member[0,x_],not[subclass[U[x_],x_]]] := True (* derived 2005 February 8 in X1729.NB *) or[equal[0,intersection[x_,P[complement[x_]]]],not[member[x_,DESCENDING]]] := True (* derived 2004 August 21 in X1733.NB *) or[equal[0,intersection[x_,P[complement[x_]]]],not[member[x_,V]],not[subclass[P[x_],DESCENDING]]] := True (* derived 2008 July 27 in REGRESS.NB *) or[equal[0,intersection[P[complement[range[x_]]],range[x_]]],not[equal[omega,domain[x_]]], not[FUNCTION[x_]],not[subclass[composite[x_,SUCC],composite[inverse[E],x_]]]] := True (* derived 2008 July 27 in TC-0.NB *) or[equal[0,intersection[P[complement[tc[x_]]],tc[x_]]],member[0,tc[x_]]] := True (* derived 2004 August 21 in X1733.NB *) or[equal[0,intersection[P[complement[U[x_]]],U[x_]]],not[member[x_,V]],not[subclass[x_,DESCENDING]]] := True (* derived 2005 February 8 in X1734.NB *) or[equal[0,intersection[x_,P[intersection[y_,z_]]]],not[equal[0,intersection[x_,P[y_]]]]] := True (* derived 2006 April 20 in ACL-NEST.NB *) or[equal[0,intersection[x_,P[y_]]],subclass[A[x_],y_]] := True (* derived 2008 January 29 in IM-TRV.NB *) or[equal[0,intersection[z_,P[x_]]], not[equal[0,intersection[z_,P[y_]]]],not[subclass[x_,y_]]] := True (* derived 2004 June 23 in ZN-RE.NB *) or[equal[0,intersection[REGULAR,x_]],member[A[image[RANK,x_]],OMEGA]] := True (* derived 2004 June 28 in X1773-1800.NB *) or[equal[0,intersection[REGULAR,x_]],not[equal[0,intersection[x_,P[complement[x_]]]]]] := True (* derived 2005 February 8 in X1774.NB *) or[equal[0,intersection[REGULAR,x_]],not[member[x_,DESCENDING]]] := True (* derived 2004 August 21 in X1733.NB *) or[equal[0,intersection[REGULAR,x_]],not[subclass[P[x_],DESCENDING]]] := True (* derived 2005 February 8 in X1733.NB *) or[equal[0,intersection[REGULAR,U[x_]]],not[subclass[x_,DESCENDING]]] := True (* derived 2004 February 28 in A-SC-DJ.NB *) or[equal[0,intersection[x_,y_]],subclass[A[x_],U[y_]]] := True (* derived 2007 April 26 in PO-TOP.NB *) or[equal[0,intersection[y_,ub[po[x_],y_]]], member[intersection[y_,ub[po[x_],y_]],range[SINGLETON]]] := True (* derived 2006 January 4 in CL-X.NB *) or[equal[0,lb[x_,u_]],equal[0,lb[y_,v_]],not[equal[0,lb[cross[x_,y_],cart[u_,v_]]]]] := True (* derived 2006 January 4 in CL-CHAR.NB *) or[equal[0,lb[x_,fix[x_]]],equal[0,x_],equal[0,ub[x_,fix[x_]]],member[x_,CL], not[equal[range[VERTSECT[x_]],range[VERTSECT[UB[x_]]]]],not[member[x_,y_]],not[PARTIALORDER[x_]]] := True (* derived 2006 January 2 in 0-LB-UB.NB *) or[equal[0,lb[x_,y_]],not[equal[0,lb[x_,z_]]],not[subclass[z_,y_]]] := True (* derived 2006 January 4 in CL-CHAR.NB *) or[equal[0,lb[po[x_],fix[po[x_]]]],equal[0,po[x_]],equal[0,ub[po[x_],fix[po[x_]]]],member[po[x_],CL], not[equal[range[VERTSECT[po[x_]]],range[VERTSECT[UB[po[x_]]]]]],not[member[po[x_],y_]]] := True (* derived 2006 January 3 in 0-DO-LUB.NB *) or[equal[0,lb[po[x_],fix[po[x_]]]],equal[0,po[x_]],member[0,domain[LUB[po[x_]]]]] := True (* derived 2005 January 4 in DO-UB.NB *) or[equal[0,lb[po[x_],fix[po[x_]]]],equal[domain[LB[po[x_]]],P[fix[po[x_]]]]] := True (* derived 2005 January 4 in DO-UB.NB *) or[equal[0,lb[x_,range[x_]]],equal[domain[LB[x_]],P[range[x_]]]] := True (* derived 2005 January 4 in DO-UB.NB *) or[equal[0,lb[x_,y_]],subclass[P[y_],domain[LB[x_]]]] := True (* derived 2005 December 31 in 0-UB.NB *) or[equal[0,lb[x_,y_]],subclass[y_,range[x_]]] := True (* derived 2007 April 24 in LB-UB-V.NB *) or[equal[0,lb[x_,V]],not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2004 February 20 in REPLACE1.NB *) or[equal[0,lb[x_,V]],not[member[x_,y_]]] := True (* derived 2008 July 27 in TC-0.NB *) or[equal[0,x_],member[0,x_],not[AxReg],not[subclass[U[x_],x_]]] := True (* added 2003 November 4 based on SBCOMMUT.NB *) or[equal[0,x_],member[0,x_],not[equal[x_,image[inverse[S],x_]]]] := True (* added 2002 April 20 based on ON-7-A.NB *) or[equal[0,x_],member[0,x_],not[member[x_,omega]]] := True (* added 2003 January 20 based on ON-1-B.TXT *) or[equal[0,x_],member[0,x_],not[member[x_,OMEGA]]] := True (* derived 2004 December 29 in FUL-REG3.NB *) or[equal[0,x_],member[0,x_],not[member[x_,REGULAR]],not[subclass[U[x_],x_]]] := True (* derived 2005 September 8 in RAVS-DIV.NB *) or[equal[0,x_],member[0,x_],not[subclass[x_,omega]],not[subclass[image[image[inverse[NATADD],x_],x_],x_]]] := True (* derived 2004 December 30 in FUL-REG3.NB *) or[equal[0,x_],member[0,x_],not[subclass[x_,REGULAR]],not[subclass[U[x_],x_]]] := True (* derived 2008 July 27 in TC-0.NB *) or[equal[0,x_],member[0,tc[x_]],not[AxReg]] := True (* derived 2008 July 27 in TC-0.NB *) or[equal[0,x_],member[0,tc[x_]],not[member[x_,REGULAR]]] := True (* derived 2008 July 27 in TC-0.NB *) or[equal[0,x_],member[0,tc[x_]],not[subclass[x_,REGULAR]]] := True (* added 2003 June 6 based on ACL-UCL.NB *) or[equal[0,x_],member[A[x_],Aclosure[x_]],not[member[x_,V]]] := True (* added 2002 January 23 based on ACLACL.NB *) or[equal[0,y_],member[A[y_],Aclosure[x_]], not[member[y_,V]],not[subclass[y_,x_]]] := True (* derived 2008 September 17 in TUKEY.NB *) or[equal[0,x_],member[A[x_],FINCHAR],not[subclass[x_,FINCHAR]]] := True (* derived 2006 October 14 in A-CLOSED.NB *) or[equal[0,x_],member[A[x_],FINITE],not[subclass[x_,FINITE]]] := True (* added 2003 June 4 based on IMAGE.NB *) or[equal[0,x_],member[A[x_],image[BIGCAP,y_]],not[member[x_,y_]]] := True (* derived 2006 October 14 in A-CLOSED.NB *) or[equal[0,x_],member[A[x_],y_],not[equal[y_,fix[HULL[y_]]]],not[subclass[x_,y_]]] := True (* derived 2004 February 1 in FINCHAIN.NB *) or[equal[0,x_],member[A[x_],x_],not[member[x_,FINITE]], not[subclass[cart[x_,x_],union[S,inverse[S]]]]] := True (* derived 2005 August 8 in NEXTPRIM.NB *) or[equal[0,x_],member[A[x_],PRIMES],not[subclass[x_,PRIMES]]] := True (* derived 2006 March 30 in REG-A.NB *) or[equal[0,x_],member[A[x_],REGULAR],not[member[x_,REGULAR]]] := True (* derived 2006 October 14 in A-CLOSED.NB *) or[equal[0,x_],member[A[x_],REGULAR],not[subclass[x_,REGULAR]]] := True (* derived 2006 October 14 in A-CLOSED.NB *) or[equal[0,x_],member[A[x_],TOPS],not[subclass[x_,TOPS]]] := True (* derived 2006 November 12 in CURMAP-1.NB *) or[equal[0,y_],member[APPLY[CURRY,w_],map[x_,map[y_,z_]]], not[member[w_,map[cart[x_,y_],z_]]]] := True (* derived 2006 November 16 in CURMAP-2.NB *) or[equal[0,y_],member[APPLY[inverse[CURRY],w_],map[cart[x_,y_],z_]], not[member[w_,map[x_,map[y_,z_]]]]] := True (* derived 2008 March 11 in LEAST-WO.NB *) or[equal[0,x_],member[APPLY[LEAST[w_],x_],fix[w_]], not[member[x_,y_]],not[subclass[x_,fix[w_]]],not[WELLORDER[w_]]] := True (* derived 2008 March 11 in LEAST-WO.NB *) or[equal[0,x_],member[APPLY[LEAST[w_],x_],x_],not[member[x_,y_]], not[subclass[x_,fix[w_]]],not[WELLORDER[w_]]] := True (* derived 2008 March 11 in LEAST-WO.NB *) or[equal[0,x_],member[APPLY[LEAST[wo[w_]],x_],fix[wo[w_]]], not[member[x_,y_]],not[subclass[x_,fix[wo[w_]]]]] := True (* derived 2008 March 11 in LEAST-WO.NB *) or[equal[0,x_],member[APPLY[LEAST[wo[w_]],x_],x_], not[member[x_,y_]],not[subclass[x_,fix[wo[w_]]]]] := True (* derived 2008 October 7 in BNP-WRAP.NB *) or[equal[0,x_],member[x_,BINOPS]] := member[x,BINOPS] (* derived 2005 October 17 in CL-TOFIN.NB *) or[equal[0,x_],member[x_,CL],not[member[x_,FINITE]],not[TOTALORDER[x_]]] := True (* derived 2005 October 7 based on FIN-PO.NB *) or[equal[0,x_],member[x_,FINITE]] := member[x,FINITE] (* derived 2008 November 5 in MAP-FIN.NB *) or[equal[0,x_],member[y_,FINITE],not[member[x_,w_]],not[member[map[x_,y_],FINITE]]] := True (* derived 2008 December 5 in GROUPS.NB *) or[equal[0,x_],member[x_,GROUPS],not[associative[x_]],not[member[x_,QUASIGPS]]] := True (* derived 2008 December 5 in GROUPS.NB *) or[equal[0,x_],member[x_,GROUPS],not[member[x_,QUASIGPS]],not[member[x_,SEMIGPS]]] := True (* derived 2006 September 2 in HULL-Z.NB *) or[equal[0,x_],member[hull[Z,x_],Z],not[member[y_,Z]],not[subclass[x_,y_]]] := True (* derived 2006 September 2 in HULL-Z.NB *) or[equal[0,x_],member[hull[Z,x_],Z],not[subclass[cart[x_,x_],EQUIDIFF]]] := True (* derived 2008 January 4 in UCH-FIN.NB *) or[equal[0,t_],member[t_,image[inverse[S],x_]],not[member[t_,FINITE]], not[subclass[t_,U[x_]]],not[subclass[cart[x_,x_],union[S,inverse[S]]]]] := True (* derived 2005 February 20 in CARD-TWO.NB *) or[equal[0,x_],member[x_,image[PAIRSET,Di]],member[x_,range[SINGLETON]], not[member[y_,image[PAIRSET,Di]]],not[subclass[x_,y_]]] := True (* derived 2006 July 9 in UNOP-POW.NB *) or[equal[0,y_],member[image[power[x_],set[y_]],UNOPS], not[member[x_,UNOPS]],not[member[y_,omega]]] := True (* derived 2006 July 9 in UNOP-POW.NB *) or[equal[0,y_],member[image[power[x_],set[y_]],V],not[member[x_,z_]],not[member[y_,omega]]] := True (* derived 2007 May 2 in WOB.NB *) or[equal[0,x_],member[x_,image[Q,OMEGA]]] := member[x,image[Q,OMEGA]] (* derived 2008 August 3 in THM-64.NB *) or[equal[0,y_],member[intersection[lb[union[Id,x_],y_],y_],range[SINGLETON]], not[member[y_,z_]],not[subclass[cart[y_,y_],union[Id,inverse[x_],x_]]], not[WELLFOUNDED[composite[id[y_],x_]]]] := True (* derived 2005 February 15 in X3715-16.NB *) or[equal[0,x_],member[intersection[omega,complement[x_]],omega], not[subclass[x_,omega]],not[subclass[image[SUCC,x_],x_]]] := True (* derived 2007 April 7 in LD3COR.NB *) or[equal[0,z_],member[z_,ld[nat[x_],nat[y_]]]] := member[z,ld[nat[x],nat[y]]] (* derived 2007 April 7 in LD8.NB *) or[equal[0,y_],member[z_,ld[y_,x_]],not[member[z_,ld[x_,y_]]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[equal[0,u_],member[v_,ld[x_,y_]], not[member[natmul[u_,v_],ld[natmul[u_,x_],natmul[u_,y_]]]]] := True (* derived 2005 April 21 in AP-FACT.NB *) or[equal[0,x_],member[y_,x_],member[pair[x_,APPLY[FACTORIAL,y_]],DIV], not[member[x_,omega]],not[member[y_,omega]]] := True (* derived 2007 March 13 in DIV-LT.NB *) or[equal[0,y_],member[x_,natmul[y_,z_]],not[member[z_,omega]], not[member[natdiv[x_,y_],z_]]] := True (* derived 2004 February 8 in BASICS.NB *) or[equal[0,x_],member[y_,x_],not[subclass[x_,set[y_]]]] := True (* derived 2005 February 13 in NAT.NB *) or[equal[0,x_],member[x_,omega]] := member[x,omega] (* derived 2007 April 20 in GCD-UP.NB *) or[equal[0,x_],member[pair[y_,APPLY[GLB[DIV],x_]],DIV], not[subclass[x_,image[DIV,set[y_]]]]] := True (* derived 2007 April 26 in CL-GLBSU.NB *) or[equal[0,x_],member[pair[y_,APPLY[GLB[z_],x_]],z_], not[member[z_,CL]],not[subclass[x_,image[z_,set[y_]]]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[equal[0,y_],member[pair[APPLY[LUB[x_],y_],z_],x_],not[member[x_,CL]],not[subclass[y_,fix[x_]]], not[subclass[y_,image[inverse[x_],set[z_]]]]] := True (* derived 2007 April 3 in DIV-MUL.NB *) or[equal[0,x_],member[pair[nat[y_],x_],DIV]] := member[pair[nat[y],x],DIV] (* derived 2008 October 9 in QUASIGP.NB *) or[equal[0,x_],member[x_,QUASIGPS]] := member[x,QUASIGPS] (* derived 2006 July 23 in CONST-FU.NB *) or[equal[0,x_],member[range[x_],range[SINGLETON]],not[member[x_,CONST]]] := True (* derived 2006 March 7 in PCON-A-U.NB *) or[equal[0,x_],member[x_,range[SINGLETON]],member[A[x_],U[x_]],not[subclass[x_,OMEGA]]] := True (* added 2003 July 5 based on EQ-SS.NB *) or[equal[0,x_],member[x_,range[SINGLETON]],not[equal[x_,set[y_]]]] := True (* derived 2006 June 20 in MAP-RASG.NB *) or[equal[0,x_],member[x_,range[SINGLETON]], not[member[y_,range[SINGLETON]]],not[subclass[x_,y_]]] := True (* derived 2004 April 20 in ID-REVU.NB *) or[equal[0,x_],member[x_,range[SINGLETON]],not[subclass[x_,set[y_]]]] := True (* derived 2008 October 19 in SEMIGP.NB *) or[equal[0,x_],member[x_,SEMIGPS]] := member[x,SEMIGPS] (* derived 2007 October 9 in A-TOWERS.NB *) or[equal[0,x_],member[spine[S,A[x_]],V]] := True (* derived 2004 February 1 in FINCHAIN.NB *) or[equal[0,x_],member[U[x_],x_],not[member[x_,FINITE]], not[subclass[cart[x_,x_],union[S,inverse[S]]]]] := True (* derived 2005 August 14 in REPLACE11.NB *) or[equal[0,x_],member[U[x_],x_],not[member[x_,FINITE]],not[subclass[x_,omega]]] := True (* derived 2005 August 14 in REPLACE1.NB *) or[equal[0,x_],member[U[x_],x_],not[member[x_,FINITE]],not[subclass[x_,OMEGA]]] := True (* added 2002 May 12 based on OM-SC-2B.NB *) or[equal[0,x_],member[U[x_],x_],not[member[x_,omega]]] := True (* derived 2005 February 23 in X3729.NB *) or[equal[0,x_],member[U[y_],x_],not[member[x_,omega]],not[subclass[y_,x_]]] := True (* added 2003 February 6 based on OM-SC-2B.NB *) (* Theorem OM-SC-2B in OM4 proved 2000 February 21 *) or[equal[0,x_],member[U[x_],U[y_]],not[member[x_,y_]],not[member[y_,omega]]] := True (* derived 2005 December 31 in CL-VS-UB.NB *) or[equal[0,y_],member[ub[x_,y_],range[VERTSECT[x_]]], not[member[x_,CL]],not[subclass[y_,fix[x_]]]] := True (* derived 2005 December 31 in VS-UB.NB *) or[equal[0,y_],member[ub[x_,y_],V],not[member[image[x_,y_],V]]] := True (* Added 1999 February 6 based on session 0-V.LOG *) or[equal[0,x_],member[x_,V]] := member[x,V] (* derived 2005 December 27 in CL-APGLB.NB *) or[equal[0,x_],member[y_,V],not[subclass[x_,image[z_,set[y_]]]]] := True (* derived 2005 April 21 in FACT-DIV.NB *) or[equal[0,nat[x_]],member[nat[y_],nat[x_]], member[pair[nat[x_],APPLY[FACTORIAL,nat[y_]]],DIV]] := True (* derived 2007 January 15 in EXP-MONO.NB *) or[equal[0,nat[x_]],member[nat[y_],nat[z_]], not[member[natexp[nat[x_],nat[y_]],natexp[nat[x_],nat[z_]]]]] := True (* derived 2007 March 2 in LD-2.NB *) or[equal[0,nat[x_]],member[nat[y_],nat[z_]],not[member[natmul[nat[x_],nat[y_]],nat[z_]]]] := True (* derived 2007 March 24 in Q18.NB *) or[equal[0,nat[z_]],member[nat[x_],natadd[nat[y_],nat[z_]]], member[natadd[nat[y_],natmod[nat[x_],nat[z_]]],natadd[nat[x_],natmod[nat[y_],nat[z_]]]]] := True (* derived 2007 January 16 in EXP-MONO.NB *) or[equal[0,nat[z_]],member[natexp[nat[x_],nat[z_]],natexp[nat[y_],nat[z_]]], not[member[nat[x_],nat[y_]]]] := True (* derived 2005 February 13 in NAT.NB *) or[equal[0,nat[x_]],member[x_,omega]] := True (* derived 2008 September 18 in REPLACE.NB *) or[equal[0,nat[x_]],member[set[0],nat[x_]]] := not[equal[nat[x],set[0]]] (* derived 2008 August 24 in NAT-LESS.NB *) or[equal[0,nat[x_]],member[set[0],natmul[nat[x_],nat[y_]]],not[member[set[0],nat[y_]]]] := True (* derived 2005 February 23 in X3729.NB *) or[equal[0,nat[x_]],member[U[y_],nat[x_]],not[subclass[y_,nat[x_]]]] := True (* derived 2007 March 21 in Q7.NB *) or[equal[0,nat[z_]],not[member[nat[x_],natadd[nat[y_],natmul[nat[y_],nat[z_]]]]], not[member[natadd[natmod[nat[x_],nat[y_]],natmul[nat[y_],nat[z_]]],nat[x_]]]] := True (* derived 2005 April 26 in DICHOT.NB *) or[equal[0,nat[x_]],not[subclass[y_,nat[x_]]],not[subclass[nat[x_],U[y_]]]] := True (* derived 2005 July 13 in DIV-CALC.NB *) or[equal[0,natmod[x_,y_]],not[member[pair[y_,x_],DIV]]] := True (* derived 2008 July 4 in ZORN-PO.NB *) or[equal[0,x_],not[axch],not[equal[0,funpart[x_]]],not[member[x_,y_]],not[PARTIALORDER[x_]], not[subclass[chains[x_],domain[UB[x_]]]]] := True (* derived 2008 May 23 in AXREG.NB *) or[equal[0,x_],not[AxReg],not[equal[0,intersection[P[complement[x_]],x_]]]] := True (* derived 2004 December 31 in X4291-99.NB *) or[equal[0,x_],not[AxReg],not[FUNCTION[x_]],not[subclass[x_,composite[inverse[E],x_]]]] := True (* derived 2008 December 28 in GP-DIR.NB *) or[equal[0,x_],not[equal[0,domain[domain[x_]]]],not[member[x_,BINOPS]]] := True (* derived 2006 November 9 in SIMPLIFY.NB *) or[equal[0,w_],not[equal[0,domain[domain[w_]]]],not[subclass[w_,cart[cart[x_,y_],z_]]]] := True (* derived 2006 February 14 in ACYFINOP.NB *) or[equal[0,x_],not[equal[0,domain[x_]]],not[FUNCTION[x_]]] := True (* derived 2006 November 20 in FU-0.NB *) or[equal[0,w_],not[equal[0,domain[w_]]],not[member[w_,map[x_,y_]]]] := True (* derived 2004 September 23 in WF-LEX.NB *) or[equal[0,x_],not[equal[0,domain[x_]]],not[subclass[x_,cart[y_,z_]]]] := True (* derived 2008 December 5 in DORA-GPS.NB *) or[equal[0,x_],not[equal[0,fix[domain[x_]]]],not[member[x_,QUASIGPS]]] := True (* derived 2006 January 29 in PROJ.NB *) or[equal[0,x_],not[equal[0,fix[x_]]],not[equal[x_,composite[x_,x_]]],not[FUNCTION[x_]]] := True (* derived 2008 July 13 in TRV-WF.NB *) or[equal[0,x_],not[equal[0,fix[x_]]],not[EQUIVALENCE[x_]]] := True (* derived 2005 December 28 in CL-0-1.NB *) or[equal[0,x_],not[equal[0,fix[x_]]],not[REFLEXIVE[x_]]] := True (* derived 2006 February 14 in ACYFINOP.NB *) or[equal[0,x_],not[equal[0,fix[trv[x_]]]],not[FUNCTION[x_]], not[member[x_,FINITE]],not[subclass[range[x_],domain[x_]]]] := True (* derived 2006 February 14 in ACYFINOP.NB *) or[equal[0,x_],not[equal[0,fix[trv[x_]]]],not[member[x_,FINITE]], not[subclass[x_,cart[V,V]]],not[subclass[range[x_],domain[x_]]]] := True (* derived 2006 February 16 in WFACYFIN.NB *) or[equal[0,x_],not[equal[0,fix[trv[x_]]]],not[member[x_,FINITE]], not[subclass[domain[x_],range[x_]]],not[subclass[x_,cart[V,V]]]] := True (* derived 2006 February 18 in DORA-DJ.NB *) or[equal[0,y_],not[equal[0,intersection[y_,domain[x_]]]],not[subclass[y_,image[x_,y_]]]] := True (* derived 2004 March 14 in WO-TRV.NB *) or[equal[0,y_],not[equal[0,intersection[y_,lb[x_,y_]]]], not[member[y_,V]],not[subclass[y_,fix[x_]]],not[WELLORDER[x_]]] := True (* derived 2008 August 3 in THM-64.NB *) or[equal[0,y_],not[equal[0,intersection[lb[union[Id,x_],y_],y_]]], not[member[y_,z_]],not[subclass[cart[y_,y_],union[Id,inverse[x_],x_]]], not[WELLFOUNDED[composite[id[y_],x_]]]] := True (* derived 2008 August 5 in THM-64.NB *) or[equal[0,y_],not[equal[0,intersection[y_,lb[union[Id,x_],y_]]]], not[subclass[y_,domain[VERTSECT[inverse[x_]]]]],not[subclass[cart[y_,y_],union[Id,x_,inverse[x_]]]], not[WELLFOUNDED[composite[id[y_],x_]]]] := True (* derived 2004 June 28 in X1773-1800.NB *) or[equal[0,x_],not[equal[0,intersection[x_,P[complement[x_]]]]],not[member[x_,REGULAR]]] := True (* derived 2007 November 29 in WF-IDX-E.NB *) or[equal[0,x_],not[equal[0,intersection[x_,P[complement[x_]]]]], not[subclass[x_,y_]],not[WELLFOUNDED[composite[id[y_],E]]]] := True (* derived 2004 December 30 in FUL-REG3.NB *) or[equal[0,x_],not[equal[0,intersection[x_,P[complement[x_]]]]],not[subclass[x_,REGULAR]]] := True (* derived 2007 November 29 in WF-IDX-E.NB *) or[equal[0,x_],not[equal[0,intersection[x_,P[complement[x_]]]]], not[WELLFOUNDED[composite[id[x_],E]]]] := True (* derived 2008 July 27 in TC-0.NB *) or[equal[0,x_],not[equal[0,intersection[P[complement[tc[x_]]],tc[x_]]]], not[subclass[x_,REGULAR]]] := True (* derived 2006 January 2 in 0-LB-UB.NB *) or[equal[0,x_],not[equal[0,lb[y_,z_]]],not[subclass[cart[x_,z_],y_]]] := True (* added 2002 October 11 based on MUL-SU-S.NB *) or[equal[0,x_],not[equal[0,y_]],not[subclass[x_,y_]]] := True (* derived 2006 January 2 in 0-LB-UB.NB *) or[equal[0,x_],not[equal[0,ub[y_,z_]]],not[subclass[cart[z_,x_],y_]]] := True (* derived 2004 July 23 in X23--.NB *) or[equal[0,y_],not[equal[0,VERTSECT[x_]]],not[member[image[x_,y_],V]]] := True (* derived 2008 September 17 in MEMB-2.NB *) or[equal[0,x_],not[equal[x_,set[0]]]] := not[equal[x,set[0]]] (* added 2002 May 25 based on INVAR.NB *) or[equal[0,x_],not[equal[x_,U[x_]]],not[member[x_,omega]]] := True (* added 2003 January 20 based on ON-SUC-7.NB *) (* Theorem ON-SUC-7 in ON7 proved 1997 June 6 *) or[equal[0,x_],not[equal[x_,U[x_]]], not[member[x_,OMEGA]],subclass[omega,x_]] := True (* derived 2008 June 12 in WF-DORA.NB *) or[equal[0,x_],not[equal[V,domain[VERTSECT[inverse[x_]]]]], not[subclass[domain[x_],range[x_]]],not[WELLFOUNDED[x_]]] := True (* added 2003 October 7 based on WF-IND.NB *) or[equal[0,y_],not[equal[V,domain[VERTSECT[inverse[x_]]]]], not[subclass[y_,image[x_,y_]]],not[WELLFOUNDED[x_]]] := True (* derived 2009 January 16 in FUNCTOR.NB *) or[equal[0,w_],not[functor[w_,0,y_]]] := True (* derived 2009 January 16 in FUNCTOR.NB *) or[equal[0,w_],not[functor[w_,x_,0]]] := True (* derived 2006 November 16 in MAP-SU.NB *) or[equal[0,y_],not[member[0,x_]],not[subclass[x_,map[y_,z_]]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[equal[0,y_],not[member[x_,CL]],not[subclass[y_,fix[x_]]],subclass[lb[x_,y_],fix[x_]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[equal[0,y_],not[member[x_,CL]],not[subclass[y_,fix[x_]]], subclass[lb[x_,y_],image[inverse[x_],set[APPLY[GLB[x_],y_]]]]] := True (* derived 2005 December 31 in CL-VS-UB.NB *) or[equal[0,y_],not[member[x_,CL]],not[subclass[y_,fix[x_]]],subclass[ub[x_,y_],fix[x_]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[equal[0,y_],not[member[x_,CL]],not[subclass[y_,fix[x_]]], subclass[ub[x_,y_],image[x_,set[APPLY[LUB[x_],y_]]]]] := True (* derived 2007 December 14 in CANTOR.NB *) or[equal[0,x_],not[member[x_,DESCENDING]],not[subclass[x_,y_]], not[WELLFOUNDED[composite[id[y_],E]]]] := True (* derived 2007 December 20 in FUND-X.NB *) or[equal[0,x_],not[member[x_,DESCENDING]],not[WELLFOUNDED[composite[id[x_],E]]]] := True (* derived 2004 January 24 in FIN-DJ3.NB *) or[equal[0,x_],not[member[x_,FINITE]],not[subclass[x_,image[PS,x_]]]] := True (* derived 2006 March 23 in PCON-FIN.NB *) or[equal[0,x_],not[member[x_,FINITE]],not[subclass[x_,OMEGA]],not[subclass[x_,U[x_]]]] := True (* derived 2007 April 5 in LD-5.NB *) or[equal[0,x_],not[member[natmul[x_,union[z_,nat[y_]]],nat[y_]]]] := True (* derived 2004 September 23 in WF-U.NB *) or[equal[0,x_],not[member[x_,y_]],not[subclass[x_,image[z_,x_]]],not[WELLFOUNDED[z_]]] := True (* derived 2008 August 3 in THM-64.NB *) or[equal[0,y_],not[member[y_,z_]],not[subclass[y_,image[x_,y_]]], not[WELLFOUNDED[composite[id[y_],x_]]]] := True (* derived 2004 September 23 in WF-U.NB *) or[equal[0,x_],not[member[x_,y_]],not[subclass[x_,image[wf[z_],x_]]]] := True (* derived 2008 August 9 in 2ND-IND.NB *) or[equal[0,w_],not[member[w_,x_]],not[subclass[w_,y_]], not[subclass[w_,image[z_,w_]]],not[WELLFOUNDED[composite[id[y_],z_]]]] := True (* derived 2007 December 14 in CANTOR.NB *) or[equal[0,x_],not[member[x_,y_]],not[subclass[x_,z_]], not[subclass[intersection[y_,P[z_]],set[0]]]] := True (* derived 2005 February 8 in X3590.NB *) or[equal[0,x_],not[member[x_,omega]],not[subclass[x_,U[x_]]]] := True (* derived 2005 April 26 in DICHOT.NB *) or[equal[0,x_],not[member[x_,omega]],not[subclass[x_,U[y_]]],not[subclass[y_,x_]]] := True (* derived 2006 July 9 in UNOP-POW.NB *) or[equal[0,y_],not[member[y_,omega]],subclass[image[power[x_],set[y_]],trv[x_]]] := True (* derived 2005 February 22 in DIVRULES.NB *) or[equal[0,y_],not[member[pair[x_,y_],DIV]],subclass[x_,y_]] := True (* derived 2005 January 21 in SS-A.NB *) or[equal[0,x_],not[member[x_,range[SINGLETON]]]] := not[member[x,range[SINGLETON]]] (* added 2001 November 22 based on EQUAL.NB *) or[equal[0,x_],not[subclass[x_,0]]] := True (* derived 2007 November 22 in 3CHAIN.NB *) or[equal[0,x_],not[subclass[y_,A[x_]]],not[subclass[U[x_],z_]],subclass[y_,z_]] := True (* Theorem IM-CP-0 in IM1 proved 2000 December 9 *) or[equal[0,x_],not[subclass[cart[x_,y_],z_]],subclass[y_,image[z_,x_]]] := True (* derived 2008 November 1 in A-CLIQ.NB *) or[equal[0,x_],not[subclass[x_,cliques[y_]]],subclass[cart[A[x_],A[x_]],y_]] := True (* derived 2008 August 3 in THM-64.NB *) or[equal[0,y_],not[subclass[y_,domain[VERTSECT[inverse[x_]]]]],not[subclass[y_,image[x_,y_]]], not[WELLFOUNDED[composite[id[y_],x_]]]] := True (* added 2003 October 7 based on WF-IND.NB *) or[equal[0,x_],not[subclass[x_,FINITE]],not[subclass[x_,image[PS,x_]]]] := True (* derved 2008 January 10 in MAXPRINC.NB *) or[equal[0,x_],not[subclass[x_,image[inverse[PS],x_]]], not[subclass[x_,image[inverse[S],intersection[x_,complement[image[inverse[PS],x_]]]]]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) or[equal[0,x_],not[subclass[x_,image[inverse[thinpart[y_]],x_]]], not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2008 August 9 in 2ND-IND.NB *) or[equal[0,x_],not[subclass[x_,y_]],not[subclass[x_,domain[VERTSECT[inverse[z_]]]]], not[subclass[x_,image[z_,x_]]],not[WELLFOUNDED[composite[id[y_],z_]]]] := True (* derived 2008 March 1 in WO-RS-S.NB *) or[equal[0,x_],not[subclass[x_,y_]],not[subclass[x_,image[PS,x_]]], not[WELLFOUNDED[composite[id[y_],PS]]]] := True (* derived 2005 October 22 in TRANSFIN.NB *) or[equal[0,x_],not[subclass[x_,OMEGA]],not[subclass[x_,image[PS,x_]]]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[equal[0,x_],not[subclass[x_,omega]],not[subclass[x_,image[SUCC,x_]]]] := True (* derived 2007 April 20 in GCD-UP.NB *) or[equal[0,x_],not[subclass[x_,omega]], subclass[lb[DIV,x_],image[inverse[DIV],set[APPLY[GLB[DIV],x_]]]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[equal[0,x_],not[subclass[x_,RFX]],REFLEXIVE[A[x_]]] := True (* derived 2008 September 17 in MEMB-2.NB *) or[equal[0,x_],not[subclass[x_,set[0]]]] := not[equal[x,set[0]]] (* derived 2006 October 14 in A-CLOSED.NB *) or[equal[0,x_],not[subclass[x_,TRV]],TRANSITIVE[A[x_]]] := True (* derived 2004 March 4 in A-SC-PC.NB *) or[equal[0,x_],not[subclass[U[x_],y_]],subclass[A[x_],y_]] := True (* derived 2006 October 14 in A-CLOSED.NB *) or[equal[0,x_],not[subclass[x_,WF]],WELLFOUNDED[A[x_]]] := True (* derived 2008 May 7 in ORD-0.NB *) or[equal[0,ord[x_]],member[x_,OMEGA]] := True (* derived 2006 January 3 in 0-DO-LUB.NB *) or[equal[0,po[x_]],equal[0,ub[po[x_],fix[po[x_]]]],member[0,domain[GLB[po[x_]]]]] := True (* derived 2008 July 4 in ZORN-PO.NB *) or[equal[0,po[setpart[x_]]],not[axch],not[equal[0,funpart[po[setpart[x_]]]]], not[subclass[chains[po[setpart[x_]]],domain[UB[po[setpart[x_]]]]]]] := True (* derived 2008 May 7 in ORD-0.NB *) or[equal[0,reg[x_]],member[x_,REGULAR]] := True (* derived 2004 December 18 in RFX-WRAP.NB *) or[equal[0,rfx[x_]],not[equal[0,fix[x_]]]] := True (* derived 2006 November 8 in SETP-0.NB *) or[equal[0,setpart[x_]],member[x_,V]] := True (* derived 2008 January 4 in SPINSETP.NB *) or[equal[0,spine[S,x_]],member[U[spine[S,x_]],x_],not[member[x_,FINITE]]] := True (* added 2001 November 22 based on MISC.NB *) or[equal[0,x_],subclass[x_,y_]] := subclass[x,y] (* derived 2005 February 22 in DIVRULES.NB *) or[equal[0,x_],subclass[image[inverse[DIV],set[x_]],succ[x_]]] := True (* derived 2006 July 11 in SGP-MOD.NB *) or[equal[0,x_],subclass[image[modulo[x_],y_],x_]] := True (* derived 2005 September 27 in GLB-LUB.NB *) or[equal[0,y_],subclass[lb[x_,y_],domain[x_]]] := True (* derived 2007 April 7 in LD8.NB *) or[equal[0,y_],subclass[ld[x_,y_],ld[y_,x_]]] := True (* derived 2005 April 21 in U-PRIMES.NB *) or[equal[0,y_],subclass[ub[x_,y_],range[x_]]] := True (* derived 2005 October 17 in CL-TOFIN.NB *) or[equal[0,to[fin[x_]]],member[to[fin[x_]],CL]] := True (* derived 2005 October 8 in TO-WRAP.NB *) or[equal[0,x_],TOTALORDER[x_]] := TOTALORDER[x] (* derived 2005 January 4 in DO-UB.NB *) or[equal[0,ub[x_,domain[x_]]],equal[domain[UB[x_]],P[domain[x_]]]] := True (* derived 2006 January 4 in CL-X.NB *) or[equal[0,ub[x_,u_]],equal[0,ub[y_,v_]],not[equal[0,ub[cross[x_,y_],cart[u_,v_]]]]] := True (* derived 2007 April 24 in LB-UB-V.NB *) or[equal[0,ub[funpart[x_],V]],equal[V,domain[funpart[x_]]]] := True (* derived 2007 April 24 in LB-UB-V.NB *) or[equal[0,ub[funpart[x_],V]],member[range[funpart[x_]],range[SINGLETON]]] := True (* derived 2006 January 2 in 0-LB-UB.NB *) or[equal[0,ub[x_,y_]],not[equal[0,ub[x_,z_]]],not[subclass[z_,y_]]] := True (* derived 2004 June 27 in X1691.NB *) or[equal[0,ub[x_,y_]],not[EQUIVALENCE[x_]],subclass[cart[y_,y_],x_]] := True (* derived 2005 January 4 in DO-UB.NB *) or[equal[0,ub[po[x_],fix[po[x_]]]],equal[domain[UB[po[x_]]],P[fix[po[x_]]]]] := True (* derived 2006 January 4 in CL-CHAR.NB *) or[equal[0,ub[po[x_],fix[po[x_]]]],not[equal[range[VERTSECT[po[x_]]],range[VERTSECT[UB[po[x_]]]]]], not[member[po[x_],y_]],subclass[P[fix[po[x_]]],union[domain[LUB[po[x_]]],set[0]]]] := True (* derived 2006 January 4 in CL-CHAR.NB *) or[equal[0,ub[po[x_],y_]],member[y_,domain[LUB[po[x_]]]],not[member[y_,z_]], not[member[ub[po[x_],y_],range[VERTSECT[po[x_]]]]]] := True (* derived 2006 January 4 in CL-CHAR.NB *) or[equal[0,ub[po[x_],y_]],subclass[y_,fix[po[x_]]]] := True (* derived 2005 December 31 in 0-UB.NB *) or[equal[0,ub[x_,y_]],subclass[y_,domain[x_]]] := True (* derived 2005 January 4 in DO-UB.NB *) or[equal[0,ub[x_,y_]],subclass[P[y_],domain[UB[x_]]]] := True (* derived 2007 April 24 in LB-UB-V.NB *) or[equal[0,ub[x_,V]],equal[V,domain[x_]],not[FUNCTION[x_]]] := True (* derived 2007 April 24 in LB-UB-V.NB *) or[equal[0,ub[x_,V]],member[range[x_],range[SINGLETON]],not[FUNCTION[x_]]] := True (* derived 2004 February 20 in REPLACE1.NB *) or[equal[0,ub[x_,V]],not[member[x_,y_]]] := True (* derived 2008 May 7 in ORD-0.NB *) or[equal[0,wob[x_]],member[x_,image[Q,OMEGA]]] := True (* derived 2004 November 9 in AC2-AC3.NB *) or[equal[0,X[composite[id[x_],inverse[FIRST]]]],not[equal[0,X[x_]]]] := True (* derived 2007 November 13 in AC-IN-K.NB *) or[equal[0,X[composite[id[x_],K,id[x_]]]],not[equal[x_,Uchains[x_]]],not[member[x_,y_]], not[subclass[x_,image[inverse[K],x_]]]] := True (* derived 2004 December 6 in FIN-AXCH.NB *) or[equal[0,X[composite[inverse[E],id[x_]]]],equal[0,X[composite[inverse[E],id[y_]]]], not[equal[0,X[composite[inverse[E],id[union[x_,y_]]]]]]] := True (* derived 2004 November 12 in XS-CO.NB *) or[equal[0,X[composite[inverse[E],id[P[range[x_]]]]]],not[equal[0,X[x_]]],not[member[x_,y_]]] := True (* derived 2004 November 12 in XS-CO.NB *) or[equal[0,X[x_]],equal[0,X[y_]],not[equal[0,X[composite[x_,y_]]]],not[subclass[range[y_],domain[x_]]]] := True (* derived 2004 November 2 in SELECT.NB *) or[equal[0,X[x_]],equal[0,X[y_]],not[equal[0,X[union[x_,y_]]]]] := True (* derived 2008 May 22 in X-Q.NB *) or[equal[0,X[x_]],member[domain[x_],image[Q,P[x_]]],not[member[x_,y_]]] := True (* derived 2004 October 28 in X.NB *) or[equal[0,X[x_]],member[domain[x_],V]] := True (* derived 2004 November 2 in SELECT.NB *) or[equal[0,X[x_]],not[equal[0,X[composite[x_,id[y_]]]]]] := True (* derived 2004 November 2 in SELECT.NB *) or[equal[0,X[x_]],not[equal[0,X[y_]]],not[equal[domain[x_],domain[y_]]],not[subclass[composite[Id,x_],y_]]] := True (* derived 2004 November 18 in XS-IN-AC.NB *) or[equal[0,X[x_]],not[member[x_,y_]],subclass[RS[x_],SELECT]] := True (* added 2001 December 8 based on EQUAL-A.NB *) or[equal[A[x_],A[y_]],not[equal[x_,y_]]] := True (* derived 2004 August 18 in X3010-63.NB *) or[equal[A[x_],Aclosure[A[x_]]],not[subclass[x_,fix[ACLOSURE]]]] := True (* derived 2006 January 16 in SUBFIXED.NB *) or[equal[A[fix[x_]],A[fix[composite[S,x_]]]],not[FUNCTION[x_]],not[subclass[composite[x_,S],composite[S,x_]]]] := True (* derived 2006 October 14 in A-CLOSED.NB *) or[equal[A[x_],hull[y_,A[x_]]],not[subclass[x_,y_]]] := True (* derived 2004 January 22 in AP-11.NB *) or[equal[A[image[x_,image[y_,set[z_]]]],APPLY[x_,APPLY[y_,z_]]],not[FUNCTION[y_]]] := True (* derived 2005 November 18 in FP-INS-A.NB *) or[equal[A[x_],image[inverse[S],A[x_]]],not[subclass[x_,fix[IMAGE[inverse[S]]]]]] := True (* derived 2006 February 21 in A-IM-SUC.NB *) or[equal[A[image[SUCC,x_]],succ[A[x_]]],not[subclass[x_,OMEGA]]] := True (* added 2002 May 31 based on A-DIF.NB *) or[equal[x_,A[intersection[y_,complement[x_]]]],not[member[x_,y_]],not[member[y_,OMEGA]]] := True (* derived 2008 April 19 in ON-A-DIF.NB *) or[equal[x_,A[intersection[y_,complement[x_]]]],not[member[x_,y_]],not[subclass[y_,OMEGA]]] := True (* added 2002 May 31 based on A-DIF.NB *) or[equal[x_,A[intersection[omega,complement[x_]]]],not[member[x_,omega]]] := True (* added 2002 May 31 based on DICHOT.NB *) or[equal[x_,A[intersection[OMEGA,complement[x_]]]],not[member[x_,OMEGA]]] := True (* derived 2006 March 25 in PC-ON-A.NB *) or[equal[y_,A[x_]],not[equal[0,intersection[x_,y_]]],not[member[y_,x_]],not[subclass[x_,OMEGA]]] := True (* derived 2007 August 10 in A-U.NB *) or[equal[x_,A[y_]],not[member[x_,y_]],not[subclass[x_,A[y_]]]] := True (* derived 2006 November 16 in MAP-SU.NB *) or[equal[x_,A[y_]],not[member[x_,y_]],not[subclass[y_,set[x_]]]] := True (* derived 2004 March 4 in PAIRSET.NB *) or[equal[A[set[x_,y_]],intersection[x_,y_]],not[member[x_,u_]],not[member[y_,v_]]] := True (* derived 2004 March 4 in PAIRSET.NB *) or[equal[x_,A[set[x_,y_]]],not[member[x_,z_]],not[subclass[x_,y_]]] := True (* derived 2004 August 18 in X3010-63.NB *) or[equal[A[x_],Uclosure[A[x_]]],not[subclass[x_,fix[UCLOSURE]]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[equal[Aclosure[x_],Aclosure[Aclosure[x_]]],not[member[x_,y_]]] := True (* added 2001 December 8 based on EQUALITY.NB *) or[equal[Aclosure[x_],Aclosure[y_]],not[equal[x_,y_]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[equal[Aclosure[x_],fix[HULL[x_]]],not[member[x_,y_]]] := True (* added 2002 October 8 based on ACL-IND.NB *) or[equal[Aclosure[intersection[x_,y_]],intersection[x_,y_]], not[equal[x_,Aclosure[x_]]],not[equal[y_,Aclosure[y_]]]] := True (* derived 2005 February 17 in NAT-ACL.NB *) or[equal[x_,Aclosure[x_]],not[member[x_,omega]]] := True (* added 2002 June 1 based on RCF.NB *) or[equal[x_,Aclosure[x_]],not[member[x_,OMEGA]]] := True (* derived 2004 July 22 in X21--.NB *) or[equal[x_,Aclosure[x_]],not[subclass[Aclosure[x_],x_]]] := True (* derived 2005 July 24 in ACL-P-OM.NB *) or[equal[x_,Aclosure[x_]],not[subclass[x_,omega]]] := True (* derived 2004 October 16 in ON-ACL.NB *) or[equal[x_,Aclosure[x_]],not[subclass[x_,OMEGA]]] := True (* derived 2008 September 5 in S-WO.NB *) or[equal[x_,Aclosure[x_]],not[subclass[P[x_],union[fix[composite[E,BIGCAP]],set[0]]]]] := True (* derived 2006 November 11 in CUR-LEFT.NB *) or[equal[APPLY[APPLY[CURRY,x_],y_],composite[x_,LEFT[y_]]], not[member[x_,V]],not[member[y_,domain[domain[x_]]]], not[subclass[x_,cart[cart[V,V],V]]]] := True (* added 2003 October 28 based on APPLY.NB *) or[equal[APPLY[x_,y_],APPLY[funpart[x_],y_]],not[FUNCTION[x_]]] := True (* added 2003 October 28 based on APPLY.NB *) or[equal[APPLY[x_,z_],APPLY[y_,z_]],not[equal[x_,y_]]] := True (* added 2003 October 28 based on APPLY.NB *) or[equal[APPLY[x_,y_],APPLY[x_,z_]],not[equal[y_,z_]]] := True (* added 2003 November 2 based on CHARHULL.NB *) or[equal[APPLY[x_,y_],APPLY[x_,z_]],not[equal[image[x_,set[y_]],image[x_,set[z_]]]]] := True (* derived 2004 August 1 in AP-FU-SU.NB *) or[equal[APPLY[x_,z_],APPLY[y_,z_]],not[FUNCTION[y_]],not[member[z_,domain[x_]]],not[subclass[x_,y_]]] := True (* derived 2004 August 2 in COMMON.NB *) or[equal[APPLY[x_,z_],APPLY[y_,z_]],not[FUNCTION[x_]],not[FUNCTION[y_]],not[member[z_,fix[composite[inverse[x_],y_]]]]] := True (* derived 2008 November 26 in AP-BINOP.NB *) or[equal[w_,APPLY[binop[x_],PAIR[u_,v_]]],not[member[pair[pair[u_,v_],w_],binop[x_]]]] := True (* derived 2009 January 5 in DOM-CAT.NB *) or[equal[v_,APPLY[cat[x_],PAIR[u_,v_]]],not[member[u_,ids[cat[x_]]]], not[member[pair[u_,v_],domain[cat[x_]]]]] := True (* derived 2009 January 5 in DOM-CAT.NB *) or[equal[APPLY[cat[x_],PAIR[u_,v_]],u_],not[member[pair[u_,v_],domain[cat[x_]]]], not[member[v_,ids[cat[x_]]]]] := True (* derived 2009 January 9 in CAT-DO.NB *) or[equal[APPLY[cod[cat[x_]],v_],APPLY[dom[cat[x_]],u_]], not[member[pair[u_,v_],domain[cat[x_]]]]] := True (* derived 2009 January 9 in COD-CAT.NB *) or[equal[u_,APPLY[cod[cat[x_]],v_]],not[member[u_,ids[cat[x_]]]], not[member[pair[u_,v_],domain[cat[x_]]]]] := True (* derived 2005 December 24 in AP-X.NB *) or[equal[APPLY[cross[x_,y_],z_],PAIR[APPLY[x_,first[z_]],APPLY[y_,second[z_]]]], not[FUNCTION[x_]],not[FUNCTION[y_]]] := True (* derived 2009 January 9 in COD-CAT.NB *) or[equal[v_,APPLY[dom[cat[x_]],u_]],not[member[v_,ids[cat[x_]]]], not[member[pair[u_,v_],domain[cat[x_]]]]] := True (* derived 2004 August 2 in COMMON.NB *) or[equal[APPLY[funpart[x_],z_],APPLY[funpart[y_],z_]],not[member[z_,fix[composite[inverse[funpart[x_]],funpart[y_]]]]]] := True (* derived 2004 October 29 in FUN-AP.NB *) or[equal[y_,APPLY[funpart[z_],x_]],not[equal[image[z_,set[x_]],set[y_]]],not[member[y_,w_]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) or[equal[APPLY[funpart[x_],PAIR[z_,composite[w_,id[image[thinpart[y_],set[z_]]]]]],APPLY[w_,z_]],not[member[z_,domain[w_]]], not[subclass[w_,composite[funpart[x_],id[composite[IMAGE[composite[id[w_],inverse[FIRST]]],VERTSECT[thinpart[y_]]]],inverse[FIRST]]]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) or[equal[APPLY[funpart[x_],PAIR[z_,composite[w_,id[image[thinpart[y_],set[z_]]]]]],APPLY[w_,z_]], not[member[w_,partrec[funpart[x_],thinpart[y_]]]],not[member[z_,domain[w_]]]] := True (* derived 2004 August 5 in WF-REC-2.NB *) or[equal[APPLY[funpart[x_],PAIR[z_,composite[rec[funpart[x_],thinpart[y_]],id[image[thinpart[y_],set[z_]]]]]], APPLY[rec[funpart[x_],thinpart[y_]],z_]],not[member[z_,domain[rec[funpart[x_],thinpart[y_]]]]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2008 May 4 in APORDREC.NB *) or[equal[APPLY[funpart[x_],PAIR[ord[y_],composite[w_,id[ord[y_]]]]], APPLY[w_,ord[y_]]],not[member[ord[y_],domain[w_]]], not[member[w_,partrec[funpart[x_],composite[inverse[E],id[OMEGA]]]]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[equal[APPLY[GLB[x_],0],APPLY[GREATEST[x_],fix[x_]]],not[member[x_,CL]]] := True (* derived 2007 March 6 in EVENODD.NB *) or[equal[APPLY[GLB[DIV],nat[x_]],set[0]],not[member[set[0],nat[x_]]]] := True (* derived 2007 March 6 in EVENODD.NB *) or[equal[APPLY[GLB[DIV],x_],set[0]],not[member[set[0],x_]],not[subclass[x_,omega]]] := True (* derived 2007 April 24 in GCD-ADJ0.NB *) or[equal[x_,APPLY[GLB[DIV],set[x_]]],not[member[x_,omega]]] := True (* derived 2005 December 28 in BOTTOM.NB *) or[equal[APPLY[GLB[x_],fix[x_]],APPLY[LEAST[x_],fix[x_]]],not[member[x_,CL]]] := True (* derived 2007 April 21 in CL-VS.NB *) or[equal[x_,APPLY[GLB[w_],image[w_,set[x_]]]],not[member[w_,CL]],not[member[x_,fix[w_]]]] := True (* derived 2007 April 26 in CL-TOP.NB *) or[equal[APPLY[GREATEST[x_],fix[x_]],APPLY[LUB[x_],fix[x_]]],not[member[x_,CL]]] := True (* derived 2008 May 8 in AP-HIST.NB *) or[equal[APPLY[history[x_,y_],z_],PAIR[z_,composite[x_,id[image[y_,set[z_]]]]]], not[member[z_,domain[history[x_,y_]]]]] := True (* derived 2005 August 5 in BINHOM-5.NB *) or[equal[APPLY[x_,id[omega]],id[omega]],not[member[x_,binhom[INTADD,INTADD]]]] := True (* derived 2005 August 5 in BINHOM-5.NB *) or[equal[APPLY[x_,intadd[u_,v_]],intadd[APPLY[x_,u_],APPLY[x_,v_]]],not[member[x_,binhom[INTADD,INTADD]]]] := True (* derived 2006 August 5 in BINHOM-7.NB *) or[equal[APPLY[x_,inverse[y_]],inverse[APPLY[x_,y_]]], not[member[x_,binhom[INTADD,INTADD]]],not[member[y_,Z]]] := True (* derived 2005 December 28 in BOTTOM.NB *) or[equal[APPLY[LEAST[x_],fix[x_]],APPLY[LUB[x_],0]],not[member[x_,CL]]] := True (* derived 2006 December 5 in MIXTIMES.NB *) or[equal[APPLY[z_,x_],y_],not[equal[image[z_,set[x_]],set[y_]]], not[FUNCTION[z_]],not[member[x_,domain[z_]]]] := True (* derived 2004 July 28 in FU-AP-VS.NB *) or[equal[APPLY[x_,y_],z_],not[FUNCTION[x_]],not[member[y_,domain[x_]]],not[subclass[image[x_,set[y_]],set[z_]]]] := True (* added 2003 November 2 based on CHARHULL.NB *) or[equal[y_,APPLY[x_,y_]],not[FUNCTION[x_]],not[member[y_,fix[x_]]]] := True (* derived 2004 October 29 in FUN-AP.NB *) or[equal[y_,APPLY[z_,x_]],not[FUNCTION[z_]],not[member[pair[x_,y_],z_]]] := True (* derived 2006 September 8 in AP-SU-ID.NB *) or[equal[y_,APPLY[x_,y_]],not[member[y_,domain[x_]]],not[subclass[x_,Id]]] := True (* derived 2006 July 18 in MAP-AP.NB *) or[equal[y_,APPLY[w_,x_]],not[member[w_,map[u_,v_]]],not[member[pair[x_,y_],w_]]] := True (* derived 2008 December 6 in SGP-ASS.NB *) or[equal[APPLY[x_,PAIR[u_,APPLY[x_,PAIR[v_,w_]]]],APPLY[x_,PAIR[APPLY[x_,PAIR[u_,v_]],w_]]], not[member[x_,GROUPS]]] := True (* derived 2009 January 1 in MON-AP.NB *) or[equal[APPLY[x_,PAIR[APPLY[x_,PAIR[u_,v_]],w_]],APPLY[x_,PAIR[u_,APPLY[x_,PAIR[v_,w_]]]]], not[member[x_,MONOIDS]]] := True (* derived 2008 December 6 in SGP-ASS.NB *) or[equal[APPLY[x_,PAIR[u_,APPLY[x_,PAIR[v_,w_]]]],APPLY[x_,PAIR[APPLY[x_,PAIR[u_,v_]],w_]]], not[member[x_,SEMIGPS]]] := True (* derived 2006 September 8 in AP-SU-ID.NB *) or[equal[APPLY[x_,pair[y_,z_]],APPLY[x_,PAIR[y_,z_]]],not[member[y_,V]],not[member[z_,V]]] := True (* derived 2008 April 24 in AP-REC.NB *) or[equal[APPLY[x_,PAIR[z_,composite[rec[x_,y_],id[image[y_,set[z_]]]]]],APPLY[rec[x_,y_],z_]], not[equal[V,domain[VERTSECT[y_]]]],not[equal[cart[V,V],domain[x_]]],not[FUNCTION[x_]], not[member[z_,V]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2004 August 5 in WF-REC-2.NB *) or[equal[APPLY[x_,PAIR[z_,composite[rec[x_,y_],id[image[y_,set[z_]]]]]],APPLY[rec[x_,y_],z_]], not[equal[V,domain[VERTSECT[y_]]]],not[FUNCTION[x_]],not[member[z_,domain[rec[x_,y_]]]], not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2009 January 1 in MON-AP.NB *) or[equal[APPLY[x_,PAIR[e[x_],e[x_]]],e[x_]],not[member[x_,MONOIDS]]] := True (* derived 2009 January 1 in MON-AP.NB *) or[equal[w_,APPLY[x_,PAIR[e[x_],w_]]],not[member[w_,range[x_]]],not[member[x_,MONOIDS]]] := True (* derived 2009 January 1 in MON-AP.NB *) or[equal[w_,APPLY[x_,PAIR[w_,e[x_]]]],not[member[w_,range[x_]]],not[member[x_,MONOIDS]]] := True (* derived 2006 September 8 in AP-SU-ID.NB *) or[equal[z_,APPLY[x_,pair[y_,z_]]],not[member[y_,V]],not[member[z_,V]],not[member[pair[y_,z_],domain[x_]]], not[subclass[composite[x_,LEFT[y_]],Id]]] := True (* derived 2006 September 8 in AP-SU-ID.NB *) or[equal[z_,APPLY[x_,PAIR[y_,z_]]],not[member[y_,V]],not[member[z_,V]],not[member[pair[y_,z_],domain[x_]]], not[subclass[composite[x_,LEFT[y_]],Id]]] := True (* derived 2006 September 8 in AP-SU-ID.NB *) or[equal[y_,APPLY[x_,pair[y_,z_]]],not[member[y_,V]],not[member[z_,V]],not[member[pair[y_,z_],domain[x_]]], not[subclass[composite[x_,RIGHT[z_]],Id]]] := True (* derived 2006 September 8 in AP-SU-ID.NB *) or[equal[y_,APPLY[x_,PAIR[y_,z_]]],not[member[y_,V]],not[member[z_,V]],not[member[pair[y_,z_],domain[x_]]], not[subclass[composite[x_,RIGHT[z_]],Id]]] := True (* derived 2008 November 26 in AP-QUAGP.NB *) or[equal[w_,APPLY[quasigp[x_],PAIR[u_,v_]]],not[member[pair[pair[u_,v_],w_],quasigp[x_]]]] := True (* derived 2008 November 26 in AP-SEMGP.NB *) or[equal[w_,APPLY[semigp[x_],PAIR[u_,v_]]], not[member[pair[pair[u_,v_],w_],semigp[x_]]]] := True (* added 2003 May 23 based on BCL-SU.NB *) or[equal[binclosed[x_],binclosed[y_]],not[equal[x_,y_]]] := True (* derived 2004 January 10 in CARD-FUN.NB *) or[equal[card[x_],card[domain[x_]]],not[FUNCTION[x_]]] := True (* derived 2005 November 5 in CARD.NB *) or[equal[card[x_],card[y_]],member[card[x_],card[y_]]] := not[member[card[y],card[x]]] (* added 2001 December 8 based on EQUAL-A.NB *) or[equal[card[x_],card[y_]],not[equal[x_,y_]]] := True (* derived 2004 January 10 in EQUICARD.NB *) or[equal[card[x_],card[y_]],not[member[pair[x_,y_],Q]]] := True (* derived 2005 July 22 in CARD-MUL.NB *) or[equal[card[cart[x_,y_]],natmul[card[x_],card[y_]]],not[member[x_,FINITE]],not[member[y_,FINITE]]] := True (* derived 2005 November 5 in CARD.NB *) or[equal[card[domain[x_]],card[range[x_]]],not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]]] := True (* derived 2006 August 19 in CARD-MAP.NB *) or[equal[card[map[x_,y_]],natexp[card[y_],card[x_]]],not[member[x_,FINITE]],not[member[y_,FINITE]]] := True (* derived 2008 January 24 in CARD-ON.NB *) or[equal[x_,card[x_]],member[card[x_],x_],not[member[x_,OMEGA]]] := True (* derived 2008 June 3 in CARD-ORD.NB *) or[equal[x_,card[x_]],member[x_,image[Q,x_]],not[member[x_,OMEGA]]] := True (* derived 2007 May 1 in CARTRCH.NB *) or[equal[x_,card[y_]],not[member[x_,card[y_]]]] := not[member[x,card[y]]] (* derived 2007 May 1 in CARTRCH.NB *) or[equal[x_,card[y_]],not[member[card[y_],x_]]] := not[member[card[y],x]] (* added 2002 May 28 based on CARD-OM.NB *) or[equal[x_,card[x_]],not[member[x_,omega]]] := True (* derived 2008 January 24 in CARD-ON.NB *) or[equal[x_,card[x_]],not[member[x_,OMEGA]],not[subclass[x_,card[x_]]]] := True (* derived 2007 April 29 in ORD-CARD.NB *) or[equal[card[ord[x_]],ord[x_]],member[card[ord[x_]],ord[x_]]] := True (* derived 2008 June 3 in CARD-ORD.NB *) or[equal[card[ord[x_]],ord[x_]],member[ord[x_],image[Q,ord[x_]]]] := True (* derived 2005 January 7 in CARD-K.NB *) or[equal[card[y_],succ[card[x_]]],not[member[y_,FINITE]],not[member[pair[x_,y_],K]]] := True (* derived 2005 January 7 in CARD-K.NB *) or[equal[card[y_],succ[card[x_]]],not[member[x_,FINITE]],not[member[pair[x_,y_],K]]] := True (* derived 2005 January 7 in CARD-K.NB *) or[equal[card[succ[x_]],succ[card[x_]]],not[member[x_,FINITE]],not[member[x_,REGULAR]]] := True (* derived 2005 July 16 in DBLCOUNT.NB *) or[equal[card[union[x_,y_]],natadd[card[x_],card[y_]]], not[equal[0,intersection[x_,y_]]],not[member[x_,FINITE]],not[member[y_,FINITE]]] := True (* derived 2005 December 9 in FIN-CARD.NB *) or[equal[card[union[x_,y_]],natsub[natadd[card[x_],card[y_]],card[intersection[x_,y_]]]], not[member[x_,FINITE]],not[member[y_,FINITE]]] := True (* derived 2005 January 8 in CARD-ADJ.NB *) or[equal[card[union[x_,set[y_]]],succ[card[x_]]],member[y_,x_],not[member[x_,FINITE]],not[member[y_,V]]] := True (* added 2001 December 8 based on EQ-BIN.NB *) or[equal[cart[x_,u_],cart[y_,v_]],not[equal[u_,v_]],not[equal[x_,y_]]] := True (* derived 2006 August 4 in CONST.NB *) or[equal[cart[domain[funpart[x_]],set[y_]],funpart[x_]],not[subclass[range[funpart[x_]],set[y_]]]] := True (* derived 2006 July 23 in CONST-FU.NB *) or[equal[x_,cart[domain[x_],range[x_]]],not[member[x_,CONST]]] := True (* derived 2007 September 25 in UCH-CART.NB *) or[equal[x_,cart[domain[x_],range[x_]]],not[member[x_,y_]],not[subclass[y_,range[CART]]]] := True (* derived 2006 July 23 in CONST-FU.NB *) or[equal[x_,cart[domain[x_],set[A[range[x_]]]]],not[member[x_,CONST]]] := True (* derived 2006 August 4 in CONST.NB *) or[equal[x_,cart[domain[x_],set[y_]]],not[FUNCTION[x_]],not[subclass[range[x_],set[y_]]]] := True (* derived 2007 September 25 in UCH-CART.NB *) or[equal[cart[domain[U[x_]],range[U[x_]]],U[x_]],not[subclass[x_,range[CART]]], not[subclass[cart[x_,x_],union[S,inverse[S]]]]] := True (* derived 2006 July 11 in BINOP-RS.NB *) or[equal[cart[fix[domain[x_]],fix[domain[x_]]],domain[x_]],not[member[x_,BINOPS]]] := True (* derived 2006 November 26 in BH-IDEMP.NB *) or[equal[cart[fix[domain[x_]],fix[domain[x_]]], image[inverse[x_],fix[domain[x_]]]],not[member[x_,BINOPS]]] := True (* derived 2006 May 4 in DIRECTED.NB *) or[equal[cart[fix[x_],fix[x_]],composite[x_,inverse[x_]]],not[member[x_,CL]]] := True (* derived 2006 May 4 in DIRECTED.NB *) or[equal[cart[fix[x_],fix[x_]],composite[inverse[x_],x_]],not[member[x_,CL]]] := True (* derived 2006 May 4 in DIRECTED.NB *) or[equal[cart[fix[x_],fix[x_]],composite[x_,inverse[x_]]],not[TOTALORDER[x_]]] := True (* derived 2006 May 4 in DIRECTED.NB *) or[equal[cart[fix[x_],fix[x_]],composite[inverse[x_],x_]],not[TOTALORDER[x_]]] := True (* derived 2004 February 10 in TOTORDER.NB *) or[equal[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]],not[TOTALORDER[x_]]] := True (* derived 2004 January 24 in WO-TO-1.NB *) or[equal[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]],not[WELLORDER[x_]]] := True (* derived 2004 March 21 in TRV-WRAP.NB *) or[equal[cart[omega,y_],iterate[x_,y_]],not[equal[y_,image[x_,y_]]]] := True (* derived 2008 December 6 in GP-DIV.NB *) or[equal[cart[range[x_],range[x_]],composite[x_,inverse[FIRST]]],not[member[x_,GROUPS]]] := True (* derived 2008 December 6 in GP-DIV.NB *) or[equal[cart[range[x_],range[x_]],composite[x_,inverse[FIRST]]],not[member[x_,QUASIGPS]]] := True (* derived 2008 December 6 in GP-DIV.NB *) or[equal[cart[range[x_],range[x_]],composite[x_,inverse[SECOND]]],not[member[x_,GROUPS]]] := True (* derived 2008 December 6 in GP-DIV.NB *) or[equal[cart[range[x_],range[x_]],composite[x_,inverse[SECOND]]],not[member[x_,QUASIGPS]]] := True (* derived 2008 December 5 in DORA-GPS.NB *) or[equal[cart[range[x_],range[x_]],domain[x_]],not[member[x_,GROUPS]]] := True (* derived 2009 January 1 in MON-AP.NB *) or[equal[cart[range[x_],range[x_]],domain[x_]],not[member[x_,MONOIDS]]] := True (* derived 2008 December 5 in DORA-GPS.NB *) or[equal[cart[range[x_],range[x_]],domain[x_]],not[member[x_,QUASIGPS]]] := True (* derived 2007 September 8 in UCH-SQ.NB *) or[equal[cart[U[x_],U[x_]],composite[inverse[E],id[x_],E]], not[subclass[cart[x_,x_],union[S,inverse[S]]]]] := True (* derived 2008 February 14 in DICHOT.NB *) or[equal[cart[union[domain[x_],range[x_]],union[domain[x_],range[x_]]], union[composite[Id,x_],inverse[x_]]], not[equal[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]]]] := True (* derived 2006 August 5 in BINHOM-7.NB *) or[equal[x_,cart[Z,set[id[omega]]]],not[member[x_,binhom[INTADD,INTADD]]], not[member[pair[composite[id[omega],SUCC],id[omega]],x_]]] := True (* derived 2009 January 11 in CAT-SPEC.NB *) or[equal[cat[x_],composite[id[ids[cat[x_]]],inverse[DUP]]], not[equal[ids[cat[x_]],range[cat[x_]]]]] := True (* derived 2007 May 6 in CHN-TO.NB *) or[equal[chains[x_],P[fix[x_]]],not[TOTALORDER[x_]]] := True (* added 2001 December 8 based on EQUALITY.NB *) or[equal[cliques[x_],cliques[y_]],not[equal[x_,y_]]] := True (* derived 2007 November 7 in CLQ-C.NB *) or[equal[cliques[complement[x_]],fix[composite[DISJOINT,IMAGE[inverse[x_]]]]], not[equal[V,domain[VERTSECT[inverse[x_]]]]]] := True (* derived 2007 November 7 in CLQ-C.NB *) or[equal[cliques[complement[x_]],fix[composite[DISJOINT,IMAGE[x_]]]], not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2004 July 17 in FU-RULES.NB *) or[equal[complement[composite[y_,x_]], union[complement[cart[domain[x_],V]],composite[complement[y_],x_]]],not[FUNCTION[x_]]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[equal[complement[domain[y_]],image[inverse[rec[composite[TC,IMAGE[SECOND],SECOND],y_]],set[0]]], not[equal[V,domain[VERTSECT[y_]]]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[equal[complement[image[inverse[w_],x_]],image[inverse[w_],complement[x_]]], not[equal[V,domain[w_]]],not[FUNCTION[w_]]] := True (* derived 2008 January 2 in FINCHR-1.NB *) or[equal[complement[x_],image[S,intersection[FINITE,complement[x_]]]], not[member[x_,FINCHAR]]] := True (* derived 2004 February 8 in BASICS.NB *) or[equal[x_,complement[y_]],not[equal[0,intersection[x_,y_]]],not[equal[V,union[x_,y_]]]] := True (* added 2001 December 8 based on EQUAL-C.NB *) or[equal[x_,complement[y_]],not[equal[y_,complement[x_]]]] := True (* derived 2004 October 26 in AXCH.NB *) or[equal[complement[set[0]],domain[CHOICE]],not[AxCh]] := True (* derived 2005 December 30 in UB-THIN.NB *) or[equal[complement[set[0]],domain[VERTSECT[UB[x_]]]],not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2005 December 30 in UB-THIN.NB *) or[equal[complement[set[0]],domain[VERTSECT[UB[x_]]]],not[member[x_,y_]]] := True (* derived 2005 February 15 in RUS-A-DJ.NB *) or[equal[complement[set[0]],fix[composite[DISJOINT,BIGCAP]]],not[AxReg]] := True (* derived 2004 October 26 in AXCH.NB *) or[equal[complement[set[0]],fix[composite[E,CHOICE]]],not[AxCh]] := True (* derived 2004 October 26 in AXCH.NB *) or[equal[y_,complement[set[x_]]],member[x_,y_],not[equal[V,union[y_,set[x_]]]]] := True (* derived 2004 July 17 in FU-RULES.NB *) or[equal[complement[x_],union[complement[cart[domain[x_],V]],composite[Di,x_]]],not[FUNCTION[x_]]] := True (* added 2003 August 31 based on CAP-CORE.NB *) or[equal[composite[CAP,cross[CORE[x_],CORE[x_]]],composite[CORE[x_],CAP]], not[subclass[image[CAP,cart[x_,x_]],x_]]] := True (* derived 2005 August 6 in CARD-NAT.NB *) or[equal[x_,composite[CARD,x_]],not[member[x_,Z]]] := True (* derived 2004 July 17 in FU-RULES.NB *) or[equal[composite[complement[y_],x_],composite[complement[composite[y_,x_]],id[domain[x_]]]],not[FUNCTION[x_]]] := True (* derived 2009 January 16 in FUNCTOR.NB *) or[equal[composite[w_,x_],composite[y_,cross[w_,w_]]],not[functor[w_,x_,y_]]] := True (* derived 2006 July 18 in BINHOM-1.NB *) or[equal[composite[w_,x_],composite[y_,cross[w_,w_]]],not[member[w_,binhom[x_,y_]]]] := True (* added 2001 December 25 based on SUPER-CO.NB *) or[equal[composite[u___,x_,v___],composite[u___,y_,v___]],not[equal[x_,y_]]] := True (* added 2003 July 1 based on TRANSTIV.NB *) or[equal[composite[x_,x_],composite[y_,y_]],not[equal[x_,y_]]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) or[equal[composite[z_,x_],composite[z_,y_]],not[equal[composite[Id,x_],composite[Id,y_]]]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) or[equal[composite[x_,z_],composite[y_,z_]],not[equal[composite[Id,x_],composite[Id,y_]]]] := True (* added 2003 November 4 based on SBCOMMUT.NB *) or[equal[composite[u_,x_],composite[v_,y_]], not[equal[u_,composite[v_,w_]]],not[equal[y_,composite[w_,x_]]]] := True (* added 2003 November 6 based on HULLTOPS.NB *) or[equal[composite[x_,y_],composite[x_,y_,x_,y_]], not[equal[composite[x_,x_],x_]],not[equal[composite[y_,y_],y_]], not[FUNCTION[y_]],not[subclass[image[x_,fix[y_]],fix[y_]]]] := True (* added 2001 December 8 based on EQ-BIN.NB *) or[equal[composite[x_,u_],composite[y_,v_]],not[equal[u_,v_]],not[equal[x_,y_]]] := True (* derived 2006 February 5 in CORE-I.NB *) or[equal[composite[CORE[x_],CORE[y_]],CORE[intersection[Uclosure[x_],Uclosure[y_]]]], not[subclass[image[CORE[x_],Uclosure[y_]],Uclosure[y_]]]] := True (* added 2003 September 4 based on IDEMCORE.NB *) or[equal[composite[CORE[x_],CORE[y_]],CORE[x_]],not[subclass[x_,y_]]] := True (* added 2003 September 4 based on IDEMCORE.NB *) or[equal[composite[CORE[y_],CORE[x_]],CORE[x_]],not[subclass[x_,y_]]] := True (* added 2003 August 22 based on AC-TWIST.NB *) or[equal[composite[x_,cross[x_,x_]],composite[x_,cross[x_,x_],TWIST]], not[associative[x_]],not[equal[x_,composite[x_,SWAP]]]] := True (* added 2003 July 1 based on ASSOC.NB *) or[equal[composite[x_,cross[x_,Id]], composite[x_,cross[Id,x_],ASSOC]],not[associative[x_]]] := True (* derived 2009 January 9 in CAT.NB *) or[equal[composite[x_,cross[x_,Id]],composite[x_,cross[Id,x_],ASSOC]],not[category[x_]]] := True (* added 2003 August 22 based on AC-TWIST.NB *) or[equal[composite[x_,cross[Id,x_]], composite[x_,cross[x_,Id],inverse[ASSOC]]],not[associative[x_]]] := True (* added 2002 August 25 based on INTTWINE.NB *) or[equal[composite[cross[Id,y_],power[z_]], composite[cross[inverse[y_],Id],power[x_]]], not[equal[composite[x_,y_],composite[y_,z_]]]] := True (* added 2003 September 6 based on CUP-HULL.NB *) or[equal[composite[CUP,cross[HULL[x_],HULL[x_]]],composite[HULL[x_],CUP]], not[subclass[image[CUP,cart[x_,x_]],x_]]] := True (* derived 2004 July 17 in FU-RULES.NB *) or[equal[composite[Di,x_],composite[complement[x_],id[domain[x_]]]],not[FUNCTION[x_]]] := True (* derived 2008 December 20 in SU-RO.NB *) or[equal[composite[domain[x_],x_],rotate[composite[inverse[domain[x_]],x_]]], not[associative[x_]]] := True (* derived 2008 December 20 in SU-RO.NB *) or[equal[composite[domain[x_],x_],rotate[composite[inverse[domain[x_]],x_]]], not[equal[composite[x_,cross[x_,Id]],composite[x_,cross[Id,x_],ASSOC]]]] := True (* derived 2004 July 17 in FU-RULES.NB *) or[equal[composite[funpart[y_],x_],funpart[composite[y_,x_]]],not[FUNCTION[x_]]] := True (* derived 2004 July 28 in COMMON1.NB *) or[equal[composite[funpart[x_],id[z_]],composite[funpart[y_],id[z_]]], not[subclass[z_,fix[composite[inverse[funpart[x_]],funpart[y_]]]]]] := True (* derived 2008 August 23 in FU-U.NB *) or[equal[composite[funpart[x_],id[domain[funpart[y_]]]], composite[funpart[y_],id[domain[funpart[x_]]]]], not[FUNCTION[union[funpart[x_],funpart[y_]]]]] := True (* added 2002 December 23 based on REPLACE.NB *) or[equal[x_,composite[funpart[y_],id[domain[x_]]]],not[subclass[x_,funpart[y_]]]] := True (* derived 2007 April 21 in CL-VS.NB *) or[equal[composite[GLB[x_],VERTSECT[x_],id[fix[x_]]],id[fix[x_]]],not[member[x_,CL]]] := True (* derived 2004 September 14 in WF-REC-6.NB *) or[equal[composite[x_,history[rec[x_,y_],y_]],rec[x_,y_]], not[equal[V,domain[VERTSECT[y_]]]], not[equal[cart[V,V],domain[x_]]],not[FUNCTION[x_]], not[WELLFOUNDED[inverse[y_]]]] := True (* added 2003 November 6 based on HULLTOPS.NB *) or[equal[composite[HULL[x_],HULL[y_]], HULL[intersection[fix[HULL[x_]],fix[HULL[y_]]]]], not[subclass[image[HULL[x_],fix[HULL[y_]]],fix[HULL[y_]]]]] := True (* derived 2004 October 7 in HULL-I.NB *) or[equal[composite[HULL[x_],HULL[y_]],HULL[x_]],not[subclass[x_,y_]]] := True (* derived 2004 October 7 in HULL-I.NB *) or[equal[composite[HULL[y_],HULL[x_]],HULL[x_]],not[subclass[x_,y_]]] := True (* derived 2004 December 10 in DIV-TRV.NB *) or[equal[composite[x_,id[cart[image[x_,cart[y_,z_]],V]],inverse[SECOND]], composite[x_,id[cart[y_,V]],inverse[SECOND],x_,id[cart[z_,V]],inverse[SECOND]]],not[associative[x_]]] := True (* derived 2004 December 10 in DIV-TRV.NB *) or[equal[composite[x_,id[cart[V,image[x_,cart[y_,z_]]]],inverse[FIRST]], composite[x_,id[cart[V,z_]],inverse[FIRST],x_,id[cart[V,y_]],inverse[FIRST]]],not[associative[x_]]] := True (* derived 2004 June 16 in X1303.NB *) or[equal[composite[id[y_],x_],composite[x_,id[image[inverse[x_],y_]]]],not[FUNCTION[x_]]] := True (* added 2003 July 4 based on COARSER.NB *) or[equal[composite[w___,id[x_],z___],composite[w___,id[y_],z___]],not[equal[x_,y_]]] := True (* derived 2004 July 28 in COMMON1.NB *) or[equal[composite[x_,id[z_]],composite[y_,id[z_]]], not[FUNCTION[x_]],not[FUNCTION[y_]],not[subclass[z_,fix[composite[inverse[x_],y_]]]]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[equal[composite[x_,id[composite[IMAGE[composite[id[rec[x_,y_]],inverse[FIRST]]],VERTSECT[y_]]],inverse[FIRST]],rec[x_,y_]], not[equal[V,domain[VERTSECT[y_]]]],not[equal[cart[V,V],domain[x_]]],not[FUNCTION[x_]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2008 August 23 in FU-U.NB *) or[equal[composite[x_,id[domain[y_]]],composite[y_,id[domain[x_]]]], not[FUNCTION[union[x_,y_]]]] := True (* added 2002 January 29 based on FUNCTION.NB *) or[equal[x_,composite[y_,id[domain[x_]]]],not[FUNCTION[y_]],not[subclass[x_,y_]]] := True (* derived 2004 June 17 in X1368.NB *) or[equal[composite[x_,y_],id[domain[y_]]],not[FUNCTION[x_]],not[subclass[y_,inverse[x_]]]] := True (* derived 2008 April 17 in ORD-NAT.NB *) or[equal[composite[id[x_],E],composite[id[x_],PS,id[x_]]],not[member[x_,OMEGA]]] := True (* derived 2005 April 7 in WF-TO.NB *) or[equal[composite[id[fix[x_]],complement[inverse[x_]],id[fix[x_]]],intersection[Di,x_]],not[TOTALORDER[x_]]] := True (* derived 2004 March 14 in WO-TRV.NB *) or[equal[composite[id[fix[x_]],complement[inverse[x_]],id[fix[x_]]],intersection[Di,x_]],not[WELLORDER[x_]]] := True (* derived 2004 July 28 in COMMON1.NB *) or[equal[composite[x_,id[fix[composite[inverse[x_],y_]]]],composite[y_,id[fix[composite[inverse[x_],y_]]]]], not[FUNCTION[x_]],not[FUNCTION[y_]]] := True (* derived 2004 June 19 in X14--.NB *) or[equal[composite[x_,id[fix[composite[inverse[x_],y_]]]],intersection[x_,y_]],not[FUNCTION[x_]]] := True (* added 2002 February 8 based on IDEMPOT.NB *) or[equal[composite[x_,id[fix[x_]]],id[fix[x_]]],not[FUNCTION[x_]]] := True (* derived 2006 May 8 in TO-RS.NB *) or[equal[composite[id[fix[to[x_]]],po[y_],id[fix[to[x_]]]],to[x_]],not[subclass[to[x_],po[y_]]]] := True (* derived 2009 January 11 in CAT-SPEC.NB *) or[equal[x_,composite[id[ids[x_]],inverse[DUP]]],not[category[x_]], not[equal[ids[x_],range[x_]]]] := True (* derived 2006 January 24 in PO-NATUR.NB *) or[equal[composite[id[image[VERTSECT[x_],fix[x_]]],inverse[S],id[image[VERTSECT[x_],fix[x_]]]], composite[VERTSECT[x_],x_,inverse[VERTSECT[x_]]]],not[PARTIALORDER[x_]]] := True (* derived 2004 June 12 in X1192.NB *) or[equal[composite[x_,id[y_],inverse[x_]],id[image[x_,y_]]],not[FUNCTION[x_]]] := True (* derived 2004 June 16 in X1345.NB *) or[equal[composite[Id,x_],inverse[y_]],not[equal[domain[x_],range[y_]]],not[subclass[composite[x_,y_],Id]]] := True (* added 2002 January 15 based on EQV-2.NB *) or[equal[composite[Id,x_],inverse[y_]],not[equal[y_,inverse[x_]]]] := True (* derived 2007 November 27 in TRVIDX-E.NB *) or[equal[composite[id[x_],inverse[TC],E],trv[composite[id[x_],E]]],not[subclass[U[x_],x_]]] := True (* derived 2005 April 16 in FACTRL.NB *) or[equal[composite[x_,id[omega]],composite[id[omega],SUCC]], not[equal[composite[SUCC,x_],composite[x_,SUCC]]],not[equal[image[x_,set[0]],set[set[0]]]]] := True (* derived 2005 April 16 in FACTRL.NB *) or[equal[composite[x_,id[omega]],id[omega]], not[equal[composite[SUCC,x_],composite[x_,SUCC]]],not[equal[image[x_,set[0]],set[0]]]] := True (* added 2002 August 26 based on UNIQUE.NB *) or[equal[composite[w_,id[omega]],iterate[u_,image[w_,set[0]]]], not[equal[composite[u_,w_],composite[w_,SUCC]]]] := True (* added 2002 May 15 based on UNIQUE.NB *) or[equal[composite[w_,id[omega]],iterate[x_,y_]], not[equal[y_,image[w_,set[0]]]],not[equal[composite[w_,SUCC],composite[x_,w_]]]] := True (* added 2002 May 22 based on EXAMPLES.NB *) or[equal[composite[w_,id[omega]],power[x_]], not[equal[Id,image[w_,set[0]]]],not[equal[composite[w_,SUCC],composite[cross[Id,x_],w_]]]] := True (* derived 2008 November 29 in INT-WRAP.NB *) or[equal[composite[id[omega],SUCC],int[y_]],equal[id[omega],int[x_]], not[member[pair[pair[int[x_],int[y_]],int[x_]],INTMUL]]] := True (* derived 2005 November 22 in IMDORARS.NB *) or[equal[composite[id[P[range[x_]]],inverse[IMAGE[inverse[x_]]]],image[DORA,P[x_]]],not[FUNCTION[inverse[x_]]]] := True (* derived 2004 June 18 in X13-FUNP.NB *) or[equal[composite[x_,id[range[x_]]],id[range[x_]]],not[equal[x_,composite[x_,x_]]],not[FUNCTION[x_]]] := True (* derived 2005 November 12 in SU-IN-FU.NB *) or[equal[x_,composite[id[range[x_]],inverse[y_]]],not[FUNCTION[y_]],not[subclass[x_,inverse[y_]]]] := True (* derived 2007 November 27 in TRVIDX-E.NB *) or[equal[composite[id[x_],trv[y_]],trv[composite[id[x_],y_]]], not[subclass[image[inverse[y_],x_],x_]]] := True (* derived 2006 September 3 in BO-POWER.NB *) or[equal[composite[IMAGE[x_],CART],composite[IMAGE[x_],CART,SWAP]],not[equal[x_,composite[x_,SWAP]]]] := True (* derived 2005 November 22 in IMDORARS.NB *) or[equal[composite[IMAGE[x_],id[P[domain[x_]]]],image[DORA,P[x_]]],not[FUNCTION[x_]]] := True (* derived 2007 June 6 in HLTRVRFX.NB *) or[equal[composite[IMAGE[x_],id[P[fix[x_]]]],HULL[fix[IMAGE[x_]]]], not[REFLEXIVE[x_]],not[TRANSITIVE[x_]]] := True (* derived 2004 August 19 in X2901-93.NB *) or[equal[composite[IMAGE[x_],IMAGE[y_]],IMAGE[composite[x_,y_]]],not[equal[V,domain[VERTSECT[y_]]]]] := True (* derived 2004 August 19 in X2901-93.NB *) or[equal[composite[IMAGE[x_],IMAGE[y_]],IMAGE[composite[x_,y_]]],not[FUNCTION[y_]]] := True (* added 2003 January 8 based on HULL-IVR.NB *) or[equal[composite[IMAGE[x_],IMAGE[x_]],IMAGE[x_]],not[equal[x_,composite[x_,x_]]]] := True (* derived 2004 August 19 in X2901-93.NB *) or[equal[composite[IMAGE[x_],inverse[S]],composite[inverse[S],IMAGE[x_]]],not[FUNCTION[x_]]] := True (* added 2002 August 25 based on INTTWINE.NB *) or[equal[composite[y_,image[power[z_],w_]],composite[image[power[x_],w_],y_]], not[equal[composite[x_,y_],composite[y_,z_]]]] := True (* added 2002 August 27 based on POW-COMP.NB *) or[equal[composite[image[power[x_],set[w_]], image[power[y_],set[w_]]], image[power[composite[x_,y_]],set[w_]]], not[equal[composite[x_,y_],composite[y_,x_]]]] := True (* derived 2004 August 18 in X3010-63.NB *) or[equal[composite[IMAGE[x_],VERTSECT[y_]],VERTSECT[composite[x_,y_]]],not[equal[V,domain[VERTSECT[y_]]]]] := True (* derived 2006 November 25 *) or[equal[composite[IMAGE[x_],VERTSECT[y_]],VERTSECT[composite[x_,y_]]],not[member[y_,z_]]] := True (* derived 2004 July 17 in FU-RULES.NB *) or[equal[composite[intersection[y_,complement[z_]],x_],intersection[complement[composite[z_,x_]],composite[y_,x_]]],not[FUNCTION[x_]]] := True (* derived 2004 June 12 in X1192.NB *) or[equal[composite[x_,intersection[z_,composite[inverse[x_],y_]]],intersection[y_,composite[x_,z_]]],not[FUNCTION[x_]]] := True (* derived 2004 July 17 in FU-RULES.NB *) or[equal[composite[intersection[y_,z_],x_],intersection[composite[y_,x_],composite[z_,x_]]],not[FUNCTION[x_]]] := True (* derived 2004 July 17 in FU-RULES.NB *) or[equal[composite[x_,intersection[y_,z_]],intersection[composite[x_,y_],composite[x_,z_]]],not[FUNCTION[inverse[x_]]]] := True (* derived 2004 June 12 in X1192.NB *) or[equal[composite[x_,intersection[y_,inverse[x_]]],id[fix[composite[x_,y_]]]],not[FUNCTION[x_]]] := True (* derived 2004 April 20 in ID-REVU.NB *) or[equal[composite[x_,y_],intersection[x_,y_]],not[subclass[x_,Id]],not[subclass[y_,Id]]] := True (* derived 2009 January 16 in FUNCTOR.NB *) or[equal[composite[inverse[w_],domain[y_],w_],domain[x_]],not[functor[w_,x_,y_]]] := True (* added 2003 June 17 based on THINRULE.NB *) or[equal[composite[x_,inverse[E]],composite[inverse[E],IMAGE[x_]]], not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2004 October 8 in BC-IM-PC.NB *) or[equal[composite[inverse[E],x_],composite[inverse[E],x_,inverse[S]]], not[subclass[composite[x_,inverse[S]],composite[inverse[S],x_]]]] := True (* derived 2005 June 29 in DIV-DSTB.NB *) or[equal[composite[x_,inverse[FIRST],x_,inverse[SECOND]], composite[x_,inverse[SECOND],x_,inverse[FIRST]]],not[associative[x_]]] := True (* derived 2008 December 6 in SGP-ASS.NB *) or[equal[composite[x_,inverse[FIRST],x_,inverse[SECOND]], composite[x_,inverse[SECOND],x_,inverse[FIRST]]],not[member[x_,SEMIGPS]]] := True (* derived 2005 June 29 in DIV-DSTB.NB *) or[equal[composite[x_,inverse[FIRST],x_,LEFT[y_]], composite[x_,LEFT[y_],x_,inverse[FIRST]]],not[associative[x_]]] := True (* derived 2006 September 30 in HULL-INV.NB *) or[equal[composite[INVERSE,HULL[x_],INVERSE],HULL[image[INVERSE,fix[HULL[x_]]]]], not[subclass[U[x_],cart[V,V]]]] := True (* derived 2004 June 18 in X13-FUNP.NB *) or[equal[composite[inverse[x_],x_],id[domain[x_]]],not[FUNCTION[inverse[x_]]]] := True (* added 2002 January 29 based on FUNCTION.NB *) or[equal[composite[x_,inverse[x_]],id[range[x_]]],not[FUNCTION[x_]]] := True (* derived 2006 September 2 in HULL-Z.NB *) or[equal[composite[inverse[plus[x_]],plus[y_]],hull[Z,cart[set[x_],set[y_]]]], not[member[x_,omega]],not[member[y_,omega]]] := True (* added 2003 August 8 based on CLIQEQDF.NB *) or[equal[z_,composite[inverse[plus[x_]],plus[y_]]],not[member[z_,Z]],not[member[pair[x_,y_],z_]]] := True (* added 2003 August 8 based on REPLACE.NB *) or[equal[composite[inverse[plus[x_]],plus[y_]],plus[natsub[y_,x_]]],not[subclass[x_,y_]]] := True (* derived 2005 June 29 in DIV-DSTB.NB *) or[equal[composite[x_,inverse[SECOND],x_,RIGHT[y_]],composite[x_,RIGHT[y_],x_,inverse[SECOND]]],not[associative[x_]]] := True (* derived 2006 November 12 in CURMAP-1.NB *) or[equal[composite[w_,inverse[SECOND]],U[range[APPLY[CURRY,w_]]]], not[FUNCTION[w_]],not[member[w_,V]],not[subclass[domain[w_],cart[V,V]]]] := True (* derived 2006 November 12 in CURMAP-1.NB *) or[equal[composite[w_,inverse[SECOND]],U[range[APPLY[CURRY,w_]]]], not[member[w_,map[cart[x_,y_],z_]]]] := True (* added 2003 June 17 based on THINRULE.NB *) or[equal[composite[inverse[VERTSECT[x_]],S],LB[x_]],not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2006 May 25 in ITERSTOP.NB *) or[equal[composite[iterate[x_,y_],plus[u_]],composite[iterate[x_,y_],plus[v_]]], not[equal[image[iterate[x_,y_],set[u_]],image[iterate[x_,y_],set[v_]]]]] := True (* derived 2006 November 22 in EVAL-CUR.NB *) or[equal[composite[y_,LEFT[x_]],composite[eval[x_],APPLY[CURRY,composite[y_,SWAP]]]], not[FUNCTION[y_]],not[member[y_,z_]]] := True (* derived 2009 January 1 in CAT-MON.NB *) or[equal[composite[x_,LEFT[e[x_]]],id[range[x_]]],not[member[x_,MONOIDS]]] := True (* derived 2005 June 29 in DIV-DSTB.NB *) or[equal[composite[x_,LEFT[y_],x_,RIGHT[z_]],composite[x_,RIGHT[z_],x_,LEFT[y_]]], not[associative[x_]]] := True (* added 2003 June 30 based on ASSOC.NB *) or[equal[composite[x_,LEFT[y_],x_,RIGHT[z_]],composite[x_,RIGHT[z_],x_,LEFT[y_]]], not[equal[composite[x_,cross[x_,Id]],composite[x_,cross[Id,x_],ASSOC]]]] := True (* derived 2008 December 6 in SGP-ASS.NB *) or[equal[composite[x_,LEFT[y_],x_,RIGHT[z_]], composite[x_,RIGHT[z_],x_,LEFT[y_]]],not[member[x_,GROUPS]]] := True (* derived 2008 December 6 in SGP-ASS.NB *) or[equal[composite[x_,LEFT[y_],x_,RIGHT[z_]], composite[x_,RIGHT[z_],x_,LEFT[y_]]],not[member[x_,SEMIGPS]]] := True (* derived 2004 July 21 in TOMINMAX.NB *) or[equal[composite[MAXIMAL[x_],id[P[fix[x_]]]],GREATEST[x_]],not[TOTALORDER[x_]]] := True (* derived 2004 July 21 in TOMINMAX.NB *) or[equal[composite[MINIMAL[x_],id[P[fix[x_]]]],LEAST[x_]],not[TOTALORDER[x_]]] := True (* derived 2006 September 5 in RA-PLUS.NB *) or[equal[x_,composite[NATADD,cross[Id,x_],inverse[NATADD]]],not[member[x_,Z]]] := True (* derived 2006 September 5 in RA-PLUS.NB *) or[equal[x_,composite[NATADD,cross[x_,Id],inverse[NATADD]]],not[member[x_,Z]]] := True (* added 2002 February 8 based on IDEMPOT.NB *) or[equal[x_,composite[x_,x_]],not[equal[fix[x_],range[x_]]],not[FUNCTION[x_]]] := True (* added 2003 November 4 based on SBCOMMUT.NB *) or[equal[x_,composite[x_,x_]],not[equal[x_,y_]],not[equal[y_,composite[y_,y_]]]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) or[equal[x_,composite[x_,x_]],not[EQUIVALENCE[x_]]] := True (* derived 2005 December 31 in CL-VS-UB.NB *) or[equal[x_,composite[x_,x_]],not[member[x_,CL]]] := True (* derived 2004 June 20 in X1604-56.NB *) or[equal[x_,composite[x_,x_]],not[PARTIALORDER[x_]]] := True (* derived 2004 March 18 in RFX-TRV.NB *) or[equal[x_,composite[x_,x_]],not[REFLEXIVE[x_]],not[TRANSITIVE[x_]]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) or[equal[x_,composite[y_,x_]],not[subclass[x_,composite[y_,x_]]],not[subclass[composite[y_,y_],Id]]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) or[equal[x_,composite[x_,y_]],not[subclass[x_,composite[x_,y_]]],not[subclass[composite[y_,y_],Id]]] := True (* derived 2004 March 18 in RFX-TRV.NB *) or[equal[x_,composite[x_,x_]],not[TOTALORDER[x_]]] := True (* derived 2004 August 18 in X3010-63.NB *) or[equal[composite[POWER,IMAGE[x_]],composite[IMAGE[IMAGE[x_]],POWER]],not[FUNCTION[x_]]] := True (* derived 2008 May 5 in FU-REC.NB *) or[equal[w_,composite[rec[funpart[x_],thinpart[inverse[wf[y_]]]],id[domain[w_]]]], not[member[w_,partrec[funpart[x_],thinpart[inverse[wf[y_]]]]]]] := True (* derived 2008 May 5 in FU-REC.NB *) or[equal[w_,composite[rec[x_,y_],id[domain[w_]]]], not[equal[V,domain[VERTSECT[y_]]]],not[FUNCTION[x_]], not[member[w_,partrec[x_,y_]]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2006 November 22 in EVAL-CUR.NB *) or[equal[composite[y_,RIGHT[x_]],composite[eval[x_],APPLY[CURRY,y_]]],not[FUNCTION[y_]], not[member[y_,z_]],not[subclass[domain[y_],cart[V,V]]]] := True (* derived 2009 January 1 in CAT-MON.NB *) or[equal[composite[x_,RIGHT[e[x_]]],id[range[x_]]],not[member[x_,MONOIDS]]] := True (* derived 2005 July 30 in RO-ASSOC.NB *) or[equal[composite[rotate[x_],cross[rotate[x_],Id]],composite[rotate[x_],cross[Id,x_],ASSOC]], not[associative[x_]]] := True (* derived 2008 October 15 in FLIP-ROT.NB *) or[equal[composite[rotate[x_],SWAP],y_], not[member[x_,map[cart[z_,z_],z_]]],not[member[y_,map[cart[z_,z_],z_]]], not[subclass[composite[rotate[x_],SWAP,inverse[y_]],Id]], not[subclass[composite[rotate[y_],SWAP,inverse[x_]],Id]]] := True (* derived 2008 June 7 in LB-UB-E.NB *) or[equal[composite[S,image[DORA,P[x_]]], composite[S,IMAGE[x_],id[P[domain[x_]]]]],not[FUNCTION[x_]]] := True (* derived 2004 July 15 in X2310-57.NB *) or[equal[composite[SINGLETON,x_],composite[VERTSECT[x_],id[domain[x_]]]],not[FUNCTION[x_]]] := True (* derived 2006 December 5 in MIXTIMES.NB *) or[equal[composite[t_,SUCC],composite[image[inverse[INTADD],set[x_]],INVERSE,t_]], not[equal[image[t_,set[set[0]]],set[x_]]],not[member[t_,binhom[NATADD,INTADD]]]] := True (* derived 2005 February 17 in X3741-49.NB *) or[equal[composite[SUCC,id[U[x_]]],composite[id[x_],SUCC]],not[member[x_,OMEGA]]] := True (* derived 2004 March 4 in RELATION.NB *) or[equal[x_,composite[x_,SWAP]],not[subclass[x_,composite[x_,SWAP]]]] := True (* added 2002 August 27 based on POW-COMP.NB *) or[equal[composite[SWAP,RIF,intersection[composite[inverse[FIRST],power[x_]], composite[inverse[SECOND],power[y_]]]],power[composite[x_,y_]]], not[equal[composite[x_,y_],composite[y_,x_]]]] := True (* derived 2008 December 1 in RIF-QG.NB *) or[equal[composite[x_,SWAP],rotate[composite[x_,SWAP]]],not[equal[x_,rotate[x_]]]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[equal[composite[TC,IMAGE[rec[composite[TC,IMAGE[SECOND],SECOND],y_]],VERTSECT[y_]],rec[composite[TC,IMAGE[SECOND],SECOND],y_]], not[equal[V,domain[VERTSECT[y_]]]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2007 May 11 in VS-LEAST.NB *) or[equal[composite[x_,thinpart[y_]],composite[inverse[E],IMAGE[x_],VERTSECT[y_]]], not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2005 April 17 in XVR-ITER.NB *) or[equal[composite[y_,trv[z_]],composite[trv[x_],y_]],not[equal[composite[x_,y_],composite[y_,z_]]]] := True (* derived 2005 August 16 in TWINE.NB *) or[equal[composite[trv[x_],trv[y_]],composite[trv[y_],trv[x_]]],not[equal[composite[x_,y_],composite[y_,x_]]]] := True (* derived 2006 November 25 in U-BINHOM.NB *) or[equal[composite[U[binhom[x_,x_]],U[binhom[x_,x_]]],U[binhom[x_,x_]]], not[member[x_,BINOPS]]] := True (* derived 2008 May 5 in FU-RS-DO.NB *) or[equal[x_,composite[U[y_],id[domain[x_]]]],not[FUNCTION[U[y_]]],not[member[x_,y_]]] := True (* derived 2008 August 17 in CLQ-CMT.NB *) or[equal[composite[U[x_],U[y_]],composite[U[y_],U[x_]]],not[subclass[cart[x_,y_],COMMUTE]]] := True (* derived 2006 October 19 in IMVS-EQV.NB *) or[equal[y_,composite[VERTSECT[z_],id[domain[z_]]]],member[0,range[y_]], not[equal[z_,composite[inverse[E],y_]]],not[FUNCTION[y_]]] := True (* added 2004 April 17 based on CORE.NB *) or[equal[core[x_,y_],core[x_,z_]],not[equal[y_,z_]]] := True (* added 2004 April 17 based on CORE.NB *) or[equal[core[x_,z_],core[y_,z_]],not[equal[x_,y_]]] := True (* added 2003 November 12 based on CHARCORE.NB *) or[equal[CORE[fix[x_]],x_],not[equal[V,domain[x_]]],not[equal[composite[x_,x_],x_]],not[FUNCTION[x_]], not[subclass[composite[x_,S],composite[S,x_]]],not[subclass[x_,inverse[S]]]] := True (* derived 2004 May 4 in CRHL-FIX.NB *) or[equal[x_,core[y_,x_]],not[member[x_,y_]]] := True (* derived 2006 November 3 in EVAL-IM.NB *) or[equal[core[x_,y_],U[x_]],not[subclass[U[x_],y_]]] := True (* derived 2004 May 4 in REPLACE.NB *) or[equal[core[x_,U[y_]],U[y_]],not[member[y_,z_]],not[subclass[y_,x_]]] := True (* derived 2004 May 4 in REPLACE.NB *) or[equal[core[x_,U[y_]],U[y_]],not[member[y_,z_]],not[subclass[y_,Uclosure[x_]]]] := True (* added 2001 December 25 based on CROSS.NB *) or[equal[cross[x_,y_],cross[z_,y_]],not[equal[x_,z_]]] := True (* added 2001 December 25 based on CROSS.NB *) or[equal[cross[x_,y_],cross[x_,z_]],not[equal[y_,z_]]] := True (* added 2001 December 25 based on CROSS.NB *) or[equal[cross[u_,v_],cross[x_,y_]],not[equal[u_,x_]],not[equal[v_,y_]]] := True (* derived 2008 December 31 in CAT-MON.NB *) or[equal[domain[cod[x_]],range[x_]],not[category[x_]]] := True (* derived 2008 December 31 in CAT-MON.NB *) or[equal[domain[cod[x_]],range[x_]],not[member[x_,MONOIDS]]] := True (* derived 2008 December 31 in CAT-MON.NB *) or[equal[domain[dom[x_]],range[x_]],not[category[x_]]] := True (* derived 2008 December 31 in CAT-MON.NB *) or[equal[domain[dom[x_]],range[x_]],not[member[x_,MONOIDS]]] := True (* derived 2008 October 2 in BIN-FLIP.NB *) or[equal[domain[domain[x_]],fix[domain[x_]]],not[member[x_,BINOPS]]] (* added 2001 December 8 based on EQUALITY.NB *) or[equal[domain[x_],domain[y_]],not[equal[x_,y_]]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[equal[domain[w_],domain[VERTSECT[y_]]],not[equal[w_,composite[TC,IMAGE[w_],VERTSECT[y_]]]]] := True (* derived 2008 August 15 in FP-CO-DI.NB *) or[equal[domain[x_],fix[composite[Di,x_]]],not[equal[0,fix[x_]]]] := True (* derived 2008 August 15 in FP-CO-DI.NB *) or[equal[domain[x_],fix[composite[Di,x_]]],not[WELLFOUNDED[x_]]] := True (* derived 2004 August 1 in FIXRULES.NB *) or[equal[domain[x_],fix[composite[inverse[x_],y_]]],not[subclass[x_,y_]]] := True (* derived 2004 August 1 in FIXRULES.NB *) or[equal[domain[x_],fix[composite[inverse[y_],x_]]],not[subclass[x_,y_]]] := True (* derived 2004 October 26 in AXCH.NB *) or[equal[domain[x_],fix[composite[y_,x_]]],not[subclass[x_,inverse[y_]]]] := True (* derived 2006 July 20 in BINHOM-3.NB *) or[equal[domain[w_],fix[domain[x_]]],not[member[w_,binhom[x_,y_]]]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) or[equal[domain[x_],fix[x_]],not[EQUIVALENCE[x_]]] := True (* derived 2005 December 21 in CL-RULES.NB *) or[equal[domain[x_],fix[x_]],not[member[x_,CL]]] := True (* derived 2005 January 29 in RFXTRVTH.NB *) or[equal[domain[x_],fix[x_]],not[PARTIALORDER[x_]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[equal[domain[x_],fix[x_]],not[REFLEXIVE[x_]]] := True (* derived 2006 September 15 in ID-CHAR.NB *) or[equal[domain[x_],fix[x_]],not[subclass[domain[x_],fix[x_]]]] := True (* derived 2004 June 15 in X12--.NB *) or[equal[domain[x_],fix[x_]],not[subclass[x_,Id]]] := True (* derived 2004 February 10 in TOTORDER.NB *) or[equal[domain[x_],fix[x_]],not[TOTALORDER[x_]]] := True (* derived 2005 October 2 in CPLT-LAT.NB *) or[equal[domain[GLB[x_]],P[fix[x_]]], not[equal[domain[LUB[x_]],P[fix[x_]]]],not[member[x_,V]],not[PARTIALORDER[x_]]] := True (* derived 2005 October 6 in CL.NB *) or[equal[domain[GLB[x_]],P[fix[x_]]],not[member[x_,CL]]] := True (* derived 2005 October 2 in CPLT-LAT.NB *) or[equal[domain[GLB[po[x_]]],P[fix[po[x_]]]], not[equal[domain[LUB[po[x_]]],P[fix[po[x_]]]]],not[member[po[x_],V]]] := True (* derived 2008 August 20 in DO-IM-IN.NB *) or[equal[domain[z_],image[inverse[z_],y_]],not[subclass[z_,cart[x_,y_]]]] := True (* derived 2004 December 25 in SELCO-LT.NB *) or[equal[domain[x_],image[inverse[x_],z_]],not[subclass[x_,y_]],not[subclass[range[y_],z_]]] := True (* derived 2003 December 18 in RA-ITER.NB *) or[equal[domain[x_],image[inverse[x_],y_]],not[subclass[range[x_],y_]]] := True (* added 2002 October 1 based on ZER-1.NB *) or[equal[domain[x_],image[inverse[S],domain[x_]]], not[subclass[composite[x_,S],composite[S,x_]]]] := True (* derived 2008 October 2 in BIN-FLIP.NB *) or[equal[domain[x_],inverse[domain[x_]]],not[member[x_,BINOPS]]] := True (* added 2003 June 9 based on BOUNDED.NB *) or[equal[domain[LB[x_]],domain[LB[y_]]],not[equal[x_,y_]]] := True (* derived 2008 March 9 in WO.NB *) or[equal[domain[LEAST[x_]],intersection[complement[set[0]],P[fix[x_]]]], not[member[x_,FINITE]],not[TOTALORDER[x_]]] := True (* derived 2004 January 24 in WO-WRAP.NB *) or[equal[domain[LEAST[x_]],intersection[complement[set[0]],P[fix[x_]]]],not[WELLORDER[x_]]] := True (* added 2003 June 9 based on BOUNDED.NB *) or[equal[domain[LB[x_]],image[inverse[S],range[VERTSECT[x_]]]],not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2005 October 2 in CPLT-LAT.NB *) or[equal[domain[LUB[x_]],P[fix[x_]]], not[equal[domain[GLB[x_]],P[fix[x_]]]],not[member[x_,V]],not[PARTIALORDER[x_]]] := True (* derived 2005 October 6 in CL.NB *) or[equal[domain[LUB[x_]],P[fix[x_]]],not[member[x_,CL]]] := True (* derived 2005 October 2 in CPLT-LAT.NB *) or[equal[domain[LUB[po[x_]]],P[fix[po[x_]]]], not[equal[domain[GLB[po[x_]]],P[fix[po[x_]]]]],not[member[po[x_],V]]] := True (* derived 2004 December 5 in MAP-CO.NB *) or[equal[x_,domain[w_]],not[member[w_,map[x_,y_]]]] := True (* derived 2005 August 8 in PIGEON.NB *) or[equal[domain[oopart[x_]],range[oopart[x_]]],not[member[oopart[x_],FINITE]], not[subclass[range[oopart[x_]],domain[oopart[x_]]]]] := True (* derived 2004 March 4 in RELATION.NB *) or[equal[domain[x_],range[x_]],not[equal[x_,inverse[x_]]]] := True (* derived 2005 August 8 in PIGEON.NB *) or[equal[domain[x_],range[x_]],not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]], not[member[x_,FINITE]],not[subclass[range[x_],domain[x_]]]] := True (* derived 2009 January 16 in FUNCTOR.NB *) or[equal[domain[w_],range[x_]],not[functor[w_,x_,y_]]] := True (* derived 2008 September 28 in PERMS.NB *) or[equal[domain[x_],range[x_]],not[member[x_,PERMS]]] := True (* added 2002 September 9 based on CP-SU-ID.NB *) or[equal[domain[x_],range[x_]],not[subclass[x_,Id]]] := True (* derived 2004 March 4 in RELATION.NB *) or[equal[domain[x_],range[x_]],not[subclass[x_,inverse[x_]]]] := True (* derived 2006 November 25 in U-BINHOM.NB *) or[equal[domain[U[binhom[x_,x_]]],fix[domain[x_]]],not[member[x_,BINOPS]]] := True (* added 2003 June 9 based on BOUNDED.NB *) or[equal[domain[UB[x_]],domain[UB[y_]]],not[equal[x_,y_]]] := True (* derived 2009 January 2 in UNOP-MON.NB *) or[equal[e[composite[COMPOSE,id[cart[bij[x_,x_],bij[x_,x_]]]]],id[x_]],not[member[x_,y_]]] := True (* derived 2009 January 2 in UNOP-MON.NB *) or[equal[e[composite[COMPOSE,id[cart[map[x_,x_],map[x_,x_]]]]],id[x_]],not[member[x_,y_]]] := True (* derived 2009 January 2 in UNOP-MON.NB *) or[equal[e[composite[COMPOSE,id[cart[P[cart[x_,x_]],P[cart[x_,x_]]]]]],id[x_]], not[member[x_,y_]]] := True (* derived 2008 December 29 in MONOIDS.NB *) or[equal[e[composite[cross[x_,y_],TWIST]],PAIR[e[x_],e[y_]]], not[member[x_,BINOPS]],not[member[y_,BINOPS]]] := True (* derived 2008 December 28 in E.NB *) or[equal[u_,e[x_]],not[member[u_,ids[x_]]],not[member[x_,BINOPS]]] := True (* derived 2009 January 2 in UNOP-MON.NB *) or[equal[u_,e[x_]],not[member[u_,ids[x_]]],not[member[x_,MONOIDS]]] := True (* derived 2005 January 7 in K-RULES.NB *) or[equal[x_,y_],equal[y_,z_],not[member[pair[x_,z_],K]],not[subclass[x_,y_]],not[subclass[y_,z_]]] := True (* derived 2005 July 25 in 3-5-7.NB *) or[equal[x_,y_],equal[x_,set[0]],not[member[y_,PRIMES]],not[member[pair[x_,y_],DIV]]] := True (* derived 2004 May 12 in EQV-GEN.NB *) or[equal[eqv[x_],eqv[y_]],not[equal[x_,y_]]] := True (* derived 2004 June 6 in EQV-TRV.NB *) or[equal[eqv[x_],eqv[y_]],not[equal[x_,eqv[y_]]]] := True (* derived 2004 July 16 on TRV-SYM.NB *) or[equal[eqv[x_],trv[x_]],not[equal[x_,inverse[x_]]]] := True (* added 2002 June 1 based on RCF.NB *) or[equal[x_,fix[composite[BIGCAP,RC[x_]]]],not[member[x_,OMEGA]]] := True (* derived 2008 August 15 in FP-DI-FU.NB *) or[equal[fix[composite[Di,x_]],intersection[complement[fix[x_]],domain[x_]]], not[FUNCTION[x_]]] := True (* derived 2008 August 15 in FP-DI-FU.NB *) or[equal[fix[composite[x_,Di]],intersection[complement[fix[x_]],range[x_]]], not[FUNCTION[inverse[x_]]]] := True (* derived 2008 August 15 in FP-CO-DI.NB *) or[equal[fix[composite[x_,Di]],range[x_]],not[equal[0,fix[x_]]]] := True (* derived 2008 August 15 in FP-CO-DI.NB *) or[equal[fix[composite[x_,Di]],range[x_]],not[WELLFOUNDED[x_]]] := True (* derived 2007 July 8 in FP-Q-K.NB *) or[equal[fix[composite[eqv[x_],y_]],image[eqv[x_],fix[composite[eqv[x_],y_]]]], not[equal[composite[y_,eqv[x_]],composite[eqv[x_],y_]]]] := True (* derived 2007 July 8 in FP-Q-K.NB *) or[equal[fix[composite[x_,y_]],image[x_,fix[composite[x_,y_]]]], not[equal[composite[x_,y_],composite[y_,x_]]],not[EQUIVALENCE[x_]]] := True (* derived 2008 October 23 in FPCO-RFX.NB *) or[equal[fix[composite[x_,y_]],intersection[fix[x_],fix[y_]]], not[REFLEXIVE[x_]],not[REFLEXIVE[y_]]] := True (* derived 2008 December 6 in GP-DIV.NB *) or[equal[fix[composite[x_,inverse[FIRST]]],range[x_]],not[member[x_,GROUPS]]] := True (* derived 2006 May 2 in RFX-XFM.NB *) or[equal[fix[composite[x_,y_,inverse[x_]]],image[x_,fix[y_]]],not[REFLEXIVE[y_]]] := True (* Theorem X-FU-FP in X3 proved 2001 December 29 *) or[equal[fix[composite[inverse[x_],y_,x_]],image[inverse[x_],fix[y_]]],not[FUNCTION[x_]]] := True (* derived 2004 April 20 in ID-REVU.NB *) or[equal[fix[composite[inverse[x_],y_]],intersection[domain[x_],domain[y_]]],not[subclass[x_,Id]], not[subclass[y_,Id]]] := True (* derived 2004 August 1 in FIXRULES.NB *) or[equal[fix[composite[x_,inverse[y_]]],range[x_]],not[subclass[x_,y_]]] := True (* derived 2004 August 1 in FIXRULES.NB *) or[equal[fix[composite[y_,inverse[x_]]],range[x_]],not[subclass[x_,y_]]] := True (* derived 2007 October 7 in UCL-MONO.NB *) or[equal[fix[composite[inverse[S],funpart[x_]]],Uclosure[fix[composite[inverse[S],funpart[x_]]]]], not[subclass[S,composite[inverse[funpart[x_]],S,funpart[x_]]]]] := True (* derived 2007 October 7 in UCL-MONO.NB *) or[equal[fix[composite[inverse[S],x_]],Uclosure[fix[composite[inverse[S],x_]]]], not[FUNCTION[x_]],not[subclass[S,composite[inverse[x_],S,x_]]]] := True (* derived 2008 December 6 in GP-DIV.NB *) or[equal[fix[composite[x_,inverse[SECOND]]],range[x_]],not[member[x_,GROUPS]]] := True (* derived 2008 October 2 in BIN-FLIP.NB *) or[equal[fix[domain[x_]],range[domain[x_]]],not[member[x_,BINOPS]]] := True (* derived 2008 December 5 in DORA-GPS.NB *) or[equal[fix[domain[x_]],range[x_]],not[member[x_,GROUPS]]] := True (* derived 2008 December 31 in CAT-MON.NB *) or[equal[fix[domain[x_]],range[x_]],not[member[x_,MONOIDS]]] := True (* derived 2008 December 5 in DORA-GPS.NB *) or[equal[fix[domain[x_]],range[x_]],not[member[x_,QUASIGPS]]] := True (* derived 2006 November 25 in U-BINHOM.NB *) or[equal[fix[domain[x_]],range[U[binhom[x_,x_]]]],not[member[x_,BINOPS]]] := True (* derived 2005 January 16 in RFX-CO.NB *) or[equal[fix[x_],fix[composite[x_,x_]]],not[REFLEXIVE[x_]]] := True (* added 2001 December 8 based on EQUALITY.NB *) or[equal[fix[x_],fix[y_]],not[equal[x_,y_]]] := True (* derived 2004 June 18 in X13-FUNP.NB *) or[equal[fix[funpart[x_]],range[funpart[x_]]],not[equal[composite[funpart[x_],funpart[x_]],funpart[x_]]]] := True (* added 2003 April 3 based on FIXHULLI.NB *) or[equal[fix[HULL[intersection[x_,y_]]],intersection[x_,y_]], not[equal[x_,fix[HULL[x_]]]],not[equal[y_,fix[HULL[y_]]]]] := True (* derived 2006 March 4 in FXHLONSU.NB *) or[equal[x_,fix[HULL[x_]]],not[subclass[image[inverse[S],x_],image[inverse[HULL[x_]],x_]]]] := True (* derived 2005 July 24 in ACL-P-OM.NB *) or[equal[x_,fix[HULL[x_]]],not[subclass[x_,omega]]] := True (* derived 2006 March 4 in FXHLONSU.NB *) or[equal[x_,fix[HULL[x_]]],not[subclass[x_,OMEGA]]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) or[equal[fix[IMAGE[cross[Id,x_]]],subvar[cross[Id,x_]]], not[subclass[composite[x_,x_],Id]]] := True (* derived 2006 September 19 in COMMTIVE.NB *) or[equal[fix[IMAGE[cross[x_,Id]]],subvar[cross[x_,Id]]], not[subclass[composite[x_,x_],Id]]] := True (* added 2002 February 8 based on IDEMPOT.NB *) or[equal[fix[x_],image[x_,fix[x_]]],not[FUNCTION[x_]]] := True (* derived 2008 March 11 in IVR-SBV.NB *) or[equal[fix[IMAGE[x_]],intersection[invar[x_],P[fix[x_]]]],not[PARTIALORDER[x_]]] := True (* derived 2008 March 20 in INIT-WO.NB *) or[equal[fix[IMAGE[inverse[x_]]],image[RC[fix[x_]],range[VERTSECT[x_]]]], not[member[x_,y_]],not[WELLORDER[x_]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[equal[fix[x_],image[inverse[x_],set[APPLY[GLB[x_],0]]]],not[member[x_,CL]]] := True (* derived 2005 December 29 in BOTTOM-3.NB *) or[equal[fix[x_],image[inverse[x_],set[APPLY[GREATEST[x_],fix[x_]]]]],not[member[x_,CL]]] := True (* derived 2004 July 21 in TOMINMAX.NB *) or[equal[fix[x_],image[MAXIMAL[x_],P[fix[x_]]]],not[TOTALORDER[x_]]] := True (* derived 2004 July 21 in TOMINMAX.NB *) or[equal[fix[x_],image[MINIMAL[x_],P[fix[x_]]]],not[TOTALORDER[x_]]] := True (* derived 2007 October 30 in PROJ-SBV.NB *) or[equal[fix[IMAGE[x_]],P[fix[x_]]],not[equal[x_,composite[x_,x_]]],not[FUNCTION[x_]]] := True (* derived 2007 June 2 in HC-TC.NB *) or[equal[fix[IMAGE[x_]],range[IMAGE[x_]]],not[equal[x_,composite[x_,x_]]]] := True (* derived 2005 December 29 in BOTTOM-3.NB *) or[equal[fix[x_],image[x_,set[APPLY[LEAST[x_],fix[x_]]]]],not[member[x_,CL]]] := True (* derived 2005 December 28 in BOTTOM.NB *) or[equal[fix[x_],image[x_,set[APPLY[LUB[x_],0]]]],not[member[x_,CL]]] := True (* derived 2005 December 20 in CLGLBLUB.NB *) or[equal[fix[x_],range[GLB[x_]]],not[member[x_,CL]]] := True (* derived 2005 December 19 in PO-LUB.NB *) or[equal[fix[x_],range[GLB[x_]]],not[PARTIALORDER[x_]]] := True (* derived 2005 December 20 in CLGLBLUB.NB *) or[equal[fix[x_],range[LUB[x_]]],not[member[x_,CL]]] := True (* derived 2005 December 19 in PO-LUB.NB *) or[equal[fix[x_],range[LUB[x_]]],not[PARTIALORDER[x_]]] := True (* added 2002 February 9 based on MOREIDEM.NB *) or[equal[fix[x_],range[x_]],not[equal[x_,composite[x_,x_]]],not[FUNCTION[x_]]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) or[equal[fix[x_],range[x_]],not[EQUIVALENCE[x_]]] := True (* derived 2005 December 21 in CL-RULES.NB *) or[equal[fix[x_],range[x_]],not[member[x_,CL]]] := True (* derived 2005 January 29 in RFXTRVTH.NB *) or[equal[fix[x_],range[x_]],not[PARTIALORDER[x_]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[equal[fix[x_],range[x_]],not[REFLEXIVE[x_]]] := True (* derived 2008 June 21 in FP-FUNP.NB *) or[equal[fix[x_],range[x_]],not[subclass[x_,Id]]] := True (* derived 2004 February 10 in TOTORDER.NB *) or[equal[fix[x_],range[x_]],not[TOTALORDER[x_]]] := True (* derived 2008 March 19 in VS-TO.NB *) or[equal[fix[to[x_]],union[image[inverse[to[x_]],set[y_]],image[to[x_],set[y_]]]], not[member[y_,fix[to[x_]]]]] := True (* derived 2008 March 19 in VS-TO.NB *) or[equal[fix[x_],union[image[x_,set[y_]],image[inverse[x_],set[y_]]]], not[member[y_,fix[x_]]],not[TOTALORDER[x_]]] := True (* added 2001 December 28 based on FUNPART.NB *) or[equal[funpart[x_],funpart[y_]],not[equal[x_,y_]]] := True (* derived 2008 August 20 in FU-EQ.NB *) or[equal[x_,funpart[y_]],not[equal[domain[x_],domain[funpart[y_]]]], not[subclass[x_,funpart[y_]]]] := True (* added 2001 December 20 based on SUBST-1.NB *) or[equal[GREATEST[x_],GREATEST[y_]],not[equal[x_,y_]]] := True (* added 2001 December 8 based on EQUALITY.NB *) or[equal[H[x_],H[y_]],not[equal[x_,y_]]] := True (* added 2003 February 15 based on FUL-PC-H.NB *) or[equal[H[x_],intersection[x_,P[x_]]],not[subclass[x_,FULL]]] := True (* derived 2008 September 1 in EPSILN-H.NB *) or[equal[y_,H[x_]],not[AxReg],not[equal[y_,intersection[x_,P[y_]]]]] := True (* derived 2008 September 1 in EPSILN-H.NB *) or[equal[y_,H[x_]],not[equal[y_,intersection[x_,P[y_]]]],not[subclass[x_,REGULAR]]] := True (* derived 2009 January 21 in HOM.NB *) or[equal[x_,hom[x_]],not[category[x_]],not[equal[ids[x_],range[x_]]]] := True (* derived 2007 December 6 in IDEMFUNP.NB *) or[equal[HULL[fix[idem[funpart[x_]]]],idem[funpart[x_]]], not[subclass[composite[idem[funpart[x_]],S],composite[S,idem[funpart[x_]]]]], not[subclass[idem[funpart[x_]],S]]] := True (* derived 2007 December 6 in IDEM.NB *) or[equal[HULL[fix[IMAGE[idem[x_]]]],IMAGE[idem[x_]]],not[equal[V,fix[idem[x_]]]]] := True (* derived 2007 December 6 in IMG-IDEM.NB *) or[equal[HULL[fix[IMAGE[idem[x_]]]],IMAGE[idem[x_]]],not[subclass[IMAGE[idem[x_]],S]]] := True (* derived 2004 June 15 in HULIVRSW.NB *) or[equal[HULL[fix[IMAGE[x_]]],IMAGE[x_]],not[equal[V,fix[x_]]],not[equal[x_,composite[x_,x_]]]] := True (* added 2003 November 2 based on CHARHULL.NB *) or[equal[x_,HULL[fix[x_]]],not[equal[x_,composite[x_,x_]]],not[FUNCTION[x_]], not[subclass[x_,S]],not[subclass[composite[x_,S],composite[S,x_]]]] := True (* derived 2004 October 7 in HULL-I.NB *) or[equal[hull[x_,z_],hull[x_,hull[y_,z_]]],not[subclass[x_,y_]]] := True (* derived 2004 October 7 in HULL-I.NB *) or[equal[hull[x_,z_],hull[y_,hull[x_,z_]]],not[subclass[x_,y_]]] := True (* added 2003 May 9 based on CUT-EQ.NB *) or[equal[HULL[x_],HULL[y_]],not[equal[x_,y_]]] := True (* derived 2004 March 29 based on HULL.NB *) or[equal[hull[x_,z_],hull[y_,z_]],not[equal[x_,y_]]] := True (* derived 2004 March 29 based on HULL.NB *) or[equal[hull[x_,y_],hull[x_,z_]],not[equal[y_,z_]]] := True (* derived 2005 July 24 in RA-ITER.NB *) or[equal[hull[invar[x_],y_],range[iterate[x_,y_]]],not[equal[V,domain[VERTSECT[x_]]]],not[member[y_,z_]]] := True (* derived 2005 July 24 in RA-ITER.NB *) or[equal[hull[invar[x_],set[y_]],range[iterate[x_,set[y_]]]],not[FUNCTION[x_]]] := True (* derived 2004 May 4 in CRHL-FIX.NB *) or[equal[x_,hull[y_,x_]],not[member[x_,y_]]] := True (* derived 2004 March 29 based on HULL.NB *) or[equal[y_,hull[x_,y_]],not[member[y_,Aclosure[x_]]]] := True (* derived 2007 June 10 in HULL-RFX.NB *) or[equal[x_,hull[RFX,x_]],not[member[x_,y_]],not[REFLEXIVE[x_]]] := True (* derived 2007 June 10 in HULL-RFX.NB *) or[equal[hull[RFX,x_],union[x_,id[union[domain[x_],range[x_]]]]], not[member[x_,y_]],not[subclass[x_,cart[u_,v_]]]] := True (* derived 2004 March 29 based on HULL.NB *) or[equal[hull[x_,y_],U[image[HULL[x_],P[y_]]]],not[member[y_,image[inverse[S],x_]]]] := True (* derived 2004 March 29 based on HULL.NB *) or[equal[hull[x_,union[y_,z_]],union[hull[x_,y_],hull[x_,z_]]], not[subclass[image[CUP,cart[x_,x_]],x_]]] := True (* derived 2006 September 30 in VECT-ADD.NB *) or[equal[hull[Z,composite[x_,y_]],intadd[x_,y_]], not[member[x_,Z]],not[member[y_,Z]]] := True (* derived 2006 September 30 in VECT-ADD.NB *) or[equal[hull[Z,composite[NATADD,cross[x_,y_],inverse[NATADD]]],intadd[x_,y_]], not[member[x_,Z]],not[member[y_,Z]]] := True (* derived 2004 March 21 in PO-WRAP.NB *) or[equal[id[fix[x_]],intersection[x_,inverse[x_]]],not[PARTIALORDER[x_]]] := True (* derived 2004 December 18 in RFX-WRAP.NB *) or[equal[id[fix[x_]],rfx[x_]],not[FUNCTION[x_]]] := True (* derived 2007 May 17 in FP-FU-V.NB *) or[equal[Id,x_],not[equal[invar[x_],P[fix[x_]]]],not[FUNCTION[x_]]] := True (* derived 2007 May 17 in FP-FU-V.NB *) or[equal[Id,x_],not[equal[V,fix[x_]]],not[FUNCTION[x_]]] := True (* derived 2008 November 29 in INT-WRAP.NB *) or[equal[x_,id[omega]],equal[y_,composite[id[omega],SUCC]], not[member[pair[pair[x_,y_],x_],INTMUL]]] := True (* derived 2008 December 28 in E.NB *) or[equal[ids[x_],set[e[x_]]],not[member[x_,BINOPS]]] := True (* derived 2008 December 29 in MONOIDS.NB *) or[equal[ids[x_],set[e[x_]]],not[member[x_,MONOIDS]]] := True (* added 2002 October 8 based on INVAR-I.NB *) or[equal[x_,image[CAP,cart[x_,x_]]],not[equal[x_,Aclosure[x_]]]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) or[equal[x_,image[CAP,cart[x_,x_]]],not[member[x_,TOPS]]] := True (* derived 2004 July 28 in APPLY.NB *) or[equal[image[z_,cart[set[x_],set[y_]]],set[APPLY[z_,PAIR[x_,y_]]]],not[FUNCTION[z_]]] := True (* derived 2008 December 16 in IDS.NB *) or[equal[image[x_,cart[set[y_],set[y_]]],set[y_]],not[member[y_,ids[x_]]]] := True (* derived 2008 November 12 in ASSOCTIV.NB *) or[equal[image[x_,cart[V,V]],range[x_]],not[associative[x_]]] := True (* derived 2009 January 1 in MON-AP.NB *) or[equal[image[x_,cart[V,V]],range[x_]],not[member[x_,BINOPS]]] := True (* derived 2004 June 18 in X13-FUNP.NB *) or[equal[image[x_,complement[y_]],intersection[complement[image[x_,y_]],range[x_]]],not[FUNCTION[inverse[x_]]]] := True (* derived 2006 February 7 in IDEM-SU.NB *) or[equal[x_,image[COMPOSE,id[x_]]],not[subclass[x_,IDEM]]] := True (* derived 2006 August 19 in MAP-DJU.NB *) or[equal[image[CUP,cart[map[x_,z_],map[y_,z_]]],map[union[x_,y_],z_]],not[equal[0,intersection[x_,y_]]]] := True (* derived 2007 June 10 in ADD-ID.NB *) or[equal[image[CUP,cart[P[x_],intersection[y_,z_]]],intersection[y_,z_]], not[equal[image[CUP,cart[P[x_],y_]],y_]],not[equal[image[CUP,cart[P[x_],z_]],z_]]] := True (* derived 2005 November 13 in SUFUDORA.NB *) or[equal[image[x_,domain[y_]],range[y_]],not[FUNCTION[x_]],not[subclass[y_,x_]]] := True (* derived 2005 November 20 in ACDORAFU.NB *) or[equal[image[DORA,FUNS],union[cart[set[0],set[0]],composite[id[complement[set[0]]],Q,inverse[S]]]],not[axch]] := True (* derived 2004 June 6 in EQV-TRV.NB *) or[equal[image[eqv[x_],set[u_]],image[eqv[x_],set[v_]]], not[member[pair[u_,v_],eqv[x_]]]] := True (* derived 2005 November 13 in SUFUDORA.NB *) or[equal[image[funpart[x_],domain[y_]],range[y_]],not[subclass[y_,funpart[x_]]]] := True (* derived 2008 September 17 in ADJ0-HER.NB *) or[equal[x_,image[funpart[y_],x_]],not[subclass[x_,fix[funpart[y_]]]]] := True (* derived 2006 November 3 in EVAL-IM.NB *) or[equal[x_,image[FUNPART,x_]],not[subclass[x_,FUNS]]] := True (* derived 2004 August 26 in WF-REC-3.NB *) or[equal[image[IMAGE[composite[id[rec[x_,y_]],inverse[FIRST]]],invar[y_]],partrec[x_,y_]], not[equal[V,domain[VERTSECT[y_]]]],not[FUNCTION[x_]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2005 November 13 in SUFUDORA.NB *) or[equal[image[IMAGE[x_],domain[y_]],range[y_]],not[subclass[y_,IMAGE[x_]]]] := True (* added 2002 May 10 based on WORK1945.NB *) or[equal[image[IMAGE[FIRST],P[x_]],P[domain[x_]]], not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2004 August 18 in X3010-63.NB *) or[equal[image[IMAGE[funpart[x_]],P[y_]],P[image[funpart[x_],y_]]],not[member[y_,V]]] := True (* derived 2005 February 5 in X2894.NB *) or[equal[image[u_,image[v_,z_]],image[x_,image[y_,z_]]],not[equal[composite[u_,v_],composite[x_,y_]]]] := True (* derived 2004 June 18 in X1372-82.NB *) or[equal[image[x_,image[inverse[x_],y_]],intersection[y_,range[x_]]],not[FUNCTION[x_]]] := True (* derived 2004 June 18 in X1379.NB *) or[equal[y_,image[x_,image[inverse[x_],y_]]],not[FUNCTION[x_]],not[subclass[y_,range[x_]]]] := True (* added 2001 December 20 based on SUBST-1.NB *) or[equal[IMAGE[x_],IMAGE[y_]],not[equal[x_,y_]]] := True (* added 2001 December 8 based on EQUAL-A.NB *) or[equal[image[z_,x_],image[z_,y_]],not[equal[x_,y_]]] := True (* added 2001 December 8 based on EQUAL-A.NB *) or[equal[image[x_,z_],image[y_,z_]],not[equal[x_,y_]]] := True (* added 2001 December 8 based on EQUAL-A.NB *) or[equal[image[x_,u_],image[y_,v_]],not[equal[u_,v_]],not[equal[x_,y_]]] := True (* derived 2007 June 2 in SUBVAR.NB *) or[equal[y_,image[IMAGE[x_],y_]],not[subclass[y_,fix[IMAGE[x_]]]]] := True (* derived 2005 November 5 in IMIMG-OO.NB *) or[equal[image[IMAGE[x_],P[y_]],P[image[x_,y_]]],not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]]] := True (* derived 2004 August 18 in X3010-63.NB *) or[equal[image[IMAGE[x_],P[y_]],P[image[x_,y_]]],not[FUNCTION[x_]],not[member[y_,V]]] := True (* derived 2004 August 4 in THIN-RA.NB *) or[equal[image[IMAGE[SECOND],P[x_]],P[range[x_]]],not[equal[V,domain[VERTSECT[inverse[x_]]]]]] := True (* derived 2005 November 8 in RA-IMG.NB *) or[equal[image[IMAGE[SECOND],P[x_]],range[IMAGE[x_]]],not[FUNCTION[x_]]] := True (* derived 2004 April 20 in ID-REVU.NB *) or[equal[image[x_,y_],intersection[y_,fix[x_]]],not[subclass[x_,Id]]] := True (* derived 2005 November 13 in SUFUDORA.NB *) or[equal[image[x_,intersection[y_,image[inverse[x_],z_]]],intersection[z_,image[x_,y_]]],not[FUNCTION[x_]]] := True (* derived 2004 June 18 in X1379.NB *) or[equal[y_,image[x_,intersection[z_,image[inverse[x_],y_]]]],not[FUNCTION[x_]],not[subclass[y_,image[x_,z_]]]] := True (* added 2003 August 28 based on IMIN-FUI.NB *) or[equal[image[x_,intersection[y_,z_]],intersection[image[x_,y_],image[x_,z_]]],not[FUNCTION[inverse[x_]]]] := True (* added 2001 December 29 based on X-FU-FP.NB *) or[equal[image[inverse[x_],z_],image[inverse[y_],z_]],not[equal[x_,y_]]] := True (* derived 2007 December 20 in UCL-DO.NB *) or[equal[image[inverse[IMAGE[x_]],y_],Uclosure[image[inverse[IMAGE[x_]],y_]]], not[equal[V,domain[VERTSECT[x_]]]],not[equal[y_,Uclosure[y_]]]] := True (* derived 2004 April 20 in ID-REVU.NB *) or[equal[image[inverse[x_],y_],intersection[y_,domain[x_]]],not[subclass[x_,Id]]] := True (* derived 2004 April 20 in ID-REVU.NB *) or[equal[image[inverse[x_],y_],intersection[y_,fix[x_]]],not[subclass[x_,Id]]] := True (* derived 2005 January 4 in ORDINAL.NB *) or[equal[image[inverse[RANK],succ[x_]],P[image[ZN,x_]]],not[member[x_,OMEGA]]] := True (* derived 2005 November 19 in HERED.NB *) or[equal[image[inverse[S],intersection[x_,y_]],intersection[x_,y_]], not[equal[x_,image[inverse[S],x_]]],not[equal[y_,image[inverse[S],y_]]]] := True (* derived 2008 January 2 in FINCHR-1.NB *) or[equal[x_,image[inverse[S],x_]],not[equal[complement[x_],image[S,y_]]]] := True (* derived 2008 January 2 in FINCHR-1.NB *) or[equal[x_,image[inverse[S],x_]],not[member[x_,FINCHAR]]] := True (* added 2003 October 20 based on MONOPLUS.NB *) or[equal[x_,image[inverse[S],x_]],not[equal[V,x_]]] := True (* derived 2005 November 12 in UCL-INS.NB *) or[equal[image[inverse[S],x_],P[U[x_]]],not[member[U[x_],x_]]] := True (* derived 2005 February 10 in X3618.NB *) or[equal[image[inverse[S],succ[x_]],P[x_]],not[member[x_,y_]],not[subclass[U[x_],x_]]] := True (* derived 2005 February 10 in X3618.NB *) or[equal[image[inverse[S],succ[x_]],P[x_]],not[member[x_,OMEGA]]] := True (* derived 2005 November 18 in FP-INS-U.NB *) or[equal[image[inverse[S],U[x_]],U[x_]],not[subclass[x_,fix[IMAGE[inverse[S]]]]]] := True (* derived 2004 April 24 in BA-BC.NB *) or[equal[image[inverse[S],Uclosure[x_]],P[U[x_]]],not[member[x_,y_]]] := True (* derived 2008 March 20 in IVR-VSTO.NB *) or[equal[image[inverse[to[x_]],complement[image[to[x_],set[y_]]]], intersection[complement[image[to[x_],set[y_]]],fix[to[x_]]]], not[member[y_,fix[to[x_]]]]] := True (* derived 2004 June 19 in X1461.NB *) or[equal[y_,image[x_,y_]],not[FUNCTION[x_]],not[subclass[y_,fix[x_]]]] := True (* derived 2006 May 31 in OL-NOGAP.NB *) or[equal[image[ordlist[x_],y_],intersection[OMEGA,x_,APPLY[ordlist[x_],y_]]], not[member[y_,domain[ordlist[x_]]]]] := True (* derived 2008 January 20 in HART-NUM.NB *) or[equal[image[Q,P[x_]],image[Q,P[y_]]],not[member[pair[x_,y_],Q]]] := True (* derived 2005 February 5 in X3330.NB *) or[equal[image[Q,set[x_]],image[Q,set[y_]]],not[member[pair[x_,y_],Q]]] := True (* derived 2008 October 24 in RFX-CMT.NB *) or[equal[image[x_,range[y_]],image[y_,range[x_]]], not[equal[composite[x_,y_],composite[y_,x_]]]] := True (* derived 2004 February 28 in RA-IM.NB *) or[equal[image[x_,y_],range[x_]],not[subclass[x_,cart[y_,z_]]]] := True (* derived 2004 February 28 in RA-IM.NB *) or[equal[image[x_,y_],range[x_]],not[subclass[domain[x_],y_]]] := True (* derived 2004 December 25 in SELCO-LT.NB *) or[equal[image[x_,z_],range[x_]],not[subclass[x_,y_]],not[subclass[domain[y_],z_]]] := True (* derived 2003 December 25 in RC-CUP.NB *) or[equal[image[RC[x_],FINITE],P[x_]],not[member[x_,FINITE]]] := True (* derived 2006 December 5 in MIXTIMES.NB *) or[equal[image[w_,set[0]],set[id[omega]]],not[member[w_,binhom[NATADD,INTADD]]]] := True (* added 2002 September 17 based on EQUAL.NB *) or[equal[image[z_,set[x_]],image[z_,set[y_]]],not[equal[x_,y_]]] := True (* derived 2004 June 27 in X1693-97.NB *) or[equal[image[x_,set[u_]],image[x_,set[v_]]], not[EQUIVALENCE[x_]],not[member[pair[u_,v_],x_]]] := True (* derived 2004 July 15 in X1698.NB *) or[equal[image[x_,set[u_]],image[x_,set[v_]]], not[EQUIVALENCE[x_]],not[member[pair[u_,v_],composite[inverse[x_],x_]]]] := True (* added 2003 October 28 based on APPLY.NB *) or[equal[image[x_,set[y_]],set[APPLY[x_,y_]]],not[FUNCTION[x_]]] := True (* derived 204 June 12 in X1183.NB *) or[equal[image[z_,set[x_]],set[y_]],not[FUNCTION[z_]],not[member[pair[x_,y_],z_]]] := True (* derived 2006 July 6 in MAP-SS.NB *) or[equal[image[SINGLETON,cart[set[x_],y_]],map[set[x_],y_]],not[member[x_,z_]]] := True (* derived 2008 March 20 in IVR-VSTO.NB *) or[equal[image[to[x_],complement[image[inverse[to[x_]],set[y_]]]], intersection[complement[image[inverse[to[x_]],set[y_]]],fix[to[x_]]]], not[member[y_,fix[to[x_]]]]] := True (* derived 2004 Agust 13 in X4015-56.NB *) or[equal[image[ZN,P[x_]],P[image[ZN,x_]]],not[member[x_,y_]]] := True (* derived 2003 December 20 in ZN-SUC.NB *) or[equal[image[ZN,succ[x_]],P[image[ZN,x_]]],not[member[x_,V]]] := True (* derived 2007 January 23 in ADDRULES.NB *) or[equal[w_,intadd[x_,y_]],not[member[w_,Z]],not[member[x_,Z]], not[member[y_,Z]],not[subclass[composite[x_,y_],w_]]] := True (* derived 2004 June 28 in X1946-47.NB *) or[equal[intersection[complement[composite[PS,x_]],composite[S,x_]],x_],not[FUNCTION[x_]]] := True (* derived 2007 November 3 in MAX-U.NB *) or[equal[intersection[x_,complement[image[inverse[PS],x_]]],set[U[x_]]], not[member[U[x_],x_]]] := True (* derived 2008 March 19 in VS-TO.NB *) or[equal[intersection[complement[image[inverse[x_],set[y_]]],fix[x_]], intersection[complement[set[y_]],image[x_,set[y_]]]], not[member[y_,fix[x_]]],not[TOTALORDER[x_]]] := True (* derived 2008 March 19 in VS-TO.NB *) or[equal[intersection[complement[image[inverse[to[x_]],set[y_]]],fix[to[x_]]], intersection[complement[set[y_]],image[to[x_],set[y_]]]],not[member[y_,fix[to[x_]]]]] := True (* derived 2008 March 19 in VS-TO.NB *) or[equal[intersection[complement[image[x_,set[y_]]],fix[x_]], intersection[complement[set[y_]],image[inverse[x_],set[y_]]]], not[member[y_,fix[x_]]],not[TOTALORDER[x_]]] := True (* derived 2008 March 19 in VS-TO.NB *) or[equal[intersection[complement[image[to[x_],set[y_]]],fix[to[x_]]], intersection[complement[set[y_]],image[inverse[to[x_]],set[y_]]]], not[member[y_,fix[to[x_]]]]] := True (* added 2001 December 28 based on FUNPART.NB *) or[equal[intersection[w_,complement[x_]],intersection[y_,complement[z_]]], not[equal[w_,y_]],not[equal[x_,z_]]] := True (* derived 2004 January 15 in RC-OP.NB *) or[equal[x_,intersection[y_,complement[z_]]], not[equal[0,intersection[x_,z_]]],not[equal[y_,union[x_,z_]]]] := True (* derived 2005 January 21 in X1931-2.NB *) or[equal[intersection[complement[set[U[intersection[complement[x_],y_]]]],y_],x_],not[member[pair[x_,y_],K]]] := True (* derived 2005 February 9 in ON-1.NB *) or[equal[x_,intersection[FULL,image[inverse[S],x_]]],not[member[x_,OMEGA]]] := True (* derived 2005 February 9 in ON-1.NB *) or[equal[intersection[FULL,image[inverse[S],x_]],tc[x_]],not[subclass[x_,OMEGA]]] := True (* added 2002 June 4 based in ISB5-SUC.NB *) or[equal[intersection[FULL,P[x_]],succ[x_]],not[member[x_,OMEGA]]] := True (* derived 2007 January 23 in BINOM.NB *) or[equal[intersection[image[inverse[CARD],set[x_]],P[x_]],set[x_]],not[member[x_,omega]]] := True (* derived 2007 June 24 in UCL-UO.NB *) or[equal[intersection[image[inverse[DORA],inverse[S]],P[cart[V,V]]],Uclosure[UNOPS]], not[axch]] := True (* derived 2008 March 19 in VS-TO.NB *) or[equal[intersection[image[inverse[to[x_]],set[y_]],image[to[x_],set[y_]]],set[y_]], not[member[y_,fix[to[x_]]]]] := True (* derived 2005 January 7 in K-RULES.NB *) or[equal[intersection[image[S,set[x_]],P[y_]],set[x_,y_]],not[member[pair[x_,y_],K]]] := True (* derived 2008 March 19 in VS-TO.NB *) or[equal[intersection[image[x_,set[y_]],image[inverse[x_],set[y_]]],set[y_]], not[member[y_,fix[x_]]],not[PARTIALORDER[x_]]] := True (* derived 2008 March 19 in VS-TO.NB *) or[equal[intersection[image[x_,set[y_]],image[inverse[x_],set[y_]]],set[y_]], not[member[y_,fix[x_]]],not[TOTALORDER[x_]]] := True (* added 2001 December 8 based on EQ-BIN.NB *) or[equal[intersection[x_,z_],intersection[y_,z_]],not[equal[x_,y_]]] := True (* added 2001 December 8 based on EQ-BIN.NB *) or[equal[intersection[u_,x_],intersection[v_,y_]],not[equal[u_,v_]],not[equal[x_,y_]]] := True (* derived 2007 June 24 in UCL-UO.NB *) or[equal[intersection[x_,y_],intersection[y_,z_]], not[subclass[x_,z_]],not[subclass[intersection[y_,z_],x_]]] := True (* derived 2006 January 29 in WF-Z.NB *) or[equal[intersection[invar[x_],P[domain[x_]]],subvar[inverse[x_]]],not[FUNCTION[x_]]] := True (* derived 2008 April 17 in ORD-NAT.NB *) or[equal[intersection[nat[x_],P[y_]],succ[y_]],not[member[y_,nat[x_]]]] := True (* derived 2004 May 11 in EQV-GEN.NB *) or[equal[x_,intersection[y_,z_]],not[equal[x_,y_]],not[equal[x_,z_]]] := True (* derived 2005 February 15 in X3715-16.NB *) or[equal[w_,intersection[x_,y_]],not[subclass[x_,y_]]] := or[equal[w,x],not[subclass[x,y]]] (* derived 2005 February 15 in ON-IND-4.NB *) or[equal[x_,intersection[omega,complement[A[x_]]]],not[subclass[x_,omega]],not[subclass[image[SUCC,x_],x_]]] := True (* added 2003 February 4 based on PLUS-Q.NB *) or[equal[intersection[omega,complement[x_]], intersection[omega,image[S,set[x_]]]],not[member[x_,omega]]] := True (* derived 2005 February 19 in ITR-OM-E.NB *) or[equal[intersection[omega,complement[P[union[x_,complement[omega]]]]], intersection[omega,complement[succ[x_]]]],not[member[x_,omega]]] := True (* derived 2007 July 4 in IMS-OM.NB *) or[equal[x_,intersection[omega,image[inverse[S],x_]]],not[member[x_,omega]]] := True (* derived 2008 January 20 in HART-NUM.NB *) or[equal[intersection[OMEGA,image[Q,P[x_]]],intersection[OMEGA,image[Q,P[y_]]]], not[member[pair[x_,y_],Q]]] := True (* added 2002 May 15 based on TRICHOT.NB *) or[equal[intersection[OMEGA,P[complement[set[x_]]]],succ[x_]],not[member[x_,OMEGA]]] := True (* added 2002 September 12 based on LEFT-SUB.NB *) or[equal[intersection[omega,P[x_]],succ[x_]],not[member[x_,omega]]] := True (* derived 2006 June 1 in OL-FIN.NB *) or[equal[intersection[OMEGA,x_],range[ordlist[x_]]],not[member[x_,FINITE]]] := True (* derived 2007 May 15 in OL-U-RA.NB *) or[equal[intersection[OMEGA,x_],range[ordlist[x_]]], not[member[intersection[OMEGA,x_],FINITE]]] := True (* derived 2008 April 17 in ORD-NAT.NB *) or[equal[intersection[ord[x_],P[y_]],succ[y_]],not[member[y_,ord[x_]]]] := True (* derived 2006 March 25 in PC-ON-A.NB *) or[equal[intersection[x_,P[complement[x_]]],set[A[x_]]],not[subclass[x_,OMEGA]]] := True (* derived 2008 April 17 in ORD-NAT.NB *) or[equal[intersection[x_,P[y_]],succ[y_]],not[member[x_,OMEGA]],not[member[y_,x_]]] := True (* derived 2005 November 15 in IMG-IDX.NB *) or[equal[intersection[x_,U[domain[y_]]],U[range[y_]]],not[subclass[y_,IMAGE[id[x_]]]]] := True (* derived 2007 June 23 in UCHAINS.NB *) or[equal[intersection[x_,y_],Uchains[intersection[x_,y_]]], not[equal[x_,Uchains[x_]]],not[equal[y_,Uchains[y_]]]] := True (* derived 2004 June 28 in X2163.NB *) or[equal[intersection[x_,y_],Uclosure[intersection[x_,y_]]], not[equal[x_,Uclosure[x_]]],not[equal[y_,Uclosure[y_]]]] := True (* derived 2008 September 6 in INTMUL.NB *) or[equal[w_,intmul[u_,v_]],not[member[pair[pair[u_,v_],w_],INTMUL]]] := True (* derived 2004 June 17 in X1366.NB *) or[equal[invar[cross[x_,x_]],subcommutant[x_]], not[equal[V,domain[x_]]],not[FUNCTION[x_]]] := True (* added 2002 May 1 based on INVAR-V.NB *) or[equal[invar[x_],invar[y_]],not[equal[x_,y_]]] := True (* added 2002 November 19 based on SUBST.NB *) or[equal[y_,inverse[y_]],not[equal[x_,y_]],not[equal[x_,inverse[x_]]]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) or[equal[x_,inverse[x_]],not[EQUIVALENCE[x_]]] := True (* derived 2004 April 8 in SU-ID.NB *) or[equal[x_,inverse[x_]],not[subclass[x_,Id]]] := True (* derived 2004 March 4 in RELATION.NB *) or[equal[x_,inverse[x_]],not[subclass[x_,inverse[x_]]]] := True (* derived 2005 February 17 in X3741-49.NB *) or[equal[image[inverse[SUCC],x_],U[x_]],not[member[x_,OMEGA]]] := True (* derived 2004 July 16 on TRV-SYM.NB *) or[equal[inverse[trv[x_]],trv[x_]],not[equal[x_,inverse[x_]]]] := True (* derived 2007 July 17 in U-EQV.NB *) or[equal[inverse[U[x_]],U[x_]],not[subclass[x_,SYM]]] := True (* derived 2006 December 5 in MIXTIMES.NB *) or[equal[iterate[composite[image[inverse[INTADD],set[x_]],INVERSE],set[id[omega]]],t_], not[equal[image[t_,set[set[0]]],set[x_]]],not[member[t_,binhom[NATADD,INTADD]]]] := True (* added 2002 May 20 based on ITER-EQ.NB *) or[equal[iterate[x_,y_],iterate[x_,z_]],not[equal[y_,z_]]] := True (* added 2002 May 20 based on EQUALITY.NB *) or[equal[iterate[x_,z_],iterate[y_,z_]],not[equal[x_,y_]]] := True (* derived 2005 July 17 in TIMES.NB *) or[equal[iterate[iterate[SUCC,set[x_]],set[0]],times[x_]],not[member[x_,omega]]] := True (* derived 2007 April 26 in CL-TOP.NB *) or[equal[lb[x_,fix[x_]],set[APPLY[GLB[x_],fix[x_]]]],not[member[x_,CL]]] := True (* derived 2005 December 28 in BOTTOM.NB *) or[equal[lb[x_,fix[x_]],set[APPLY[LEAST[x_],fix[x_]]]],not[member[x_,CL]]] := True (* derived 2007 April 26 in CL-TOP.NB *) or[equal[lb[x_,fix[x_]],set[APPLY[LUB[x_],0]]],not[member[x_,CL]]] := True (* derived 2004 February 21 in LB-UB-EQ.NB *) or[equal[lb[x_,y_],lb[x_,z_]],not[equal[y_,z_]]] := True (* derived 2004 February 21 in LB-UB-EQ.NB *) or[equal[lb[x_,z_],lb[y_,z_]],not[equal[x_,y_]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[equal[ld[x_,z_],ld[x_,natmul[y_,z_]]],member[z_,omega]] := True (* derived 2007 April 17 in LD9-19.NB *) or[equal[ld[x_,z_],ld[x_,natmul[y_,z_]]],not[member[set[0],ld[x_,y_]]]] := True (* added 2001 December 20 based on SUBST-1.NB *) or[equal[LEAST[x_],LEAST[y_]],not[equal[x_,y_]]] := True (* added 2003 May 8 based on MAP-EQ.NB *) or[equal[map[x_,y_],map[x_,z_]],not[equal[y_,z_]]] := True (* added 2003 May 8 based on MAP-EQ.NB *) or[equal[map[x_,z_],map[y_,z_]],not[equal[x_,y_]]] := True (* added 2003 May 8 based on MAP-EQ.NB *) or[equal[map[x_,x_],map[y_,y_]],not[equal[x_,y_]]] := True (* added 2003 May 8 based on MAP-EQ.NB *) or[equal[map[u_,v_],map[x_,y_]],not[equal[u_,x_]],not[equal[v_,y_]]] := True (* derived 2008 November 11 in PS-SMALL.NB *) or[equal[x_,y_],member[card[x_],card[y_]],not[member[y_,FINITE]],not[subclass[x_,y_]]] := True (* derived 2007 December 29 in IM-IN-PS.NB *) or[equal[x_,y_],member[x_,image[inverse[PS],z_]],not[member[y_,z_]],not[subclass[x_,y_]]] := True (* derived 2007 December 29 in IM-IN-PS.NB *) or[equal[x_,y_],member[y_,image[PS,z_]],not[member[x_,z_]], not[member[y_,w_]],not[subclass[x_,y_]]] := True (* derived 2008 February 28 in ROBINSON.NB *) or[equal[x_,y_],member[x_,y_],member[y_,x_],not[member[x_,z_]],not[member[y_,z_]], not[subclass[cart[z_,z_],union[E,composite[inverse[E],SUCC]]]]] := True (* added 2002 May 13 based on OM-SC-3.NB *) or[equal[x_,y_],member[x_,y_],member[y_,x_],not[member[x_,omega]],not[member[y_,omega]]] := True (* added 2002 May 7 based on EXAMPLES.NB *) or[equal[x_,y_],member[x_,y_],member[y_,x_],not[member[x_,OMEGA]],not[member[y_,OMEGA]]] := True (* derived 2005 February 6 in X3376-77.NB *) or[equal[x_,y_],member[x_,y_],not[equal[succ[x_],succ[y_]]]] := True (* derived 2005 February 22 in DIVRULES.NB *) or[equal[w_,x_],member[w_,y_],not[member[w_,z_]],not[subclass[z_,union[y_,set[x_]]]]] := True (* derived 2005 February 22 in DIVRULES.NB *) or[equal[x_,y_],member[x_,y_],not[member[x_,omega]],not[member[y_,omega]],not[subclass[x_,y_]]] := True (* derived 2003 December 24 based on ON-SC.NB *) or[equal[x_,y_],member[x_,y_],not[member[x_,OMEGA]],not[member[y_,OMEGA]],not[subclass[x_,y_]]] := True (* derived 2005 February 8 in X3595.NB *) or[equal[x_,y_],member[x_,y_],not[member[y_,OMEGA]],not[subclass[x_,y_]],not[subclass[U[x_],x_]]] := True (* derived 2008 November 11 in PS-SMALL.NB *) or[equal[x_,y_],member[pair[x_,y_],SMALLER],not[member[y_,FINITE]],not[subclass[x_,y_]]] := True (* derived 2005 February 6 in X3376-77.NB *) or[equal[x_,y_],member[x_,U[x_]],not[equal[succ[x_],succ[y_]]]] := True (* derived 2005 April 26 in TRICHOT.NB *) or[equal[nat[x_],nat[y_]],member[nat[x_],nat[y_]]] := not[member[nat[y],nat[x]]] (* derived 2007 February 10 in EX-8.NB *) or[equal[nat[y_],nat[z_]],not[equal[natexp[nat[x_],nat[y_]],natexp[nat[x_],nat[z_]]]], not[member[set[0],nat[x_]]]] := True (* derived 2007 March 21 in Q7.NB *) or[equal[nat[x_],natadd[natmod[nat[x_],nat[z_]],natmul[nat[y_],nat[z_]]]], member[nat[x_],natmul[nat[y_],nat[z_]]]] := not[member[natadd[natmod[nat[x],nat[z]],natmul[nat[y],nat[z]]],nat[x]]] (* derived 2005 April 26 in TRICHOT.NB *) or[equal[x_,nat[y_]],not[member[x_,nat[y_]]]] := not[member[x,nat[y]]] (* derived 2005 July 4 in SUCC-NAT.NB *) or[equal[nat[x_],succ[y_]],member[y_,nat[x_]]] := member[y,nat[x]] (* derived 2005 July 4 in SUCC-NAT.NB *) or[equal[nat[x_],succ[y_]],member[succ[y_],nat[x_]]] := member[y,nat[x]] (* derived 2007 March 21 in Q11-Q12.NB *) or[equal[natadd[nat[z_],natmod[natadd[nat[x_],nat[y_]],nat[z_]]], natadd[natmod[nat[x_],nat[z_]],natmod[nat[y_],nat[z_]]]], member[natadd[natmod[nat[x_],nat[z_]],natmod[nat[y_],nat[z_]]],nat[z_]]] := True (* derived 2007 April 7 in LD6.NB *) or[equal[natadd[y_,nat[natsub[x_,y_]]],union[x_,y_]], not[member[x_,omega]],not[member[y_,omega]]] := True (* derived 2005 June 24 in TRANSPOS.NB *) or[equal[x_,natadd[y_,nat[z_]]],not[equal[nat[z_],natsub[x_,y_]]]] := True (* added 2002 September 10 based on EQUALITY.NB *) or[equal[natadd[x_,z_],natadd[y_,z_]],not[equal[x_,y_]]] := True (* derived 2007 March 21 in Q11-Q12.NB *) or[equal[natadd[natmod[nat[x_],nat[z_]],natmod[nat[y_],nat[z_]]], natmod[natadd[nat[x_],nat[y_]],nat[z_]]], not[member[natadd[natmod[nat[x_],nat[z_]],natmod[nat[y_],nat[z_]]],nat[z_]]]] := True (* derived 2006 October 31 in ADD-MEMB.NB *) or[equal[z_,natadd[x_,y_]],not[member[z_,omega]], not[member[pair[x_,z_],iterate[SUCC,set[y_]]]]] := True (* derived 2008 October 21 in LISTS.NB *) or[equal[natadd[x_,y_],union[x_,image[plus[x_],y_]]], not[member[x_,omega]],not[member[y_,omega]]] := True (* derived 2007 February 8 in EX-2-COR.NB *) or[equal[natexp[nat[x_],nat[z_]],natmul[natexp[nat[x_],nat[natsub[nat[z_],nat[y_]]]], natexp[nat[x_],nat[y_]]]],member[nat[z_],nat[y_]]] := True (* derived 2007 February 8 in EX-2-COR.NB *) or[equal[natexp[x_,z_],natmul[natexp[x_,y_],natexp[x_,natsub[z_,y_]]]], member[z_,y_],not[member[y_,omega]]] := True (* derived 2006 October 31 in EXP-MEMB.NB *) or[equal[z_,natexp[x_,y_]],not[member[pair[pair[x_,y_],z_],NATEXP]]] := True (* derived 2005 July 17 in EQV-MOD.NB *) or[equal[natmod[x_,y_],natmod[z_,y_]],not[member[pair[y_,natsub[z_,x_]],DIV]]] := True (* derived 2005 June 24 in MOD-CALC.NB *) or[equal[x_,natmod[x_,y_]],not[member[x_,y_]],not[member[y_,omega]]] := True (* derived 2005 June 27 in MOD-UNIQ.NB *) or[equal[z_,natmod[x_,y_]],not[member[z_,y_]],not[member[pair[y_,natsub[x_,z_]],DIV]]] := True (* derived 2005 June 24 in TRANSPOS.NB *) or[equal[x_,natsub[nat[y_],nat[z_]]],not[equal[nat[z_],natsub[nat[y_],x_]]]] := True (* derived 2005 June 24 in TRANSPOS.NB *) or[equal[z_,natsub[nat[x_],y_]],not[equal[nat[x_],natadd[y_,z_]]]] := True (* added 2002 September 17 based on EQUAL.NB *) or[equal[natsub[x_,z_],natsub[y_,z_]],not[equal[x_,y_]]] := True (* added 2002 September 17 based on EQUAL.NB *) or[equal[natsub[z_,x_],natsub[z_,y_]],not[equal[x_,y_]]] := True (* added 2002 September 17 based on EQUAL.NB *) or[equal[natsub[u_,v_],natsub[x_,y_]],not[equal[u_,x_]],not[equal[v_,y_]]] := True (* added 2001 October 11 based on EQUALITY.NB *) or[equal[x_,y_],not[equal[y_,x_]]] := True (* derived 2008 August 31 in OO-AP.NB *) or[equal[y_,z_],not[equal[APPLY[x_,y_],APPLY[x_,z_]]], not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]],not[member[y_,domain[x_]]]] := True (* derived 2006 December 21 in ZTIMES-2.NB *) or[equal[x_,y_],not[equal[APPLY[x_,composite[id[omega],SUCC]],APPLY[y_,composite[id[omega],SUCC]]]], not[member[x_,binhom[INTADD,INTADD]]],not[member[y_,binhom[INTADD,INTADD]]]] := True (* derived 2008 August 31 in OO-AP.NB *) or[equal[y_,z_],not[equal[APPLY[funpart[x_],y_],APPLY[funpart[x_],z_]]], not[FUNCTION[inverse[funpart[x_]]]],not[member[y_,domain[funpart[x_]]]]] := True (* derived 2008 August 31 in OO-AP.NB *) or[equal[y_,z_],not[equal[APPLY[oopart[x_],y_],APPLY[oopart[x_],z_]]], not[member[y_,domain[oopart[x_]]]]] := True (* derived 2005 August 8 in PIGEON.NB *) or[equal[x_,y_],not[equal[card[x_],card[y_]]],not[member[x_,FINITE]],not[member[y_,z_]],not[subclass[x_,y_]]] := True (* derived 2005 August 8 in PIGEON.NB *) or[equal[x_,y_],not[equal[card[x_],card[y_]]],not[member[y_,FINITE]],not[subclass[x_,y_]]] := True (* derived 2004 March 4 in RELATION.NB *) or[equal[x_,y_],not[equal[x_,composite[Id,y_]]],not[subclass[y_,cart[V,V]]]] := True (* derived 2007 November 10 in ALL-MAX.NB *) or[equal[x_,y_],not[equal[domain[x_],domain[y_]]],not[FUNCTION[y_]],not[subclass[x_,y_]]] := True (* derived 2008 May 5 in FU-RS-DO.NB *) or[equal[u_,v_],not[equal[domain[u_],domain[v_]]], not[FUNCTION[U[x_]]],not[member[u_,x_]],not[member[v_,x_]]] := True (* derived 2008 May 5 in FU-REC.NB *) or[equal[u_,v_],not[equal[domain[u_],domain[v_]]], not[member[u_,partrec[funpart[x_],thinpart[inverse[wf[y_]]]]]], not[member[v_,partrec[funpart[x_],thinpart[inverse[wf[y_]]]]]]] := True (* derived 2004 April 20 in ID-REVU.NB *) or[equal[x_,y_],not[equal[domain[x_],domain[y_]]],not[subclass[x_,Id]],not[subclass[y_,Id]]] := True (* derived 2004 June 17 in X2447.NB *) or[equal[x_,y_],not[equal[first[x_],first[y_]]],not[equal[second[x_],second[y_]]],not[member[first[x_],z_]]] := True (* derived 2004 June 18 based on X1383.NB *) or[equal[y_,z_],not[equal[image[inverse[x_],y_],image[inverse[x_],z_]]], not[FUNCTION[x_]],not[subclass[y_,range[x_]]],not[subclass[z_,range[x_]]]] := True (* added 2003 May 18 based on SQRTUNIQ.NB *) or[equal[x_,y_],not[equal[natmul[x_,x_],natmul[y_,y_]]], not[member[x_,omega]],not[member[y_,omega]]] := True (* added 2001 October 11 based on EQUALITY.NB *) or[equal[x_,z_],not[equal[x_,y_]],not[equal[y_,z_]]] := True (* derived 2004 March 4 in PAIRSET.NB *) or[equal[x_,y_],not[equal[set[x_,z_],set[y_,z_]]],not[member[x_,u_]],not[member[y_,v_]]] := True (* added 2003 July 5 based on EQ-SS.NB *) or[equal[x_,y_],not[equal[set[x_],set[y_]]],not[member[x_,z_]]] := True (* added 2002 October 8 based on SUCC.NB *) or[equal[x_,y_],not[equal[succ[x_],succ[y_]]],not[member[y_,omega]]] := True (* derived 2004 July 27 in FUNCTION.NB *) or[equal[x_,y_],not[equal[V,domain[x_]]],not[equal[V,domain[y_]]],not[FUNCTION[union[x_,y_]]]] := True (* derived 2008 May 5 in FU-REC.NB *) or[equal[u_,v_],not[equal[V,domain[VERTSECT[y_]]]],not[equal[domain[u_],domain[v_]]], not[FUNCTION[x_]],not[member[u_,partrec[x_,y_]]],not[member[v_,partrec[x_,y_]]], not[WELLFOUNDED[inverse[y_]]]] := True (* added 2003 October 8 based on FS-CUP.NB *) or[equal[v_,w_],not[FUNCTION[x_]],not[member[pair[u_,v_],x_]],not[member[pair[u_,w_],x_]]] := True (* derived 2004 June 12 in X1229.NB *) or[equal[x_,y_],not[FUNCTION[x_]],not[subclass[y_,x_]],not[subclass[domain[x_],domain[y_]]]] := True (* derived 2004 March 4 in PAIRSET.NB *) or[equal[y_,z_],not[FUNCTION[set[pair[x_,y_],pair[x_,z_]]]]] := True (* derived 2007 April 21 in CL-VS.NB *) or[equal[x_,y_],not[member[w_,CL]],not[member[pair[x_,y_],w_]],not[member[pair[y_,x_],w_]]] := True (* derived 2005 January 27 in DK-SU.NB *) or[equal[x_,y_],not[member[y_,DEDEKIND]],not[member[pair[x_,y_],Q]],not[subclass[x_,y_]]] := True (* derived 2005 February 20 in CARD-ONE.NB *) or[equal[x_,y_],not[member[y_,FINITE]],not[member[pair[x_,y_],Q]],not[subclass[x_,y_]]] := True (* derived 2005 February 20 in CARD-TWO.NB *) or[equal[x_,y_],not[member[x_,image[PAIRSET,Di]]],not[member[y_,image[PAIRSET,Di]]],not[subclass[x_,y_]]] := True (* added 2003 July 25 based on HULL-Z.NB *) or[equal[x_,y_],not[member[x_,z_]],not[member[y_,z_]],not[member[z_,range[SINGLETON]]]] := True (* derived 2008 September 4 in DJ-PA-PS.NB *) or[equal[x_,y_],not[member[x_,z_]],not[subclass[x_,y_]],not[subclass[y_,A[z_]]]] := True (* derived 2009 January 5 in DOM-CAT.NB *) or[equal[v_,w_],not[member[pair[v_,w_],domain[x_]]], not[member[v_,ids[x_]]],not[member[w_,ids[x_]]]] := True (* derived 2005 August 5 in IDS-UNIQ.NB *) or[equal[y_,z_],not[member[pair[y_,z_],domain[x_]]],not[member[y_,V]],not[member[z_,V]], not[subclass[composite[x_,LEFT[y_]],Id]],not[subclass[composite[x_,RIGHT[z_]],Id]]] := True (* derived 2009 January 21 in INV.NB *) or[equal[u_,w_],not[member[pair[u_,v_],inv[cat[x_]]]],not[member[pair[v_,w_],inv[cat[x_]]]]] := True (* derived 2007 August 14 in K-PS.NB *) or[equal[u_,v_],not[member[pair[u_,x_],K]],not[member[pair[v_,y_],K]], not[subclass[u_,v_]],not[subclass[v_,x_]],subclass[x_,y_]] := True (* derived 2006 January 7 in PO-BASIC.NB *) or[equal[u_,v_],not[member[pair[u_,v_],x_]],not[member[pair[v_,u_],x_]],not[PARTIALORDER[x_]]] := True (* derived 2008 March 6 in WO-ASYM.NB *) or[equal[u_,v_],not[member[pair[u_,v_],x_]], not[member[pair[v_,u_],x_]],not[WELLORDER[x_]]] := True (* derived 2006 January 7 in PO-BASIC.NB *) or[equal[u_,v_],not[member[pair[u_,v_],po[x_]]],not[member[pair[v_,u_],po[x_]]]] := True (* derived 2008 March 6 in WO-ASYM.NB *) or[equal[u_,v_],not[member[pair[u_,v_],wo[x_]]],not[member[pair[v_,u_],wo[x_]]]] := True (* derived 2005 February 20 in CARD-ONE.NB *) or[equal[x_,y_],not[member[y_,range[SINGLETON]]],not[member[pair[x_,y_],Q]],not[subclass[x_,y_]]] := True (* derived 2005 February 20 in CARD-ONE.NB *) or[equal[x_,y_],not[member[x_,range[SINGLETON]]],not[member[y_,range[SINGLETON]]],not[subclass[x_,y_]]] := True (* derived 2006 September 2 in HULL-Z.NB *) or[equal[x_,y_],not[member[x_,Z]],not[member[y_,Z]],not[subclass[x_,y_]]] := True (* derived 2008 February 2 in TO-MAX.NB *) or[equal[x_,y_],not[PARTIALORDER[x_]],not[subclass[y_,x_]], not[subclass[fix[x_],fix[y_]]],not[TOTALORDER[y_]]] := True (* derived 2007 September 23 in AND-K-SU.NB *) or[equal[x_,y_],not[subclass[x_,y_]],not[subclass[y_,z_]],not[subclass[z_,x_]]] := True (* derived 2006 August 29 in CARTCTBL.NB *) or[equal[omega,card[cart[x_,y_]]],not[equal[omega,card[x_]]],not[equal[omega,card[y_]]]] := True (* derived 2006 August 17 in CTBL-FIN.NB *) or[equal[omega,card[intersection[complement[y_],x_]]], not[equal[omega,card[x_]]],not[member[y_,FINITE]]] := True (* derived 2006 August 16 in HER-CTBL.NB *) or[equal[omega,card[x_]],member[x_,FINITE],not[equal[omega,card[y_]]],not[subclass[x_,y_]]] := True (* derived 2006 August 16 in OL-SU-OM.NB *) or[equal[omega,card[x_]],member[x_,FINITE],not[subclass[x_,omega]]] := True (* derived 2006 August 17 in CTBL-U.NB *) or[equal[omega,card[x_]],not[member[x_,Z]]] := True (* derived 2008 July 17 in OMCARDOO.NB *) or[equal[omega,card[oopart[x_]]],not[equal[omega,domain[oopart[x_]]]]] := True (* derived 2008 July 17 in OMCARDOO.NB *) or[equal[omega,card[oopart[x_]]],not[equal[omega,range[oopart[x_]]]]] := True (* derived 2007 January 10 in CARDRAVS.NB *) or[equal[omega,card[union[x_,fin[y_]]]],not[equal[omega,card[x_]]]] := True (* derived 2006 August 17 in CTBL-U.NB *) or[equal[omega,card[union[x_,y_]]],not[equal[omega,card[x_]]],not[equal[omega,card[y_]]]] := True (* derived 2006 August 17 in CTBL-FIN.NB *) or[equal[omega,card[union[x_,y_]]],not[equal[omega,card[y_]]],not[member[x_,FINITE]]] := True (* derived 2007 January 10 in CARDRAVS.NB *) or[equal[omega,card[union[x_,set[y_]]]],not[equal[omega,card[x_]]]] := True (* added 2002 May 14 based on ITER-DO.NB *) or[equal[omega,domain[iterate[x_,y_]]],member[domain[iterate[x_,y_]],omega]] := True (* derived 2006 February 14 in ITERATE.NB *) or[equal[omega,domain[iterate[x_,set[y_]]]],not[member[y_,domain[x_]]],not[subclass[range[x_],domain[x_]]]] := True (* derived 2006 July 20 in BINHOM-3.NB *) or[equal[omega,domain[x_]],not[member[x_,binhom[NATADD,y_]]]] := True (* derived 2006 September 5 in RA-PLUS.NB *) or[equal[omega,domain[x_]],not[member[x_,range[PLUS]]]] := True (* derived 2006 March 7 in ORDLIST.NB *) or[equal[omega,domain[ordlist[x_]]],member[domain[ordlist[x_]],omega]] := True (* added 2002 May 21 based on POWER.NB *) or[equal[omega,domain[power[x_]]],member[domain[power[x_]],omega]] := True (* derived 2004 December 30 in AXREG.NB *) or[equal[OMEGA,H[FULL]],not[AxReg]] := True (* derived 2005 May 5 in IMIN-DIV.NB *) or[equal[omega,image[inverse[DIV],succ[x_]]],not[member[x_,omega]]] := True (* derived 2007 April 17 in MEM-1-LD.NB *) or[equal[omega,ld[x_,y_]],not[member[set[0],ld[x_,y_]]]] := True (* derived 2005 February 17 in X3741-49.NB *) or[equal[omega,x_],member[x_,omega],not[member[x_,OMEGA]],not[subclass[x_,omega]]] := True (* derived 2005 February 15 in X3715-16.NB *) or[equal[omega,x_],member[x_,omega],not[subclass[x_,omega]], not[subclass[image[BIGCUP,x_],x_]]] := True (* derived 2006 March 14 in ORDRULES.NB *) or[equal[omega,ord[x_]],member[ord[x_],omega]] := not[member[omega,ord[x]]] (* derived 2005 December 3 in SU-ON-OM.NB *) or[equal[OMEGA,tc[x_]],member[x_,V],not[subclass[x_,OMEGA]]] := True (* derived 2006 March 7 in HULL-ON.NB *) or[equal[OMEGA,U[intersection[OMEGA,x_]]],member[U[intersection[OMEGA,x_]],OMEGA]] := True (* derived 2005 August 14 in REPLACE2.NB *) or[equal[omega,U[x_]],member[x_,FINITE],not[subclass[x_,omega]]] := True (* derived 2005 February 17 in X3741-49.NB *) or[equal[omega,U[x_]],member[U[x_],omega],not[subclass[x_,omega]]] := True (* derived 2005 December 3 in SU-ON-OM.NB *) or[equal[OMEGA,U[x_]],member[U[x_],OMEGA],not[subclass[x_,OMEGA]]] := True (* derived 2005 December 3 in SU-ON-OM.NB *) or[equal[OMEGA,U[x_]],member[x_,V],not[subclass[x_,OMEGA]]] := True (* derived 2005 December 7 in SUCC-ORD.NB *) or[equal[ord[x_],ord[y_]],member[ord[x_],ord[y_]]] := not[member[ord[y],ord[x]]] (* derived 2007 May 1 in ORDTRICH.NB *) or[equal[x_,ord[y_]],not[member[x_,ord[y_]]]] := not[member[x,ord[y]]] (* derived 2006 March 14 in ORDRULES.NB *) or[equal[ord[x_],U[ord[y_]]],member[succ[ord[x_]],ord[y_]],member[U[ord[y_]],ord[x_]]] := True (* derived 2005 December 6 in ORDINAL.NB *) or[equal[ord[x_],U[ord[x_]]],member[U[ord[x_]],ord[x_]]] := True (* derived 2007 June 6 in IDEMWRAP.NB *) or[equal[P[fix[IMAGE[x_]]],subvar[IMAGE[x_]]],not[equal[x_,composite[x_,x_]]]] := True (* added 2003 November 4 based on SBVIDEMP.NB *) or[equal[P[fix[x_]],subvar[x_]],not[equal[x_,composite[x_,x_]]],not[FUNCTION[x_]]] := True (* derived 2007 June 2 in SUBVAR.NB *) or[equal[P[fix[x_]],subvar[x_]],not[equal[fix[x_],range[x_]]]] := True (* derived 2004 March 18 in RFX-TRV.NB *) or[equal[P[fix[x_]],subvar[x_]],not[REFLEXIVE[x_]]] := True (* derived 2004 July 20 in X2081.NB *) or[equal[P[fix[x_]],union[domain[LEAST[x_]],set[0]]],not[WELLORDER[x_]]] := True (* added 2003 November 4 based on SBVIDEMP.NB *) or[equal[x_,P[y_]],not[equal[x_,P[z_]]],not[equal[y_,z_]]] := True (* derived 2005 November 8 in RA-IMG.NB *) or[equal[P[range[x_]],range[IMAGE[x_]]],not[FUNCTION[x_]],not[member[x_,y_]]] := True (* added 2002 October 20 based on SUBVAR.NB *) or[equal[P[y_],subvar[union[x_,id[y_]]]], not[subclass[range[x_],y_]]] := True (* derived 2004 July 15 in X2310-57.NB *) or[equal[x_,P[U[x_]]],not[subclass[P[U[x_]],x_]]] := True (* derived 2006 October 11 in RA-POW.NB *) or[equal[P[U[x_]],Uclosure[x_]], not[equal[image[inverse[S],Uclosure[x_]],Uclosure[x_]]]] := True (* Axiom AX-CP-4 in AX-B reformulated 2001 November 16 in AX-CP-4.NB *) or[equal[pair[first[x_],second[x_]],x_],not[member[first[x_],y_]]] := True (* added 2002 January 1 based on PAIR-MEM.NB *) or[equal[x_,PAIR[first[x_],second[x_]]],not[member[first[x_],V]]] := True (* replaced 2002 January 1 based on REPLACE.NB *) or[equal[PAIR[x_,y_],PAIR[x_,z_]],not[equal[y_,z_]]] := True (* replaced 2002 January 1 based on REPLACE.NB *) or[equal[PAIR[x_,z_],PAIR[y_,z_]],not[equal[x_,y_]]] := True (* replaced 2002 January 1 based on REPLACE.NB *) or[equal[PAIR[u_,v_],PAIR[x_,y_]],not[equal[u_,x_]],not[equal[v_,y_]]] := True (* derived 2006 October 31 in EVALPLUS.NB *) or[equal[y_,plus[x_]],not[member[y_,Z]],not[member[pair[0,x_],y_]]] := True (* derived 2008 February 2 in TO-MAX.NB *) or[equal[po[x_],to[y_]],not[subclass[fix[po[x_]],fix[to[y_]]]], not[subclass[to[y_],po[x_]]]] := True (* derived 2006 August 16 in OL-SU-OM.NB *) or[equal[x_,range[ordlist[x_]]],not[subclass[x_,omega]]] := True (* derived 2009 January 21 in HOM.NB *) or[equal[range[x_],range[hom[x_]]],not[category[x_]]] := True (* added 2001 December 8 based on EQUALITY.NB *) or[equal[range[x_],range[y_]],not[equal[x_,y_]]] := True (* derived 2005 January 25 in THINPART.NB *) or[equal[range[x_],range[thinpart[x_]]],not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[equal[range[VERTSECT[inverse[x_]]],range[VERTSECT[LB[x_]]]],not[member[x_,CL]]] := True (* derived 2005 December 31 in CL-VS-UB.NB *) or[equal[range[VERTSECT[x_]],range[VERTSECT[UB[x_]]]],not[member[x_,CL]]] := True (* derived 2003 December 20 in RK-TC-3.NB *) or[equal[rank[intersection[REGULAR,x_]],tc[image[RANK,x_]]],not[member[x_,V]]] := True (* added 2001 December 8 based on EQUALITY.NB *) or[equal[rank[x_],rank[y_]],not[equal[x_,y_]]] := True (* derived 2003 December 20 in RK-TC-3.NB *) or[equal[rank[x_],tc[image[RANK,x_]]],not[member[x_,REGULAR]]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[equal[w_,rec[composite[TC,IMAGE[SECOND],SECOND],y_]],not[equal[V,domain[VERTSECT[y_]]]], not[equal[w_,composite[TC,IMAGE[w_],VERTSECT[y_]]]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2004 September 14 in WF-REC-6.NB *) or[equal[w_,rec[x_,y_]],not[equal[V,domain[w_]]],not[equal[V,domain[VERTSECT[y_]]]], not[equal[cart[V,V],domain[x_]]],not[FUNCTION[x_]],not[subclass[w_,composite[x_,history[w_,y_]]]], not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2008 May 3 in REC-ID.NB *) or[equal[w_,rec[x_,y_]],not[equal[V,domain[VERTSECT[y_]]]],not[equal[cart[V,V],domain[x_]]], not[equal[composite[x_,id[composite[IMAGE[composite[id[w_],inverse[FIRST]]],VERTSECT[y_]]], inverse[FIRST]],w_]],not[FUNCTION[x_]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2004 September 14 in WF-REC-6.NB *) or[equal[w_,rec[x_,y_]],not[equal[V,domain[VERTSECT[y_]]]],not[equal[w_,composite[x_,history[w_,y_]]]], not[equal[cart[V,V],domain[x_]]],not[FUNCTION[x_]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2004 June 11 in x713-x744-x793-x801.NB *) or[equal[x_,rotate[x_]],not[subclass[x_,rotate[x_]]]] := True (* added 2001 December 8 based on EQUALITY.NB *) or[equal[rotate[x_],rotate[y_]],not[equal[x_,y_]]] := True (* derived 2004 December 30 in AXREG.NB *) or[equal[RUSSELL,V],not[AxReg]] := True (* derived 2007 February 8 in COMPOS-1.NB *) or[equal[x_,set[0]],equal[y_,set[0]],not[member[natmul[x_,y_],PRIMES]]] := True (* derived 2007 February 8 in COMPOS-1.NB *) or[equal[t_,set[0]],member[set[0],t_],not[member[pair[t_,x_],DIV]],not[member[set[0],x_]]] := True (* derived 2008 September 17 in MEMB-2.NB *) or[equal[x_,set[0]],not[equal[0,x_]]] := not[equal[0,x]] (* derived 2005 March 29 in DIV-SUB.NB *) or[equal[x_,set[0]],not[member[pair[x_,y_],DIV]],not[member[pair[x_,succ[y_]],DIV]]] := True (* derived 2008 September 17 in MEMB-2.NB *) or[equal[x_,set[0]],not[subclass[x_,set[0]]]] := not[equal[0,x]] (* added 2003 September 29 based on WF.NB *) or[equal[set[0],subvar[x_]],not[WELLFOUNDED[x_]]] := True (* derived 2007 April 26 in CL-TOP.NB *) or[equal[set[APPLY[GLB[x_],0]],ub[x_,fix[x_]]],not[member[x_,CL]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[equal[set[APPLY[GREATEST[x_],fix[x_]]],ub[x_,fix[x_]]],not[member[x_,CL]]] := True (* derived 2007 April 26 in CL-TOP.NB *) or[equal[set[APPLY[LUB[x_],fix[x_]]],ub[x_,fix[x_]]],not[member[x_,CL]]] := True (* added 2003 July 5 based on EQ-SS.NB *) or[equal[x_,set[y_]],not[member[y_,x_]],not[subclass[x_,set[y_]]]] := True (* added 2003 July 5 based on EQ-SS.NB *) or[equal[x_,set[y_]],not[member[x_,range[SINGLETON]]],not[member[y_,x_]]] := True (* added 2001 December 8 based on EQUAL-A.NB *) or[equal[set[x_],set[y_]],not[equal[x_,y_]]] := True (* derived 2004 April 10 in UP-RULES.NB *) or[equal[set[u_,v_],set[x_,y_]],not[equal[u_,x_]],not[equal[v_,y_]]] := True (* derived 2004 April 10 in UP-RULES.NB *) or[equal[set[u_,v_],set[x_,y_]],not[equal[u_,x_]],not[equal[set[v_],set[y_]]]] := True (* derived 2004 April 10 in UP-RULES.NB *) or[equal[set[u_,v_],set[x_,y_]],not[equal[set[u_],set[x_]]],not[equal[set[v_],set[y_]]]] := True (* derived 2004 February 8 in BASICS.NB *) or[equal[set[x_,z_],set[y_,z_]],not[equal[set[x_],set[y_]]]] := True (* derived 2004 October 28 in X.NB *) or[equal[set[x_],X[x_]],not[FUNCTION[x_]]] := True (* derived 2007 September 12 in OR-EQ-SU.NB *) or[equal[x_,y_],subclass[x_,y_]] := subclass[x,y] (* added 2001 December 8 based on EQUALITY.NB *) or[equal[subvar[x_],subvar[y_]],not[equal[x_,y_]]] := True (* derived 2005 July 10 in O21.NB *) or[equal[y_,succ[x_]],member[succ[x_],y_],not[member[x_,y_]],not[member[y_,omega]]] := True (* added 2002 May 25 based on ON-SUC-1.NB *) or[equal[x_,succ[y_]],member[succ[y_],x_],not[member[x_,OMEGA]],not[member[y_,x_]]] := True (* added 2001 December 9 based on EQUAL-V.NB *) or[equal[succ[x_],x_],member[x_,V]] := True (* added 2001 December 9 based on EQUAL-V.NB *) or[equal[succ[x_],succ[y_]],not[equal[x_,y_]]] := True (* derived 2003 December 24 based on ON-SC.NB *) or[equal[x_,succ[U[x_]]],equal[x_,U[x_]],not[member[x_,OMEGA]]] := True (* added 2002 April 26 based on FULSUC-A.NB *) or[equal[x_,succ[U[x_]]],not[member[x_,image[SUCC,FULL]]]] := True (* derived 2003 December 24 based on ON-SC.NB *) or[equal[x_,succ[U[x_]]],not[member[x_,OMEGA]],not[member[U[x_],x_]]] := True (* derived 2003 December 24 in UCL-ON.NB *) or[equal[succ[U[x_]],Uclosure[x_]],not[member[x_,OMEGA]]] := True (* derived 2005 February 16 in BC-OM.NB *) or[equal[succ[U[x_]],union[x_,set[0]]],not[member[x_,omega]]] := True (* derived 2003 December 24 in UCL-ON.NB *) or[equal[succ[x_],Uclosure[succ[x_]]],not[member[x_,OMEGA]]] := True (* added 2002 May 24 based on ADJOIN.NB *) or[equal[succ[x_],union[image[SUCC,x_],set[0]]],not[member[x_,omega]]] := True (* added 2001 December 8 based on EQUALITY.NB *) or[equal[tc[x_],tc[y_]],not[equal[x_,y_]]] := True (* derived 2005 January 30 in X3949.NB *) or[equal[tc[x_],union[x_,U[x_]]],not[subclass[x_,FULL]]] := True (* derived 2004 December 29 in TC-PC-ON.NB *) or[equal[tc[x_],union[x_,U[x_]]],not[subclass[x_,OMEGA]]] := True (* derived 2005 January 30 in X3949.NB *) or[equal[tc[x_],union[x_,U[x_]]],not[subclass[U[U[x_]],U[x_]]]] := True (* derived 2004 May 14 in THINPART.NB *) or[equal[thinpart[x_],thinpart[y_]],not[equal[x_,y_]]] := True (* derived 2004 May 14 in THINPART.NB *) or[equal[thinpart[x_],thinpart[y_]],not[equal[IMAGE[x_],IMAGE[y_]]]] := True (* derived 2004 August 10 in RS-3.NB *) or[equal[thinpart[x_],thinpart[y_]],not[equal[RS[x_],RS[y_]]]] := True (* derived 2006 July 20 in BINHOM-3.NB *) or[equal[x_,times[APPLY[x_,set[0]]]],not[member[x_,binhom[NATADD,NATADD]]]] := True (* added 2003 November 6 based on HULL-EQV.NB *) or[equal[trv[x_],trv[y_]],not[equal[x_,y_]]] := True (* added 2001 December 8 based on EQUALITY.NB *) or[equal[twist[x_],twist[y_]],not[equal[x_,y_]]] := True (* derived 2006 March 11 in PC-ON-SC.NB *) or[equal[y_,U[x_]],member[y_,U[x_]],not[member[y_,x_]],not[subclass[x_,OMEGA]]] := True (* derived 2003 December 24 based on ON-SC.NB *) or[equal[x_,U[x_]],member[U[x_],x_],not[member[x_,OMEGA]]] := True (* derived 2005 February 24 in X3727.NB *) or[equal[x_,U[y_]],member[U[y_],x_],not[member[x_,OMEGA]],not[subclass[y_,x_]]] := True (* derived 2005 January 22 in X3500.NB *) or[equal[x_,U[x_]],not[equal[H[x_],U[x_]]]] := True (* derived 2005 January 22 in X3500.NB *) or[equal[x_,U[x_]],not[equal[x_,intersection[FULL,P[x_]]]]] := True (* derived 2007 August 10 in A-U.NB *) or[equal[x_,U[y_]],not[member[x_,y_]],not[subclass[U[y_],x_]]] := True (* derived 2006 March 7 in LIMITORD.NB *) or[equal[x_,U[x_]],not[member[x_,OMEGA]],not[subclass[image[SUCC,x_],x_]]] := True (* derived 2007 May 19 in OLDO-ORD.NB *) or[equal[x_,U[ord[y_]]],member[succ[x_],ord[y_]],not[member[x_,ord[y_]]]] := True (* added 2001 December 8 based on EQUALITY.NB *) or[equal[U[x_],U[y_]],not[equal[x_,y_]]] := True (* derived 2007 May 31 in SU-ON.NB *) or[equal[U[x_],U[U[x_]]],member[U[U[x_]],U[x_]],not[subclass[x_,OMEGA]]] := True (* derived 2007 May 23 in SU-ON.NB *) or[equal[U[x_],U[U[x_]]],not[subclass[x_,OMEGA]],not[subclass[x_,U[x_]]]] := True (* derived 2004 February 21 in LB-UB-EQ.NB *) or[equal[ub[x_,y_],ub[x_,z_]],not[equal[y_,z_]]] := True (* derived 2004 February 21 in LB-UB-EQ.NB *) or[equal[ub[x_,z_],ub[y_,z_]],not[equal[x_,y_]]] := True (* derived 2008 January 4 in FNCH-UCH.NB *) or[equal[x_,Uchains[x_]],not[equal[complement[x_],image[S,intersection[FINITE,complement[x_]]]]], not[member[0,x_]]] := True (* derived 2008 January 16 in UCHN-FIN.NB *) or[equal[x_,Uchains[x_]],not[member[0,x_]],not[member[x_,FINITE]]] := True (* derived 2007 November 10 in ALL-MAX.NB *) or[equal[Uchains[x_],union[x_,set[0]]],not[equal[0,intersection[x_,image[PS,x_]]]]] := True (* derived 2008 January 16 in UCHN-FIN.NB *) or[equal[Uchains[x_],union[x_,set[0]]],not[member[x_,FINITE]]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) or[equal[x_,Uclosure[x_]],not[member[x_,TOPS]]] := True (* derived 2004 July 22 in X21--.NB *) or[equal[x_,Uclosure[x_]],not[subclass[Uclosure[x_],x_]]] := True (* added 2001 December 8 based on EQUALITY.NB *) or[equal[Uclosure[x_],Uclosure[y_]],not[equal[x_,y_]]] := True (* derived 2005 February 16 in BC-OM.NB *) or[equal[Uclosure[x_],union[x_,set[0]]],not[member[x_,omega]]] := True (* derived 2004 July 15 in X2310-57.NB *) or[equal[union[cart[complement[domain[x_]],set[0]],composite[SINGLETON,x_]],VERTSECT[x_]],not[FUNCTION[x_]]] := True (* derived 2005 January 21 in X1931-2.NB *) or[equal[y_,union[x_,set[U[intersection[complement[x_],y_]]]]],not[member[pair[x_,y_],K]]] := True (* derived 2004 March 4 in PAIRSET.NB *) or[equal[union[u_,v_],union[intersection[u_,image[V,set[w_]]], intersection[v_,image[V,set[y_]]]]],not[member[w_,x_]],not[member[y_,z_]]] := True (* added 2001 December 8 based on EQ-BIN.NB *) or[equal[union[x_,z_],union[y_,z_]],not[equal[x_,y_]]] := True (* added 2001 December 8 based on EQ-BIN.NB *) or[equal[union[u_,x_],union[v_,y_]],not[equal[u_,v_]],not[equal[x_,y_]]] := True (* derived 2006 November 9 in SIMPLIFY.NB *) or[equal[V,domain[APPLY[x_,y_]]],member[y_,V]] := True (* derived 2006 November 9 in SIMPLIFY.NB *) or[equal[V,domain[domain[x_]]],not[member[x_,y_]]] := not[member[x,y]] (* derived 2007 July 2 in FP-LB.NB *) or[equal[V,domain[x_]],not[equal[0,domain[VERTSECT[x_]]]]] := True (* derived 2006 May 28 in FUNPART.NB *) or[equal[V,domain[x_]],not[equal[V,domain[funpart[x_]]]]] := True (* derived 2004 September 14 in WF-REC-6.NB *) or[equal[V,domain[w_]],not[equal[V,domain[VERTSECT[y_]]]], not[equal[w_,composite[x_,history[w_,y_]]]], not[equal[cart[V,V],domain[x_]]],not[FUNCTION[x_]]] := True (* derived 2004 June 24 in SBCOMTNT.NB *) or[equal[V,domain[x_]],not[equal[V,fix[x_]]]] := True (* derived 2006 November 9 in SIMPLIFY.NB *) or[equal[V,domain[x_]],not[member[x_,y_]]] := not[member[x,y]] (* derived 2005 August 5 in IMG-X.NB *) or[equal[V,domain[x_]],not[subclass[IMAGE[x_],S]]] := True (* derived 2008 August 23 in UB-RFX.NB *) or[equal[V,domain[x_]],not[subclass[S,x_]]] := True (* added 2003 October 20 based on MONOPLUS.NB *) or[equal[V,domain[x_]],not[subclass[S,composite[inverse[x_],S,x_]]]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[equal[V,domain[rec[composite[TC,IMAGE[SECOND],SECOND],y_]]], not[equal[V,domain[VERTSECT[y_]]]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2004 September 12 in WF-REC-5.NB *) or[equal[V,domain[rec[x_,y_]]],not[equal[V,domain[VERTSECT[y_]]]], not[equal[cart[V,V],domain[x_]]],not[FUNCTION[x_]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2008 August 23 in UB-RFX.NB *) or[equal[V,domain[UB[x_]]],not[subclass[E,x_]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[equal[V,domain[VERTSECT[composite[id[x_],y_]]]],not[member[x_,z_]]] := True (* derived 2004 July 23 in X23--.NB *) or[equal[V,domain[VERTSECT[composite[x_,y_]]]],not[equal[V,domain[VERTSECT[x_]]]],not[equal[V,domain[VERTSECT[y_]]]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[equal[V,domain[VERTSECT[composite[x_,y_]]]],not[member[x_,z_]]] := True (* derived 2004 September 30 in EQV-THNP.NB *) or[equal[V,domain[VERTSECT[eqv[x_]]]],not[equal[V,domain[VERTSECT[x_]]]]] := True (* added 2001 November 22 based on THIN.NB *) or[equal[V,domain[VERTSECT[intersection[x_,y_]]]],not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2004 April 28 in WF.NB *) or[equal[V,domain[VERTSECT[inverse[x_]]]],not[member[x_,y_]]] := True (* added 2003 October 7 based on WF-IND.NB *) or[equal[V,domain[VERTSECT[inverse[trv[x_]]]]],not[equal[V,domain[VERTSECT[inverse[x_]]]]]] := True (* derived 2004 June 5 in THPT-TRV.NB *) or[equal[V,domain[VERTSECT[x_]]],not[equal[x_,thinpart[y_]]]] := True (* derived 2004 June 5 in THPT-TRV.NB *) or[equal[V,domain[VERTSECT[x_]]],not[equal[V,domain[VERTSECT[y_]]]],not[equal[x_,y_]]] := True (* added 2001 November 22 based on THIN.NB *) or[equal[V,domain[VERTSECT[x_]]],not[equal[V,domain[VERTSECT[y_]]]],not[subclass[x_,y_]]] := True (* added 2001 November 22 based on THIN.NB *) or[equal[V,domain[VERTSECT[x_]]],not[FUNCTION[x_]]] := True (* derived 2006 September 15 in RP7.NB *) or[equal[V,domain[VERTSECT[x_]]],not[FUNCTION[composite[Id,x_]]]] := True (* derived 2004 January 6 in VS-OO.NB *) or[equal[V,domain[VERTSECT[x_]]],not[member[x_,y_]]] := True (* derived 2004 July 15 in X2310-57.NB *) or[equal[V,domain[VERTSECT[x_]]],not[member[range[x_],y_]]] := True (* derived 2007 April 26 in THIN-Q.NB *) or[equal[V,domain[VERTSECT[x_]]],not[subclass[x_,thinpart[y_]]]] := True (* derived 2004 September 30 in RO-IN-TH.NB *) or[equal[V,domain[VERTSECT[rotate[inverse[x_]]]]],not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2004 December 30 in AXREG.NB *) or[equal[V,domain[VERTSECT[ZN]]],not[AxReg]] := True (* derived 2008 December 28 in E.NB *) or[equal[V,e[x_]],member[e[x_],ids[x_]],not[member[x_,BINOPS]]] := True (* derived 2008 December 28 in E.NB *) or[equal[V,e[x_]],member[e[x_],V]] := True (* derived 2008 December 28 in E.NB *) or[equal[V,e[x_]],not[equal[0,ids[x_]]]] := True (* derived 2004 August 15 in ID-SU.NB *) or[equal[V,fix[composite[x_,x_]]],not[equal[V,fix[x_]]]] := True (* derived 2004 August 15 in ID-SU.NB *) or[equal[V,fix[composite[x_,y_]]],not[equal[V,fix[x_]]],not[equal[V,fix[y_]]]] := True (* derived 2008 May 22 in X-Q.NB *) or[equal[V,fix[composite[Q,S,IMAGE[FIRST]]]],not[axch]] := True (* derived 2004 June 24 in SBCOMTNT.NB *) or[equal[V,fix[U[subcommutant[x_]]]],not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2004 June 12 in X1156.NB *) or[equal[V,image[DISJOINT,x_]],not[member[0,x_]]] := True (* derived 2008 April 30 in TO-FP.NB *) or[equal[V,image[IMAGE[inverse[DUP]],TO]],not[axch]] := True (* derived 2004 December 30 in AXREG.NB *) or[equal[V,x_],not[AxReg],not[subclass[P[x_],x_]]] := True (* added 2003 November 4 based on SBCOMMUT.NB *) or[equal[V,x_],not[equal[x_,image[S,x_]]],not[member[0,x_]]] := True (* derived 2008 August 31 in OO-CUT.NB *) or[equal[V,y_],not[equal[V,domain[x_]]],not[equal[composite[x_,IMAGE[id[y_]]],x_]], not[FUNCTION[inverse[x_]]],not[FUNCTION[x_]]] := True (* added 2001 November 22 based on THIN.NB *) or[equal[V,y_],not[equal[V,x_]],not[subclass[x_,y_]]] := True (* derived 2005 May 21 in OR-EQ-V.NB *) or[equal[V,x_],not[member[x_,y_]]] := not[member[x,y]] (* added 2001 November 23 based on EQUAL.NB *) or[equal[V,x_],not[subclass[V,x_]]] := True (* derived 2004 June 24 in SBCOMTNT.NB *) or[equal[V,range[x_]],not[equal[V,fix[x_]]]] := True (* derived 2006 August 1 in U-BCL.NB *) or[equal[V,U[binclosed[x_]]],not[member[range[x_],V]]] := True (* derived 2004 June 28 in X1840.NB *) or[equal[V,U[complement[x_]]],not[member[x_,y_]]] := True (* added 2001 December 9 based on EQUAL-V.NB *) or[equal[V,U[x_]],not[equal[V,x_]]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) or[equal[V,U[x_]],not[equal[V,image[inverse[S],x_]]]] := True (* derived 2008 January 2 in FINCHR-1.NB *) or[equal[V,union[x_,image[S,intersection[FINITE,complement[x_]]]]],not[member[x_,FINCHAR]]] := True (* added 2002 September 10 based on IMV-RULE.NB *) or[equal[V,union[x_,y_]],not[equal[V,x_]]] := True (* derived 2005 December 25 in APSYMDIF.NB *) or[equal[V,union[x_,first[y_]]],member[first[y_],V]] := True (* added 2003 January 14 based on CHAIN-C.NB *) or[equal[V,union[x_,y_]],not[equal[V,union[y_,z_]]],not[subclass[z_,x_]]] := True (* derived 2005 August 5 in BINHOM-5.NB *) or[equal[Z,domain[x_]],not[member[x_,binhom[INTADD,y_]]]] := True (* derived 2008 November 7 in CMT-EQV.NB *) or[EQUIVALENCE[composite[eqv[x_],eqv[y_]]], not[equal[composite[eqv[x_],eqv[y_]],composite[eqv[y_],eqv[x_]]]]] := True (* derived 2008 January 26 in EQV-A.NB *) or[EQUIVALENCE[composite[Id,A[x_]]],not[subclass[x_,EQV]]] := True (* derived 2004 June 27 in X1693-97.NB *) or[EQUIVALENCE[composite[id[y_],x_,id[y_]]],not[EQUIVALENCE[x_]]] := True (* derived 2004 September 30 in EQV-THNP.NB *) or[EQUIVALENCE[composite[Id,x_]],not[EQUIVALENCE[x_]]] := True (* derived 2006 October 19 in EQV-BC.NB *) or[EQUIVALENCE[composite[inverse[E],id[x_],E]], not[subclass[cart[x_,x_],union[DISJOINT,Id]]]] := True (* derived 2005 August 7 in EQV-RSFU.NB *) or[EQUIVALENCE[composite[inverse[x_],id[y_],x_]],not[FUNCTION[x_]]] := True (* derived 2004 August 27 in TRV-COND.NB *) or[EQUIVALENCE[composite[inverse[x_],x_]],not[equal[x_,composite[x_,inverse[x_],x_]]]] := True (* derived 2004 August 27 in TRV-COND.NB *) or[EQUIVALENCE[composite[x_,inverse[x_]]],not[equal[x_,composite[x_,inverse[x_],x_]]]] := True (* derived 2004 April 1 in EQV-EQ.NB *) or[EQUIVALENCE[composite[inverse[x_],x_]],not[FUNCTION[x_]]] := True (* derived 2004 December 27 in FUN-TRV.NB *) or[EQUIVALENCE[composite[inverse[x_],y_,x_]],not[EQUIVALENCE[y_]],not[FUNCTION[x_]]] := True (* derived 2005 August 7 in EQV-RSFU.NB *) or[EQUIVALENCE[composite[inverse[x_],id[y_],x_]],not[FUNCTION[x_]]] := True (* derived 2008 November 7 in CMT-EQV.NB *) or[EQUIVALENCE[composite[x_,y_]],not[equal[composite[x_,y_],composite[y_,x_]]], not[EQUIVALENCE[x_]],not[EQUIVALENCE[y_]]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) or[EQUIVALENCE[cross[x_,y_]],not[EQUIVALENCE[x_]],not[EQUIVALENCE[y_]]] := True (* derived 2004 April 4 in TRV-EQV.NB *) or[EQUIVALENCE[intersection[x_,inverse[x_]]],not[TRANSITIVE[x_]]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) or[EQUIVALENCE[intersection[x_,y_]],not[EQUIVALENCE[x_]],not[EQUIVALENCE[y_]]] := True (* derived 2004 April 1 in EQV-EQ.NB *) or[EQUIVALENCE[x_],not[equal[x_,y_]],not[EQUIVALENCE[y_]]] := True (* derived 2004 April 1 in EQV-EQ.NB *) or[EQUIVALENCE[x_],not[subclass[x_,Id]]] := True (* derived 2004 September 30 in EQV-THNP.NB *) or[EQUIVALENCE[thinpart[x_]],not[EQUIVALENCE[x_]]] := True (* derived 2007 July 17 in U-EQV.NB *) or[EQUIVALENCE[trv[x_]],not[equal[x_,inverse[x_]]]] := True (* derived 2007 July 17 in U-EQV.NB *) or[EQUIVALENCE[trv[x_]],not[equal[inverse[trv[x_]],trv[x_]]]] := True (* derived 2007 July 17 in U-EQV.NB *) or[EQUIVALENCE[trv[U[x_]]],not[subclass[x_,EQV]]] := True (* derived 2007 July 17 in U-EQV.NB *) or[EQUIVALENCE[trv[union[x_,y_]]],not[EQUIVALENCE[x_]],not[EQUIVALENCE[y_]]] := True (* derived 2004 October 26 in AXCH.NB *) or[FUNCTION[CHOICE],not[AxCh]] := True (* derived 2004 October 26 in AXCH.NB *) or[FUNCTION[composite[CHOICE,id[x_]]],not[AxCh]] := True (* derived 2005 February 5 in X2863.NB *) or[FUNCTION[composite[x_,cross[Id,y_]]],not[FUNCTION[x_]],not[FUNCTION[y_]]] := True (* derived 2005 February 5 in X2863.NB *) or[FUNCTION[composite[x_,cross[y_,Id]]],not[FUNCTION[x_]],not[FUNCTION[y_]]] := True (* derived 2006 July 23 in SGP-PROD.NB *) or[FUNCTION[composite[cross[x_,y_],TWIST]],not[FUNCTION[x_]],not[FUNCTION[y_]]] := True (* derived 2004 August 19 in X2896.NB *) or[FUNCTION[composite[funpart[x_],z_,funpart[y_]]],not[FUNCTION[z_]]] := True (* added 2001 November 23 based on FUN-1.NB *) or[FUNCTION[composite[x_,funpart[y_]]],not[FUNCTION[x_]]] := True (* added 2001 November 23 based on FUN-1.NB *) or[FUNCTION[composite[funpart[x_],y_]],not[FUNCTION[y_]]] := True (* derived 2004 September 5 in WF-REC-4.NB *) or[FUNCTION[composite[w_,history[x_,y_]]],not[FUNCTION[w_]]] := True (* derived 2006 August 19 in MAP-DJU.NB *) or[FUNCTION[composite[id[cart[map[x_,z_],map[y_,z_]]],inverse[CUP]]],not[equal[0,intersection[x_,y_]]]] := True (* derived 2006 August 19 in MAP-DJU.NB *) or[FUNCTION[composite[id[cart[P[x_],P[y_]]],inverse[CUP]]],not[equal[0,intersection[x_,y_]]]] := True (* derived 2005 October 15 in OO-PO.NB *) or[FUNCTION[composite[id[fix[x_]],inverse[VERTSECT[x_]]]],not[PARTIALORDER[x_]]] := True (* derived 2005 October 15 in OO-PO.NB *) or[FUNCTION[composite[id[fix[x_]],inverse[VERTSECT[x_]]]],not[TOTALORDER[x_]]] := True (* derived 2005 January 29 in RFXTRVTH.NB *) or[FUNCTION[composite[id[fix[setpart[x_]]],inverse[VERTSECT[setpart[x_]]]]],not[PARTIALORDER[setpart[x_]]]] := True (* added 2002 January 15 based on FU-RS.NB *) or[FUNCTION[composite[id[x_],y_,id[z_]]],not[FUNCTION[y_]]] := True (* derived 2004 June 14 in FU-F-O.NB *) or[FUNCTION[composite[Id,intersection[y_,complement[composite[Di,intersection[y_,complement[x_]]]]]]],not[FUNCTION[x_]]] := True (* derived 2004 July 27 in FUNCTION.NB *) or[FUNCTION[composite[x_,id[y_],inverse[FIRST]]],not[FUNCTION[x_]],not[FUNCTION[y_]]] := True (* derived 2008 May 5 in FU-RS-DO.NB *) or[FUNCTION[composite[id[x_],inverse[IMAGE[FIRST]]]],not[FUNCTION[U[x_]]]] := True (* derived 2006 January 6 in FU-X.NB *) or[FUNCTION[composite[Id,x_]],not[equal[0,domain[x_]]]] := True (* derived 2006 May 28 in FUNPART.NB *) or[FUNCTION[composite[Id,x_]],not[equal[V,domain[funpart[x_]]]]] := True (* added 2001 November 20 based on FUNCTION.NB *) or[FUNCTION[composite[Id,x_]],not[FUNCTION[x_]]] := True (* added 2002 January 15 based on FU-RS.NB *) or[FUNCTION[composite[x_,id[y_]]],not[FUNCTION[x_]]] := True (* added 2002 January 15 based on FU-RS.NB *) or[FUNCTION[composite[id[x_],y_]],not[FUNCTION[y_]]] := True (* derived 2005 December 12 in REPLACE.NB *) or[FUNCTION[composite[x_,id[y_]]],not[subclass[y_,domain[funpart[x_]]]]] := True (* derived 2008 May 5 in FU-RS-DO.NB *) or[FUNCTION[composite[id[P[x_]],inverse[IMAGE[FIRST]]]],not[FUNCTION[x_]]] := True (* derived 2004 August 19 in X2901-93.NB *) or[FUNCTION[composite[id[P[range[x_]]],inverse[IMAGE[inverse[x_]]]]],not[FUNCTION[x_]]] := True (* derived 2008 May 5 in FU-REC.NB *) or[FUNCTION[composite[id[partrec[x_,y_]],inverse[IMAGE[FIRST]]]], not[equal[V,domain[VERTSECT[y_]]]],not[FUNCTION[x_]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2004 October 2 in FUNCTION.NB *) or[FUNCTION[composite[x_,id[range[y_]]]],not[FUNCTION[composite[x_,y_]]]] := True (* derived 2004 October 2 in FUNCTION.NB *) or[FUNCTION[composite[x_,id[range[y_]]]],not[subclass[composite[x_,y_],Id]]] := True (* derived 2004 October 2 in FUNCTION.NB *) or[FUNCTION[composite[inverse[y_],id[domain[x_]]]],not[subclass[composite[x_,y_],Id]]] := True (* derived 2008 October 15 in QG-L-R.NB *) or[FUNCTION[composite[inverse[LEFT[y_]],inverse[x_]]],not[FUNCTION[rotate[x_]]]] := True (* derived 2008 October 15 in QG-L-R.NB *) or[FUNCTION[composite[inverse[RIGHT[y_]],inverse[x_]]], not[FUNCTION[rotate[composite[x_,SWAP]]]]] := True (* added 2001 November 23 based on FUN-1.NB *) or[FUNCTION[composite[x_,y_]],not[FUNCTION[x_]],not[FUNCTION[y_]]] := True (* derived 2005 February 5 in FU-X.NB *) or[FUNCTION[cross[x_,y_]],not[FUNCTION[x_]],not[FUNCTION[y_]]] := True (* derived 2005 December 20 in CLGLBLUB.NB *) or[FUNCTION[GLB[x_]],not[member[x_,CL]]] := True (* derived 2005 October 2 in POLUBGLB.NB *) or[FUNCTION[GLB[x_]],not[PARTIALORDER[x_]]] := True (* derived 2005 September 27 in LUB-FU.NB *) or[FUNCTION[GLB[x_]],not[subclass[intersection[x_,inverse[x_]],Id]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[FUNCTION[GREATEST[x_]],not[member[x_,CL]]] := True (* derived 2004 February 12 in LEASTFUN.NB *) or[FUNCTION[GREATEST[x_]],not[subclass[intersection[x_,inverse[x_]],Id]]] := True (* added 2003 May 5 based on POWER-EQ.NB *) or[FUNCTION[image[power[x_],set[y_]]],not[FUNCTION[x_]]] := True (* added 2003 June 9 based on VS-FUNS.NB *) or[FUNCTION[image[x_,set[y_]]], not[FUNCTION[rotate[inverse[x_]]]],not[subclass[range[x_],cart[V,V]]]] := True (* derived 2006 August 27 in FU-1-2.NB *) or[FUNCTION[intersection[composite[inverse[FIRST],x_],composite[inverse[SECOND],y_]]], not[FUNCTION[x_]],not[FUNCTION[y_]]] := True (* added 2001 November 24 based on FUN-1.NB *) or[FUNCTION[intersection[x_,y_]],not[FUNCTION[x_]]] := True (* derived 2009 January 21 in INV.NB *) or[FUNCTION[inv[x_]],not[category[x_]]] := True (* derived 2009 January 21 in INV.NB *) or[FUNCTION[inv[x_]],not[member[x_,MONOIDS]]] := True (* derived 2008 August 29 in IN-FU.NB *) or[FUNCTION[inverse[funpart[y_]]], not[equal[composite[x_,funpart[y_]],id[domain[funpart[y_]]]]]] := True (* derived 2004 August 19 in X2901-93.NB *) or[FUNCTION[inverse[IMAGE[inverse[x_]]]],not[equal[V,range[x_]]],not[FUNCTION[x_]]] := True (* derived 2004 August 19 in X2901-93.NB *) or[FUNCTION[inverse[IMAGE[x_]]],not[equal[V,domain[x_]]],not[FUNCTION[inverse[x_]]]] := True (* derived 2006 May 25 in ITERSTOP.NB *) or[FUNCTION[inverse[iterate[funpart[x_],set[y_]]]],not[member[domain[iterate[funpart[x_],set[y_]]],omega]]] := True (* derived 2006 February 14 in ITER-OO.NB *) or[FUNCTION[inverse[iterate[x_,set[y_]]]],not[equal[0,fix[trv[x_]]]],not[FUNCTION[x_]]] := True (* derived 2006 May 25 in ITERSTOP.NB *) or[FUNCTION[inverse[iterate[x_,set[y_]]]],not[FUNCTION[x_]],not[member[domain[iterate[x_,set[y_]]],omega]]] := True (* derived 2008 August 29 in IN-FU.NB *) or[FUNCTION[inverse[y_]],not[equal[composite[x_,y_],id[domain[y_]]]],not[FUNCTION[y_]]] := True (* derived 2006 February 10 in PIGNHOLE.NB *) or[FUNCTION[inverse[x_]],not[equal[domain[x_],range[x_]]],not[FUNCTION[x_]],not[member[x_,FINITE]]] := True (* added 2001 December 21 based on OO.NB *) or[FUNCTION[inverse[x_]],not[FUNCTION[inverse[y_]]],not[subclass[x_,y_]]] := True (* derived 2005 November 5 in FIN-FU.NB *) or[FUNCTION[inverse[y_]],not[FUNCTION[x_]],not[subclass[y_,inverse[x_]]]] := True (* derived 2008 September 28 in PERMS.NB *) or[FUNCTION[inverse[x_]],not[member[x_,PERMS]]] := True (* added 2003 August 12 based on RO-ZADD.NB *) or[FUNCTION[inverse[x_]],not[member[x_,Z]]] := True (* derived 2004 June 17 in X1367.NB *) or[FUNCTION[inverse[x_]],not[subclass[composite[y_,x_],Id]],not[subclass[range[x_],domain[y_]]]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) or[FUNCTION[inverse[x_]],not[subclass[x_,Id]]] := True (* derived 2006 February 15 in ACYFUPOW.NB *) or[FUNCTION[inverse[power[x_]]],not[equal[0,fix[trv[x_]]]],not[FUNCTION[x_]]] := True (* added 2003 January 25 based on PROPITER.NB *) or[FUNCTION[iterate[x_,y_]],not[FUNCTION[x_]],not[member[y_,range[SINGLETON]]]] := True (* derived 2006 February 14 in ITERATE.NB *) or[FUNCTION[iterate[x_,set[y_]]],not[FUNCTION[x_]]] := True (* derived 2005 December 28 in BOTTOM.NB *) or[FUNCTION[LEAST[x_]],not[member[x_,CL]]] := True (* derived 2004 July 18 in WO-PO.NB *) or[FUNCTION[LEAST[x_]],not[PARTIALORDER[x_]]] := True (* derived 2004 February 12 in LEASTFUN.NB *) or[FUNCTION[LEAST[x_]],not[subclass[intersection[x_,inverse[x_]],Id]]] := True (* derived 2004 January 24 in WO-WRAP.NB *) or[FUNCTION[LEAST[x_]],not[WELLORDER[x_]]] := True (* derived 2008 August 3 in WF-ASYM.NB *) or[FUNCTION[LEAST[union[Id,x_]]],not[WELLFOUNDED[x_]]] := True (* derived 2005 December 20 in CLGLBLUB.NB *) or[FUNCTION[LUB[x_]],not[member[x_,CL]]] := True (* derived 2005 October 2 in POLUBGLB.NB *) or[FUNCTION[LUB[x_]],not[PARTIALORDER[x_]]] := True (* derived 2005 September 27 in LUB-FU.NB *) or[FUNCTION[LUB[x_]],not[subclass[intersection[x_,inverse[x_]],Id]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) or[FUNCTION[x_],not[category[x_]]] := True (* added 2002 May 20 based on FUNSUBST.NB *) or[FUNCTION[y_],not[equal[x_,y_]],not[FUNCTION[x_]]] := True (* derived 2004 December 5 in MAP-CO.NB *) or[FUNCTION[z_],not[FUNCTION[composite[Id,z_]]],not[subclass[z_,cart[x_,y_]]]] := True (* derived 2004 September 5 in WF-REC-4.NB *) or[FUNCTION[w_],not[FUNCTION[x_]],not[member[w_,partrec[x_,y_]]]] := True (* added 2001 November 20 based on FUNCTION.NB *) or[FUNCTION[x_],not[FUNCTION[y_]],not[subclass[x_,y_]]] := True (* derived 2004 September 5 in WF-REC-4.NB *) or[FUNCTION[u_],not[FUNCTION[x_]],not[subclass[u_,composite[x_,history[v_,y_]]]]] := True (* added 2003 October 8 based on FS-CUP.NB *) or[FUNCTION[x_],not[FUNCTION[union[x_,y_]]]] := True (* derived 2009 January 16 in FUNCTOR.NB *) or[FUNCTION[w_],not[functor[w_,x_,y_]]] := True (* derived 2006 November 18 in CURMAP-3.NB *) or[FUNCTION[w_],not[member[APPLY[inverse[CURRY],w_],x_]]] := True (* derived 2006 July 20 in BINHOM-3.NB *) or[FUNCTION[w_],not[member[w_,binhom[x_,y_]]]] := True (* derived 2006 July 11 in BINOP-RS.NB *) or[FUNCTION[x_],not[member[x_,BINOPS]]] := True (* derived 2006 July 23 in CONST-FU.NB *) or[FUNCTION[x_],not[member[x_,CONST]]] := True (* derived 2008 November 12 in ASSOCTIV.NB *) or[FUNCTION[x_],not[member[x_,GROUPS]]] := True (* derived 2006 November 23 in CURMAP-3.NB *) or[FUNCTION[w_],not[member[w_,image[CURRY,x_]]]] := True (* derived 2004 December 5 in MAP-CO.NB *) or[FUNCTION[w_],not[member[w_,map[x_,y_]]]] := True (* derived 2008 December 29 in MONOIDS.NB *) or[FUNCTION[x_],not[member[x_,MONOIDS]]] := True (* derived 2008 May 3 in FU-REC.NB *) or[FUNCTION[w_],not[member[w_,partrec[funpart[x_],y_]]]] := True (* derived 2008 September 28 in PERMS.NB *) or[FUNCTION[x_],not[member[x_,PERMS]]] := True (* derived 2008 October 9 in QUASIGP.NB *) or[FUNCTION[x_],not[member[x_,QUASIGPS]]] := True (* derived 2006 September 5 in RA-PLUS.NB *) or[FUNCTION[x_],not[member[x_,range[PLUS]]]] := True (* derived 2007 November 22 in SU-HERED.NB *) or[FUNCTION[x_],not[member[range[x_],range[SINGLETON]]],not[subclass[x_,cart[y_,z_]]]] := True (* derived 2008 October 19 in SEMIGP.NB *) or[FUNCTION[x_],not[member[x_,SEMIGPS]]] := True (* derived 2006 June 9 in UNARY.NB *) or[FUNCTION[x_],not[member[x_,UNOPS]]] := True (* added 2003 August 12 based on RO-ZADD.NB *) or[FUNCTION[x_],not[member[x_,Z]]] := True (* derived 2006 August 5 in CONST.NB *) or[FUNCTION[x_],not[subclass[x_,cart[u_,v_]]],not[subclass[range[x_],set[y_]]]] := True (* derived 2006 August 5 in CONST.NB *) or[FUNCTION[x_],not[subclass[x_,cart[y_,set[z_]]]]] := True (* derived 2004 September 5 in WF-REC-4.NB *) or[FUNCTION[u_],not[subclass[u_,composite[funpart[x_],history[v_,y_]]]]] := True (* added 2002 December 23 based on REPLACE.NB *) or[FUNCTION[x_],not[subclass[x_,funpart[y_]]]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) or[FUNCTION[x_],not[subclass[x_,Id]]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[FUNCTION[rec[composite[TC,IMAGE[SECOND],SECOND],y_]],not[equal[V,domain[VERTSECT[y_]]]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) or[FUNCTION[rec[funpart[x_],thinpart[y_]]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2004 August 5 in WF-REC-2.NB *) or[FUNCTION[rec[x_,y_]],not[equal[V,domain[VERTSECT[y_]]]],not[FUNCTION[x_]],not[WELLFOUNDED[inverse[y_]]]] := True (* added 2003 July 20 based on OOCANCEL.NB *) or[FUNCTION[rotate[composite[x_,SWAP]]],not[FUNCTION[inverse[x_]]]] := True (* derived 2004 November 19 in FU-RO-IN.NB *) or[FUNCTION[rotate[inverse[x_]]],not[FUNCTION[x_]]] := True (* derived 2004 August 18 in X2812-61.NB *) or[FUNCTION[rotate[inverse[x_]]],not[FUNCTION[rotate[inverse[y_]]]],not[subclass[x_,y_]]] := True (* added 2003 May 5 based on POWER-EQ.NB *) or[FUNCTION[rotate[inverse[power[x_]]]],not[FUNCTION[x_]]] := True (* added 2003 July 20 based on OOCANCEL.NB *) or[FUNCTION[rotate[x_]],not[FUNCTION[inverse[x_]]]] := True (* derived 2004 July 15 in X2310-57.NB *) or[FUNCTION[thinpart[x_]],not[FUNCTION[x_]]] := True (* derived 2004 August 18 in X2812-61.NB *) or[FUNCTION[U[x_]],not[subclass[x_,FUNS]],not[subclass[cart[x_,x_],union[S,inverse[S]]]]] := True (* derived 2004 August 31 in ADD-1-PT.NB *) or[FUNCTION[union[cart[set[x_],set[y_]],funpart[z_]]],member[x_,domain[funpart[z_]]]] := True (* derived 2004 August 31 in ADD-1-PT.NB *) or[FUNCTION[union[z_,cart[set[x_],set[y_]]]],member[x_,domain[z_]],not[FUNCTION[z_]]] := True (* derived 2004 November 2 in SELECT.NB *) or[FUNCTION[union[funpart[u_],funpart[v_]]],not[equal[0,intersection[domain[funpart[u_]],domain[funpart[v_]]]]]] := True (* derived 2008 August 23 in FU-U.NB *) or[FUNCTION[union[funpart[x_],funpart[y_]]], not[equal[composite[funpart[x_],id[domain[funpart[y_]]]], composite[funpart[y_],id[domain[funpart[x_]]]]]]] := True (* derived 2004 July 27 in COMPAT.NB *) or[FUNCTION[union[funpart[x_],funpart[y_]]], not[subclass[intersection[domain[funpart[x_]],domain[funpart[y_]]],fix[composite[inverse[funpart[y_]],funpart[x_]]]]]] := True (* derived 2004 June 15 in X12--.NB *) or[FUNCTION[union[inverse[x_],inverse[y_]]],not[equal[0,intersection[range[x_],range[y_]]]], not[FUNCTION[inverse[x_]]],not[FUNCTION[inverse[y_]]]] := True (* added 2003 October 8 based on FS-CUP.NB *) or[FUNCTION[union[x_,y_]],not[equal[0,intersection[domain[x_],domain[y_]]]], not[FUNCTION[x_]],not[FUNCTION[y_]]] := True (* derived 2008 August 23 in FU-U.NB *) or[FUNCTION[union[x_,y_]],not[equal[composite[x_,id[domain[y_]]], composite[y_,id[domain[x_]]]]],not[FUNCTION[x_]],not[FUNCTION[y_]]] := True (* added 2003 October 8 based on FS-CUP.NB *) or[FUNCTION[union[x_,y_]],not[FUNCTION[x_]],not[FUNCTION[y_]], not[subclass[composite[x_,id[domain[y_]]],y_]]] := True (* added 2003 October 8 based on FS-CUP.NB *) or[FUNCTION[union[x_,y_]],not[FUNCTION[x_]],not[FUNCTION[y_]], not[subclass[composite[x_,inverse[y_]],Id]]] := True (* derived 2004 July 27 in COMPAT.NB *) or[FUNCTION[union[x_,y_]],not[FUNCTION[x_]],not[FUNCTION[y_]], not[subclass[intersection[domain[x_],domain[y_]],fix[composite[inverse[y_],x_]]]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) or[FUNCTION[union[u_,v_]],not[member[u_,partrec[funpart[x_],thinpart[y_]]]], not[member[v_,partrec[funpart[x_],thinpart[y_]]]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2004 September 5 in WF-REC-4.NB *) or[FUNCTION[union[u_,v_]], not[subclass[u_,composite[funpart[x_],history[u_,thinpart[y_]]]]], not[subclass[v_,composite[funpart[x_],history[v_,thinpart[y_]]]]], not[subclass[image[thinpart[y_],domain[u_]],domain[u_]]], not[subclass[image[thinpart[y_],domain[v_]],domain[v_]]], not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2004 June 13 in X1232.NB *) or[FUNCTION[union[x_,set[y_]]],member[first[y_],domain[x_]], not[FUNCTION[x_]],not[member[first[y_],V]]] := True (* derived 2009 January 16 in FUNCTOR.NB *) or[functor[composite[u_,v_],x_,z_],not[functor[u_,y_,z_]],not[functor[v_,x_,y_]]] := True (* derived 2009 January 16 in FUNCTOR.NB *) or[functor[w_,x_,y_],not[equal[composite[w_,x_],composite[y_,cross[w_,w_]]]], not[equal[domain[w_],range[x_]]],not[FUNCTION[w_]], not[subclass[image[w_,ids[x_]],ids[y_]]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[member[0,domain[GLB[x_]]],not[member[x_,CL]]] := True (* derived 2005 December 28 in BOTTOM.NB *) or[member[0,domain[LUB[x_]]],not[member[x_,CL]]] := True (* derived 2006 September 5 in RA-PLUS.NB *) or[member[0,domain[x_]],not[member[x_,range[PLUS]]]] := True (* added 2003 April 17 based on IM-IMG.NB *) or[member[0,image[IMAGE[x_],y_]],not[member[0,y_]]] := True (* derived 2005 February 12 in IND.NB *) or[member[0,x_],member[0,y_],not[member[x_,omega]],not[member[x_,y_]]] := True (* derived 2004 October 26 in AXCH.NB *) or[member[0,x_],not[AxCh],subclass[x_,domain[CHOICE]]] := True (* derived 2005 May 17 in NATRULES.NB *) or[member[0,x_],not[equal[0,A[x_]]],not[subclass[x_,omega]]] := True (* derived 2004 December 30 in FUL-REG3.NB *) or[member[0,x_],not[equal[0,intersection[x_,y_]]],not[member[y_,x_]],not[subclass[U[x_],x_]]] := True (* added 2003 June 19 based on EMPTY.NB *) or[member[0,x_],not[equal[x_,Uclosure[x_]]]] := True (* derived 2003 December 22 in POSITIVE.NB *) or[member[0,x_],not[equal[V,x_]]] := True (* derived 2007 February 1 in N-OVER-D.NB *) or[member[0,x_],not[member[x_,omega]],not[member[set[0],x_]]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) or[member[0,x_],not[member[x_,TOPS]]] := True (* derived 2008 January 6 in ALLCL-BC.NB *) or[member[0,x_],not[subclass[image[BIGCUP,intersection[FINITE,P[x_]]],x_]]] := True (* derived 2007 July 8 in IMS-ENS.NB *) or[member[0,x_],not[subclass[P[y_],x_]]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) or[member[0,y_],not[subclass[Uclosure[x_],y_]]] := True (* derived 2007 January 30 in FIN-DIV.NB *) or[member[0,x_],subclass[image[inverse[DIV],x_],image[inverse[S],x_]]] := True (* derived 2005 December 15 in ZER-6.NB *) or[member[A[fix[composite[S,x_]]],domain[x_]],not[equal[domain[x_],P[y_]]], not[member[y_,z_]],not[subclass[range[x_],domain[x_]]]] := True (* derived 2005 December 15 in ZER-6.NB *) or[member[A[fix[composite[S,x_]]],domain[x_]],not[equal[domain[x_],P[U[domain[x_]]]]], not[member[domain[x_],V]],not[subclass[range[x_],domain[x_]]]] := True (* derived 2005 December 18 in ZER-7.NB *) or[member[A[fix[composite[S,x_]]],fix[x_]], not[equal[domain[x_],P[y_]]],not[FUNCTION[x_]],not[member[y_,z_]], not[subclass[composite[x_,S],composite[S,x_]]],not[subclass[range[x_],domain[x_]]]] := True (* derived 2005 December 18 in ZER-7.NB *) or[member[A[fix[composite[S,x_]]],fix[x_]], not[equal[domain[x_],P[U[domain[x_]]]]],not[FUNCTION[x_]],not[member[domain[x_],V]], not[subclass[composite[x_,S],composite[S,x_]]],not[subclass[range[x_],domain[x_]]]] := True (* derived 2005 December 18 in ZER-7.NB *) or[member[A[fix[composite[S,x_]]],fix[x_]],not[FUNCTION[x_]], not[member[A[fix[composite[S,x_]]],domain[x_]]], not[subclass[composite[x_,S],composite[S,x_]]]] := True (* derived 2005 December 13 in ZER-4.NB *) or[member[A[fix[composite[S,x_]]],fix[x_]], not[member[A[fix[composite[S,x_]]],fix[composite[S,x_]]]], not[subclass[composite[x_,S],composite[S,x_]]]] := True (* derived 2005 December 18 in ZER7-MAP.NB *) or[member[A[fix[composite[S,x_]]],fix[x_]], not[member[x_,map[P[y_],P[y_]]]],not[subclass[composite[x_,S],composite[S,x_]]]] := True (* derived 2005 December 18 in ZER-7.NB *) or[member[A[fix[x_]],fix[x_]],not[equal[domain[x_],P[U[domain[x_]]]]],not[FUNCTION[x_]], not[member[domain[x_],V]],not[subclass[composite[x_,S],composite[S,x_]]], not[subclass[range[x_],domain[x_]]]] := True (* derived 2005 December 16 in ZER-4COR.NB *) or[member[A[fix[x_]],fix[x_]],not[member[A[fix[composite[S,x_]]],fix[composite[S,x_]]]], not[subclass[composite[x_,S],composite[S,x_]]]] := True (* derived 2005 December 18 in ZER-7.NB *) or[member[A[fix[x_]],fix[x_]],not[member[A[fix[composite[S,x_]]],fix[x_]]], not[subclass[composite[x_,S],composite[S,x_]]]] := True (* derived 2005 December 18 in ZER7-MAP.NB *) or[member[A[fix[x_]],fix[x_]],not[member[x_,map[P[y_],P[y_]]]],not[subclass[composite[x_,S],composite[S,x_]]]] := True (* derived 2005 December 18 in ZER7DUAL.NB *) or[member[A[fix[x_]],fix[x_]],not[member[x_,map[P[y_],P[y_]]]],not[subclass[composite[x_,S,inverse[x_]],S]]] := True (* derived 2006 January 16 in SUBFIXED.NB *) or[member[A[intersection[fix[x_],P[y_]]],fix[x_]],not[FUNCTION[x_]], not[member[y_,fix[composite[S,x_]]]],not[subclass[composite[x_,S],composite[S,x_]]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[x_,A[y_]],not[equal[0,y_]],not[member[x_,z_]]] := True (* derived 2004 February 1 in FINCHAIN.NB *) or[member[A[x_],x_],not[member[y_,x_]],not[subclass[y_,A[x_]]]] := True (* derived 2004 February 1 in FINCHAIN.NB *) or[member[A[x_],x_],not[subclass[cart[x_,x_],union[S,inverse[S]]]], subclass[x_,image[PS,x_]]] := True (* derived 2007 September 6 in ON-WO.NB *) or[member[A[x_],x_],not[subclass[x_,omega]]] := not[equal[0,x]] (* derived 2007 September 6 in ON-WO.NB *) or[member[A[x_],x_],not[subclass[x_,OMEGA]]] := not[equal[0,x]] (* derived 2007 September 6 in ON-WO.NB *) or[member[A[x_],omega],not[subclass[x_,omega]]] := not[equal[0,x]] (* derived 2007 September 6 in ON-WO.NB *) or[member[A[x_],OMEGA],not[subclass[x_,OMEGA]]] := not[equal[0,x]] (* added 2003 June 4 based on IMAGE.NB *) or[member[Aclosure[x_],image[ACLOSURE,y_]],not[member[x_,y_]]] := True (* derived 2007 June 29 in ACL-FXHL.NB *) or[member[x_,Aclosure[y_]],not[equal[x_,hull[y_,x_]]], not[member[x_,u_]],not[member[y_,v_]]] := True (* derived 2006 March 21 in FIX-HULL.NB *) or[member[Aclosure[x_],y_],not[member[fix[HULL[x_]],y_]]] := True (* derived 2006 September 5 in RA-PLUS.NB *) or[member[APPLY[x_,0],omega],not[member[x_,range[PLUS]]]] := True (* derived 2009 January 21 in INV.NB *) or[member[APPLY[cat[x_],PAIR[u_,v_]],ids[cat[x_]]],not[member[pair[u_,v_],inv[cat[x_]]]]] := True (* derived 2009 January 21 in INV.NB *) or[member[APPLY[cat[x_],PAIR[v_,u_]],ids[cat[x_]]],not[member[pair[u_,v_],inv[cat[x_]]]]] := True (* derived 2006 November 23 in CURMAP-3.NB *) or[member[APPLY[CURRY,w_],x_],not[member[w_,image[inverse[CURRY],x_]]]] := True (* derived 2007 October 25 in CONDUCT.NB *) or[member[APPLY[x_,w_],domain[x_]],not[FUNCTION[x_]],not[member[w_,y_]], not[subclass[y_,domain[x_]]],not[subclass[image[x_,y_],y_]]] := True (* derived 2007 October 4 in UNOPS.NB *) or[member[APPLY[x_,y_],domain[x_]],not[member[x_,UNOPS]],not[member[y_,domain[x_]]]] := True (* derived 2005 April 21 in AP-FACT.NB *) or[member[APPLY[FACTORIAL,x_],range[FACTORIAL]],not[member[x_,omega]]] := True (* derived 2006 January 5 in FP-CO.NB *) or[member[APPLY[x_,y_],fix[composite[x_,z_]]],not[FUNCTION[x_]], not[member[y_,domain[x_]]],not[member[pair[APPLY[x_,y_],y_],z_]]] := True (* added 2003 November 12 based on CHARCORE.NB *) or[member[APPLY[z_,x_],fix[z_]],not[equal[z_,composite[z_,z_]]], not[FUNCTION[z_]],not[member[x_,domain[z_]]]] := True (* derived 2007 October 25 in CONDUCT.NB *) or[member[APPLY[funpart[x_],y_],domain[funpart[x_]]],not[member[y_,z_]], not[subclass[image[funpart[x_],z_],z_]],not[subclass[z_,domain[funpart[x_]]]]] := True (* derived 2006 January 5 in FP-CO.NB *) or[member[APPLY[funpart[x_],y_],fix[composite[funpart[x_],z_]]], not[member[pair[APPLY[funpart[x_],y_],y_],z_]],not[member[y_,domain[funpart[x_]]]]] := True (* derived 2007 September 16 in AP-IM-FU.NB *) or[member[APPLY[funpart[x_],y_],image[funpart[x_],z_]], not[member[y_,z_]],not[member[y_,domain[funpart[x_]]]]] := True (* derived 2006 January 5 in AP-FU-IM.NB *) or[member[APPLY[funpart[x_],y_],image[funpart[x_],z_]], not[member[y_,z_]],not[subclass[z_,domain[funpart[x_]]]]] := True (* derived 2006 November 3 in IM-IN-FU.NB *) or[member[APPLY[funpart[x_],y_],z_],not[member[y_,image[inverse[funpart[x_]],z_]]]] := True (* derived 2007 October 25 in CONDUCT.NB *) or[member[APPLY[funpart[x_],w_],z_],not[member[w_,y_]], not[member[w_,domain[funpart[x_]]]],not[subclass[image[funpart[x_],y_],z_]]] := True (* derived 2007 October 25 in CONDUCT.NB *) or[member[APPLY[funpart[x_],w_],z_],not[member[w_,y_]], not[subclass[y_,domain[funpart[x_]]]],not[subclass[image[funpart[x_],y_],z_]]] := True (* derived 2006 January 5 in AP-FU-IM.NB *) or[member[APPLY[funpart[x_],y_],range[funpart[x_]]],not[member[y_,domain[funpart[x_]]]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[member[APPLY[GLB[x_],0],fix[x_]],not[member[x_,CL]]] := True (* derived 2006 January 7 in CL-FP.NB *) or[member[APPLY[GLB[x_],fix[composite[x_,y_]]],fix[y_]], not[member[x_,CL]],not[member[y_,map[fix[x_],fix[x_]]]], not[subclass[composite[y_,x_,inverse[y_]],x_]]] := True (* derived 2005 December 28 in BOTTOM.NB *) or[member[APPLY[GLB[x_],fix[x_]],fix[x_]],not[member[x_,CL]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[member[APPLY[GLB[x_],y_],fix[x_]],not[member[x_,CL]],not[subclass[y_,fix[x_]]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[member[APPLY[GLB[x_],y_],fix[x_]],not[member[y_,domain[GLB[x_]]]],not[PARTIALORDER[x_]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[member[APPLY[GREATEST[x_],fix[x_]],fix[x_]],not[member[x_,CL]]] := True (* derived 2008 May 4 in APORDREC.NB *) or[member[APPLY[history[rec[funpart[x_],composite[inverse[E],id[OMEGA]]], composite[inverse[E],id[OMEGA]]],y_],domain[funpart[x_]]], not[member[y_,domain[rec[funpart[x_],composite[inverse[E],id[OMEGA]]]]]]] := True (* derived 2007 September 16 in AP-IM-FU.NB *) or[member[APPLY[x_,y_],image[x_,z_]],not[FUNCTION[x_]], not[member[y_,z_]],not[member[y_,domain[x_]]]] := True (* derived 2006 January 5 in AP-FU-IM.NB *) or[member[APPLY[x_,y_],image[x_,z_]],not[FUNCTION[x_]], not[member[y_,z_]],not[subclass[z_,domain[x_]]]] := True (* derived 2006 November 23 in CURMAP-3.NB *) or[member[APPLY[inverse[CURRY],w_],x_],not[member[w_,image[CURRY,x_]]]] := True (* derived 2005 December 28 in BOTTOM.NB *) or[member[APPLY[LEAST[x_],fix[x_]],fix[x_]],not[member[x_,CL]]] := True (* derived 2005 December 28 in BOTTOM.NB *) or[member[APPLY[LUB[x_],0],fix[x_]],not[member[x_,CL]]] := True (* derived 2006 January 7 in CL-FP.NB *) or[member[APPLY[LUB[x_],fix[composite[inverse[x_],y_]]],fix[y_]], not[member[x_,CL]],not[member[y_,map[fix[x_],fix[x_]]]], not[subclass[composite[y_,x_,inverse[y_]],x_]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[member[APPLY[LUB[x_],fix[x_]],fix[x_]],not[member[x_,CL]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[member[APPLY[LUB[x_],y_],fix[x_]],not[member[x_,CL]],not[subclass[y_,fix[x_]]]] := True (* derived 2004 July 28 in FU-AP-VS.NB *) or[member[APPLY[x_,y_],z_],not[FUNCTION[x_]],not[member[y_,domain[x_]]], not[subclass[image[x_,set[y_]],z_]]] := True (* derived 2004 July 17 in FU-IM-IN.NB *) or[member[APPLY[x_,y_],z_],not[FUNCTION[x_]],not[member[y_,image[inverse[x_],z_]]]] := True (* derived 2007 October 25 in CONDUCT.NB *) or[member[APPLY[x_,w_],z_],not[FUNCTION[x_]],not[member[w_,y_]], not[member[w_,domain[x_]]],not[subclass[image[x_,y_],z_]]] := True (* derived 2006 January 5 in AP-FU-IM.NB *) or[member[APPLY[w_,x_],y_],not[FUNCTION[w_]],not[member[x_,z_]], not[subclass[image[w_,z_],y_]],not[subclass[z_,domain[w_]]]] := True (* derived 2006 July 18 in MAP-AP.NB *) or[member[APPLY[w_,x_],v_],not[member[w_,map[u_,v_]]],not[member[x_,u_]]] := True (* derived 2006 May 29 in OL-DO.NB *) or[member[APPLY[ordlist[x_],y_],U[intersection[OMEGA,x_]]],not[member[succ[y_],domain[ordlist[x_]]]]] := True (* derived 2009 January 1 in MON-AP.NB *) or[member[APPLY[w_,PAIR[u_,v_]],z_],not[member[u_,x_]],not[member[v_,y_]], not[member[w_,map[cart[x_,y_],z_]]]] := True (* derived 2009 January 1 in MON-AP.NB *) or[member[APPLY[x_,PAIR[u_,v_]],range[x_]], not[member[u_,range[x_]]],not[member[v_,range[x_]]],not[member[x_,MONOIDS]]] := True (* added 2003 November 12 based on CHARCORE.NB *) or[member[APPLY[z_,x_],range[z_]],not[FUNCTION[z_]],not[member[x_,domain[z_]]]] := True (* derived 2006 August 5 in BINHOM-6.NB *) or[member[APPLY[x_,set[0]],omega],not[member[x_,binhom[NATADD,NATADD]]]] := True (* derived 2006 December 9 in FIX-BH.NB *) or[member[APPLY[t_,set[0]],Z],not[member[t_,binhom[NATADD,INTADD]]]] := True (* derived 2008 July 27 in REGRESS.NB *) or[member[APPLY[x_,succ[nat[y_]]],APPLY[x_,nat[y_]]],not[equal[omega,domain[x_]]],not[FUNCTION[x_]], not[subclass[composite[x_,SUCC],composite[inverse[E],x_]]]] := True (* derived 2006 August 5 in BINHOM-6.NB *) or[member[x_,binhom[INTADD,INTADD]],not[equal[composite[INTADD,cross[x_,x_]], composite[x_,INTADD]]],not[member[x_,map[Z,Z]]]] := True (* derived 2006 July 18 in BINHOM-1.NB *) or[member[w_,binhom[x_,y_]],not[equal[composite[w_,x_],composite[y_,cross[w_,w_]]]], not[member[w_,map[fix[domain[x_]],fix[domain[y_]]]]]] := True (* derived 2006 August 6 in PTWISE.NB *) or[member[binhom[x_,y_],V],not[member[y_,z_]]] := True (* derived 2008 December 1 in RIF-QG.NB *) or[member[binop[x_],QUASIGPS],not[equal[binop[x_],rotate[binop[x_]]]]] := True (* derived 2006 September 14 in BINOPS.NB *) or[member[x_,BINOPS],not[equal[cart[fix[domain[x_]],fix[domain[x_]]],domain[x_]]], not[FUNCTION[x_]],not[member[x_,y_]],not[subclass[x_,cart[V,fix[domain[x_]]]]]] := True (* derived 2006 September 14 in BINOPS.NB *) or[member[x_,BINOPS],not[equal[cart[fix[domain[x_]],fix[domain[x_]]],domain[x_]]], not[FUNCTION[x_]],not[member[x_,y_]],not[subclass[range[x_],fix[domain[x_]]]]] := True (* derived 2008 October 7 in QUASIGPS.NB *) or[member[x_,BINOPS],not[member[x_,QUASIGPS]]] := True (* derived 2007 May 1 in CARTRCH.NB *) or[member[card[x_],card[y_]],member[card[y_],card[x_]]] := not[equal[card[x],card[y]]] (* derived 2007 May 3 in SMALLWOB.NB *) or[member[card[x_],card[y_]],not[member[pair[x_,y_],SMALLER]], not[member[x_,image[Q,OMEGA]]],not[member[y_,image[Q,OMEGA]]]] := True (* derived 2007 May 1 in CARTRCH.NB *) or[member[card[x_],y_],not[equal[y_,card[x_]]]] := not[equal[y,card[x]]] (* derived 2007 May 1 in CARTRCH.NB *) or[member[card[x_],y_],not[member[y_,card[x_]]]] := not[member[y,card[x]]] (* derived 2007 May 1 in CARTRCH.NB *) or[member[x_,card[y_]],not[member[card[y_],x_]]] := not[member[card[y],x]] (* derived 2006 July 23 in BINHOM-4.NB *) or[member[cart[fix[domain[y_]],set[x_]],binhom[y_,y_]], not[member[x_,fix[composite[y_,DUP]]]],not[member[y_,BINOPS]]] := True (* derived 2006 November 26 in BH-IDEMP.NB *) or[member[cart[fix[domain[x_]],set[v_]],binhom[x_,y_]],not[member[v_,fix[composite[y_,DUP]]]], not[member[x_,BINOPS]],not[member[y_,BINOPS]]] := True (* derived 2007 September 8 in UCH-SQ.NB *) or[member[cart[x_,y_],image[inverse[S],image[CART,id[z_]]]],not[member[x_,z_]], not[member[y_,z_]],not[subclass[cart[z_,z_],union[S,inverse[S]]]]] := True (* derived 2004 June 28 in X1773-1800.NB *) or[member[cart[x_,y_],REGULAR],not[member[x_,REGULAR]],not[member[y_,REGULAR]]] := True (* derived 2007 July 10 in SBV-CLQ.NB *) or[member[chains[x_],range[CLIQUES]],not[member[x_,y_]]] := True (* derived 2005 October 8 in U-CL.NB *) or[member[x_,CL],not[member[0,domain[GLB[x_]]]],not[member[x_,V]],not[WELLORDER[x_]]] := True (* derived 2006 January 4 in CL-DUAL.NB *) or[member[x_,CL],not[member[x_,y_]],not[PARTIALORDER[x_]],not[subclass[P[fix[x_]],domain[GLB[x_]]]]] := True (* derived 2006 January 4 in CL-DUAL.NB *) or[member[x_,CL],not[member[x_,y_]],not[PARTIALORDER[x_]],not[subclass[P[fix[x_]],domain[LUB[x_]]]]] := True (* added 2003 June 4 based on IMAGE.NB *) or[member[cliques[x_],image[CLIQUES,y_]],not[member[x_,y_]]] := True (* derived 2006 October 11 in RA-CLIQ.NB *) or[member[cliques[x_],range[CLIQUES]],not[member[x_,y_]]] := True (* derived 2004 October 17 in CMPCTCOA.NB *) or[member[x_,COMPACT],not[equal[U[x_],U[y_]]],not[member[y_,COMPACT]],not[subclass[x_,y_]]] := True (* derived 2004 October 17 in CMPCTCOA.NB *) or[member[x_,COMPACT],not[member[image[inverse[S],x_],COMPACT]]] := True (* derived 2004 October 17 in CMPCTCOA.NB *) or[member[x_,COMPACT],not[member[Uclosure[x_],COMPACT]]] := True (* derived 2008 October 1 in BIJ-CO.NB *) or[member[composite[u_,v_],bij[x_,z_]], not[member[u_,bij[y_,z_]]],not[member[v_,bij[x_,y_]]]] := True (* derived 2006 July 18 in BINHOM-1.NB *) or[member[composite[u_,v_],binhom[x_,z_]], not[member[u_,binhom[y_,z_]]],not[member[v_,binhom[x_,y_]]]] := True (* derived 2006 July 23 in SGP-PROD.NB *) or[member[composite[cross[x_,y_],TWIST],BINOPS], not[member[x_,BINOPS]],not[member[y_,BINOPS]]] := True (* derived 2008 December 28 in GP-DIR.NB *) or[member[composite[cross[x_,y_],TWIST],GROUPS], not[member[x_,GROUPS]],not[member[y_,GROUPS]]] := True (* derived 2006 September 2 in BO-PROD.NB *) or[member[composite[cross[x_,y_],TWIST],map[cart[cart[u_,v_],cart[u_,v_]],cart[u_,v_]]], not[member[x_,map[cart[u_,u_],u_]]],not[member[y_,map[cart[v_,v_],v_]]]] := True (* derived 2008 December 29 in MONOIDS.NB *) or[member[composite[cross[x_,y_],TWIST],MONOIDS], not[member[x_,MONOIDS]],not[member[y_,MONOIDS]]] := True (* derived 2008 December 28 in GP-DIR.NB *) or[member[composite[cross[x_,y_],TWIST],QUASIGPS], not[member[x_,QUASIGPS]],not[member[y_,QUASIGPS]]] := True (* derived 2006 July 23 in SGP-PROD.NB *) or[member[composite[cross[x_,y_],TWIST],SEMIGPS], not[member[x_,SEMIGPS]],not[member[y_,SEMIGPS]]] := True (* derived 2006 July 23 in SGP-PROD.NB *) or[member[composite[cross[u_,v_],TWIST],V],not[member[u_,x_]],not[member[v_,y_]]] := True (* derived 2004 January 8 in FIN-FU.NB *) or[member[composite[x_,y_],FINITE],not[FUNCTION[x_]],not[member[y_,FINITE]]] := True (* derived 2006 July 9 in DORA-BO.NB *) or[member[composite[x_,FIRST,id[cart[domain[x_],domain[x_]]]],BINOPS], not[member[x_,UNOPS]]] := True (* derived 2008 September 22 in RA-CRS.NB *) or[member[composite[first[x_],second[x_]],V],not[member[first[x_],y_]]] := True (* derived 2006 July 11 in BINOP-RS.NB *) or[member[composite[x_,id[cart[y_,y_]]],BINOPS],not[member[x_,BINOPS]], not[subclass[image[x_,cart[y_,y_]],y_]]] := True (* derived 2006 September 21 in BH-IMAGE.NB *) or[member[composite[y_,id[cart[range[w_],range[w_]]]],BINOPS], not[member[w_,binhom[x_,y_]]],not[member[x_,BINOPS]]] := True (* derived 2006 September 28 in BH-SGPS.NB *) or[member[composite[y_,id[cart[range[w_],range[w_]]]],SEMIGPS], not[member[w_,binhom[x_,y_]]],not[member[x_,SEMIGPS]]] := True (* derived 2006 September 3 in BO-POWER.NB *) or[member[composite[x_,id[cart[y_,y_]]],SEMIGPS], not[associative[x_]],not[member[composite[x_,id[cart[y_,y_]]],BINOPS]]] := True (* derived 2006 July 13 in SGPS-RS.NB *) or[member[composite[x_,id[cart[y_,y_]]],SEMIGPS], not[member[x_,SEMIGPS]],not[subclass[image[x_,cart[y_,y_]],y_]]] := True (* derived 2008 October 2 in BIN-FLIP.NB *) or[member[composite[x_,id[cart[V,V]]],BINOPS],not[member[x_,BINOPS]]] := True (* derived 2008 October 7 in QUASIGPS.NB *) or[member[composite[x_,id[cart[V,V]]],QUASIGPS],not[member[x_,QUASIGPS]]] := True (* derived 2008 October 19 in SEMIGP.NB *) or[member[composite[x_,id[cart[V,V]]],SEMIGPS],not[member[x_,SEMIGPS]]] := True (* derived 2005 October 19 in TO-CL-WO.NB *) or[member[composite[Id,x_],CL],not[member[x_,CL]]] := True (* derived 2005 October 7 in FIN-IN.NB *) or[member[composite[Id,x_],FINITE],not[member[x_,FINITE]]] := True (* derived 2007 October 16 in IM-RS.NB *) or[member[composite[u_,id[v_]],image[COMPOSE,cart[x_,P[Id]]]],not[member[u_,x_]]] := True (* derived 2008 May 10 in RESTRICT.NB *) or[member[composite[x_,id[y_]],image[IMAGE[composite[id[x_],inverse[FIRST]]],z_]], not[equal[V,domain[VERTSECT[x_]]]],not[member[y_,z_]]] := True (* derived 2006 August 19 in MAP-DJU.NB *) or[member[composite[u_,id[w_]],map[intersection[w_,x_],y_]],not[member[u_,map[x_,y_]]]] := True (* derived 2006 July 9 in UNOP-POW.NB *) or[member[composite[Id,x_],y_],not[member[x_,y_]],not[subclass[x_,cart[V,V]]]] := True (* derived 2006 December 19 in ZTIMES-1.NB *) or[member[composite[id[omega],SUCC],domain[x_]],not[member[x_,binhom[INTADD,INTADD]]]] := True (* derived 2004 August 26 in WF-REC-3.NB *) or[member[composite[w_,id[z_]],partrec[x_,y_]], not[member[w_,partrec[x_,y_]]],not[subclass[image[y_,z_],z_]]] := True (* derived 2005 December 22 in UCL-CL.NB *) or[member[composite[id[x_],S,id[x_]],CL],not[member[x_,TOPS]]] := True (* derived 2005 October 19 in ORD-WRAP.NB *) or[member[composite[id[succ[x_]],S,id[succ[x_]]],CL],not[member[x_,OMEGA]]] := True (* derived 2007 October 4 in UO-IVR.NB *) or[member[composite[x_,id[y_]],UNOPS],not[member[x_,UNOPS]],not[subclass[image[x_,y_],y_]]] := True (* added 2002 May 9 based on RESTRICT.NB *) or[member[composite[x_,id[y_]],V],not[equal[V,domain[VERTSECT[x_]]]],not[member[y_,V]]] := True (* derived 2006 September 3 in BO-POWER.NB *) or[member[composite[IMAGE[t_],CART,id[cart[P[w_],P[w_]]]],map[cart[P[w_],P[w_]],P[w_]]], not[member[t_,map[cart[w_,w_],w_]]]] := True (* derived 2006 September 3 in BO-POWER.NB *) or[member[composite[IMAGE[x_],CART,id[cart[P[fix[domain[x_]]],P[fix[domain[x_]]]]]],BINOPS], not[member[x_,BINOPS]]] := True (* derived 2006 September 3 in BO-POWER.NB *) or[member[composite[IMAGE[x_],CART,id[cart[P[fix[domain[x_]]],P[fix[domain[x_]]]]]],SEMIGPS], not[member[x_,SEMIGPS]]] := True (* added 2003 July 25 based on CPS-ZXZ.NB *) or[member[composite[u_,v_],image[COMPOSE,cart[x_,y_]]],not[member[u_,x_]],not[member[v_,y_]]] := True (* derived 2006 August 5 in BINHOM-6.NB *) or[member[composite[INTADD,intersection[composite[inverse[FIRST],x_], composite[inverse[SECOND],y_]]],binhom[INTADD,INTADD]], not[member[x_,binhom[INTADD,INTADD]]],not[member[y_,binhom[INTADD,INTADD]]]] := True (* derived 2006 December 19 in ENDZ-INV.NB *) or[member[composite[INVERSE,x_],binhom[INTADD,INTADD]], not[member[x_,binhom[INTADD,INTADD]]]] := True (* derived 2006 December 16 in BHNATINT.NB *) or[member[composite[INVERSE,x_],binhom[NATADD,INTADD]], not[member[x_,binhom[NATADD,INTADD]]]] := True (* derived 2004 January 8 in FIN-FU.NB *) or[member[composite[y_,inverse[x_]],FINITE],not[FUNCTION[x_]],not[member[y_,FINITE]]] := True (* derived 2006 July 31 in MEMBER-Z.NB *) or[member[composite[inverse[SUCC],x_],Z],not[member[x_,Z]]] := True (* derived 2004 December 7 in ASV-DIV.NB *) or[member[composite[x_,inverse[FIRST]],V],not[member[x_,y_]]] := True (* derived 2005 January 17 in BIJ-PO.NB *) or[member[composite[inverse[x_],y_,x_],V],not[member[x_,z_]]] := True (* derived 2006 January 25 in CO-V.NB *) or[member[composite[x_,y_,inverse[x_]],V],not[member[x_,z_]]] := True (* derived 2006 June 17 in BIN-UNOP.NB *) or[member[composite[x_,LEFT[y_]],UNOPS],not[member[x_,BINOPS]]] := True (* added 2003 June 30 based on ASSOC.NB *) or[member[composite[x_,LEFT[y_]],V],not[member[x_,z_]]] := True (* derived 2006 June 27 in UOCPSDUP.NB *) or[member[composite[x_,x_],map[y_,y_]],not[member[x_,map[y_,y_]]]] := True (* derived 2004 December 5 in MAP-CO.NB *) or[member[composite[u_,v_],map[x_,z_]],not[member[u_,map[y_,z_]]],not[member[v_,map[x_,y_]]]] := True (* derived 2006 August 5 in BINHOM-6.NB *) or[member[composite[NATADD,intersection[composite[inverse[FIRST],x_], composite[inverse[SECOND],y_]]],binhom[NATADD,NATADD]], not[member[x_,binhom[NATADD,NATADD]]],not[member[y_,binhom[NATADD,NATADD]]]] := True (* derived 2008 November 10 in TRV-IVR.NB *) or[member[composite[x_,y_],z_],not[member[x_,z_]],not[member[y_,z_]], not[subclass[image[COMPOSE,cart[z_,z_]],z_]]] := True (* derived 2004 June 20 in X1505-11.NB *) or[member[composite[x_,oopart[y_]],V],not[member[x_,z_]]] := True (* derived 2005 October 11 in TO-OO.NB *) or[member[composite[oopart[x_],y_,inverse[oopart[x_]]],V],not[member[y_,z_]]] := True (* derived 2005 December 18 in ZER7DUAL.NB *) or[member[composite[x_,RC[y_]],map[P[y_],P[y_]]],not[member[x_,map[P[y_],P[y_]]]]] := True (* derived 2005 December 18 in ZER7DUAL.NB *) or[member[composite[RC[y_],x_],map[P[y_],P[y_]]],not[member[x_,map[P[y_],P[y_]]]]] := True (* derived 2008 May 5 in FU-REC.NB *) or[member[composite[rec[funpart[x_],thinpart[inverse[wf[y_]]]],id[w_]], partrec[funpart[x_],thinpart[inverse[wf[y_]]]]],not[member[w_,z_]], not[subclass[image[thinpart[inverse[wf[y_]]],w_],w_]]] := True (* derived 2004 August 26 in WF-REC-3.NB *) or[member[composite[rec[x_,y_],id[z_]],partrec[x_,y_]],not[equal[V,domain[VERTSECT[y_]]]], not[FUNCTION[x_]],not[member[z_,V]],not[subclass[image[y_,z_],z_]],not[WELLFOUNDED[inverse[y_]]]] := True (* derived 2006 June 17 in BIN-UNOP.NB *) or[member[composite[w_,RIGHT[y_]],map[x_,x_]],not[member[w_,map[cart[x_,x_],x_]]],not[member[y_,x_]]] := True (* derived 2006 June 17 in BIN-UNOP.NB *) or[member[composite[x_,RIGHT[y_]],UNOPS],not[member[x_,BINOPS]]] := True (* added 2003 June 30 based on ASSOC.NB *) or[member[composite[x_,RIGHT[y_]],V],not[member[x_,z_]]] := True (* derived 2004 November 9 in AC2-AC3.NB *) or[member[composite[SECOND,x_],V],not[member[x_,y_]]] := True (* derived 2006 August 1 in BCL-ZADD.NB *) or[member[composite[x_,SUCC],V],not[member[x_,y_]]] := True (* derived 2006 July 27 in IND-Z.NB *) or[member[composite[x_,SUCC],Z],not[member[x_,Z]]] := True (* derived 2008 December 6 in FLIP-GPS.NB *) or[member[composite[x_,SWAP],GROUPS],not[member[x_,GROUPS]]] := True (* derived 2006 June 17 in BIN-UNOP.NB *) or[member[composite[w_,SWAP],map[cart[y_,x_],z_]],not[member[w_,map[cart[x_,y_],z_]]]] := True (* derived 2006 November 11 in FLIP-MAP.NB *) or[member[composite[w_,SWAP],map[inverse[x_],y_]],not[member[w_,map[x_,y_]]]] := True (* derived 2008 December 31 in CAT-MON.NB *) or[member[composite[x_,SWAP],MONOIDS],not[member[x_,MONOIDS]]] := True (* derived 2004 June 28 in X1773-1800.NB *) or[member[composite[x_,SWAP],REGULAR],not[member[x_,REGULAR]]] := True (* derived 2004 June 20 in X1505-11.NB *) or[member[composite[x_,SWAP],V],not[member[x_,y_]]] := True (* derived 2008 May 10 in RESTRICT.NB *) or[member[composite[thinpart[x_],id[y_]], image[IMAGE[composite[id[thinpart[x_]],inverse[FIRST]]],z_]],not[member[y_,z_]]] := True (* derived 2006 June 27 in UOCPSDUP.NB *) or[member[composite[x_,x_],UNOPS],not[member[x_,UNOPS]]] := True (* derived 2004 November 9 in AC2-AC3.NB *) or[member[composite[x_,y_],V],not[equal[V,domain[VERTSECT[x_]]]],not[member[y_,z_]]] := True (* derived 2004 November 19 in SETHOOD.NB *) or[member[composite[x_,y_],V],not[FUNCTION[inverse[y_]]],not[member[x_,z_]]] := True (* derived 2004 November 19 in SETHOOD.NB *) or[member[composite[x_,y_],V],not[FUNCTION[x_]],not[member[y_,z_]]] := True (* derived 2004 June 26 in X1493.NB *) or[member[composite[x_,y_],V],not[member[image[x_,range[y_]],u_]], not[member[image[inverse[y_],domain[x_]],v_]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[composite[u_,v_],V],not[member[u_,w_]],not[member[v_,x_]]] := True (* derived 2004 October 28 in AC2.NB *) or[member[composite[y_,VERTSECT[x_]],V],not[member[x_,V]],not[subclass[y_,inverse[E]]]] := True (* derived 2006 August 4 in CONST.NB *) or[member[x_,CONST],not[FUNCTION[x_]],not[member[x_,y_]],not[member[range[x_],range[SINGLETON]]]] := True (* derived 2006 August 5 in CONST.NB *) or[member[x_,CONST],not[FUNCTION[x_]],not[member[x_,y_]],not[subclass[range[x_],set[z_]]]] := True (* derived 2006 August 5 in CONST.NB *) or[member[x_,CONST],not[member[y_,CONST]],not[subclass[x_,y_]]] := True (* derived 2006 August 4 in CONST.NB *) or[member[x_,CONST],not[member[x_,y_]],not[member[range[x_],range[SINGLETON]]],not[subclass[x_,cart[V,V]]]] := True (* derived 2006 August 5 in CONST.NB *) or[member[x_,CONST],not[member[x_,w_]],not[subclass[x_,cart[u_,v_]]],not[subclass[range[x_],set[y_]]]] := True (* derived 2004 June 23 in CRHLTALK.NB *) or[member[core[t_,x_],t_],not[member[t_,TOPS]]] := True (* derived 2005 December 2 in NAT-CORE.NB *) or[member[core[omega,x_],omega],subclass[omega,x_]] := True (* derived 2005 December 2 in ORD-CORE.NB *) or[member[core[OMEGA,x_],OMEGA],subclass[OMEGA,x_]] := True (* derived 2006 January 4 in CL-X.NB *) or[member[cross[x_,y_],CL],not[member[x_,CL]],not[member[y_,CL]]] := True (* derived 2008 September 22 in RA-CRS.NB *) or[member[cross[first[x_],second[x_]],range[CROSS]],not[member[first[x_],y_]]] := True (* derived 2006 September 10 in UNOPS-X.NB *) or[member[cross[u_,x_],map[cart[v_,y_],cart[w_,z_]]], not[member[u_,map[v_,w_]]],not[member[x_,map[y_,z_]]]] := True (* derived 2006 September 10 in UNOPS-X.NB *) or[member[cross[x_,y_],UNOPS],not[member[x_,UNOPS]],not[member[y_,UNOPS]]] := True (* derived 2004 March 8 in X-SET.NB *) or[member[cross[x_,y_],V],not[equal[0,domain[x_]]]] := True (* derived 2004 March 8 in X-SET.NB *) or[member[cross[x_,y_],V],not[equal[0,domain[y_]]]] := True (* derived 2006 January 25 in CROSS.NB *) or[member[cross[x_,x_],V],not[member[x_,y_]]] := True (* derived 2004 March 8 in X-SET.NB *) or[member[cross[x_,y_],V],not[member[domain[x_],V]],not[member[domain[y_],V]], not[member[range[x_],V]],not[member[range[y_],V]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[cross[u_,v_],V],not[member[u_,w_]],not[member[v_,x_]]] := True (* derived 2005 January 27 in DK-SU.NB *) or[member[x_,DEDEKIND],not[member[y_,DEDEKIND]],not[member[pair[x_,y_],Q]]] := True (* derived 2005 January 27 in DK-SU.NB *) or[member[y_,DEDEKIND],not[member[x_,DEDEKIND]],not[member[pair[x_,y_],Q]]] := True (* derived 2005 January 27 in DK-SU.NB *) or[member[x_,DEDEKIND],not[member[y_,DEDEKIND]],not[subclass[x_,y_]]] := True (* derived 2005 February 8 in X1730.NB *) or[member[x_,DESCENDING],not[equal[0,intersection[x_,P[complement[x_]]]]],not[member[x_,y_]]] := True (* derived 2006 September 12 in NEUTRAL.NB *) or[member[y_,domain[domain[x_]]],subclass[composite[x_,LEFT[y_]],Id]] := True (* derived 2004 June 20 in X1505-11.NB *) or[member[domain[domain[x_]],V],not[member[x_,y_]]] := True (* derived 2006 February 14 in ACYFINOP.NB *) or[member[domain[x_],FINITE],not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]],not[member[range[x_],FINITE]]] := True (* derived 2004 January 8 in FIN-FU.NB *) or[member[domain[x_],FINITE],not[member[x_,FINITE]]] := True (* derived 2008 September 6 in REPLACE.NB *) or[member[y_,domain[funpart[x_]]],not[FUNCTION[x_]],not[member[y_,domain[x_]]]] := True (* derived 2005 December 19 in FUNPART.NB *) or[member[u_,domain[funpart[x_]]],not[member[pair[u_,v_],funpart[x_]]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[domain[funpart[x_]],V],not[member[x_,y_]]] := True (* derived 2005 December 20 in CLGLBLUB.NB *) or[member[x_,domain[GLB[y_]]],not[member[y_,CL]],not[subclass[x_,fix[y_]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[u_,domain[GLB[x_]]],not[member[pair[u_,v_],GLB[x_]]]] := True (* derived 2005 October 2 in POLUBGLB.NB *) or[member[y_,domain[GLB[po[x_]]]],not[member[y_,V]],not[member[z_,fix[po[x_]]]], not[subclass[intersection[fix[po[x_]],lb[po[x_],y_]],image[inverse[po[x_]],set[z_]]]], not[subclass[y_,image[po[x_],set[z_]]]]] := True (* derived 2004 August 18 in X3080.NB *) or[member[domain[x_],image[IMAGE[FIRST],y_]],not[member[x_,y_]]] := True (* derived 2006 May 16 in DO-ITER.NB *) or[member[u_,domain[iterate[x_,y_]]],not[member[u_,v_]],not[member[v_,domain[iterate[x_,y_]]]]] := True (* derived 2005 December 20 in CLGLBLUB.NB *) or[member[x_,domain[LUB[y_]]],not[member[y_,CL]],not[subclass[x_,fix[y_]]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[member[v_,domain[LUB[x_]]],not[member[u_,fix[x_]]], not[member[x_,CL]],not[subclass[v_,image[inverse[x_],set[u_]]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[u_,domain[LUB[x_]]],not[member[pair[u_,v_],LUB[x_]]]] := True (* derived 2005 October 2 in POLUBGLB.NB *) or[member[y_,domain[LUB[po[x_]]]],not[member[y_,V]],not[member[z_,fix[po[x_]]]], not[subclass[intersection[fix[po[x_]],ub[po[x_],y_]],image[po[x_],set[z_]]]], not[subclass[y_,image[inverse[po[x_]],set[z_]]]]] := True (* derived 2008 August 31 in EQ-AP.NB *) or[member[w_,domain[x_]],not[equal[APPLY[x_,w_],APPLY[y_,z_]]],not[member[z_,domain[y_]]]] := True (* derived 2004 June 20 in X1604-56.NB *) or[member[domain[x_],y_],not[equal[x_,inverse[x_]]],not[member[range[x_],y_]]] := True (* derived 2006 January 28 in PROJ.NB *) or[member[x_,domain[z_]],not[FUNCTION[z_]],not[member[pair[x_,y_],z_]]] := True (* added 2003 October 28 based on APPLY.NB *) or[member[y_,domain[x_]],not[member[APPLY[x_,y_],z_]]] := True (* derived 2008 October 31 in IN-SETHD.NB *) or[member[domain[x_],V],not[member[inverse[x_],y_]]] := True (* derived 2004 February 8 in DO-RA-IM.NB *) or[member[x_,domain[z_]],not[member[x_,u_]],not[member[y_,v_]],not[member[pair[x_,y_],z_]]] := True (* derived 2004 March 5 in CO-DO-RA.NB *) or[member[u_,domain[y_]],not[member[pair[u_,v_],composite[x_,y_]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[v_,domain[x_]],not[member[pair[u_,v_],GLB[x_]]]] := True (* derived 2004 February 8 in DO-RA-IM.NB *) or[member[x_,domain[z_]],not[member[pair[x_,y_],z_]],not[subclass[z_,cart[u_,v_]]]] := True (* derived 2004 December 11 in OO-Q.NB *) or[member[domain[oopart[x_]],image[Q,y_]],not[member[range[oopart[x_]],y_]]] := True (* derived 2004 December 11 in OO-Q.NB *) or[member[domain[oopart[x_]],V],not[member[range[oopart[x_]],y_]]] := True (* derived 2006 May 29 in OL-DO.NB *) or[member[x_,domain[ordlist[z_]]],not[member[x_,y_]],not[member[y_,domain[ordlist[z_]]]]] := True (* derived 2006 May 29 in OL-DO.NB *) or[member[w_,domain[ordlist[x_]]],not[member[succ[w_],domain[ordlist[x_]]]]] := True (* derived 2006 March 12 in OLIST-OO.NB *) or[member[domain[ordlist[x_]],omega],not[member[x_,FINITE]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) or[member[z_,domain[rec[x_,y_]]],not[member[w_,partrec[x_,y_]]],not[member[z_,domain[w_]]]] := True (* added 2003 June 5 based on REG.NB *) or[member[domain[x_],REGULAR],not[member[x_,REGULAR]]] := True (* derived 2005 December 25 in APCPSCRS.NB *) or[member[domain[second[x_]],V],not[member[first[x_],V]]] := True (* derived 2007 April 23 in PO-SIMPL.NB *) or[member[y_,domain[x_]],subclass[image[x_,set[y_]],z_]] := True (* derived 2006 January 25 in VS-CO.NB *) or[member[domain[thinpart[x_]],V],not[member[x_,y_]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[domain[x_],V],not[member[x_,y_]]] := True (* derived 2008 December 29 in MONOIDS.NB *) or[member[e[x_],ids[x_]],not[member[x_,MONOIDS]]] := True (* derived 2009 January 1 in MON-AP.NB *) or[member[e[x_],range[x_]],not[member[x_,MONOIDS]]] := True (* derived 2008 December 31 in CAT-MON.NB *) or[member[e[x_],V],not[member[x_,MONOIDS]]] := True (* derived 2004 May 12 in EQUIV.NB *) or[member[eqv[x_],V],not[member[x_,y_]]] := True (* derived 2004 June 6 in EQV-TRV.NB *) or[member[eqv[x_],V],not[member[domain[x_],V]],not[member[range[x_],V]]] := True (* derived 2007 April 5 in EVEN-ODD.NB *) or[member[x_,even],member[y_,even],not[member[natadd[x_,y_],odd]]] := True (* derived 2007 April 5 in EVEN-ODD.NB *) or[member[x_,even],member[y_,even],not[member[natmul[x_,y_],even]]] := True (* derived 2006 August 15 in EVEN-ODD.NB *) or[member[x_,even],member[x_,odd]] := member[x,omega] (* derived 2007 April 5 in EVEN-ODD.NB *) or[member[x_,even],member[y_,odd],not[member[natadd[x_,y_],even]]] := True (* derived 2007 April 5 in EVEN-ODD.NB *) or[member[x_,even],not[member[x_,omega]]] := not[member[x,odd]] (* derived 2008 January 2 in FINCHR-1.NB *) or[member[x_,FINCHAR],not[equal[complement[x_],image[S,intersection[FINITE,complement[x_]]]]], not[member[x_,y_]]] := True (* derived 2006 March 7 in PCON-A-U.NB *) or[member[x_,FINITE],member[A[x_],U[x_]],not[subclass[x_,OMEGA]]] := True (* derived 2008 August 7 in FIN-PP1.NB *) or[member[x_,FINITE],member[x_,core[subvar[PS],P[x_]]],not[member[x_,y_]]] := True (* derived 2006 March 14 in PCON-INF.NB *) or[member[x_,FINITE],member[y_,U[x_]],not[member[y_,x_]], not[member[intersection[x_,y_],FINITE]],not[subclass[x_,OMEGA]]] := True (* derived 2008 August 7 in TARSKI.NB *) or[member[x_,FINITE],not[AxReg],not[subclass[P[x_],FINITE]]] := True (* derived 2005 July 20 in CARD-Q.NB *) or[member[x_,FINITE],not[equal[card[x_],card[y_]]],not[member[y_,FINITE]]] := True (* derived 2005 January 31 in X4210.NB *) or[member[x_,FINITE],not[FUNCTION[x_]],not[member[domain[x_],FINITE]]] := True (* derived 2005 January 7 in CARD-K.NB *) or[member[y_,FINITE],not[member[x_,FINITE]],not[member[pair[x_,y_],K]]] := True (* derived 2005 January 27 in FINITE.NB *) or[member[x_,FINITE],not[member[y_,FINITE]],not[member[pair[x_,y_],Q]]] := True (* derived 2005 January 27 in FINITE.NB *) or[member[y_,FINITE],not[member[x_,FINITE]],not[member[pair[x_,y_],Q]]] := True (* derived 2003 December 27 based on COFINITE.TXT *) or[member[x_,FINITE],not[member[y_,FINITE]],not[subclass[x_,y_]]] := True (* derived 2005 February 3 in X4224.NB *) or[member[x_,FINITE],not[member[y_,FINITE]],not[subclass[U[x_],y_]]] := True (* derived 2005 October 7 based on FIN-PO.NB *) or[member[x_,FINITE],not[member[fix[x_],FINITE]],not[PARTIALORDER[x_]]] := True (* derived 2006 March 14 in PCON-INF.NB *) or[member[x_,FINITE],not[member[intersection[x_,U[x_]],FINITE]],not[subclass[x_,OMEGA]]] := True (* derived 2004 January 13 based on FIN-SUPC.NB *) or[member[x_,FINITE],not[member[x_,y_]],not[subclass[P[x_],FINITE]]] := True (* derived 2007 June 30 in RANK-FIN.NB *) or[member[x_,FINITE],not[member[rank[x_],omega]]] := True (* derived 2007 December 4 in H-FIN.NB *) or[member[x_,FINITE],not[member[tc[x_],FINITE]]] := True (* derived 2005 August 14 in REPLACE2.NB *) or[member[x_,FINITE],not[member[U[x_],omega]]] := True (* derived 2007 July 3 in ITERSING.NB *) or[member[x_,FINITE],not[member[U[x_],x_]],not[subclass[x_,omega]]] := True (* derived 2005 November 5 in FIN-RELN.NB *) or[member[x_,FINITE],not[subclass[x_,domain[fin[y_]]]]] := True (* derived 2005 November 2 in FIN.NB *) or[member[x_,FINITE],not[subclass[x_,fin[y_]]]] := True (* derived 2005 August 14 in REPLACE2.NB *) or[member[x_,FINITE],not[subclass[x_,nat[y_]]]] := True (* derived 2006 March 14 in PCON-INF.NB *) or[member[x_,FINITE],not[subclass[x_,OMEGA]],not[subclass[y_,x_]], not[subclass[image[IMAGE[id[x_]],y_],FINITE]],subclass[y_,U[x_]]] := True (* derived 2006 March 14 in PCON-INF.NB *) or[member[x_,FINITE],not[subclass[x_,OMEGA]], subclass[intersection[x_,image[inverse[IMAGE[id[x_]]],FINITE]],U[x_]]] := True (* derived 2006 March 18 in OL-DO.NB *) or[member[x_,FINITE],not[subclass[x_,OMEGA]], subclass[image[IMAGE[id[x_]],range[ordlist[x_]]],FINITE]] := True (* derived 2007 February 22 in SUOM-HER.NB *) or[member[x_,FINITE],not[subclass[x_,omega]],subclass[omega,image[inverse[S],x_]]] := True (* derived 2006 March 18 in OL-DO.NB *) or[member[x_,FINITE],not[subclass[x_,OMEGA]],subclass[range[ordlist[x_]],U[x_]]] := True (* derived 2007 July 3 in ITERSING.NB *) or[member[x_,FINITE],not[subclass[x_,omega]],subclass[x_,U[x_]]] := True (* derived 2005 November 5 in FIN-RELN.NB *) or[member[x_,FINITE],not[subclass[x_,range[fin[y_]]]]] := True (* derived 2006 March 20 in PCSU-FIN.NB *) or[member[x_,FINITE],not[subclass[x_,REGULAR]],not[subclass[P[x_],FINITE]]] := True (* derived 2008 August 7 in TARSKI.NB *) or[member[x_,FINITE],subclass[image[RC[x_],FINITE],image[PS,image[RC[x_],FINITE]]]] := True (* derived 2004 February 26 in DORA-1-2.NB *) or[member[first[x_],domain[y_]],not[member[x_,y_]],not[member[first[x_],z_]]] := True (* derived 2004 February 26 in DORA-1-2.NB *) or[member[first[x_],domain[y_]],not[member[x_,y_]],not[member[second[x_],z_]]] := True (* derived 2004 February 26 in DORA-1-2.NB *) or[member[first[x_],range[y_]],not[member[x_,inverse[y_]]]] := True (* derived 2006 September 13 in CATORELN.NB *) or[member[first[z_],V],not[equal[composite[x_,y_],first[z_]]]] := True (* derived 2006 September 17 in IDS-INCL.NB *) or[member[first[x_],V],not[equal[first[x_],id[y_]]]] := True (* derived 2004 June 12 in X1190.NB *) or[member[first[x_],V],not[FUNCTION[y_]],not[member[x_,y_]]] := True (* derived 2004 March 4 in PAIRSET.NB *) or[member[first[x_],V],not[FUNCTION[set[x_,y_]]],not[member[x_,z_]]] := True (* added 2002 November 3 based on FLIP.NB *) or[member[first[x_],V],not[member[first[second[x_]],y_]]] := True (* derived 2004 June 12 in X1190.NB *) or[member[first[x_],V],not[member[x_,funpart[y_]]]] := True (* derived 2004 February 26 in DORA-1-2.NB *) or[member[first[x_],V],not[member[x_,inverse[y_]]]] := True (* added 2003 May 30 based on RESTRICT.NB *) or[member[first[x_],V],not[member[second[x_],y_]]] := True (* derived 2006 September 13 in CATORELN.NB *) or[member[first[x_],V],not[subclass[first[x_],cart[u_,v_]]]] := True (* derived 2006 September 17 in IDS-INCL.NB *) or[member[first[x_],V],not[subclass[first[x_],id[y_]]]] := True (* added 2003 June 25 based on ACL-UCL.NB *) or[member[x_,fix[ACLOSURE]],not[equal[x_,Aclosure[x_]]],not[member[x_,y_]]] := True (* added 2003 June 29 based on FIX-E.NB *) or[member[x_,fix[composite[E,y_]]], not[member[x_,image[inverse[y_],x_]]]] := True (* added 2003 June 29 based on FIX-E.NB *) or[member[x_,fix[composite[y_,E]]],not[member[x_,U[image[inverse[y_],set[x_]]]]]] := True (* derived 2005 December 22 in MONO-FP.NB *) or[member[x_,fix[composite[y_,funpart[z_]]]],not[member[x_,domain[funpart[z_]]]], not[member[pair[APPLY[funpart[z_],x_],x_],y_]]] := True (* derived 2005 December 3 in X4300-02.NB *) or[member[x_,fix[composite[inverse[E],BIGCUP]]],not[member[x_,U[x_]]]] := True (* added 2003 June 29 based on FIX-E.NB *) or[member[x_,fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]],not[member[U[x_],x_]]] := True (* derived 2005 March 29 in CA.NB *) or[member[x_,fix[composite[inverse[E],y_]]],not[member[x_,U[image[y_,set[x_]]]]]] := True (* derived 2004 August 1 in COMMON2.NB *) or[member[z_,fix[composite[inverse[x_],y_]]],not[equal[APPLY[x_,z_],APPLY[y_,z_]]], not[FUNCTION[x_]],not[FUNCTION[y_]],not[member[z_,domain[x_]]]] := True (* derived 2005 December 22 in MONO-FP.NB *) or[member[x_,fix[composite[y_,z_]]],not[FUNCTION[z_]], not[member[x_,domain[z_]]],not[member[pair[APPLY[z_,x_],x_],y_]]] := True (* derived 2006 January 5 in FP-CO.NB *) or[member[v_,fix[composite[x_,y_]]],not[member[pair[u_,v_],x_]], not[member[pair[v_,u_],y_]],not[member[u_,w_]],not[member[v_,z_]]] := True (* derived 2005 December 14 in ZER-5.NB *) or[member[y_,fix[composite[S,x_]]],not[equal[domain[x_],P[y_]]], not[member[y_,z_]],not[subclass[range[x_],domain[x_]]]] := True (* derived 2005 December 17 in FPCO-SFU.NB *) or[member[y_,fix[composite[S,x_]]],not[FUNCTION[x_]],not[member[y_,domain[x_]]],not[subclass[APPLY[x_,y_],y_]]] := True (* derived 2005 December 12 in REPLACE.NB *) or[member[x_,fix[composite[S,y_]]],not[member[x_,image[inverse[y_],P[x_]]]]] := True (* derived 2005 December 14 in ZER-5.NB *) or[member[u_,fix[composite[S,x_]]],not[member[u_,w_]], not[member[pair[u_,v_],x_]],not[subclass[v_,u_]]] := True (* derived 2004 August 1 in FIXRULES.NB *) or[member[fix[composite[x_,y_]],V],not[member[x_,z_]]] := True (* derived 2004 August 1 in FIXRULES.NB *) or[member[fix[composite[x_,y_]],V],not[member[y_,z_]]] := True (* derived 2008 November 26 in AP-BINOP.NB *) or[member[u_,fix[domain[binop[x_]]]],not[member[pair[pair[u_,v_],w_],binop[x_]]]] := True (* derived 2008 November 26 in AP-BINOP.NB *) or[member[v_,fix[domain[binop[x_]]]],not[member[pair[pair[u_,v_],w_],binop[x_]]]] := True (* derived 2005 December 28 in BOTTOM.NB *) or[member[fix[x_],domain[GLB[x_]]],not[member[x_,CL]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[member[fix[x_],domain[LUB[x_]]],not[member[x_,CL]]] := True (* derived 2008 November 26 in AP-SEMGP.NB *) or[member[u_,fix[domain[semigp[x_]]]],not[member[pair[pair[u_,v_],w_],semigp[x_]]]] := True (* derived 2008 November 26 in AP-SEMGP.NB *) or[member[v_,fix[domain[semigp[x_]]]],not[member[pair[pair[u_,v_],w_],semigp[x_]]]] := True (* derived 2006 July 18 in BINHOM-2.NB *) or[member[fix[domain[x_]],V],not[member[x_,y_]]] := True (* added 2003 June 29 based on FIX-E.NB *) or[member[x_,fix[E]],not[member[x_,x_]]] := True (* derived 2008 November 2 in EQ-DJ.NB *) or[member[y_,fix[eqv[x_]]],not[equal[image[eqv[x_],set[y_]],image[eqv[x_],set[z_]]]], not[member[z_,fix[eqv[x_]]]]] := True (* derived 2004 January 8 in FIN-FU.NB *) or[member[fix[x_],FINITE],not[member[x_,FINITE]]] := True (* derived 2007 May 7 in FINITE.NB *) or[member[fix[x_],FINITE],not[member[subvar[x_],FINITE]]] := True (* derived 2006 March 21 in FIX-HULL.NB *) or[member[fix[HULL[x_]],y_],not[member[Aclosure[x_],y_]]] := True (* derived 2004 August 18 in X3080.NB *) or[member[fix[x_],image[IMAGE[inverse[DUP]],y_]],not[member[x_,y_]]] := True (* revised 2003 November 9 based on FUN-FIX.NB *) or[member[x_,fix[y_]],not[equal[x_,APPLY[y_,x_]]],not[FUNCTION[y_]],not[member[x_,z_]]] := True (* derived 2005 December 21 in CL-RULES.NB *) or[member[u_,fix[x_]],not[member[x_,CL]],not[member[pair[u_,v_],x_]]] := True (* derived 2005 December 21 in CL-RULES.NB *) or[member[v_,fix[x_]],not[member[x_,CL]],not[member[pair[u_,v_],x_]]] := True (* derived 2009 January 1 in COD-SU.NB *) or[member[x_,fix[y_]],not[member[x_,domain[y_]]],not[subclass[y_,Id]]] := True (* added 2003 June 25 based on FP-MEMBER.NB *) or[member[x_,fix[y_]],not[member[x_,z_]],not[member[pair[x_,x_],y_]]] := True (* derived 2004 March 18 in RFX-TRV.NB *) or[member[u_,fix[x_]],not[member[pair[u_,v_],x_]],not[REFLEXIVE[x_]]] := True (* derived 2004 March 18 in RFX-TRV.NB *) or[member[v_,fix[x_]],not[member[pair[u_,v_],x_]],not[REFLEXIVE[x_]]] := True (* derived 2007 April 23 in PO-SIMPL.NB *) or[member[x_,fix[po[z_]]],not[member[pair[x_,y_],po[z_]]]] := True (* derived 2007 April 23 in PO-SIMPL.NB *) or[member[y_,fix[po[z_]]],not[member[pair[x_,y_],po[z_]]]] := True (* derived 2007 April 23 in PO-SIMPL.NB *) or[member[y_,fix[po[x_]]],subclass[image[po[x_],set[y_]],z_]] := True (* derived 2006 March 30 in REG-DORA.NB *) or[member[fix[x_],REGULAR],not[member[x_,REGULAR]]] := True (* derived 2008 March 13 in TO-RULES.NB *) or[member[x_,fix[to[z_]]],not[member[pair[x_,y_],to[z_]]]] := True (* derived 2008 March 13 in TO-RULES.NB *) or[member[y_,fix[to[z_]]],not[member[pair[x_,y_],to[z_]]]] := True (* derived 2008 February 9 in ACY-TRV.NB *) or[member[u_,fix[trv[x_]]],not[member[pair[u_,u_],trv[x_]]]] := True (* added 2003 June 25 based on ACL-UCL.NB *) or[member[x_,fix[UCLOSURE]],not[equal[x_,Uclosure[x_]]],not[member[x_,y_]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[fix[x_],V],not[member[x_,y_]]] := True (* derived 2007 May 6 in CLIQUES.NB *) or[member[fix[x_],V],not[member[domain[x_],y_]]] := True (* derived 2008 March 9 in WO.NB *) or[member[x_,fix[wo[z_]]],not[member[pair[x_,y_],wo[z_]]]] := True (* derived 2008 March 9 in WO.NB *) or[member[y_,fix[wo[z_]]],not[member[pair[x_,y_],wo[z_]]]] := True (* added 2003 June 4 based on IMAGE.NB *) or[member[funpart[x_],image[FUNPART,y_]],not[member[x_,y_]]] := True (* derived 2006 March 30 in REG-FUNP.NB *) or[member[funpart[x_],REGULAR],not[member[x_,REGULAR]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[funpart[x_],V],not[member[x_,y_]]] := True (* derived 2004 December 11 in OO-Q.NB *) or[member[funpart[x_],V],not[member[domain[funpart[x_]],y_]]] := True (* derived 2005 December 20 in CLGLBLUB.NB *) or[member[GLB[x_],map[P[fix[x_]],fix[x_]]],not[member[x_,CL]]] := True (* derived 2005 September 27 in LUB-SET.NB *) or[member[GLB[x_],V],not[member[x_,y_]]] := True (* added 2003 June 4 based on IMAGE.NB *) or[member[H[x_],image[HC,y_]],not[member[x_,y_]]] := True (* derived 2006 March 30 in REG-H.NB *) or[member[H[x_],REGULAR],not[member[x_,REGULAR]]] := True (* added 2003 June 4 based on SETHOOD.NB *) or[member[H[x_],V],not[member[x_,y_]]] := True (* derived 2007 September 16 in AP-IM-FU.NB *) or[member[hull[x_,y_],image[HULL[x_],z_]],not[member[y_,z_]], not[member[y_,image[inverse[S],x_]]]] := True (* added 2003 June 4 based on IMAGE.NB *) or[member[HULL[x_],image[LAMBHULL,y_]],not[member[x_,y_]]] := True (* derived 2006 March 30 in REG-A.NB *) or[member[hull[reg[x_],y_],REGULAR],not[member[y_,image[inverse[S],reg[x_]]]]] := True (* derived 2006 July 18 in BINHOM-2.NB *) or[member[id[fix[domain[x_]]],binhom[x_,x_]],not[member[x_,BINOPS]]] := True (* derived 2005 August 5 in BINHOM-5.NB *) or[member[id[omega],domain[x_]],not[member[x_,binhom[INTADD,y_]]]] := True (* derived 2009 January 13 in CAT-IDS.NB *) or[member[u_,ids[cat[x_]]],not[member[u_,range[cat[x_]]]], not[subclass[composite[cat[x_],LEFT[u_]],Id]]] := True (* derived 2009 January 13 in CAT-IDS.NB *) or[member[u_,ids[cat[x_]]],not[member[u_,range[cat[x_]]]], not[subclass[composite[cat[x_],RIGHT[u_]],Id]]] := True (* derived 2005 December 3 in X3567.NB *) or[member[x_,image[BIGCUP,y_]],not[member[x_,OMEGA]],not[member[succ[x_],y_]]] := True (* derived 2005 February 11 in X3567.NB *) or[member[x_,image[BIGCUP,y_]],not[member[succ[x_],y_]],not[subclass[y_,omega]]] := True (* derived 2005 December 3 in X3567.NB *) or[member[x_,image[BIGCUP,y_]],not[member[succ[x_],y_]],not[subclass[y_,OMEGA]]] := True (* derived 2007 September 10 in UCH-ASS.NB *) or[member[image[CART,id[x_]],V],not[member[x_,y_]]] := True (* derived 2004 October 26 in AXCH-AC1.NB *) or[member[image[CHOICE,x_],V],not[AxCh],not[member[x_,y_]]] := True (* derived 2004 February 7 in COMPACT.NB *) or[member[x_,image[COARSER,FINITE]],not[equal[U[x_],U[y_]]],not[member[y_,COMPACT]],not[subclass[x_,y_]]] := True (* derived 2005 November 13 in COVER.NB *) or[member[x_,image[COARSER,y_]],not[equal[U[x_],U[z_]]],not[member[z_,y_]],not[subclass[z_,x_]]] := True (* derived 2004 August 10 in RS-3.NB *) or[member[image[COMPOSE,cart[x_,P[Id]]],V],not[member[x_,y_]]] := True (* derived 2006 November 23 in CURMAP-3.NB *) or[member[w_,image[CURRY,x_]],not[member[APPLY[inverse[CURRY],w_],x_]]] := True (* derived 2005 February 22 in DIVRULES.NB *) or[member[y_,image[DIV,z_]],not[member[x_,image[DIV,z_]]],not[member[pair[x_,y_],DIV]]] := True (* derived 2008 March 20 in RFX-IM.NB *) or[member[x_,image[DIV,y_]],not[member[x_,y_]],not[subclass[y_,omega]]] := True (* derived 2008 January 29 in IM-TRV.NB *) or[member[y_,image[eqv[w_],z_]],not[member[x_,image[eqv[w_],z_]]], not[member[pair[x_,y_],eqv[w_]]]] := True (* derived 2004 January 8 in FIN-FU.NB *) or[member[image[x_,y_],FINITE],not[FUNCTION[x_]],not[member[y_,FINITE]]] := True (* derived 2006 February 9 in FIN-SBV.NB *) or[member[image[x_,y_],FINITE],not[member[x_,FINITE]]] := True (* derived 2004 June 20 in X1505-11.NB *) or[member[image[funpart[y_],domain[x_]],V],not[member[x_,z_]]] := True (* derived 2004 May 4 in FIN-IMG.NB *) or[member[image[funpart[x_],y_],FINITE],not[member[y_,FINITE]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[image[funpart[x_],y_],V],not[member[y_,z_]]] := True (* derived 2004 May 4 in FIN-IMG.NB *) or[member[image[IMAGE[x_],y_],FINITE],not[member[y_,FINITE]]] := True (* derived 2008 January 3 in FIN-CUT.NB *) or[member[image[IMAGE[id[x_]],y_],FINITE],not[member[x_,FINITE]]] := True (* derived 2008 January 3 in COVERFIN.NB *) or[member[image[IMAGE[id[x_]],y_],image[COARSER,FINITE]],not[member[z_,FINITE]], not[subclass[x_,U[z_]]],not[subclass[z_,y_]]] := True (* derived 2005 November 18 in COMPACT.NB *) or[member[image[IMAGE[id[x_]],y_],image[COARSER,FINITE]], not[member[image[IMAGE[id[x_]],z_],COMPACT]],not[subclass[x_,U[y_]]], not[subclass[y_,z_]]] := True (* derived 2004 January 1 in SUB-T1.NB *) or[member[image[IMAGE[id[x_]],t_],T1],not[member[t_,T1]]] := True (* derived 2008 May 10 in RESTRICT.NB *) or[member[image[x_,y_],image[IMAGE[x_],z_]], not[equal[V,domain[VERTSECT[x_]]]],not[member[y_,z_]]] := True (* added 2003 June 4 based on IMAGE.NB *) or[member[image[x_,y_],image[IMAGE[x_],z_]],not[member[y_,z_]],not[member[image[x_,y_],w_]]] := True (* derived 2008 June 28 in IM-IMG.NB *) or[member[image[u_,v_],image[IMG,cart[x_,y_]]],not[member[u_,x_]],not[member[v_,y_]]] := True (* derived 2008 June 28 in IM-IMG.NB *) or[member[image[x_,y_],image[IMG,z_]],not[member[pair[x_,y_],z_]], not[subclass[z_,cart[u_,v_]]]] := True (* derived 2007 January 11 in INEQ-Z.NB *) or[member[x_,image[image[inverse[INTADD],set[y_]],range[PLUS]]], not[member[pair[x_,y_],INTLEQ]]] := True (* derived 2004 May 7 in OO-TOPS.NB *) or[member[image[IMAGE[x_],t_],TOPS],not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]],not[member[t_,TOPS]]] := True (* derived 2005 January 25 in SETHOOD.NB *) or[member[image[IMAGE[x_],y_],V],not[member[y_,z_]]] := True (* derived 2006 November 23 in CURMAP-3.NB *) or[member[w_,image[inverse[CURRY],x_]],not[member[APPLY[CURRY,w_],x_]]] := True (* derived 2008 January 29 in IM-TRV.NB *) or[member[x_,image[inverse[DIV],z_]],not[member[y_,image[inverse[DIV],z_]]], not[member[pair[x_,y_],DIV]]] := True (* derived 2008 March 20 in RFX-IM.NB *) or[member[x_,image[inverse[DIV],y_]],not[member[x_,y_]],not[subclass[y_,omega]]] := True (* derived 2004 June 19 in X14--.NB *) or[member[image[inverse[y_],domain[x_]],V],not[member[composite[x_,y_],z_]]] := True (* derived 2006 November 3 in IM-IN-FU.NB *) or[member[y_,image[inverse[funpart[x_]],z_]], not[member[APPLY[funpart[x_],y_],z_]]] := True (* derived 2004 July 17 in FU-IM-IN.NB *) or[member[y_,image[inverse[x_],z_]],not[FUNCTION[x_]],not[member[APPLY[x_,y_],z_]]] := True (* added 2003 June 29 based on FIX-E.NB *) or[member[x_,image[inverse[y_],x_]],not[member[x_,fix[composite[E,y_]]]]] := True (* derived 2004 February 8 in DO-RA-IM.NB *) or[member[u_,image[inverse[z_],y_]],not[member[u_,x_]],not[member[v_,y_]],not[member[pair[u_,v_],z_]]] := True (* derived 2004 February 8 in DO-RA-IM.NB *) or[member[u_,image[inverse[z_],y_]],not[member[pair[u_,v_],z_]],not[subclass[z_,cart[x_,y_]]]] := True (* derived 2005 December 12 in REPLACE.NB *) or[member[x_,image[inverse[y_],P[x_]]],not[member[x_,fix[composite[S,y_]]]]] := True (* derived 2008 January 29 in IM-TRV.NB *) or[member[x_,image[inverse[po[w_]],z_]],not[member[y_,image[inverse[po[w_]],z_]]], not[member[pair[x_,y_],po[w_]]]] := True (* derived 2008 March 20 in RFX-IM.NB *) or[member[x_,image[inverse[po[y_]],z_]],not[member[x_,z_]],not[subclass[z_,fix[po[y_]]]]] := True (* derived 2005 November 17 in FIN-SBCV.NB *) or[member[x_,image[inverse[S],image[BIGCUP,intersection[w_,P[y_]]]]], not[member[z_,w_]],not[subclass[x_,U[z_]]],not[subclass[z_,y_]]] := True (* added 2001 December 21 based on DO-RA-IM.NB *) or[member[x_,image[inverse[S],z_]],not[member[y_,z_]],not[subclass[x_,y_]]] := True (* derived 2005 February 4 *) or[member[x_,image[inverse[S],y_]],not[member[tc[x_],y_]]] := True (* derived 2005 December 25 in APCPSCRS.NB *) or[member[image[inverse[second[x_]],domain[first[x_]]],V],not[member[first[x_],V]]] := True (* derived 2004 June 11 in x713-x744-x793-x801.NB *) or[member[x_,image[inverse[y],z]],not[member[x,domain[y]]],not[subclass[range[y],z]]] == True (* derived 2006 March 12 in HULL.NB *) or[member[y_,image[inverse[S],x_]],not[member[hull[x_,y_],z_]]] := True (* derived 2005 December 6 in ISB5HER1.NB *) or[member[y_,image[inverse[S],x_]],not[member[z_,image[inverse[S],x_]]],not[subclass[y_,z_]]] := True (* derived 2007 October 16 in INS-MAP.NB *) or[member[x_,image[inverse[S],z_]],not[member[union[x_,y_],z_]]] := True (* derived 2008 January 29 in IM-TRV.NB *) or[member[x_,image[inverse[trv[w_]],z_]],not[member[y_,image[inverse[trv[w_]],z_]]], not[member[pair[x_,y_],trv[w_]]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[image[inverse[x_],y_],V],not[member[x_,z_]]] := True (* derived 2008 March 20 in INIT-WO.NB *) or[member[t_,image[inverse[wo[w_]],s_]],not[member[t_,s_]],not[subclass[s_,fix[wo[w_]]]]] := True (* derived 2007 February 10 in COMPOS-2.NB *) or[member[x_,image[NATMUL,cart[complement[succ[set[0]]],complement[succ[set[0]]]]]], not[member[x_,image[NATMUL,cart[x_,x_]]]]] := True (* derived 2007 February 10 in COMPOS-2.NB *) or[member[x_,image[NATMUL,cart[x_,x_]]], not[member[x_,image[NATMUL,cart[complement[succ[set[0]]],complement[succ[set[0]]]]]]]] := True (* derived 2004 February 8 in DO-RA-IM.NB *) or[member[v_,image[z_,x_]],not[member[u_,x_]],not[member[v_,y_]],not[member[pair[u_,v_],z_]]] := True (* derived 2004 February 28 in RA-IM.NB *) or[member[v_,image[w_,x_]],not[member[u_,x_]],not[member[pair[u_,v_],w_]],not[subclass[w_,cart[y_,z_]]]] := True (* derived 2004 February 8 in DO-RA-IM.NB *) or[member[v_,image[z_,x_]],not[member[pair[u_,v_],z_]],not[subclass[z_,cart[x_,y_]]]] := True (* derived 2006 January 16 in SUBFIXED.NB *) or[member[image[x_,P[y_]],V],not[FUNCTION[x_]],not[member[y_,z_]]] := True (* derived 2005 February 20 in CARD-TWO.NB *) or[member[x_,image[PAIRSET,Di]],not[member[y_,image[PAIRSET,Di]]],not[member[pair[x_,y_],Q]]] := True (* derived 2005 February 20 in CARD-TWO.NB *) or[member[x_,image[PAIRSET,Di]],not[member[y_,image[PAIRSET,Di]]],not[member[pair[y_,x_],Q]]] := True (* derived 2008 January 29 in IM-TRV.NB *) or[member[y_,image[po[w_],z_]],not[member[x_,image[po[w_],z_]]], not[member[pair[x_,y_],po[w_]]]] := True (* derived 2008 March 20 in RFX-IM.NB *) or[member[x_,image[po[y_],z_]],not[member[x_,z_]],not[subclass[z_,fix[po[y_]]]]] := True (* derived 2008 January 29 in IM-TRV.NB *) or[member[y_,image[Q,z_]],not[member[x_,image[Q,z_]]],not[member[pair[x_,y_],Q]]] := True (* derived 2007 April 29 in DO-CARD.NB *) or[member[x_,image[Q,OMEGA]],member[ord[y_],card[x_]]] := True (* derived 2005 July 20 in CARD-Q.NB *) or[member[x_,image[Q,OMEGA]],not[equal[card[x_],card[y_]]],not[member[y_,image[Q,OMEGA]]]] := True (* derived 2006 March 12 in DENUM.NB *) or[member[x_,image[Q,OMEGA]],not[equal[omega,card[x_]]]] := True (* derived 2007 April 29 in DO-CARD.NB *) or[member[x_,image[Q,OMEGA]],not[member[card[x_],y_]]] := True (* derived 2008 May 21 in S-Q.NB *) or[member[x_,image[Q,OMEGA]],not[member[y_,z_]],not[subclass[card[x_],y_]]] := True (* derived 2007 April 29 in DO-CARD.NB *) or[member[x_,image[Q,OMEGA]],subclass[y_,card[x_]]] := True (* derived 2008 January 29 in IM-TRV.NB *) or[member[x_,image[Q,P[z_]]],not[member[x_,image[Q,P[y_]]]],not[member[y_,image[Q,P[z_]]]]] := True (* derived 2008 May 21 in S-Q.NB *) or[member[w_,image[Q,P[x_]]],not[member[x_,y_]],not[member[pair[w_,z_],Q]], not[subclass[z_,x_]]] := True (* derived 2008 May 17 in CARDMONO.NB *) or[member[x_,image[Q,P[y_]]],not[member[y_,z_]],not[subclass[x_,y_]]] := True (* derived 2008 May 21 in S-Q.NB *) or[member[x_,image[Q,P[y_]]],not[member[y_,z_]],not[subclass[card[x_],y_]]] := True (* derived 2008 May 21 in S-Q.NB *) or[member[x_,image[Q,P[y_]]],not[member[pair[x_,y_],Q]]] := True (* derived 2008 May 21 in S-Q.NB *) or[member[x_,image[Q,P[z_]]],not[member[pair[y_,z_],Q]],not[subclass[x_,y_]]] := True (* derived 2008 May 17 in CARDMONO.NB *) or[member[x_,image[Q,P[wob[y_]]]],not[subclass[x_,wob[y_]]]] := True (* derived 2008 September 22 in UCHAINS.NB *) or[member[image[w_,x_],range[IMAGE[w_]]],not[member[w_,y_]],not[member[x_,z_]]] := True (* derived 2004 June 19 in X14--.NB *) or[member[image[x_,range[y_]],V],not[member[composite[x_,y_],z_]]] := True (* derived 2006 March 20 in PCSU-FIN.NB *) or[member[image[RANK,x_],FINITE],not[member[x_,FINITE]]] := True (* derived 2003 December 20 in RK-TC-3.NB *) or[member[image[RANK,x_],V],not[member[x_,y_]]] := True (* derived 2004 February 1 in FINCHAIN.NB *) or[member[image[RC[x_],y_],FINITE],not[member[y_,FINITE]]] := True (* derived 2008 March 18 in MEM-RAVS.NB *) or[member[image[x_,set[y_]],range[VERTSECT[x_]]],not[member[x_,z_]]] := True (* derived 2005 January 25 *) or[member[image[x_,set[u_]],range[VERTSECT[x_]]],not[member[u_,v_]],not[member[image[x_,set[u_]],V]]] := True (* added 2002 May 11 based on THIN.NB *) or[member[image[x_,set[y_]],V],not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2004 July 17 in FU-IM-IN.NB *) or[member[image[x_,set[y_]],V],not[FUNCTION[x_]]] := True (* derived 2006 October 24 in EVAL.NB *) or[member[image[x_,set[y_]],V],not[member[y_,domain[funpart[x_]]]]] := True (* derived 2008 May 10 in RESTRICT.NB *) or[member[image[thinpart[x_],y_],image[IMAGE[thinpart[x_]],z_]],not[member[y_,z_]]] := True (* derived 2008 March 18 in MEM-RAVS.NB *) or[member[image[thinpart[x_],set[y_]],range[VERTSECT[thinpart[x_]]]],not[member[y_,z_]]] := True (* derived 2004 August 1 in THINNESS.NB *) or[member[image[thinpart[x_],y_],V],not[member[y_,z_]]] := True (* derived 2008 January 29 in IM-TRV.NB *) or[member[y_,image[trv[w_],z_]],not[member[x_,image[trv[w_],z_]]], not[member[pair[x_,y_],trv[w_]]]] := True (* derived 2004 August 1 in THINNESS.NB *) or[member[image[trv[thinpart[x_]],y_],V],not[member[y_,z_]]] := True (* derived 2004 September 12 in WF-REC-5.NB *) or[member[image[trv[x_],set[y_]],V],not[equal[V,domain[VERTSECT[x_]]]]] := True (* derived 2005 February 6 in X3398.NB *) or[member[image[x_,y_],V],not[equal[V,domain[VERTSECT[x_]]]],not[member[y_,z_]]] := True (* derived 2004 June 20 in X1505-11.NB *) or[member[image[x_,y_],V],not[FUNCTION[x_]],not[member[y_,z_]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[image[x_,y_],V],not[member[x_,z_]]] := True (* derived 2004 August 19 in X2901-93.NB *) or[member[image[x_,y_],V],not[member[image[x_,z_],V]],not[subclass[y_,z_]]] := True (* derived 2004 June 26 in X1509.NB *) or[member[image[x_,y_],V],not[member[range[x_],z_]]] := True (* added 2002 May 19 based on THIN.NB *) or[member[image[x_,y_],V],not[member[y_,V]],not[subclass[y_,domain[VERTSECT[x_]]]]] := True (* derived 2008 September 22 in VS-RA.NB *) or[member[image[VERTSECT[x_],y_],V],not[member[x_,z_]]] := True (* derived 2006 March 30 in ZN-SU.NB *) or[member[image[ZN,x_],REGULAR],not[member[x_,REGULAR]]] := True (* derived 2005 January 4 in IMINRANK.NB *) or[member[image[ZN,x_],V],not[member[x_,OMEGA]]] := True (* derived 2003 December 20 in ZN-SUC.NB *) or[member[image[ZN,x_],V],not[member[x_,REGULAR]]] := True (* added 2002 October 8 based on INVAR-I.NB *) or[member[intersection[x_,y_],Aclosure[z_]],not[member[x_,z_]],not[member[y_,z_]]] := True (* derived 2007 July 5 in SBV-ENS.NB *) or[member[intersection[x_,y_],Aclosure[z_]], not[member[x_,Aclosure[z_]]],not[member[y_,Aclosure[z_]]]] := True (* derived 2008 March 20 in INIT-WO.NB *) or[member[intersection[complement[s_],fix[wo[setpart[w_]]]],range[VERTSECT[wo[setpart[w_]]]]], not[equal[image[inverse[wo[setpart[w_]]],s_],s_]]] := True (* derived 2005 January 9 *) or[member[intersection[y_,complement[x_]],range[SINGLETON]],not[member[pair[x_,y_],K]]] := True (* derived 2004 November 17 in INTERVAL.NB *) or[member[intersection[x_,complement[y_]],V],not[member[y_,z_]]] := or[member[x,V],not[member[y,z]]] (* derived 2003 December 28 in PTCLOSED.NB *) or[member[intersection[complement[set[x_]],U[t_]],t_],not[member[t_,PointClosed]],not[member[x_,U[t_]]]] := True (* derived 2005 February 19 in X3446.NB *) or[member[intersection[x_,y_],DESCENDING],not[member[y_,DESCENDING]],not[subclass[U[x_],x_]]] := True (* derived 2008 September 17 in FNCH-CUT.NB *) or[member[intersection[x_,y_],FINCHAR],not[equal[complement[x_], image[S,intersection[FINITE,complement[x_]]]]],not[member[y_,FINCHAR]]] := True (* derived 2008 September 17 in TUKEY.NB *) or[member[intersection[x_,y_],FINCHAR],not[member[x_,FINCHAR]],not[member[y_,FINCHAR]]] := True (* derived 2004 January 8 in FIN-FU.NB *) or[member[intersection[x_,y_],FINITE],not[member[x_,FINITE]]] := True (* added 2002 October 8 based on INVAR-I.NB *) or[member[intersection[u_,v_],image[CAP,cart[x_,y_]]],not[member[u_,x_]],not[member[v_,y_]]] := True (* derived 2004 August 18 in X3080.NB *) or[member[intersection[x_,z_],image[IMAGE[id[z_]],y_]],not[member[x_,y_]]] := True (* derived 2005 April 28 in MAX-MIN.NB *) or[member[intersection[nat[x_],nat[y_]],z_],not[member[nat[x_],z_]],not[member[nat[y_],z_]]] := True (* derived 2007 July 5 in SBV-ENS.NB *) or[member[intersection[x_,y_],z_],not[member[x_,z_]], not[member[y_,z_]],not[subclass[image[CAP,cart[z_,z_]],z_]]] := True (* derived 2006 March 20 in PCSU-FIN.NB *) or[member[intersection[OMEGA,x_],FINITE],not[subclass[P[x_],FINITE]]] := True (* derived 2008 January 20 in HART-NUM.NB *) or[member[intersection[OMEGA,image[Q,P[x_]]],OMEGA],subclass[OMEGA,image[Q,P[x_]]]] := True (* added 2002 November 24 based on VERTSECT.NB *) or[member[intersection[x_,y_],omega],not[member[x_,omega]],not[member[y_,omega]]] := True (* derived 2005 December 6 in ISB5HER1.NB *) or[member[intersection[OMEGA,x_],OMEGA],not[equal[x_,image[inverse[S],x_]]],subclass[OMEGA,x_]] := True (* derived 2005 December 3 in X3641.NB *) or[member[intersection[OMEGA,x_],OMEGA],not[member[x_,y_]],not[subclass[U[x_],x_]]] := True (* derived 2005 February 12 in X3634-39.NB *) or[member[intersection[OMEGA,x_],OMEGA],not[member[x_,OMEGA]]] := True (* derived 2005 December 3 in X3641.NB *) or[member[intersection[OMEGA,x_],OMEGA],not[subclass[U[x_],x_]],subclass[OMEGA,x_]] := True (* derived 2008 September 17 in FNCH-CUT.NB *) or[member[intersection[x_,P[y_]],FINCHAR],not[equal[complement[x_], image[S,intersection[FINITE,complement[x_]]]]],not[member[y_,z_]]] := True (* derived 2004 January 24 in FIN-DJ3.NB *) or[member[intersection[x_,P[y_]],FINITE],not[member[y_,FINITE]]] := True (* derived 2004 May 4 in REPLACE.NB *) or[member[intersection[x_,P[y_]],V],not[member[y_,z_]]] := True (* derived 2005 December 22 in UCL-CL.NB *) or[member[intersection[x_,P[y_]],V],not[member[core[x_,y_],z_]]] := True (* added 2003 June 5 based on REG.NB *) or[member[intersection[x_,y_],REGULAR],not[member[x_,REGULAR]]] := True (* derived 2003 December 20 in RK-TC-3.NB *) or[member[intersection[REGULAR,x_],REGULAR],not[member[x_,V]]] := True (* derived 2006 March 20 in PCSU-FIN.NB *) or[member[intersection[REGULAR,x_],V],not[member[image[RANK,x_],y_]]] := True (* derived 2006 March 20 in PCSU-FIN.NB *) or[member[intersection[REGULAR,x_],V],not[subclass[P[x_],FINITE]]] := True (* derived 2005 February 10 in X3614.NB *) or[member[intersection[RUSSELL,x_],OMEGA],not[member[x_,OMEGA]]] := True (* derived 2005 October 27 in TOP-THMS.NB *) or[member[intersection[x_,y_],top[z_]],not[member[x_,top[z_]]],not[member[y_,top[z_]]]] := True (* added 2003 July 3 based on PTCLOSED.NB *) or[member[intersection[x_,U[y_]],V],not[member[y_,z_]]] := True (* derived 2005 November 18 in COMPACT.NB *) or[member[intersection[x_,U[y_]],V],not[member[image[IMAGE[id[x_]],y_],z_]]] := True (* added 2002 October 8 based on INVAR-I.NB *) or[member[intersection[x_,y_],V],not[member[x_,z_]]] := True (* derived 2005 January 30 in IVR-V.NB *) or[member[invar[x_],V],not[member[domain[VERTSECT[x_]],y_]]] := True (* derived 2006 December 29 in BINISO.NB *) or[member[inverse[w_],binhom[y_,x_]],not[equal[fix[domain[y_]],range[w_]]],not[FUNCTION[inverse[w_]]], not[member[w_,binhom[x_,y_]]],not[member[x_,BINOPS]],not[member[y_,BINOPS]]] := True (* derived 2004 August 18 in X3080.NB *) or[member[inverse[x_],image[IMAGE[SWAP],y_]],not[member[x_,y_]]] := True (* derived 2006 September 15 in BIJECT.NB *) or[member[inverse[x_],map[z_,y_]],not[equal[z_,range[x_]]], not[FUNCTION[inverse[x_]]],not[member[x_,map[y_,z_]]]] := True (* derived 2008 October 1 in BIJ-MAP.NB *) or[member[inverse[w_],map[y_,x_]],not[member[w_,bij[x_,y_]]]] := True (* derived 2005 February 5 in X2417.NB *) or[member[x_,inverse[y_]],not[member[first[x_],z_]],not[member[pair[second[x_],first[x_]],y_]]] := True (* derived 2006 August 1 in BCL-ZADD.NB *) or[member[inverse[x_],y_],not[member[x_,y_]],not[subclass[image[IMAGE[SWAP],y_],y_]]] := True (* derived 2004 June 28 in X1773-1800.NB *) or[member[inverse[x_],REGULAR],not[member[x_,REGULAR]]] := True (* derived 2006 July 20 in BINHOM-3.NB *) or[member[inverse[times[x_]],image[VERTSECT[inverse[rotate[NATMUL]]],omega]],not[member[x_,omega]]] := True (* added 2003 August 10 based on ZADD-INV.NB *) or[member[inverse[x_],Z],not[member[x_,Z]]] := True (* added 2002 May 19 based on THIN.NB *) or[member[iterate[x_,y_],V],not[equal[V,domain[VERTSECT[x_]]]],not[member[y_,V]]] := True (* derived 2005 December 28 in CL-0-1.NB *) or[member[lb[x_,fix[x_]],range[SINGLETON]],not[member[x_,CL]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[member[u_,ld[nat[x_],natmul[nat[y_],nat[z_]]]],not[member[u_,ld[nat[x_],nat[z_]]]], not[member[nat[z_],ld[nat[x_],natmul[nat[y_],nat[z_]]]]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[member[u_,ld[x_,natmul[y_,z_]]],not[member[u_,ld[x_,z_]]],not[member[set[0],ld[x_,y_]]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[member[w_,ld[x_,y_]],not[member[u_,ld[x_,y_]]], not[member[v_,ld[x_,y_]]],not[member[w_,ld[u_,v_]]]] := True (* derived 2007 March 2 in LD-1.NB *) or[member[x_,ld[y_,z_]],not[member[pair[y_,natadd[w_,x_]],DIV]], not[member[pair[z_,w_],DIV]]] := True (* derived 2005 December 20 in CLGLBLUB.NB *) or[member[LUB[x_],map[P[fix[x_]],fix[x_]]],not[member[x_,CL]]] := True (* derived 2005 September 27 in LUB-SET.NB *) or[member[LUB[x_],V],not[member[x_,y_]]] := True (* derived 2008 December 5 in DORA-GPS.NB *) or[member[x_,map[cart[range[x_],range[x_]],range[x_]]],not[member[x_,GROUPS]]] := True (* derived 2009 January 1 in MON-AP.NB *) or[member[x_,map[cart[range[x_],range[x_]],range[x_]]],not[member[x_,MONOIDS]]] := True (* derived 2006 July 11 in BINOP-RS.NB *) or[member[x_,map[domain[x_],fix[domain[x_]]]],not[member[x_,BINOPS]]] := True (* derived 2006 November 23 in CUR-BO.NB *) or[member[w_,map[domain[w_],map[domain[w_],domain[w_]]]], not[member[w_,image[CURRY,BINOPS]]]] := True (* derived 2004 December 5 in MAPRULES.NB *) or[member[x_,map[domain[x_],y_]],not[FUNCTION[x_]],not[member[x_,z_]],not[subclass[range[x_],y_]]] := True (* derived 2004 December 5 in MAPRULES.NB *) or[member[x_,map[domain[x_],V]],not[FUNCTION[x_]],not[member[x_,y_]]] := True (* derived 2006 August 19 in CARD-MAP.NB *) or[member[map[x_,y_],FINITE],not[member[x_,FINITE]],not[member[y_,FINITE]]] := True (* derived 2008 June 28 in IM-MAP.NB *) or[member[map[u_,v_],image[MAP,cart[x_,y_]]],not[member[u_,x_]],not[member[v_,y_]]] := True (* derived 2008 June 28 in IM-MAP.NB *) or[member[map[x_,y_],image[MAP,z_]],not[member[pair[x_,y_],z_]], not[subclass[z_,cart[u_,v_]]]] := True (* derived 2004 December 5 in MAP-CO.NB *) or[member[w_,map[x_,y_]],not[equal[x_,domain[w_]]], not[FUNCTION[w_]],not[member[w_,z_]],not[subclass[w_,cart[v_,y_]]]] := True (* derived 2004 December 5 in MAP-CO.NB *) or[member[w_,map[x_,y_]],not[equal[x_,domain[w_]]],not[FUNCTION[w_]], not[member[w_,z_]],not[subclass[range[w_],y_]]] := True (* derived 2008 December 28 in GP-DIR.NB *) or[member[t_,map[u_,w_]],not[member[t_,map[u_,v_]]],not[subclass[v_,w_]]] := True (* derived 2007 April 11 in MONUSMEM.NB *) or[member[y_,x_],member[nat[natsub[x_,y_]],z_],not[member[0,z_]]] := True (* derived 2005 June 27 in CXL-SUB.NB *) or[member[x_,z_],member[z_,y_],not[member[natsub[x_,y_],natsub[x_,z_]]], not[member[z_,omega]]] := True (* derived 2005 June 27 in CXL-SUB.NB *) or[member[x_,y_],member[y_,z_],not[member[natsub[x_,z_],natsub[y_,z_]]], not[member[y_,omega]]] := True (* derived 2005 June 7 in O7COR1.NB *) or[member[x_,z_],member[z_,y_],not[member[x_,y_]], not[member[y_,omega]],not[member[z_,omega]]] := True (* derived 2005 February 22 in DIVRULES.NB *) or[member[w_,x_],member[w_,y_],not[member[w_,z_]],not[subclass[z_,union[x_,y_]]]] := True (* derived 2005 June 27 in MOD-UNIQ.NB *) or[member[u_,v_],member[pair[y_,natsub[u_,v_]],DIV],not[member[pair[y_,u_],DIV]],not[member[pair[y_,v_],DIV]]] := True (* derived 2007 January 27 in IM-DIV.NB *) or[member[x_,y_],member[set[0],y_],not[member[x_,PRIMES]],not[member[x_,image[DIV,y_]]]] := True (* derived 2007 December 5 in FULL.NB *) or[member[x_,y_],member[x_,U[tc[y_]]]] := member[x,tc[y]] (* derived 2007 April 5 in EVEN-ODD.NB *) or[member[nat[x_],even],member[nat[y_],even],member[natadd[nat[x_],nat[y_]],even]] := True (* derived 2007 April 5 in EVEN-ODD.NB *) or[member[nat[x_],even],member[nat[y_],even],member[natmul[nat[x_],nat[y_]],odd]] := True (* derived 2007 April 5 in EVEN-ODD.NB *) or[member[nat[x_],even],member[nat[y_],odd],member[natadd[nat[x_],nat[y_]],odd]] := True (* derived 2007 April 7 in LD3COR.NB *) or[member[nat[z_],ld[nat[x_],nat[y_]]], not[equal[natadd[nat[z_],natmul[nat[v_],nat[y_]]],natmul[nat[u_],nat[x_]]]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[member[nat[w_],ld[natmul[x_,nat[w_]],natmul[y_,nat[w_]]]], not[member[set[0],ld[x_,y_]]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[member[nat[z_],ld[x_,natmul[y_,nat[z_]]]],not[member[set[0],ld[x_,y_]]]] := True (* derived 2005 July 9 in MM10-12.NB *) or[member[nat[x_],z_],member[nat[y_],z_],not[member[intersection[nat[x_],nat[y_]],z_]]] := True (* derived 2005 July 9 in MM10-12.NB *) or[member[nat[x_],z_],member[nat[y_],z_],not[member[union[nat[x_],nat[y_]],z_]]] := True (* derived 2005 July 4 in SUCC-NAT.NB *) or[member[x_,nat[y_]],member[succ[x_],nat[y_]]] := member[x,nat[y]] (* derived 2005 February 13 in NAT.NB *) or[member[nat[x_],nat[y_]],member[nat[y_],nat[x_]]] := not[equal[nat[x],nat[y]]] (* derived 2005 February 13 in NAT.NB *) or[member[nat[x_],nat[y_]],member[nat[y_],nat[z_]],not[member[nat[x_],nat[z_]]]] := True (* derived 2007 January 14 in ADD-INEQ.NB *) or[member[nat[w_],nat[x_]],member[nat[y_],nat[z_]], not[member[natadd[nat[w_],nat[y_]],natadd[nat[x_],nat[z_]]]]] := True (* derived 2007 January 13 in MUL-INEQ.NB *) or[member[nat[w_],nat[x_]],member[nat[y_],nat[z_]], not[member[natmul[nat[w_],nat[y_]],natmul[nat[x_],nat[z_]]]]] := True (* derived 2005 July 9 in O26.NB *) or[member[nat[x_],nat[y_]],member[nat[x_],natadd[nat[y_],nat[z_]]],not[member[nat[natsub[nat[x_],nat[y_]]],nat[z_]]]] := True (* derived 2005 July 10 in O25.NB *) or[member[nat[x_],nat[y_]],member[natadd[nat[y_],nat[z_]],nat[x_]],not[member[nat[z_],nat[natsub[nat[x_],nat[y_]]]]]] := True (* derived 2005 June 24 in TRANSPOS.NB *) or[member[nat[y_],nat[z_]],member[natadd[nat[z_],x_],nat[y_]],not[member[x_,natsub[nat[y_],nat[z_]]]]] := True (* derived 2005 July 17 in EQV-MOD.NB *) or[member[nat[x_],nat[y_]],member[pair[nat[z_],natsub[nat[x_],nat[y_]]],DIV], not[equal[natmod[nat[x_],nat[z_]],natmod[nat[y_],nat[z_]]]]] := True (* derived 2007 January 15 in EXP-MONO.NB *) or[member[nat[x_],nat[y_]], member[pair[natexp[nat[z_],nat[y_]],natexp[nat[z_],nat[x_]]],DIV]] := True (* derived 2005 July 9 in O26.NB *) or[member[nat[x_],nat[y_]],not[member[nat[z_],nat[natsub[nat[y_],nat[x_]]]]]] := True (* derived 2007 January 14 in EXP-MONO.NB *) or[member[nat[x_],nat[y_]],not[member[natexp[nat[x_],nat[z_]],natexp[nat[y_],nat[z_]]]]] := True (* derived 2007 January 15 in EXP-MONO.NB *) or[member[nat[x_],nat[y_]], not[member[natexp[succ[nat[z_]],nat[x_]],natexp[succ[nat[z_]],nat[y_]]]]] := True (* derived 2005 April 28 in MAX-MIN.NB *) or[member[nat[x_],nat[y_]],not[member[union[nat[x_],nat[z_]],nat[y_]]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[member[nat[natsub[u_,v_]],ld[x_,y_]],not[member[u_,ld[x_,y_]]],not[member[v_,ld[x_,y_]]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[member[nat[natsub[natmul[u_,nat[s_]],natmul[v_,nat[t_]]]],ld[x_,y_]], not[member[u_,ld[x_,y_]]],not[member[v_,ld[x_,y_]]]] := True (* derived 2007 April 11 in MONUSMEM.NB *) or[member[nat[natsub[x_,y_]],z_],not[member[0,z_]],not[subclass[x_,y_]]] := True (* derived 2007 April 11 in MONUSMEM.NB *) or[member[nat[natsub[x_,y_]],z_],not[member[natsub[x_,y_],z_]]] := True (* derived 2005 April 26 in TRICHOT.NB *) or[member[x_,nat[y_]],not[equal[x_,nat[y_]]]] := not[equal[x,nat[y]]] (* derived 2005 April 26 in TRICHOT.NB *) or[member[nat[x_],y_],not[member[y_,nat[x_]]]] := not[member[y,nat[x]]] (* derived 2007 March 17 in NAT-LT.NB *) or[member[x_,nat[z_]],not[member[natadd[x_,y_],nat[z_]]]] := True (* derived 2005 April 28 in NATORDER.NB *) or[member[x_,nat[z_]],not[member[x_,y_]],not[member[y_,nat[z_]]]] := True (* derived 2005 July 9 in MM10-12.NB *) or[member[x_,nat[y_]],not[member[succ[x_],nat[y_]]]] := True (* derived 2007 April 5 in EVEN-ODD.NB *) or[member[nat[x_],odd],member[nat[y_],odd],member[natadd[nat[x_],nat[y_]],even]] := True (* derived 2007 April 5 in EVEN-ODD.NB *) or[member[nat[x_],odd],member[natmul[nat[x_],nat[y_]],even]] := True (* derived 2006 August 16 in EVOD-ADD.NB *) or[member[natadd[x_,y_],even],not[member[x_,even]],not[member[y_,even]]] := True (* derived 2006 August 16 in EVOD-ADD.NB *) or[member[natadd[x_,y_],even],not[member[x_,odd]],not[member[y_,odd]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[member[natadd[u_,v_],ld[x_,y_]],not[member[u_,ld[x_,y_]]],not[member[v_,ld[x_,y_]]]] := True (* derived 2007 March 13 in SUB-LT.NB *) or[member[x_,natadd[y_,z_]],not[member[z_,omega]],not[member[natsub[x_,y_],z_]]] := True (* derived 2006 August 16 in EVOD-ADD.NB *) or[member[natadd[x_,y_],odd],not[member[x_,even]],not[member[y_,odd]]] := True (* derived 2007 March 13 in DIV-LT.NB *) or[member[natdiv[x_,y_],z_],not[member[x_,natmul[y_,z_]]], not[member[z_,omega]],not[member[pair[y_,x_],DIV]]] := True (* derived 2007 January 18 in EXP-MONO.NB *) or[member[natexp[nat[w_],nat[x_]],natexp[nat[w_],nat[y_]]], not[member[nat[x_],nat[y_]]],not[member[set[0],nat[w_]]]] := True (* derived 2006 August 16 in EVOD-MUL.NB *) or[member[natmul[x_,y_],even],not[member[x_,even]],not[member[y_,even]]] := True (* derived 2006 August 16 in EVOD-MUL.NB *) or[member[natmul[x_,y_],even],not[member[x_,even]],not[member[y_,omega]]] := True (* derived 2006 August 16 in EVOD-MUL.NB *) or[member[natmul[x_,y_],even],not[member[x_,odd]],not[member[y_,even]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[member[natmul[w_,nat[z_]],ld[natmul[x_,nat[z_]],natmul[y_,nat[z_]]]], not[member[w_,ld[x_,y_]]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[member[natmul[w_,nat[z_]],ld[x_,y_]],not[member[w_,ld[x_,y_]]]] := True (* derived 2005 June 28 in O-MUL.NB *) or[member[natmul[nat[u_],nat[v_]],natmul[nat[x_],nat[y_]]],not[member[nat[u_],nat[x_]]],not[member[nat[v_],nat[y_]]]] := True (* derived 2006 November 30 in EXP-INEQ.NB *) or[member[natmul[x_,y_],natexp[succ[x_],y_]], not[member[x_,omega]],not[member[y_,omega]]] := True (* derived 2006 August 16 in EVOD-MUL.NB *) or[member[natmul[x_,y_],odd],not[member[x_,odd]],not[member[y_,odd]]] := True (* derived 2007 March 13 in SUB-LT.NB *) or[member[natsub[x_,y_],z_],member[x_,y_], not[member[x_,natadd[y_,z_]]],not[member[y_,omega]],not[member[z_,omega]]] := True (* derived 2005 June 24 in TRANSPOS.NB *) or[member[y_,natsub[nat[x_],z_]],not[member[natadd[y_,z_],nat[x_]]]] := True (* derived 2008 January 2 in FINCHR-1.NB *) or[member[x_,y_],not[equal[complement[y_],image[S,intersection[FINITE,complement[y_]]]]], not[member[x_,z_]],not[subclass[intersection[FINITE,P[x_]],y_]]] := True (* added 2001 October 11 based on EQUALMEM.NB *) or[member[x_,y_],not[equal[y_,z_]],not[member[x_,z_]]] := True (* added 2001 October 11 based on EQUALMEM.NB *) or[member[x_,y_],not[equal[z_,y_]],not[member[x_,z_]]] := True (* added 2001 October 11 based on EQUALMEM.NB *) or[member[x_,y_],not[equal[x_,z_]],not[member[z_,y_]]] := True (* added 2001 October 11 based on EQUALMEM.NB *) or[member[x_,y_],not[equal[z_,x_]],not[member[z_,y_]]] := True (* added 2002 October 6 based on OMEGA-1.NB *) or[member[y_,x_],not[equal[x_,succ[y_]]]] := or[member[y,V],not[equal[x,y]]] (* derived 2005 October 25 in TOP-WRAP.NB *) or[member[x_,y_],not[equal[V,x_]]] := not[equal[V,x]] (* derived 2007 August 15 in CONDUCT.NB *) or[member[v_,y_],not[FUNCTION[z_]],not[member[u_,x_]], not[member[pair[u_,v_],z_]],not[subclass[image[z_,x_],y_]]] := True (* added 2002 April 25 based on FUL-A.NB *) or[member[x_,y_],not[member[x_,A[z_]]],not[member[y_,z_]]] := True (* derived 2008 September 18 in FIN-CHAR.NB *) or[member[x_,y_],not[member[y_,FINCHAR]],not[subclass[intersection[FINITE,P[x_]],y_]]] := True (* derived 2004 March 4 in RELATION.NB *) or[member[x_,y_],not[member[first[x_],z_]],not[member[pair[first[x_],second[x_]],y_]]] := True (* added 2003 June 29 based on FIX-E.NB *) or[member[x_,x_],not[member[x_,fix[E]]]] := True (* derived 2005 November 17 in FIN-SBCV.NB *) or[member[x_,z_],not[member[intersection[x_,y_],z_]],not[subclass[x_,y_]]] := True (* derived 2006 July 18 in MAP-AP.NB *) or[member[x_,u_],not[member[w_,map[u_,v_]]],not[member[APPLY[w_,x_],y_]]] := True (* derived 2006 July 18 in MAP-AP.NB *) or[member[x_,u_],not[member[w_,map[u_,v_]]],not[member[pair[x_,y_],w_]]] := True (* derived 2006 July 18 in MAP-AP.NB *) or[member[y_,v_],not[member[w_,map[u_,v_]]],not[member[pair[x_,y_],w_]]] := True (* derived 2007 March 24 in Q17.NB *) or[member[x_,y_],not[member[natadd[natmod[y_,z_],x_],natadd[natmod[x_,z_],y_]]]] := True (* derived 2007 August 15 in CONDUCT.NB *) or[member[v_,y_],not[member[u_,x_]],not[member[v_,w_]], not[member[pair[u_,v_],z_]],not[subclass[image[z_,x_],y_]]] := True (* derived 2008 March 8 in CNDCT-IN.NB *) or[member[u_,z_],not[member[u_,w_]],not[member[v_,y_]], not[member[pair[u_,v_],x_]],not[subclass[image[inverse[x_],y_],z_]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[w_,z_],not[member[w_,x_]],not[member[w_,y_]],not[subclass[intersection[x_,y_],z_]]] := True (* derived 2005 February 6 in X3432.NB *) or[member[x_,z_],not[member[x_,y_]],not[member[y_,z_]],not[subclass[U[z_],z_]]] := True (* added 2002 October 6 based on OMEGA-1.NB *) or[member[x_,z_],not[member[x_,y_]],not[member[y_,z_]],not[member[z_,omega]]] := True (* derived 2004 July 31 in SETPART.NB *) or[member[x_,y_],not[member[x_,z_]],not[member[setpart[x_],y_]]] := True (* added 2000 October 4 based on NONEMPTY.LOG *) or[member[x_,z_],not[member[x_,y_]],not[subclass[y_,z_]]] := True (* derived 2008 March 8 in CNDCT-IN.NB *) or[member[u_,z_],not[member[v_,y_]],not[subclass[u_,v_]], not[subclass[image[inverse[S],y_],z_]]] := True (* derived 2007 December 20 in PC-SU.NB *) or[member[w_,y_],not[member[w_,z_]],not[subclass[w_,x_]],not[subclass[P[x_],y_]]] := True (* derived 2007 July 10 in PC-SU.NB *) or[member[x_,y_],not[member[x_,z_]],not[subclass[P[x_],y_]]] := True (* derived 2007 March 17 in NAT-LT.NB *) or[member[x_,z_],not[member[z_,omega]],not[member[natadd[x_,y_],z_]]] := True (* added 2002 October 3 based on MONOSUB1.NB *) or[member[y_,x_],not[member[x_,omega]],not[member[y_,omega]],subclass[x_,y_]] := True (* added 2002 May 31 based on DICHOT.NB *) or[member[x_,y_],not[member[x_,OMEGA]],not[member[y_,OMEGA]],subclass[y_,x_]] := True (* added 2002 May 11 based on OM-2.NB *) or[member[x_,y_],not[member[y_,omega]],not[member[succ[x_],y_]]] := True (* derived 2005 February 10 in X3575.NB *) or[member[x_,y_],not[member[x_,omega]],not[subclass[x_,y_]],not[subclass[intersection[omega,P[y_]],y_]]] := True (* derived 2008 August 4 in SUC-ON-1.NB *) or[member[x_,y_],not[member[y_,OMEGA]],not[subclass[succ[x_],y_]]] := True (* derived 2005 January 7 in CARD-K.NB *) or[member[y_,z_],not[member[pair[x_,y_],K]],not[subclass[image[K,set[x_]],z_]]] := True (* derived 2004 February 28 in RA-IM.NB *) or[member[u_,x_],not[member[pair[u_,v_],w_]],not[subclass[w_,cart[x_,y_]]]] := True (* derived 2004 February 28 in RA-IM.NB *) or[member[v_,y_],not[member[pair[u_,v_],w_]],not[subclass[w_,cart[x_,y_]]]] := True (* derived 2009 January 4 in ASS-DIV.NB *) or[member[u_,x_],not[member[pair[pair[u_,v_],w_],t_]], not[subclass[t_,cart[cart[x_,y_],z_]]]] := True (* derived 2009 January 4 in ASS-DIV.NB *) or[member[v_,y_],not[member[pair[pair[u_,v_],w_],t_]], not[subclass[t_,cart[cart[x_,y_],z_]]]] := True (* derived 2007 November 29 in REGULAR.NB *) or[member[x_,y_],not[member[x_,REGULAR]],not[subclass[P[y_],y_]]] := True (* derived 2006 February 21 in A-IM-SUC.NB *) or[member[x_,y_],not[member[succ[x_],image[SUCC,y_]]],not[subclass[y_,OMEGA]]] := True (* derived 2008 August 17 in IVR-CUP.NB *) or[member[x_,z_],not[member[union[x_,y_],z_]],not[subclass[y_,x_]]] := True (* derived 2004 July 22 in X22--.NB *) or[member[z_,y_],not[member[x_,V]],not[subclass[z_,x_]],not[subclass[P[x_],y_]]] := True (* added 2002 April 27 based on FULSUC-F.NB *) or[member[x_,y_],not[subclass[y_,succ[x_]]],subclass[y_,x_]] := True (* derived 2004 February 8 in BASICS.NB *) or[member[x_,y_],not[subclass[y_,union[z_,set[x_]]]],subclass[y_,z_]] := True (* derived 2007 April 5 in EVEN-ODD.NB *) or[member[x_,odd],member[y_,odd],not[member[natadd[x_,y_],odd]]] := True (* derived 2007 April 5 in EVEN-ODD.NB *) or[member[x_,odd],not[member[natmul[x_,y_],odd]]] := True (* derived 2006 August 16 in EVOD-MUL.NB *) or[member[y_,odd],not[member[x_,odd]],not[member[natadd[x_,y_],even]]] := True (* derived 2007 April 5 in EVEN-ODD.NB *) or[member[x_,odd],not[member[x_,omega]]] := not[member[x,even]] (* derived 2007 April 10 in DV13.NB *) or[member[x_,omega],member[natmul[x_,y_],z_]] := member[x,omega] (* derived 2005 April 21 in AP-FACT.NB *) or[member[x_,omega],not[member[APPLY[FACTORIAL,x_],y_]]] := True (* derived 2007 April 5 in LD-3.NB *) or[member[x_,omega],not[member[w_,ld[x_,y_]]]] := True (* derived 2007 April 5 in LD-3.NB *) or[member[y_,omega],not[member[w_,ld[x_,y_]]]] := True (* derived 2005 June 1 in O18-O20.NB *) or[member[x_,omega],not[member[natadd[x_,y_],z_]]] := True (* derived 2007 March 13 in SUB-LT.NB *) or[member[x_,omega],not[member[x_,natadd[y_,z_]]], not[member[y_,omega]],not[member[z_,omega]]] := True (* derived 2007 March 13 in DIV-LT.NB *) or[member[x_,omega],not[member[natdiv[x_,y_],z_]]] := True (* derived 2007 March 13 in DIV-LT.NB *) or[member[y_,omega],not[member[natdiv[x_,y_],z_]]] := True (* derived 2007 March 17 in MOD-LT.NB *) or[member[x_,omega],not[member[natmod[x_,y_],z_]]] := True (* derived 2007 March 17 in MOD-LT.NB *) or[member[y_,omega],not[member[natmod[x_,y_],z_]]] := True (* derived 2007 February 8 in COMPOS-1.NB *) or[member[x_,omega],not[member[natmul[x_,y_],z_]]] := True (* derived 2005 May 25 in NATSUB.NB *) or[member[x_,omega],not[member[natsub[x_,y_],z_]]] := True (* derived 2005 May 25 in NATSUB.NB *) or[member[y_,omega],not[member[natsub[x_,y_],z_]]] := True (* added 2002 May 11 based on OM-1.NB *) or[member[x_,omega],not[member[x_,y_]],not[member[y_,omega]]] := True (* derived 2005 January 30 in X3837.NB *) or[member[x_,OMEGA],not[member[x_,y_]],not[member[y_,OMEGA]]] := True (* derived 2005 February 12 in X3634-39.NB *) or[member[x_,OMEGA],not[member[x_,y_]],not[subclass[intersection[FULL,P[x_]],succ[x_]]]] := True (* added 2002 May 28 based on CARD-OM.NB *) or[member[x_,OMEGA],not[member[x_,omega]]] := True (* derived 2006 October 31 in ADD-MEMB.NB *) or[member[x_,omega],not[member[z_,omega]],not[member[pair[x_,z_],iterate[SUCC,set[y_]]]]] := True (* derived 2006 October 31 in ADD-MEMB.NB *) or[member[y_,omega],not[member[z_,omega]],not[member[pair[x_,z_],iterate[SUCC,set[y_]]]]] := True (* derived 2008 August 6 in WF-PC-ON.NB *) or[member[x_,omega],not[member[x_,OMEGA]],subclass[omega,x_]] := True (* derived 2005 February 22 in DIVRULES.NB *) or[member[x_,omega],not[member[pair[x_,y_],DIV]]] := True (* derived 2005 February 22 in DIVRULES.NB *) or[member[y_,omega],not[member[pair[x_,y_],DIV]]] := True (* derived 2007 May 13 in PAIRFACT.NB *) or[member[x_,omega],not[member[pair[x_,y_],FACTORIAL]]] := True (* derived 2007 May 13 in PAIRFACT.NB *) or[member[y_,omega],not[member[pair[x_,y_],FACTORIAL]]] := True (* derived 2007 April 3 in DIV-MUL.NB *) or[member[x_,omega],not[member[pair[natmul[x_,y_],z_],DIV]]] := True (* derived 2007 April 3 in DIV-MUL.NB *) or[member[x_,omega],not[member[pair[w_,natmul[x_,y_]],DIV]]] := True (* derived 2006 October 31 in EXP-MEMB.NB *) or[member[x_,omega],not[member[pair[pair[x_,y_],z_],NATEXP]]] := True (* derived 2006 October 31 in EXP-MEMB.NB *) or[member[y_,omega],not[member[pair[pair[x_,y_],z_],NATEXP]]] := True (* derived 2006 October 31 in EXP-MEMB.NB *) or[member[z_,omega],not[member[pair[pair[x_,y_],z_],NATEXP]]] := True (* derived 2005 February 11 in X3567.NB *) or[member[x_,omega],not[member[succ[x_],y_]],not[subclass[y_,omega]]] := True (* derived 2005 December 3 in X3567.NB *) or[member[x_,OMEGA],not[member[succ[x_],y_]],not[subclass[y_,OMEGA]]] := True (* derived 2005 April 26 in DICHOT.NB *) or[member[x_,omega],not[member[x_,U[y_]]],not[member[y_,omega]]] := True (* added 2002 May 27 based on ON-DEFN.NB *) or[member[x_,OMEGA],not[member[x_,V]],not[subclass[intersection[FULL,P[x_]],succ[x_]]]] := True (* derived 2005 February 22 in DIVRULES.NB *) or[member[x_,omega],subclass[image[inverse[DIV],set[x_]],y_]] := True (* derived 2007 April 5 in LD-3.NB *) or[member[x_,omega],subclass[w_,natmul[x_,y_]]] := True (* derived 2006 March 30 in REG-FUNP.NB *) or[member[oopart[x_],REGULAR],not[member[x_,REGULAR]]] := True (* derived 2004 November 19 in SETHOOD.NB *) or[member[oopart[x_],V],not[member[x_,y_]]] := True (* derived 2004 December 11 in OO-Q.NB *) or[member[oopart[x_],V],not[member[domain[oopart[x_]],y_]]] := True (* derived 2007 April 29 in DO-CARD.NB *) or[member[ord[x_],card[y_]],not[member[y_,image[Q,OMEGA]]]] := member[ord[x],card[y]] (* derived 2005 December 3 in X3567.NB *) or[member[ord[x_],image[BIGCUP,y_]],not[member[succ[ord[x_]],y_]]] := True (* derived 2007 May 1 in ORDTRICH.NB *) or[member[x_,ord[y_]],not[equal[x_,ord[y_]]]] := not[equal[x,ord[y]]] (* derived 2006 May 16 in DO-ITER.NB *) or[member[x_,ord[z_]],not[member[x_,y_]],not[member[y_,ord[z_]]]] := True (* derived 2007 May 1 in ORDTRICH.NB *) or[member[ord[x_],y_],not[member[y_,ord[x_]]]] := not[member[y,ord[x]]] (* derived 2007 May 1 in ORDTRICH.NB *) or[member[x_,ord[y_]],not[member[ord[y_],x_]]] := not[member[ord[y],x]] (* derived 2005 December 6 in ORDINAL.NB *) or[member[ord[x_],ord[y_]],member[ord[y_],ord[x_]]] := not[equal[ord[x],ord[y]]] (* derived 2005 December 6 in ORDINAL.NB *) or[member[ord[x_],ord[y_]],member[ord[y_],ord[z_]],not[member[ord[x_],ord[z_]]]] := True (* derived 2008 May 17 in CARDMONO.NB *) or[member[ord[x_],ord[y_]],not[member[card[ord[x_]],card[ord[y_]]]]] := True (* derived 2005 January 15 in HILBERT.NB *) or[member[P[x_],y_],not[member[x_,z_]],not[subclass[image[POWER,z_],y_]]] := True (* derived 2006 January 6 in AP-MONO.NB *) or[member[pair[APPLY[x_,u_],APPLY[x_,v_]],composite[x_,y_,inverse[x_]]],not[FUNCTION[x_]], not[member[pair[u_,v_],y_]],not[PARTIALORDER[y_]],not[subclass[fix[y_],domain[x_]]]] := True (* derived 2006 January 6 in AP-MONO.NB *) or[member[pair[APPLY[x_,u_],APPLY[x_,v_]],composite[x_,y_,inverse[x_]]],not[FUNCTION[x_]], not[member[pair[u_,v_],y_]],not[subclass[y_,cart[domain[x_],domain[x_]]]]] := True (* derived 2005 December 21 in MONOTONE.NB *) or[member[pair[APPLY[y_,u_],APPLY[y_,v_]],x_],not[member[x_,CL]], not[member[y_,map[fix[x_],fix[x_]]]], not[member[pair[u_,v_],x_]],not[subclass[composite[y_,x_,inverse[y_]],x_]]] := True (* derived 2009 January 3 in CAT-AX-1.NB *) or[member[pair[APPLY[cat[x_],PAIR[u_,v_]],w_],domain[cat[x_]]], not[member[pair[u_,APPLY[cat[x_],PAIR[v_,w_]]],domain[cat[x_]]]]] := True (* derived 2009 January 3 in CAT-AX-1.NB *) or[member[pair[u_,APPLY[cat[x_],PAIR[v_,w_]]],domain[cat[x_]]], not[member[pair[APPLY[cat[x_],PAIR[u_,v_]],w_],domain[cat[x_]]]]] := True (* derived 2009 January 5 in CAT-AX-2.NB *) or[member[pair[u_,APPLY[cat[x_],PAIR[v_,w_]]],domain[cat[x_]]], not[member[pair[u_,v_],domain[cat[x_]]]],not[member[pair[v_,w_],domain[cat[x_]]]]] := True (* derived 2009 January 5 in CAT-AX-2.NB *) or[member[pair[APPLY[cat[x_],PAIR[u_,v_]],w_],domain[cat[x_]]], not[member[pair[u_,v_],domain[cat[x_]]]],not[member[pair[v_,w_],domain[cat[x_]]]]] := True (* derived 2007 August 14 in SMALLER.NB *) or[member[pair[x_,APPLY[funpart[y_],x_]],z_], not[member[x_,domain[funpart[y_]]]],not[subclass[funpart[y_],z_]]] := True (* derived 2005 December 16 in CANCELFU.NB *) or[member[pair[APPLY[funpart[x_],y_],y_],z_],not[member[y_,fix[composite[z_,funpart[x_]]]]]] := True (* derived 2007 October 27 in TOPPLE.NB *) or[member[pair[u_,APPLY[funpart[x_],u_]],w_],not[member[u_,t_]], not[subclass[t_,domain[funpart[x_]]]],not[subclass[funpart[x_],w_]]] := True (* derived 2005 December 17 in CANCELFU.NB *) or[member[pair[APPLY[funpart[x_],y_],z_],w_],not[member[pair[y_,z_],composite[w_,funpart[x_]]]]] := True (* derived 2008 August 19 in WF-DESC.NB *) or[member[pair[APPLY[funpart[t_],succ[nat[n_]]],APPLY[funpart[t_],nat[n_]]],x_], not[subclass[composite[inverse[SUCC],id[omega]], composite[inverse[funpart[t_]],x_,funpart[t_]]]]] := True (* derived 2007 April 26 in CL-GLBSU.NB *) or[member[pair[y_,APPLY[GLB[x_],0]],x_],not[member[x_,CL]],not[member[y_,fix[x_]]]] := True (* derived 2007 April 26 in CL-GLBSU.NB *) or[member[pair[APPLY[GLB[w_],y_],APPLY[GLB[w_],x_]],w_], not[member[w_,CL]],not[subclass[x_,y_]],not[subclass[y_,fix[w_]]]] := True (* derived 2007 March 6 in EVENODD.NB *) or[member[pair[APPLY[GLB[DIV],y_],x_],DIV],not[member[x_,y_]],not[subclass[y_,omega]]] := True (* derived 2007 April 20 in GCD-UP.NB *) or[member[pair[w_,APPLY[GLB[DIV],set[x_,y_]]],DIV], not[member[pair[w_,x_],DIV]],not[member[pair[w_,y_],DIV]]] := True (* derived 2005 December 21 in CL-RULES.NB *) or[member[pair[APPLY[GLB[x_],fix[composite[x_,y_]]],u_],x_], not[member[u_,fix[composite[x_,y_]]]],not[member[x_,CL]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[member[pair[y_,APPLY[GLB[x_],y_]],GLB[x_]],not[member[x_,CL]],not[subclass[y_,fix[x_]]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[member[pair[y_,APPLY[GLB[x_],y_]],GLB[x_]],not[member[y_,domain[GLB[x_]]]],not[PARTIALORDER[x_]]] := True (* derived 2007 April 21 in GCD-SU.NB *) or[member[pair[APPLY[GLB[DIV],y_],APPLY[GLB[DIV],x_]],DIV], not[subclass[x_,y_]],not[subclass[y_,omega]]] := True (* derived 2007 April 24 in GCD-ADJ0.NB *) or[member[pair[x_,APPLY[GLB[DIV],y_]],DIV],not[member[x_,omega]], not[subclass[y_,image[DIV,set[x_]]]]] := True (* derived 2005 December 20 in POGLBLUB.NB *) or[member[pair[APPLY[GLB[x_],u_],v_],x_],not[member[u_,domain[GLB[x_]]]], not[member[v_,u_]],not[PARTIALORDER[x_]]] := True (* derived 2005 December 20 in CLGLBLUB.NB *) or[member[pair[u_,APPLY[GLB[x_],v_]],x_],not[member[u_,fix[x_]]], not[member[x_,CL]],not[subclass[v_,image[x_,set[u_]]]]] := True (* derived 2005 December 20 in POGLBLUB.NB *) or[member[pair[u_,APPLY[GLB[x_],v_]],x_],not[member[u_,fix[x_]]], not[member[v_,domain[GLB[x_]]]],not[PARTIALORDER[x_]],not[subclass[v_,image[x_,set[u_]]]]] := True (* derived 2005 December 20 in CLGLBLUB.NB *) or[member[pair[APPLY[GLB[x_],u_],v_],x_],not[member[v_,u_]],not[member[x_,CL]],not[subclass[u_,fix[x_]]]] := True (* derived 2005 December 20 in POGLBLUB.NB *) or[member[pair[u_,APPLY[GLB[po[x_]],v_]],po[x_]],not[member[u_,fix[po[x_]]]],not[member[v_,domain[GLB[po[x_]]]]], not[subclass[v_,image[po[x_],set[u_]]]]] := True (* derived 2005 December 20 in POGLBLUB.NB *) or[member[pair[APPLY[GLB[po[x_]],w_],v_],po[x_]],not[member[v_,w_]],not[member[w_,domain[GLB[po[x_]]]]]] := True (* derived 2005 December 29 in BOTTOM-3.NB *) or[member[pair[y_,APPLY[GREATEST[x_],fix[x_]]],x_],not[member[x_,CL]],not[member[y_,fix[x_]]]] := True (* derived 2005 December 29 in BOTTOM-3.NB *) or[member[pair[APPLY[LEAST[x_],fix[x_]],y_],x_],not[member[x_,CL]],not[member[y_,fix[x_]]]] := True (* derived 2007 March 6 in LCM.NB *) or[member[pair[x_,APPLY[LUB[DIV],y_]],DIV],not[member[x_,y_]],not[subclass[y_,omega]]] := True (* derived 2005 December 21 in CL-RULES.NB *) or[member[pair[u_,APPLY[LUB[x_],fix[composite[y_,x_]]]],x_], not[member[u_,fix[composite[y_,x_]]]],not[member[x_,CL]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[member[pair[y_,APPLY[LUB[x_],y_]],LUB[x_]],not[member[x_,CL]],not[subclass[y_,fix[x_]]]] := True (* derived 2005 December 20 in CLGLBLUB.NB *) or[member[pair[APPLY[LUB[x_],u_],v_],x_],not[member[v_,fix[x_]]], not[member[x_,CL]],not[subclass[u_,image[inverse[x_],set[v_]]]]] := True (* derived 2005 December 20 in CLGLBLUB.NB *) or[member[pair[v_,APPLY[LUB[x_],u_]],x_],not[member[v_,u_]], not[member[x_,CL]],not[subclass[u_,fix[x_]]]] := True (* derived 2005 December 20 in POGLBLUB.NB *) or[member[pair[u_,APPLY[LUB[x_],v_]],x_],not[member[u_,v_]], not[member[v_,domain[LUB[x_]]]],not[PARTIALORDER[x_]]] := True (* derived 2005 December 20 in POGLBLUB.NB *) or[member[pair[APPLY[LUB[x_],u_],v_],x_],not[member[u_,domain[LUB[x_]]]],not[member[v_,fix[x_]]], not[PARTIALORDER[x_]],not[subclass[u_,image[inverse[x_],set[v_]]]]] := True (* derived 2005 December 20 in POGLBLUB.NB *) or[member[pair[APPLY[LUB[po[x_]],v_],u_],po[x_]],not[member[u_,fix[po[x_]]]], not[member[v_,domain[LUB[po[x_]]]]],not[subclass[v_,image[inverse[po[x_]],set[u_]]]]] := True (* derived 2005 December 20 in POGLBLUB.NB *) or[member[pair[v_,APPLY[LUB[po[x_]],w_]],po[x_]],not[member[v_,w_]],not[member[w_,domain[LUB[po[x_]]]]]] := True (* added 2003 November 12 based on CHARCORE.NB *) or[member[pair[x_,APPLY[z_,x_]],z_],not[FUNCTION[z_]],not[member[x_,domain[z_]]]] := True (* derived 2007 August 14 in SMALLER.NB *) or[member[pair[x_,APPLY[y_,x_]],z_],not[FUNCTION[y_]], not[member[x_,domain[y_]]],not[subclass[y_,z_]]] := True (* derived 2005 December 17 in CANCELFU.NB *) or[member[pair[APPLY[x_,y_],y_],z_],not[FUNCTION[x_]],not[member[y_,fix[composite[z_,x_]]]]] := True (* derived 2005 December 17 in CANCELFU.NB *) or[member[pair[APPLY[x_,y_],z_],w_],not[FUNCTION[x_]],not[member[pair[y_,z_],composite[w_,x_]]]] := True (* derived 2005 December 21 in MONOTONE.NB *) or[member[pair[u_,APPLY[x_,u_]],x_],not[member[u_,y_]],not[member[x_,map[y_,z_]]]] := True (* derived 2005 January 18 in CP-Q.NB *) or[member[pair[cart[cart[u_,v_],w_],cart[u_,cart[v_,w_]]],Q], not[member[u_,x_]],not[member[v_,y_]],not[member[w_,z_]]] := True (* derived 2005 January 18 in CP-Q.NB *) or[member[pair[cart[u_,v_],cart[v_,u_]],Q],not[member[u_,x_]],not[member[v_,y_]]] := True (* derived 2005 July 20 in CARD-Q.NB *) or[member[pair[cart[u_,x_],cart[v_,y_]],Q],not[member[pair[u_,v_],Q]],not[member[pair[x_,y_],Q]]] := True (* derived 2006 August 19 in MAP-DJU.NB *) or[member[pair[cart[map[x_,z_],map[y_,z_]],map[union[x_,y_],z_]],Q], not[equal[0,intersection[x_,y_]]],not[member[z_,w_]]] := True (* derived 2006 August 19 in MAP-DJU.NB *) or[member[pair[cart[map[x_,setpart[z_]],map[y_,setpart[z_]]],map[union[x_,y_],setpart[z_]]],Q], not[equal[0,intersection[x_,y_]]]] := True (* derived 2005 February 5 in X3321.NB similar to Theorem Q-RT-2 in Q proved 2000 May 9 *) or[member[pair[x_,cart[x_,set[y_]]],Q],not[member[x_,u_]],not[member[y_,v_]]] := True (* derived 2005 February 5 in X3321.NB *) or[member[pair[cart[x_,set[y_]],x_],Q],not[member[x_,u_]],not[member[y_,v_]]] := True (* derived 2009 January 4 in ASS-DIV.NB *) or[member[pair[u_,w_],composite[assoc[x_],inverse[FIRST]]], not[member[pair[pair[u_,v_],w_],assoc[x_]]]] := True (* derived 2009 January 4 in ASS-DIV.NB *) or[member[pair[v_,w_],composite[assoc[x_],inverse[SECOND]]], not[member[pair[pair[u_,v_],w_],assoc[x_]]]] := True (* derived 2009 January 5 in CAT-AX-2.NB *) or[member[pair[u_,w_],composite[cat[x_],inverse[FIRST]]], not[member[pair[pair[u_,v_],w_],cat[x_]]]] := True (* derived 2009 January 5 in CAT-AX-2.NB *) or[member[pair[u_,w_],composite[cat[x_],inverse[SECOND]]], not[member[pair[pair[v_,u_],w_],cat[x_]]]] := True (* derived 2009 January 1 in COD-SU.NB *) or[member[pair[u_,v_],composite[x_,inverse[FIRST]]],not[member[pair[pair[u_,v_],v_],x_]], not[member[u_,y_]],not[member[v_,z_]]] := True (* derived 2009 January 4 in ASS-DIV.NB *) or[member[pair[u_,w_],composite[x_,inverse[FIRST]]], not[member[pair[pair[u_,v_],w_],x_]],not[subclass[x_,cart[cart[V,V],V]]]] := True (* derived 2006 February 14 in ITER-OO.NB *) or[member[pair[u_,v_],composite[inverse[x_],y_]],not[member[pair[v_,u_],composite[inverse[y_],x_]]]] := True (* derived 2005 February 3 in MEMB-CO.NB *) or[member[pair[u_,w_],composite[x_,inverse[y_]]],not[member[pair[v_,u_],y_]], not[member[pair[v_,w_],x_]],not[subclass[x_,cart[V,V]]],not[subclass[y_,cart[V,V]]]] := True (* derived 2005 February 3 in MEMB-CO.NB *) or[member[pair[u_,w_],composite[x_,inverse[y_]]],not[member[u_,V]],not[member[v_,V]],not[member[w_,V]], not[member[pair[v_,u_],y_]],not[member[pair[v_,w_],x_]]] := True (* derived 2009 January 1 in COD-SU.NB *) or[member[pair[u_,v_],composite[x_,inverse[SECOND]]],not[member[pair[pair[v_,u_],v_],x_]], not[member[u_,y_]],not[member[v_,z_]]] := True (* derived 2009 January 4 in ASS-DIV.NB *) or[member[pair[v_,w_],composite[x_,inverse[SECOND]]], not[member[pair[pair[u_,v_],w_],x_]],not[subclass[x_,cart[cart[V,V],V]]]] := True (* derived 2008 February 9 in ACY-TRV.NB *) or[member[pair[u_,u_],composite[x_,x_]],not[member[pair[u_,v_],x_]], not[member[pair[v_,u_],x_]],not[subclass[x_,cart[V,V]]]] := True (* derived 2005 February 3 in MEMB-CO.NB *) or[member[pair[u_,w_],composite[x_,y_]],not[member[pair[u_,v_],y_]], not[member[pair[v_,w_],x_]],not[subclass[x_,cart[V,V]]],not[subclass[y_,cart[V,V]]]] := True (* added 2002 October 15 based on MEMBER.NB *) or[member[pair[u_,w_],composite[x_,y_]],not[member[u_,V]],not[member[v_,V]],not[member[w_,V]], not[member[pair[u_,v_],y_]],not[member[pair[v_,w_],x_]]] := True (* derived 2007 April 3 in DIV-DV.NB *) or[member[pair[x_,y_],DIV],member[pair[natmul[x_,z_],y_],DIV]] := member[pair[x,y],DIV] (* derived 2005 July 13 in DIV-CALC.NB *) or[member[pair[x_,y_],DIV],not[equal[0,natmod[y_,x_]]]] := True (* derived 2007 March 13 in DIV-LT.NB *) or[member[pair[y_,x_],DIV],not[member[natdiv[x_,y_],z_]]] := True (* derived 2005 January 29 in DIV.NB *) or[member[pair[x_,z_],DIV],not[member[pair[x_,y_],DIV]],not[member[pair[y_,z_],DIV]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[member[pair[w_,z_],DIV],not[member[pair[w_,x_],DIV]], not[member[pair[w_,y_],DIV]],not[member[z_,ld[x_,y_]]]] := True (* derived 2007 April 10 in DV13.NB *) or[member[pair[x_,y_],DIV],not[member[pair[x_,z_],DIV]], not[member[pair[x_,natadd[y_,z_]],DIV]]] := True (* derived 2007 April 10 in DV7-COR.NB *) or[member[pair[x_,y_],DIV],not[member[pair[z_,y_],DIV]], not[member[pair[natmul[x_,z_],natsub[y_,natmod[y_,z_]]],DIV]]] := True (* derived 2007 April 3 in DIV-MUL.NB *) or[member[pair[x_,z_],DIV],not[member[pair[natmul[x_,y_],z_],DIV]]] := True (* derived 2009 January 9 in CAT-DO.NB *) or[member[pair[u_,v_],domain[cat[x_]]],not[equal[APPLY[cod[cat[x_]],v_],APPLY[dom[cat[x_]],u_]]], not[member[v_,range[cat[x_]]]]] := True (* derived 2008 December 31 in CAT-AP.NB *) or[member[pair[u_,v_],domain[cat[x_]]],not[member[APPLY[cat[x_],PAIR[u_,v_]],y_]]] := True (* derived 2009 January 3 in CAT-AX-1.NB *) or[member[pair[u_,v_],domain[cat[x_]]], not[member[pair[APPLY[cat[x_],PAIR[u_,v_]],w_],domain[cat[x_]]]]] := True (* derived 2009 January 3 in CAT-AX-1.NB *) or[member[pair[u_,v_],domain[cat[x_]]], not[member[pair[u_,APPLY[cat[x_],PAIR[v_,w_]]],domain[cat[x_]]]]] := True (* derived 2009 January 3 in CAT-AX-1.NB *) or[member[pair[v_,w_],domain[cat[x_]]], not[member[pair[APPLY[cat[x_],PAIR[u_,v_]],w_],domain[cat[x_]]]]] := True (* derived 2009 January 3 in CAT-AX-1.NB *) or[member[pair[v_,w_],domain[cat[x_]]], not[member[pair[u_,APPLY[cat[x_],PAIR[v_,w_]]],domain[cat[x_]]]]] := True (* derived 2008 December 16 in IDS.NB *) or[member[pair[y_,y_],domain[x_]],not[member[y_,ids[x_]]]] := True (* derived 2004 July 26 in DORAFUNS.NB *) or[member[pair[domain[x_],range[x_]],image[DORA,FUNS]],not[FUNCTION[x_]],not[member[x_,V]]] := True (* derived 2004 August 12 in DORAFUNS.NB *) or[member[pair[domain[x_],range[x_]],image[DORA,y_]],not[member[x_,y_]]] := True (* added 2001 December 20 based on Q-POW.NB *) or[member[pair[domain[x_],range[x_]],Q],not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]],not[member[x_,V]]] := True (* derived 2008 November 2 in EQ-DJ.NB *) or[member[pair[y_,z_],eqv[x_]],not[equal[image[eqv[x_],set[y_]],image[eqv[x_],set[z_]]]]] := or[member[y,fix[eqv[x]]],member[z,fix[eqv[x]]]] (* derived 2005 January 16 in RFX-EQV.NB *) or[member[pair[u_,u_],eqv[x_]],not[member[pair[u_,v_],eqv[x_]]]] := True (* derived 2005 January 16 in RFX-EQV.NB *) or[member[pair[v_,v_],eqv[x_]],not[member[pair[u_,v_],eqv[x_]]]] := True (* derived 2004 June 6 in EQV-TRV.NB *) or[member[pair[v_,u_],eqv[x_]],not[member[pair[u_,v_],eqv[x_]]]] := True (* derived 2003 February 3 in Q.NB *) or[member[pair[x_,z_],eqv[w_]],not[member[pair[x_,y_],eqv[w_]]],not[member[pair[y_,z_],eqv[w_]]]] := True (* derived 2004 June 17 in X2417-21.NB *) or[member[pair[first[x_],second[x_]],y_],not[member[x_,y_]],not[member[first[x_],z_]]] := True (* derived 2005 August 5 in BINHOM-5.NB *) or[member[pair[id[omega],id[omega]],x_],not[member[x_,binhom[INTADD,INTADD]]]] := True (* derived 2007 January 11 in INEQ-Z.NB *) or[member[pair[id[omega],x_],INTLEQ],not[member[x_,range[PLUS]]]] := True (* derived 2005 January 18 in OO-Q.NB *) or[member[pair[x_,image[oopart[z_],x_]],Q],not[member[x_,y_]],not[subclass[x_,domain[oopart[z_]]]]] := True (* derived 2005 February 5 in X3279.NB *) or[member[pair[y_,image[x_,y_]],Q],not[FUNCTION[x_]], not[FUNCTION[inverse[x_]]],not[member[x_,z_]],not[subclass[y_,domain[x_]]]] := True (* derived 2005 February 5 in X3279.NB *) or[member[pair[y_,image[x_,y_]],Q],not[FUNCTION[x_]], not[FUNCTION[inverse[x_]]],not[member[y_,z_]],not[subclass[y_,domain[x_]]]] := True (* derived 2007 January 11 in ZLEQ.NB *) or[member[pair[x_,y_],INTLEQ],member[pair[y_,x_],INTLEQ], not[member[x_,Z]],not[member[y_,Z]]] := True (* derived 2007 January 11 in INEQ-Z.NB *) or[member[pair[x_,y_],INTLEQ], not[member[x_,image[image[inverse[INTADD],set[y_]],range[PLUS]]]]] := True (* derived 2007 January 11 in ZLEQPLUS.NB *) or[member[pair[u_,w_],INTLEQ], not[member[pair[u_,v_],INTLEQ]],not[member[pair[v_,w_],INTLEQ]]] := True (* derived 2007 January 11 in ZLEQ.NB *) or[member[pair[inverse[y_],inverse[x_]],INTLEQ],not[member[pair[x_,y_],INTLEQ]]] := True (* derived 2006 August 5 in BINHOM-7.NB *) or[member[pair[inverse[y_],inverse[z_]],x_], not[member[x_,binhom[INTADD,INTADD]]],not[member[pair[y_,z_],x_]]] := True (* derived 2008 May 22 in IN-Q.NB *) or[member[pair[inverse[x_],x_],Q],not[member[x_,y_]],not[subclass[x_,cart[V,V]]]] := True (* derived 2005 January 9 *) or[member[pair[x_,y_],K],not[member[y_,z_]], not[member[intersection[y_,complement[x_]],range[SINGLETON]]],not[subclass[x_,y_]]] := True (* derived 2006 July 4 in MAP-Q.NB *) or[member[pair[map[w_,x_],map[y_,z_]],Q],not[member[pair[w_,y_],Q]],not[member[pair[x_,z_],Q]]] := True (* derived 2004 June 27 in X1655-61.NB *) or[member[pair[u_,v_],x_],member[pair[v_,u_],x_], not[member[u_,fix[x_]]],not[member[v_,fix[x_]]],not[TOTALORDER[x_]]] := True (* derived 2008 March 6 in WO-TO.NB *) or[member[pair[u_,v_],x_],member[pair[v_,u_],x_], not[member[u_,fix[x_]]],not[member[v_,fix[x_]]],not[WELLORDER[x_]]] := True (* derived 2008 March 6 in WO-TO.NB *) or[member[pair[u_,v_],wo[x_]],member[pair[v_,u_],wo[x_]], not[member[u_,fix[wo[x_]]]],not[member[v_,fix[wo[x_]]]]] := True (* derived 2007 April 3 in DIV-MUL.NB *) or[member[pair[x_,nat[y_]],DIV],not[equal[nat[y_],natmul[x_,z_]]]] := True (* Quaife's Theorem DV22 derived 2005 July 17 in EQV-MOD.NB *) or[member[pair[nat[z_],nat[natsub[nat[x_],nat[y_]]]],DIV], not[equal[natmod[nat[x_],nat[z_]],natmod[nat[y_],nat[z_]]]]] := True (* derived 2007 April 10 in DV13.NB *) or[member[pair[x_,nat[natsub[y_,z_]]],DIV], not[member[pair[x_,y_],DIV]],not[member[pair[x_,z_],DIV]]] := True (* derived 2007 April 10 in DV13.NB *) or[member[pair[x_,nat[natsub[natmul[u_,y_],natmul[v_,z_]]]],DIV], not[member[pair[x_,y_],DIV]],not[member[pair[x_,z_],DIV]]] := True (* derived 2005 May 22 in DIV-ADD.NB *) or[member[pair[x_,natadd[y_,z_]],DIV],not[member[pair[x_,y_],DIV]],not[member[pair[x_,z_],DIV]]] := True (* added 2002 November 24 based on VERTSECT.NB *) or[member[pair[x_,natadd[x_,y_]],iterate[SUCC,set[y_]]],not[member[x_,omega]],not[member[y_,omega]]] := True (* derived 2007 April 10 in DV9.NB *) or[member[pair[x_,natadd[natmul[y_,nat[u_]],natmul[z_,nat[v_]]]],DIV], not[member[pair[x_,y_],DIV]],not[member[pair[x_,z_],DIV]]] := True (* derived 2007 April 3 in DIV-MUL.NB *) or[member[pair[x_,natmul[y_,z_]],DIV],not[member[y_,omega]],not[member[pair[x_,z_],DIV]]] := True (* derived 2005 July 21 in Q15.NB *) or[member[pair[x_,natmul[y_,nat[z_]]],DIV],not[member[pair[x_,y_],DIV]]] := True (* derived 2007 April 10 in DV14COR.NB *) or[member[pair[natmul[w_,y_],natmul[x_,z_]],DIV], not[member[pair[w_,x_],DIV]],not[member[pair[y_,z_],DIV]]] := True (* derived 2007 April 10 in DV15.NB *) or[member[pair[natmul[x_,z_],natsub[y_,natmod[y_,x_]]],DIV], not[member[pair[natmul[x_,z_],y_],DIV]]] := True (* derived 2005 May 22 in DIV-ADD.NB *) or[member[pair[x_,natsub[y_,z_]],DIV],not[member[pair[x_,y_],DIV]],not[member[pair[x_,z_],DIV]],not[subclass[z_,y_]]] := True (* derived 2005 May 22 in DIV-ADD.NB *) or[member[pair[x_,natsub[y_,x_]],DIV],not[member[pair[x_,y_],DIV]],not[subclass[x_,y_]]] := True (* derived 2007 April 10 in DV7-COR.NB *) or[member[pair[natsub[y_,natmod[y_,x_]],natmul[x_,y_]],DIV],not[member[pair[x_,y_],DIV]]] := True (* derived 2007 April 10 in DV15.NB *) or[member[pair[natsub[x_,natmod[x_,z_]],natsub[y_,natmod[y_,z_]]],DIV], not[member[pair[x_,y_],DIV]],not[member[pair[z_,x_],DIV]]] := True (* derived 2004 June 20 in X1604-56.NB *) or[member[pair[x_,y_],z_],not[equal[inverse[z_],z_]],not[member[pair[y_,x_],z_]]] := True (* added 2001 December 21 based on Q-RT-2.NB *) or[member[pair[y_,z_],w_],not[equal[x_,y_]],not[member[pair[x_,z_],w_]]] := True (* added 2001 December 21 based on Q-RT-2.NB *) or[member[pair[w_,y_],z_],not[equal[x_,y_]],not[member[pair[w_,x_],z_]]] := True (* derived 2004 June 27 in X1670-73.NB *) or[member[pair[u_,v_],x_],not[EQUIVALENCE[x_]],not[member[pair[v_,u_],x_]]] := True (* derived 2004 June 27 in X1670-73.NB *) or[member[pair[u_,u_],x_],not[EQUIVALENCE[x_]],not[member[pair[u_,v_],x_]]] := True (* derived 2004 June 27 in X1670-73.NB *) or[member[pair[v_,v_],x_],not[EQUIVALENCE[x_]],not[member[pair[u_,v_],x_]]] := True (* derived 2005 January 25 in X1697.NB *) or[member[pair[x_,y_],z_],not[EQUIVALENCE[z_]],not[member[pair[x_,y_],composite[inverse[z_],z_]]]] := True (* derived 2005 January 25 in X1697.NB *) or[member[pair[x_,y_],z_],not[EQUIVALENCE[z_]],not[member[pair[y_,x_],composite[inverse[z_],z_]]]] := True (* derived 2004 June 27 in X1670-73.NB *) or[member[pair[u_,w_],x_],not[EQUIVALENCE[x_]],not[member[pair[u_,v_],x_]],not[member[pair[v_,w_],x_]]] := True (* derived 2005 December 16 in CANCELFU.NB *) or[member[pair[v_,u_],x_],not[FUNCTION[y_]], not[member[u_,fix[composite[x_,y_]]]],not[member[pair[u_,v_],y_]]] := True (* derived 2005 December 16 in CANCELFU.NB *) or[member[pair[v_,w_],x_],not[FUNCTION[y_]],not[member[pair[u_,v_],y_]], not[member[pair[u_,w_],composite[x_,y_]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[pair[u_,w_],x_],not[member[u_,domain[x_]]], not[member[pair[v_,w_],GLB[x_]]],not[subclass[v_,image[x_,set[u_]]]]] := True (* derived 2004 April 8 in SU-ID.NB *) or[member[pair[x_,x_],y_],not[member[x_,domain[y_]]],not[subclass[y_,Id]]] := True (* added 2003 June 25 based on FP-MEMBER.NB *) or[member[pair[x_,x_],y_],not[member[x_,fix[y_]]]] := True (* derived 2004 June 20 in X1563.NB *) or[member[pair[x_,y_],z_],not[member[y_,u_]],not[member[x_,v_]],not[subclass[u_,image[z_,set[x_]]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[pair[u_,v_],x_],not[member[v_,w_]],not[member[pair[w_,u_],GLB[x_]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[pair[u_,v_],x_],not[member[u_,w_]],not[member[pair[w_,v_],LUB[x_]]]] := True (* derived 2007 April 26 in PO-TOP.NB *) or[member[pair[u_,v_],x_],not[member[u_,y_]],not[subclass[y_,image[inverse[x_],set[v_]]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[pair[u_,v_],x_],not[member[v_,w_]],not[subclass[w_,image[x_,set[u_]]]]] := True (* derived 2006 January 7 in PO-BASIC.NB *) or[member[pair[u_,w_],x_],not[member[pair[u_,v_],x_]], not[member[pair[v_,w_],x_]],not[PARTIALORDER[x_]]] := True (* derived 2004 June 20 in X1604-56.NB *) or[member[pair[u_,w_],x_],not[member[pair[u_,v_],x_]],not[member[pair[v_,w_],x_]],not[TRANSITIVE[x_]]] := True (* derived 2005 February 5 in X2076-79.NB *) or[member[pair[u_,w_],x_],not[member[pair[u_,v_],x_]],not[member[pair[v_,w_],x_]],not[WELLORDER[x_]]] := True (* derived 2004 March 18 in RFX-TRV.NB *) or[member[pair[u_,u_],x_],not[member[pair[u_,v_],x_]],not[REFLEXIVE[x_]]] := True (* derived 2004 March 18 in RFX-TRV.NB *) or[member[pair[v_,v_],x_],not[member[pair[u_,v_],x_]],not[REFLEXIVE[x_]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[pair[u_,w_],x_],not[member[w_,range[x_]]], not[member[pair[v_,u_],LUB[x_]]],not[subclass[v_,image[inverse[x_],set[w_]]]]] := True (* derived 2008 May 4 in APORDREC.NB *) or[member[pair[ord[y_],composite[rec[funpart[x_],composite[inverse[E],id[OMEGA]]], id[ord[y_]]]],domain[funpart[x_]]],not[member[ord[y_], domain[rec[funpart[x_],composite[inverse[E],id[OMEGA]]]]]]] := True (* derived 2006 August 22 in CHAR.NB *) or[member[pair[P[x_],map[x_,succ[set[0]]]],Q],not[member[x_,y_]]] := True (* derived 2008 January 20 in HART-NUM.NB *) or[member[pair[P[x_],P[y_]],Q],not[member[pair[x_,y_],Q]]] := True (* added 2001 December 20 based on Q-POW.NB *) or[member[pair[P[range[x_]],P[domain[x_]]],Q],not[FUNCTION[x_]], not[FUNCTION[inverse[x_]]],not[member[x_,V]]] := True (* derived 2004 June 17 in X2417-21.NB *) or[member[pair[pair[first[x_],second[x_]],y_],z_],not[member[first[x_],w_]],not[member[pair[x_,y_],z_]]] := True (* derived 2006 October 31 in EXP-MEMB.NB *) or[member[pair[pair[x_,y_],z_],NATEXP], not[equal[z_,natexp[x_,y_]]],not[member[z_,w_]]] := True (* derived 2006 July 23 in BINHOM-4.NB *) or[member[pair[pair[x_,x_],x_],y_],not[member[x_,fix[composite[y_,DUP]]]]] := True (* derived 2008 December 16 in IDS.NB *) or[member[pair[pair[y_,y_],y_],x_],not[member[y_,ids[x_]]]] := True (* derived 2009 January 1 in COD-SU.NB *) or[member[pair[pair[u_,v_],v_],x_],not[member[pair[u_,v_],domain[x_]]],not[member[u_,y_]], not[member[v_,z_]],not[subclass[composite[x_,LEFT[u_]],Id]]] := True (* derived 2009 January 1 in COD-SU.NB *) or[member[pair[pair[u_,v_],u_],x_],not[member[pair[u_,v_],domain[x_]]],not[member[u_,y_]], not[member[v_,z_]],not[subclass[composite[x_,RIGHT[v_]],Id]]] := True (* derived 2006 January 7 in PO-BASIC.NB *) or[member[pair[u_,w_],po[x_]],not[member[pair[u_,v_],po[x_]]],not[member[pair[v_,w_],po[x_]]]] := True (* derived 2005 July 20 in CARD-Q.NB *) or[member[pair[x_,y_],Q],not[equal[card[x_],card[y_]]],not[member[x_,FINITE]]] := True (* derived 2005 July 20 in CARD-Q.NB *) or[member[pair[x_,y_],Q],not[equal[card[x_],card[y_]]],not[member[x_,image[Q,OMEGA]]]] := True (* derived 2008 October 31 in BIJ.NB *) or[member[pair[y_,z_],Q],not[member[x_,bij[y_,z_]]]] := True (* derived 2005 February 20 in CARD-TWO.NB *) or[member[pair[x_,y_],Q],not[member[x_,image[PAIRSET,Di]]],not[member[y_,image[PAIRSET,Di]]]] := True (* derived 2008 May 21 in S-Q.NB *) or[member[pair[x_,y_],Q],not[member[x_,image[Q,P[y_]]]],not[member[y_,image[Q,P[x_]]]]] := True (* derived 2003 February 3 in Q.NB *) or[member[pair[x_,y_],Q],not[member[pair[y_,x_],Q]]] := True (* derived 2003 February 3 in Q.NB *) or[member[pair[x_,z_],Q],not[member[pair[x_,y_],Q]],not[member[pair[y_,z_],Q]]] := True (* derived 2005 February 20 in CARD-ONE.NB *) or[member[pair[x_,y_],Q],not[member[x_,range[SINGLETON]]],not[member[y_,range[SINGLETON]]]] := True (* derived 2004 Agust 13 in X4015-56.NB *) or[member[pair[rank[x_],x_],ZN],not[member[x_,REGULAR]]] := True (* derived 2004 June 17 in X2417-21.NB *) or[member[pair[second[x_],first[x_]],y_],not[member[x_,inverse[y_]]]] := True (* Theorem Q-SS in Q proved 2000 April 27 *) or[member[pair[set[x_],set[y_]],Q],not[member[x_,V]],not[member[y_,V]]] := True (* derived 2007 May 3 in SMALLWOB.NB *) or[member[pair[x_,y_],SMALLER],not[member[y_,image[Q,OMEGA]]], not[member[card[x_],card[y_]]]] := True (* derived 2004 June 20 in X1604-56.NB *) or[member[pair[u_,w_],trv[x_]],not[member[pair[u_,v_],trv[x_]]],not[member[pair[v_,w_],trv[x_]]]] := True (* derived 2005 January 20 in X1924.NB *) or[member[pair[y_,union[x_,y_]],K],not[equal[0,intersection[x_,y_]]],not[member[x_,range[SINGLETON]]],not[member[y_,z_]]] := True (* derived 2005 February 5 in X1925.NB *) or[member[pair[x_,union[x_,y_]],K],not[member[x_,z_]],not[member[y_,range[SINGLETON]]],subclass[y_,x_]] := True (* derived 2005 January 27 in DK-SU.NB *) or[member[pair[union[x_,z_],union[y_,z_]],Q],not[equal[0,intersection[x_,z_]]],not[equal[0,intersection[y_,z_]]], not[member[z_,w_]],not[member[pair[x_,y_],Q]]] := True (* derived 2005 January 27 in DK-SU.NB *) or[member[pair[union[u_,v_],union[x_,y_]],Q],not[equal[0,intersection[u_,v_]]],not[equal[0,intersection[x_,y_]]], not[member[pair[u_,x_],Q]],not[member[pair[v_,y_],Q]]] := True (* derived 2007 May 3 in SMALLWOB.NB *) or[member[pair[x_,wob[y_]],SMALLER],not[member[card[x_],card[wob[y_]]]]] := True (* derived 2006 January 4 in CL-DUAL.NB *) or[member[po[x_],CL],not[member[po[x_],y_]],not[subclass[P[fix[po[x_]]],domain[GLB[po[x_]]]]]] := True (* derived 2006 January 4 in CL-DUAL.NB *) or[member[po[x_],CL],not[member[po[x_],y_]],not[subclass[P[fix[po[x_]]],domain[LUB[po[x_]]]]]] := True (* derived 2005 October 1 in PO-SETPT.NB *) or[member[po[x_],V],not[member[x_,V]]] := True (* derived 2004 April 10 in UP-RULES.NB *) or[member[set[x_,y_],REGULAR],not[member[x_,REGULAR]],not[member[y_,REGULAR]]] := True (* derived 2004 September 5 in WF-REC-4.NB *) or[member[w_,partrec[x_,y_]],not[member[w_,V]],not[subclass[w_,composite[x_,history[w_,y_]]]], not[subclass[image[y_,domain[w_]],domain[w_]]]] := True (* derived 204 August 22 in PARTREC.NB *) or[member[w_,partrec[x_,y_]],not[member[w_,V]], not[subclass[w_,composite[x_,id[composite[IMAGE[composite[id[w_],inverse[FIRST]]],VERTSECT[y_]]],inverse[FIRST]]]], not[subclass[image[y_,domain[w_]],domain[w_]]]] := True (* derived 2008 September 28 in PERMS.NB *) or[member[x_,PERMS],not[equal[domain[x_],range[x_]]], not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]],not[member[x_,y_]]] := True (* added 2003 August 8 based on REPLACE.NB *) or[member[plus[x_],image[PLUS,y_]],not[member[x_,omega]],not[member[x_,y_]]] := True (* derived 2003 December 28 in PTCLOSED.NB *) or[member[x_,PointClosed],not[member[x_,y_]], not[subclass[image[SINGLETON,U[x_]],image[RC[U[x_]],x_]]]] := True (* derived 2007 February 10 in COMPOS-2.NB *) or[member[x_,PRIMES],member[x_,image[NATMUL,cart[x_,x_]]]] := and[member[x,omega],member[set[0],x]] (* derived 2007 February 8 in COMPOS-1.NB *) or[member[x_,PRIMES],member[x_,image[NATMUL,cart[complement[succ[set[0]]], complement[succ[set[0]]]]]]] := and[member[x,omega],member[set[0],x]] (* derived 2008 December 1 in RIF-QG.NB *) or[member[x_,QUASIGPS],not[equal[x_,rotate[x_]]],not[member[x_,BINOPS]]] := True (* derived 2008 October 7 in QUASIGPS.NB *) or[member[x_,QUASIGPS],not[member[x_,BINOPS]],not[member[rotate[x_],BINOPS]], not[member[rotate[composite[x_,SWAP]],BINOPS]]] := True (* derived 2008 November 26 in AP-BINOP.NB *) or[member[w_,range[binop[x_]]],not[member[pair[pair[u_,v_],w_],binop[x_]]]] := True (* derived 2009 January 3 in CAT-AX-1.NB *) or[member[u_,range[cat[x_]]],not[member[pair[u_,v_],domain[cat[x_]]]]] := True (* derived 2009 January 3 in CAT-AX-1.NB *) or[member[v_,range[cat[x_]]],not[member[pair[u_,v_],domain[cat[x_]]]]] := True (* derived 2006 September 12 in NEUTRAL.NB *) or[member[y_,range[domain[x_]]],subclass[composite[x_,RIGHT[y_]],Id]] := True (* derived 2004 June 20 in X1505-11.NB *) or[member[range[domain[x_]],V],not[member[x_,y_]]] := True (* derived 2007 May 13 in PAIRFACT.NB *) or[member[y_,range[FACTORIAL]],not[member[pair[x_,y_],FACTORIAL]]] := True (* derived 2004 January 4 in VS-IMIN.NB *) or[member[range[x_],FINITE],not[FUNCTION[x_]],not[member[domain[x_],FINITE]]] := True (* derived 2004 January 8 in FIN-FU.NB *) or[member[range[x_],FINITE],not[member[x_,FINITE]]] := True (* derived 2008 January 3 in COVERFIN.NB *) or[member[range[z_],FINITE],not[member[x_,FINITE]],not[member[z_,map[x_,y_]]]] := True (* derived 2008 September 18 in FIN-MAP.NB *) or[member[range[x_],FINITE],not[member[x_,map[fin[y_],z_]]]] := True (* derived 2005 December 19 in FUNPART.NB *) or[member[v_,range[funpart[x_]]],not[member[pair[u_,v_],funpart[x_]]]] := True (* derived 2004 August 11 in X1993.NB *) or[member[range[funpart[x_]],range[SINGLETON]],not[member[domain[funpart[x_]],range[SINGLETON]]]] := True (* derived 2004 August 11 in X1993.NB *) or[member[range[funpart[x_]],V],not[member[domain[funpart[x_]],y_]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[v_,range[GLB[x_]]],not[member[pair[u_,v_],GLB[x_]]]] := True (* derived 2004 August 18 in X3080.NB *) or[member[range[x_],image[IMAGE[SECOND],y_]],not[member[x_,y_]]] := True (* derived 2006 February 14 in ACYFINOP.NB *) or[member[range[iterate[x_,set[y_]]],FINITE],not[member[x_,FINITE]]] := True (* derived 2006 February 14 in ACYFINOP.NB *) or[member[range[iterate[x_,set[y_]]],FINITE],not[member[range[x_],FINITE]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[v_,range[LUB[x_]]],not[member[pair[u_,v_],LUB[x_]]]] := True (* derived 2004 June 20 in X1604-56.NB *) or[member[range[x_],y_],not[equal[x_,inverse[x_]]],not[member[domain[x_],y_]]] := True (* derived 2006 January 28 in PROJ.NB *) or[member[y_,range[z_]],not[FUNCTION[z_]],not[member[pair[x_,y_],z_]]] := True (* derived 2004 February 8 in DO-RA-IM.NB *) or[member[y_,range[z_]],not[member[x_,u_]],not[member[y_,v_]],not[member[pair[x_,y_],z_]]] := True (* derived 2004 March 5 in CO-DO-RA.NB *) or[member[v_,range[x_]],not[member[pair[u_,v_],composite[x_,y_]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[v_,range[x_]],not[member[pair[u_,v_],LUB[x_]]]] := True (* derived 2004 February 8 in DO-RA-IM.NB *) or[member[y_,range[z_]],not[member[pair[x_,y_],z_]],not[subclass[z_,cart[u_,v_]]]] := True (* derived 2004 December 11 in OO-Q.NB *) or[member[range[oopart[y_]],image[Q,z_]],not[member[domain[oopart[y_]],z_]]] := True (* derived 2006 March 12 in OLIST-OO.NB *) or[member[range[ordlist[x_]],FINITE],not[member[x_,FINITE]]] := True (* derived 2006 September 5 in RA-PLUS.NB *) or[member[x_,range[PLUS]],member[inverse[x_],range[PLUS]],not[member[x_,Z]]] := True (* derived 2007 January 11 in INEQ-Z.NB *) or[member[x_,range[PLUS]],not[member[pair[id[omega],x_],INTLEQ]]] := True (* derived 2008 November 26 in AP-QUAGP.NB *) or[member[u_,range[quasigp[x_]]],not[member[pair[pair[u_,v_],w_],quasigp[x_]]]] := True (* derived 2008 November 26 in AP-QUAGP.NB *) or[member[v_,range[quasigp[x_]]],not[member[pair[pair[u_,v_],w_],quasigp[x_]]]] := True (* derived 2008 November 26 in AP-QUAGP.NB *) or[member[w_,range[quasigp[x_]]],not[member[pair[pair[u_,v_],w_],quasigp[x_]]]] := True (* derived 2004 August 11 in X1993.NB *) or[member[range[x_],range[SINGLETON]],not[FUNCTION[x_]],not[member[domain[x_],range[SINGLETON]]]] := True (* derived 2004 June 28 in X1780.NB *) or[member[range[x_],REGULAR],not[member[x_,REGULAR]]] := True (* derived 2005 December 25 in APCPSCRS.NB *) or[member[range[second[x_]],V],not[member[first[x_],V]]] := True (* derived 2008 November 26 in AP-SEMGP.NB *) or[member[w_,range[semigp[x_]]],not[member[pair[pair[u_,v_],w_],semigp[x_]]]] := True (* derived 2005 January 21 in SS-0.NB *) or[member[x_,range[SINGLETON]],not[equal[0,x_]]] := not[equal[0,x]] (* derived 2004 March 23 in ADJECT.NB *) or[member[y_,range[SINGLETON]],not[equal[y_,set[APPLY[z_,x_]]]],not[member[x_,domain[z_]]]] := True (* added 2003 July 5 based on EQ-SS.NB *) or[member[x_,range[SINGLETON]],not[equal[x_,set[y_]]],not[member[y_,z_]]] := True (* derived 2005 February 20 in CARD-ONE.NB *) or[member[x_,range[SINGLETON]],not[member[y_,range[SINGLETON]]],not[member[pair[x_,y_],Q]]] := True (* derived 2005 February 20 in CARD-ONE.NB *) or[member[x_,range[SINGLETON]],not[member[y_,range[SINGLETON]]],not[member[pair[y_,x_],Q]]] := True (* derived 2005 January 21 in SS-A.NB *) or[member[x_,range[SINGLETON]],subclass[x_,union[y_,image[Di,x_]]]] := True (* derived 2004 January 4 in VS-IMIN.NB *) or[member[range[x_],V],not[FUNCTION[x_]],not[member[domain[x_],y_]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[range[x_],V],not[member[x_,y_]]] := True (* derived 2008 October 31 in IN-SETHD.NB *) or[member[range[x_],V],not[member[inverse[x_],y_]]] := True (* derived 2007 March 2 in LD-2.NB *) or[member[x_,range[VERTSECT[DIV]]],not[subclass[x_,omega]], not[subclass[image[NATADD,cart[x_,x_]],x_]], not[subclass[image[image[inverse[NATADD],x_],x_],x_]]] := True (* added 2003 June 11 based on VS.NB *) or[member[range[VERTSECT[x_]],V],not[member[x_,V]]] := True (* derived 2006 May 21 in RK-EQ.NB *) or[member[rank[x_],rank[y_]],member[rank[y_],rank[x_]]] := not[equal[rank[x],rank[y]]] (* derived 2006 May 21 in RK-SC.NB *) or[member[rank[x_],rank[y_]],not[member[x_,y_]],not[member[y_,REGULAR]]] := True (* derived 2004 August 14 in RANK.NB *) or[member[rank[x_],rank[y_]],not[member[x_,REGULAR]],not[member[x_,y_]]] := True (* derived 2006 May 21 in RK-SC.NB *) or[member[rank[x_],rank[reg[y_]]],not[member[x_,reg[y_]]]] := True (* derived 2006 March 30 in REG-ZN.NB *) or[member[rank[reg[x_]],rank[y_]],not[member[reg[x_],y_]]] := True (* derived 2005 October 31 in RANK-SU.NB *) or[member[x_,REGULAR],member[rank[y_],rank[x_]],not[member[y_,REGULAR]]] := True (* derived 2005 December 3 in X4300-02.NB *) or[member[x_,REGULAR],not[AxReg],not[member[x_,y_]]] := True (* derived 2004 June 27 in X1735.NB *) or[member[x_,REGULAR],not[member[x_,y_]],not[member[y_,REGULAR]]] := True (* derived 2007 August 3 in REGULAR.NB *) or[member[x_,REGULAR],not[member[x_,y_]],not[subclass[x_,REGULAR]]] := True (* derived 2005 October 31 in RANK-SU.NB *) or[member[x_,REGULAR],not[member[rank[x_],y_]]] := True (* added 2003 June 5 based on REG.NB *) or[member[x_,REGULAR],not[member[y_,REGULAR]],not[subclass[x_,y_]]] := True (* derived 2005 October 31 in RANK-SU.NB *) or[member[x_,REGULAR],subclass[y_,rank[x_]]] := True (* derived 2008 October 7 in QUASIGPS.NB *) or[member[rotate[x_],BINOPS],not[member[x_,QUASIGPS]]] := True (* derived 2008 October 7 in QUASIGPS.NB *) or[member[rotate[composite[x_,SWAP]],BINOPS],not[member[x_,QUASIGPS]]] := True (* derived 2004 August 18 in X3080.NB *) or[member[rotate[x_],image[IMAGE[ROT],y_]],not[member[x_,y_]]] := True (* derived 2004 June 28 in X1773-1800.NB *) or[member[rotate[x_],REGULAR],not[member[x_,REGULAR]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[rotate[x_],V],not[member[x_,y_]]] := True (* added 2003 June 25 based on RUSSELL.NB *) or[member[x_,RUSSELL],member[x_,x_],not[member[x_,V]]] := True (* derived 2004 June 27 in X1704-09.NB *) or[member[x_,RUSSELL],not[member[x_,y_]],not[subclass[x_,RUSSELL]]] := True (* derived 2004 February 26 in DORA-1-2.NB *) or[member[second[x_],domain[y_]],not[member[x_,inverse[y_]]]] := True (* derived 2004 February 26 in DORA-1-2.NB *) or[member[second[x_],range[y_]],not[member[x_,y_]],not[member[first[x_],z_]]] := True (* derived 2004 February 26 in DORA-1-2.NB *) or[member[second[x_],range[y_]],not[member[x_,y_]],not[member[second[x_],z_]]] := True (* derived 2006 July 13 in SGPS-RS.NB *) or[member[x_,SEMIGPS],not[associative[x_]],not[member[x_,BINOPS]]] := True (* derived 2006 December 5 in MIXTIMES.NB *) or[member[set[0],domain[x_]],not[member[x_,binhom[NATADD,INTADD]]]] := True (* derived 2008 August 24 in NAT-LESS.NB *) or[member[set[0],nat[x_]],member[set[0],nat[y_]], not[member[set[0],natmul[nat[x_],nat[y_]]]]] := True (* derived 2008 August 24 in NAT-LESS.NB *) or[member[set[0],nat[y_]],not[member[0,x_]],not[member[x_,nat[y_]]]] := True (* derived 2005 July 12 in O25REVIS.NB *) or[member[set[0],nat[x_]],not[member[succ[y_],nat[x_]]]] := True (* derived 2007 February 10 in COMPOS-2.NB *) or[member[set[0],x_],not[member[x_,image[NATMUL,cart[x_,x_]]]]] := True (* derived 2007 February 10 in COMPOS-2.NB *) or[member[set[0],x_],not[member[x_,image[NATMUL, cart[complement[succ[set[0]]],complement[succ[set[0]]]]]]]] := True (* derived 2007 February 8 in COMPOS-1.NB *) or[member[set[0],x_],not[member[x_,PRIMES]]] := True (* derived 2005 February 8 in X1739.NB *) or[member[set[x_,y_],DESCENDING],not[member[x_,y_]],not[member[y_,x_]]] := True (* added 2003 June 25 based on RUSSELL.NB *) or[member[set[x_],RUSSELL],not[member[x_,RUSSELL]]] := True (* derived 2008 July 27 in PRS-REG.NB *) or[member[set[set[x_],set[x_,y_]],REGULAR],not[member[x_,REGULAR]],not[member[y_,REGULAR]]] := True (* derived 2004 July 31 in SETPART.NB *) or[member[setpart[x_],y_],not[member[x_,y_]]] := True (* derived 2007 June 10 in SPINE.NB *) or[member[spine[x_,y_],V],not[member[y_,z_]]] := True (* derived 2004 July 22 in X22--.NB *) or[member[z_,y_],subclass[image[S,set[z_]],image[S,complement[y_]]]] := True (* derived 2004 August 14 in X4205.NB *) or[member[subvar[x_],FINITE],not[member[x_,FINITE]]] := True (* derived 2007 May 7 in FINITE.NB *) or[member[subvar[x_],FINITE],not[member[range[x_],FINITE]]] := True (* added 2003 June 4 based on IMAGE.NB *) or[member[subvar[x_],image[SUBVAR,y_]],not[member[x_,y_]]] := True (* derived 2007 July 10 in SBV-CLQ.NB *) or[member[subvar[x_],range[SUBVAR]],not[member[x_,y_]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[subvar[x_],V],not[member[x_,y_]]] := True (* derived 2005 January 30 in SBV-V.NB *) or[member[subvar[x_],V],not[member[range[x_],y_]]] := True (* derived 2006 May 16 in DO-ITER.NB *) or[member[succ[u_],domain[iterate[x_,y_]]],not[member[u_,v_]],not[member[v_,domain[iterate[x_,y_]]]]] := True (* derived 2006 May 16 in DO-ITER.NB *) or[member[succ[x_],domain[iterate[y_,z_]]],not[member[x_,U[domain[iterate[y_,z_]]]]]] := True (* derived 2006 May 29 in OL-DO.NB *) or[member[succ[y_],domain[ordlist[x_]]],not[member[APPLY[ordlist[x_],y_],U[intersection[OMEGA,x_]]]]] := True (* derived 2006 May 29 in OL-DO.NB *) or[member[succ[x_],domain[ordlist[z_]]],not[member[x_,y_]],not[member[y_,domain[ordlist[z_]]]]] := True (* derived 2006 May 29 in OL-DO.NB *) or[member[succ[w_],domain[ordlist[x_]]],not[member[w_,U[domain[ordlist[x_]]]]]] := True (* added 2003 June 4 based on IMAGE.NB *) or[member[succ[x_],image[SUCC,y_]],not[member[x_,y_]]] := True (* derived 2007 March 17 in NAT-LT.NB *) or[member[succ[x_],nat[z_]],not[member[x_,y_]],not[member[y_,nat[z_]]]] := True (* derived 2005 February 17 in X3741-49.NB *) or[member[succ[x_],nat[y_]],not[member[x_,U[nat[y_]]]]] := True (* derived 2005 February 16 in X3730-38.NB *) or[member[succ[y_],x_],not[equal[x_,U[x_]]],not[member[x_,OMEGA]],not[member[y_,x_]]] := True (* derived 2007 March 17 in NAT-LT.NB *) or[member[succ[x_],z_],not[member[x_,y_]],not[member[y_,z_]],not[member[z_,omega]]] := True (* added 2002 May 25 based on ON-SUC-1.NB *) or[member[succ[x_],y_],not[member[x_,z_]],not[subclass[image[SUCC,z_],y_]]] := True (* derived 2005 February 17 in X3741-49.NB *) or[member[succ[x_],y_],not[member[x_,OMEGA]],not[member[y_,OMEGA]],subclass[y_,succ[x_]]] := True (* derived 2005 February 17 in X3741-49.NB *) or[member[succ[x_],y_],not[member[x_,U[y_]]],not[member[y_,OMEGA]]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) or[member[succ[x_],TOPS],not[member[x_,OMEGA]]] := True (* derived 2003 December 27 in T1.NB *) or[member[y_,T1],not[equal[U[x_],U[y_]]],not[member[x_,T1]], not[member[y_,V]],not[subclass[x_,y_]]] := True (* derived 2003 December 30 in T2.NB *) or[member[x_,T1],not[member[x_,y_]], not[subclass[image[SINGLETON,U[x_]],image[RC[U[x_]],Uclosure[x_]]]]] := True (* derived 2003 December 27 in T1.NB *) or[member[x_,T1],not[member[x_,V]],not[subclass[composite[Di,id[U[x_]]], composite[complement[inverse[E]],id[x_],E]]]] := True (* derived 2003 December 30 in T2.NB *) or[member[x_,T2],not[member[x_,y_]],not[subclass[composite[id[U[x_]],Di,id[U[x_]]], composite[inverse[E],id[x_],DISJOINT,id[x_],E]]]] := True (* added 2003 June 4 based on IMAGE.NB *) or[member[tc[x_],image[TC,y_]],not[member[x_,y_]]] := True (* derived 2007 December 5 in FULL.NB *) or[member[x_,tc[z_]],not[member[x_,y_]],not[member[y_,tc[z_]]]] := True (* derived 2005 February 4 in X3943.NB *) or[member[x_,tc[z_]],not[member[x_,tc[y_]]],not[member[y_,tc[z_]]]] := True (* derived 2004 May 14 in THINPART.NB *) or[member[thinpart[x_],V],not[member[x_,y_]]] := True (* derived 2005 October 15 in TO-SETPT.NB *) or[member[to[x_],V],not[member[x_,y_]]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) or[member[x_,TOPS],not[equal[x_,Uclosure[x_]]],not[member[x_,y_]], not[subclass[image[CAP,cart[x_,x_]],x_]]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) or[member[x_,TOPS],not[member[x_,y_]],not[subclass[image[CAP,cart[x_,x_]],x_]], not[subclass[Uclosure[x_],x_]]] := True (* added 2002 March 28 based on COMMUTE.NB *) or[member[trv[x_],V],not[member[x_,V]]] := True (* derived 2005 February 6 in X3398.NB *) or[member[twist[x_],V],not[member[x_,y_]]] := True (* derived 2005 February 8 in X1733.NB *) or[member[U[x_],DESCENDING],not[member[x_,y_]],not[subclass[x_,DESCENDING]]] := True (* derived 2005 December 14 in ZER-5.NB *) or[member[U[domain[x_]],fix[composite[S,x_]]],not[equal[domain[x_],P[U[domain[x_]]]]], not[member[domain[x_],V]],not[subclass[range[x_],domain[x_]]]] := True (* derived 2005 December 18 in ZER7DUAL.NB *) or[member[U[fix[x_]],fix[x_]],not[member[x_,map[P[y_],P[y_]]]],not[subclass[composite[x_,S,inverse[x_]],S]]] := True (* added 2001 October 16 based on UCL-IMSG.NB *) or[member[U[x_],image[BIGCUP,z_]],not[member[x_,z_]]] := True (* added 2003 June 29 based on FIX-E.NB *) or[member[x_,U[image[inverse[y_],set[x_]]]],not[member[x_,fix[composite[y_,E]]]]] := True (* derived 2005 March 29 in CA.NB *) or[member[x_,U[image[y_,set[x_]]]],not[member[x_,fix[composite[inverse[E],y_]]]]] := True (* derived 2007 September 3 in IMS-P-U.NB *) or[member[U[x_],x_],not[equal[image[inverse[S],x_],P[U[x_]]]],not[member[x_,y_]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[member[U[x_],x_],not[equal[x_,Uclosure[x_]]],not[member[x_,y_]]] := True (* derived 2008 May 15 in FP-E-E.NB *) or[member[x_,U[x_]],not[member[x_,x_]]] := True (* derived 2008 January 10 in REPLACE.NB *) or[member[U[x_],y_],not[member[0,y_]],not[member[x_,FINITE]], not[subclass[x_,y_]],not[subclass[image[CUP,cart[y_,y_]],y_]]] := True (* derived 2008 July 13 in CHN-C-E.NB *) or[member[x_,U[x_]],not[member[x_,fix[composite[inverse[E],BIGCUP]]]]] := True (* added 2003 June 29 based on FIX-E.NB *) or[member[U[x_],x_],not[member[x_,fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]]]] := True (* added 2002 January 9 based on ACLOSURE.NB *) or[member[x_,U[z_]],not[member[x_,y_]],not[member[y_,z_]]] := True (* derived 2005 January 30 in X3837.NB *) or[member[U[x_],y_],not[member[x_,y_]],not[member[y_,OMEGA]]] := True (* derived 2007 December 19 in CONDUCT.NB *) or[member[U[x_],z_],not[member[x_,y_]],not[subclass[image[BIGCUP,y_],z_]]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) or[member[U[x_],y_],not[member[x_,z_]],not[subclass[Uclosure[x_],y_]]] := True (* derived 2004 June 19 based on X1421-45.NB *) or[member[U[x_],x_],not[member[x_,range[SINGLETON]]]] := True (* derived 2005 January 21 in REPLACE.NB *) or[member[U[x_],y_],not[member[x_,range[SINGLETON]]],not[subclass[x_,y_]]] := True (* added 2003 February 6 based on OM-SC-2B.NB *) or[member[x_,U[y_]],not[member[succ[x_],y_]]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) or[member[U[x_],x_],not[member[x_,TOPS]]] := True (* derived 2007 May 23 in SU-ON.NB *) or[member[U[x_],x_],not[member[U[U[x_]],U[x_]]],not[subclass[x_,OMEGA]]] := True (* derived 2006 March 7 in PC-ON-SC.NB *) or[member[U[x_],x_],not[subclass[x_,OMEGA]],subclass[x_,U[x_]]] := True (* derived 2005 August 14 in REPLACE1.NB *) or[member[U[x_],omega],not[member[x_,FINITE]],not[subclass[x_,omega]]] := True (* derived 2005 August 14 in REPLACE1.NB *) or[member[U[x_],OMEGA],not[member[x_,y_]],not[subclass[x_,OMEGA]]] := True (* added 2002 May 13 based on OM-SC-3.NB *) or[member[U[x_],omega],not[member[x_,omega]]] := True (* derived 2005 April 26 in DICHOT.NB *) or[member[U[x_],omega],not[member[y_,omega]],not[subclass[x_,y_]]] := True (* Theorem ON-PC-2 added 2003 June 4 based on ON-PC.NB *) or[member[U[x_],OMEGA],not[member[x_,OMEGA]]] := True (* derived 2005 April 26 in DICHOT.NB *) or[member[U[x_],omega],not[subclass[x_,nat[y_]]]] := True (* derived 2005 December 3 in SU-ON-OM.NB *) or[member[U[x_],OMEGA],not[subclass[x_,OMEGA]]] := or[member[x,V],not[subclass[x,OMEGA]]] (* derived 2006 March 30 in X3792.NB *) or[member[U[x_],ord[y_]],not[member[x_,ord[y_]]]] := True (* derived 2007 August 14 in UCH-SPIN.NB *) or[member[U[spine[S,x_]],x_],not[equal[x_,Uchains[x_]]],not[member[x_,y_]]] := True (* derived 2007 August 11 in UCH-UIMS.NB *) or[member[U[spine[S,x_]],Uchains[x_]],not[member[x_,y_]]] := True (* derived 2005 October 27 in TOP-THMS.NB *) or[member[U[x_],top[y_]],not[subclass[x_,top[y_]]]] := True (* derived 2005 February 6 in X3425.NB *) or[member[U[x_],U[x_]],not[member[U[x_],x_]],not[subclass[image[SUCC,x_],x_]]] := True (* derived 2007 August 10 in UCHAINS.NB *) or[member[U[x_],Uchains[y_]],not[member[x_,z_]],not[subclass[x_,y_]], not[subclass[cart[x_,x_],union[S,inverse[S]]]]] := True (* derived 2008 April 1 in UCH-ON.NB *) or[member[U[x_],Uchains[y_]],not[member[x_,OMEGA]],not[subclass[x_,y_]]] := True (* derived 2005 December 28 in CL-0-1.NB *) or[member[ub[x_,fix[x_]],range[SINGLETON]],not[member[x_,CL]]] := True (* derived 2005 December 31 in VS-UB.NB *) or[member[ub[x_,y_],range[VERTSECT[UB[x_]]]],not[member[y_,V]],not[member[ub[x_,y_],V]]] := True (* derived 2008 September 22 in UCHAINS.NB *) or[member[Uchains[x_],range[UCHAINS]],not[member[x_,y_]]] := True (* added 2003 June 4 based on IMAGE.NB *) or[member[Uclosure[x_],image[UCLOSURE,y_]],not[member[x_,y_]]] := True (* derived 2003 December 24 in UCL-ON.NB *) or[member[Uclosure[x_],OMEGA],not[member[x_,OMEGA]]] := True (* derived 2004 October 12 in CMPCT-OM.NB *) or[member[Uclosure[x_],TOPS],not[member[x_,y_]],not[subclass[image[CAP,cart[x_,x_]],x_]]] := True (* derived 2005 February 4 in DK-K.NB *) or[member[union[x_,y_],DEDEKIND],not[member[x_,FINITE]],not[member[y_,DEDEKIND]]] := True (* added 2003 June 4 based on IMAGE.NB *) or[member[union[x_,y_],image[ADJOIN[y_],z_]],not[member[x_,z_]],not[member[y_,V]]] := True (* derived 2007 September 16 in AP-IM-FU.NB *) or[member[union[x_,inverse[x_]],image[HULL[invar[SWAP]],y_]],not[member[x_,y_]]] := True (* derived 2007 October 16 in INS-MAP.NB *) or[member[union[u_,v_],map[union[x_,y_],z_]],not[equal[0,intersection[x_,y_]]], not[member[u_,map[x_,z_]]],not[member[v_,map[y_,z_]]]] := True (* derived 2005 April 28 in MAX-MIN.NB *) or[member[union[nat[x_],nat[y_]],z_],not[member[nat[x_],z_]],not[member[nat[y_],z_]]] := True (* derived 2007 July 23 in RA-CLQ.NB *) or[member[union[u_,v_],x_],not[member[u_,x_]],not[member[v_,x_]], not[subclass[image[CUP,cart[x_,x_]],x_]]] := True (* derived 2007 September 8 in UCH-SQ.NB *) or[member[union[x_,y_],z_],not[member[y_,z_]],not[subclass[x_,y_]]] := True (* added 2002 November 24 based on VERTSECT.NB *) or[member[union[x_,y_],omega],not[member[x_,omega]],not[member[y_,omega]]] := True (* derived 2004 January 1 in COFIN-T1.NB *) or[member[union[x_,set[0]],PointClosed],not[member[x_,PointClosed]]] := True (* derived 2005 January 25 in X2759.NB *) or[member[union[x_,set[z_]],y_],not[member[x_,y_]],not[subclass[image[K,y_],y_]]] := True (* derived 2006 June 9 in UNARY.NB *) or[member[x_,UNOPS],not[FUNCTION[x_]],not[member[x_,y_]],not[subclass[range[x_],domain[x_]]]] := True (* added 2002 April 26 based on SIMPLIFY.NB *) or[member[x_,V],member[x_,y_]] := member[x,V] (* added 1998 August 31 *) or[member[x_,V],not[equal[0,x_]]] := True (* derived 2007 April 30 in Q-ORD.NB *) or[member[x_,V],not[equal[card[x_],card[ord[y_]]]]] := True (* derived 2004 June 20 in X1604-56.NB *) or[member[x_,V],not[equal[x_,inverse[x_]]],not[member[domain[x_],y_]]] := True (* derived 2004 June 20 in X1604-56.NB *) or[member[x_,V],not[equal[x_,inverse[x_]]],not[member[range[x_],y_]]] := True (* derived 2006 March 12 in DENUM.NB *) or[member[x_,V],not[equal[omega,card[x_]]]] := True (* derived 2004 January 4 in VS-IMIN.NB *) or[member[x_,V],not[FUNCTION[x_]],not[member[domain[x_],y_]]] := True (* derived 2005 December 16 in CANCELFU.NB *) or[member[u_,V],not[FUNCTION[x_]],not[member[pair[u_,v_],x_]]] := True (* derived 2005 December 16 in CANCELFU.NB *) or[member[v_,V],not[FUNCTION[x_]],not[member[pair[u_,v_],x_]]] := True (* added 2001 November 15 based on EQ-V.NB *) or[member[x_,V],not[member[x_,y_]]] := True (* derived 2006 January 8 in SETHOOD.NB *) or[member[x_,V],not[member[Aclosure[x_],y_]]] := True (* derived 2006 November 18 in CURMAP-3.NB *) or[member[y_,V],not[member[APPLY[x_,y_],z_]]] := True (* derived 2008 October 31 in BIJ.NB *) or[member[y_,V],not[member[x_,bij[y_,z_]]]] := True (* derived 2008 October 31 in BIJ.NB *) or[member[z_,V],not[member[x_,bij[y_,z_]]]] := True (* derived 2008 July 16 in FPINCART.NB *) or[member[x_,V],not[member[cart[x_,x_],y_]]] := True (* derived 2004 June 19 in X14--.NB *) or[member[y_,V],not[member[complement[x_],u_]],not[member[intersection[x_,y_],v_]]] := True (* derived 2004 January 4 in VS-IMIN.NB *) or[member[x_,V],not[member[domain[x_],u_]], not[member[range[x_],v_]],not[subclass[x_,cart[y_,z_]]]] := True (* added 2002 November 3 based on FIRST.NB *) or[member[x_,V],not[member[first[x_],y_]]] := True (* added 2002 June 22 based on X-RO-ASS.NB *) or[member[x_,V],not[member[first[first[x_]],V]]] := True (* derived 2007 July 11 in CONSTHUL.NB *) or[member[x_,V],not[member[fix[HULL[x_]],y_]]] := True (* derived 2004 March 18 in RFX-TRV.NB *) or[member[x_,V],not[member[fix[x_],y_]],not[REFLEXIVE[x_]]] := True (* derived 2004 March 29 based on HULL.NB *) or[member[y_,V],not[member[hull[x_,y_],z_]]] := True (* derived 2004 January 13 in RA-RCF.NB *) or[member[x_,V],not[member[id[x_],y_]]] := True (* derived 2004 August 19 in X2901-93.NB *) or[member[x_,V],not[member[image[SINGLETON,x_],y_]]] := True (* derived 2004 August 1 in THINNESS.NB *) or[member[y_,V],not[member[iterate[x_,y_],V]]] := True (* introduced 2006 January 5 in MAPINVAR.NB *) or[member[y_,V],not[member[x_,map[y_,z_]]]] := True (* derived 2006 September 3 in BO-POWER.NB *) or[member[w_,V],not[member[t_,map[cart[w_,w_],w_]]]] := True (* derived 2005 December 18 in ZER7-MAP.NB *) or[member[y_,V],not[member[x_,map[P[y_],P[y_]]]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[member[x_,V],not[member[natmul[x_,y_],z_]]] := True (* added 2001 December 20 based on SUBSET.NB *) or[member[x_,V],not[member[y_,z_]],not[subclass[x_,y_]]] := True (* derived 2007 December 5 in FULL.NB *) or[member[x_,V],not[member[y_,z_]],not[subclass[x_,tc[y_]]]] := True (* derived 2005 November 17 in FIN-SBCV.NB *) or[member[x_,V],not[member[y_,z_]],not[subclass[x_,U[y_]]]] := True (* derived 2006 January 8 in SETHOOD.NB *) or[member[x_,V],not[member[P[x_],y_]]] := True (* added 2002 October 15 based on MEMBER.NB *) or[member[u_,V],not[member[pair[u_,v_],composite[x_,y_]]]] := True (* added 2002 October 15 based on MEMBER.NB *) or[member[v_,V],not[member[pair[u_,v_],composite[x_,y_]]]] := True (* derived 2005 January 27 in DIV.NB *) or[member[x_,V],not[member[pair[x_,y_],DIV]]] := True (* derived 2005 January 27 in DIV.NB *) or[member[y_,V],not[member[pair[x_,y_],DIV]]] := True (* derived 2004 June 6 in EQV-TRV.NB *) or[member[u_,V],not[member[pair[u_,v_],eqv[x_]]]] := True (* derived 2004 June 6 in EQV-TRV.NB *) or[member[v_,V],not[member[pair[u_,v_],eqv[x_]]]] := True (* derived 2006 January 5 in TRUEPAIR.NB *) or[member[u_,V],not[member[pair[u_,v_],funpart[x_]]]] := True (* derived 2006 January 5 in TRUEPAIR.NB *) or[member[v_,V],not[member[pair[u_,v_],funpart[x_]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[u_,V],not[member[pair[u_,v_],GLB[x_]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[v_,V],not[member[pair[u_,v_],GLB[x_]]]] := True (* derived 2005 January 7 in K-RULES.NB *) or[member[x_,V],not[member[pair[x_,y_],K]]] := True (* derived 2005 January 7 in K-RULES.NB *) or[member[y_,V],not[member[pair[x_,y_],K]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[u_,V],not[member[pair[u_,v_],LUB[x_]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[member[v_,V],not[member[pair[u_,v_],LUB[x_]]]] := True (* derived 2006 January 5 in TRUEPAIR.NB *) or[member[u_,V],not[member[pair[u_,v_],x_]],not[subclass[x_,cart[y_,z_]]]] := True (* derived 2006 January 5 in TRUEPAIR.NB *) or[member[v_,V],not[member[pair[u_,v_],x_]],not[subclass[x_,cart[y_,z_]]]] := True (* derived 2005 December 31 in PO-MEMB.NB *) or[member[x_,V],not[member[pair[x_,y_],po[z_]]]] := True (* derived 2005 December 31 in PO-MEMB.NB *) or[member[y_,V],not[member[pair[x_,y_],po[z_]]]] := True (* derived 2005 January 27 in Q.NB *) or[member[x_,V],not[member[pair[x_,y_],Q]]] := True (* derived 2005 January 27 in Q.NB *) or[member[y_,V],not[member[pair[x_,y_],Q]]] := True (* derived 2005 December 31 in THINPART.NB *) or[member[x_,V],not[member[pair[x_,y_],thinpart[z_]]]] := True (* derived 2005 December 31 in THINPART.NB *) or[member[y_,V],not[member[pair[x_,y_],thinpart[z_]]]] := True (* derived 2004 June 6 in EQV-TRV.NB *) or[member[u_,V],not[member[pair[u_,v_],trv[x_]]]] := True (* derived 2004 June 6 in EQV-TRV.NB *) or[member[v_,V],not[member[pair[u_,v_],trv[x_]]]] := True (* derived 2005 January 27 in ZN.NB *) or[member[x_,V],not[member[pair[x_,y_],ZN]]] := True (* derived 2005 January 27 in ZN.NB *) or[member[y_,V],not[member[pair[x_,y_],ZN]]] := True (* derived 2007 June 30 in RANK-FIN.NB *) or[member[x_,V],not[member[rank[x_],y_]]] := True (* added 2002 November 3 based on FIRST.NB *) or[member[x_,V],not[member[second[x_],y_]]] := True (* derived 2006 January 8 in SETHOOD.NB *) or[member[x_,V],not[member[succ[x_],y_]]] := True (* derived 2006 January 8 in SETHOOD.NB *) or[member[x_,V],not[member[tc[x_],y_]]] := True (* added 2003 May 18 based on TOPS.NB *) or[member[x_,V],not[member[U[x_],y_]]] := True (* derived 2003 December 24 in UCL-ON.NB *) or[member[x_,V],not[member[Uclosure[x_],y_]]] := True (* derived 2004 August 17 in AP-PAIR.NB *) or[member[x_,V],not[member[y_,V]],not[member[intersection[x_,complement[y_]],V]]] := True (* derived 2006 September 2 in HULL-Z.NB *) or[member[x_,V],not[subclass[cart[x_,x_],EQUIDIFF]]] := True (* derived 2005 November 13 in SET-TOP.NB *) or[member[w_,V],not[subclass[w_,image[IMAGE[x_],top[t_]]]]] := True (* added 2002 May 14 based on IND-C.NB *) or[member[x_,V],not[subclass[x_,omega]]] := True (* derived 2007 November 1 in MAX-ON.NB *) or[member[x_,V],not[subclass[x_,OMEGA]],subclass[x_,image[inverse[PS],x_]]] := True (* derived 2007 November 1 in MAX-ON.NB *) or[member[x_,V],not[subclass[x_,OMEGA]],subclass[x_,U[x_]]] := True (* derived 2008 August 4 in SUC-ON-1.NB *) or[member[x_,V],not[subclass[x_,ord[y_]]]] := True (* derived 2006 March 20 in PCSU-FIN.NB *) or[member[x_,V],not[subclass[x_,REGULAR]],not[subclass[P[x_],FINITE]]] := True (* added 2001 November 15 *) or[member[x_,V],not[subclass[x_,set[y_]]]] := True (* added 2002 May 11 based on OM-1.NB *) or[member[x_,V],not[subclass[x_,y_]],subclass[succ[x_],y_]] := True (* added 2002 October 6 based on OMEGA-1.NB *) or[member[y_,V],not[subclass[x_,succ[y_]]]] := or[member[y,V],not[subclass[x,y]]] (* derived 2008 August 4 in SUC-ON-1.NB *) or[member[x_,V],not[subclass[succ[x_],ord[y_]]]] := True (* derived 2005 October 27 in TOP-THMS.NB *) or[member[x_,V],not[subclass[x_,top[y_]]]] := True (* derived 2005 November 13 in SET-TOP.NB *) or[member[x_,V],not[subclass[x_,U[top[t_]]]]] := True (* derived 2007 January 20 in SU-Z.NB *) or[member[x_,V],not[subclass[x_,Z]]] := True (* derived 2007 October 7 in UCL-MONO.NB *) or[member[y_,V],subclass[z_,APPLY[x_,y_]]] := True (* added 2002 January 26 based on IMV.NB *) or[member[x_,V],subclass[cart[set[x_],y_],z_]] := True (* derived 2004 November 19 in SETHOOD.NB *) or[member[wf[x_],V],not[member[x_,y_]]] := True (* derived 2008 September 22 in RA-XS.NB *) or[member[X[x_],range[XS]],not[member[x_,y_]]] := True (* derived 2006 April 4 in REG-X.NB *) or[member[X[x_],REGULAR],not[member[x_,REGULAR]]] := True (* derived 2007 January 9 in DISTRIB.NB *) or[member[x_,Z],not[member[inverse[x_],Z]],not[subclass[x_,cart[V,V]]]] := True (* derived 2007 January 11 in ZLEQ.NB *) or[member[x_,Z],not[member[pair[x_,y_],INTLEQ]]] := True (* derived 2007 January 11 in ZLEQ.NB *) or[member[y_,Z],not[member[pair[x_,y_],INTLEQ]]] := True (* derived 2008 September 6 in INTMUL.NB *) or[member[u_,Z],not[member[pair[pair[u_,v_],w_],INTMUL]]] := True (* derived 2008 September 6 in INTMUL.NB *) or[member[v_,Z],not[member[pair[pair[u_,v_],w_],INTMUL]]] := True (* derived 2008 September 6 in INTMUL.NB *) or[member[w_,Z],not[member[pair[pair[u_,v_],w_],INTMUL]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) or[not[associative[x_]],not[FUNCTION[x_]], not[subclass[composite[domain[x_],SECOND,inverse[x_]],domain[x_]]], subclass[composite[x_,inverse[FIRST],domain[x_]],domain[x_]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) or[not[associative[x_]],not[FUNCTION[x_]], not[subclass[composite[x_,inverse[FIRST],domain[x_]],domain[x_]]], subclass[composite[domain[x_],SECOND,inverse[x_]],domain[x_]]] := True (* derived 2004 December 10 in DIV-TRV.NB *) or[not[associative[x_]],not[subclass[image[x_,cart[y_,y_]],y_]], TRANSITIVE[composite[x_,id[cart[V,y_]],inverse[FIRST]]]] := True (* derived 2004 December 10 in DIV-TRV.NB *) or[not[associative[x_]],not[subclass[image[x_,cart[y_,y_]],y_]], TRANSITIVE[composite[x_,id[cart[y_,V]],inverse[SECOND]]]] := True (* added 2003 July 1 based on ASSOC.NB *) or[not[associative[x_]],subclass[x_,cart[cart[V,V],V]]] := True (* derived 2006 January 3 in ASSOC.NB *) or[not[associative[x_]],subclass[x_,cart[V,V]]] := True (* derived 2008 December 20 in SU-RO.NB *) or[not[associative[x_]],subclass[composite[domain[x_],x_],composite[domain[x_],SECOND]]] := True (* added 2003 July 1 based on ASS-TRV.NB *) or[not[associative[x_]],subclass[domain[x_],cart[V,V]]] := True (* added 2003 July 1 based on ASS-TRV.NB *) or[not[associative[x_]],TRANSITIVE[composite[x_,inverse[FIRST]]]] := True (* derived 2008 October 22 in ASS-TRV.NB *) or[not[associative[x_]],TRANSITIVE[composite[x_,inverse[FIRST],x_,inverse[SECOND]]]] := True (* added 2003 July 1 based on ASS-TRV.NB *) or[not[associative[x_]],TRANSITIVE[composite[x_,inverse[SECOND]]]] := True (* derived 2008 January 3 in COVERFIN.NB *) or[not[axch],not[equal[0,intersection[map[x_,y_],P[E]]]],not[member[y_,z_]], not[subclass[x_,U[y_]]]] := True (* derived 2004 November 28 in SKOLEM.NB *) or[not[axch],not[equal[0,intersection[map[x_,y_],P[z_]]]], not[member[x_,u_]],not[member[y_,v_]],not[subclass[x_,image[inverse[z_],y_]]]] := True (* derived 2004 November 28 in SKOLEM.NB *) or[not[axch],not[equal[0,intersection[map[setpart[x_],setpart[y_]],P[z_]]]], not[subclass[setpart[x_],image[inverse[z_],setpart[y_]]]]] := True (* derived 2004 November 28 in SKOLEM.NB *) or[not[axch],not[equal[0,X[composite[id[setpart[y_]],z_,id[setpart[x_]]]]]]] := True (* derived 2004 November 28 in SKOLEM.NB *) or[not[axch],not[equal[0,X[x_]]],not[member[x_,y_]]] := True (* derived 2004 November 28 in SKOLEM.NB *) or[not[axch],not[equal[0,X[setpart[x_]]]]] := True (* derived 2008 September 17 in TUKEY.NB *) or[not[axch],not[equal[complement[x_],image[S,intersection[FINITE,complement[x_]]]]], not[member[0,x_]],not[member[x_,y_]],not[subclass[x_,image[inverse[PS],x_]]]] := True (* derived 2007 November 15 in ZORN-LEM.NB *) or[not[axch],not[equal[x_,Uchains[x_]]],not[member[x_,y_]], not[subclass[x_,image[inverse[PS],x_]]]] := True (* derived 2008 September 17 in TUKEY.NB *) or[not[axch],not[member[0,x_]],not[member[x_,FINCHAR]], not[subclass[x_,image[inverse[PS],x_]]]] := True (* derived 2004 October 26 in AXCH.NB *) or[not[AxCh],not[member[CHOICE,x_]]] := True (* derived 2007 December 28 in MEMB-IMS.NB *) or[not[axch],not[member[x_,y_]],not[member[y_,z_]], not[subclass[intersection[y_,image[S,set[x_]]],image[inverse[PS],y_]]], not[subclass[Uchains[y_],image[inverse[S],y_]]]] := True (* derived 2007 November 25 in MAX-CLIQ.NB *) or[not[axch],not[member[x_,y_]],not[subclass[chains[x_],image[inverse[PS],chains[x_]]]]] := True (* derived 2007 November 25 in MAX-CLIQ.NB *) or[not[axch],not[member[x_,y_]],not[subclass[cliques[x_],image[inverse[PS],cliques[x_]]]]] := True (* derived 2007 November 23 in ZORN-MAX.NB *) or[not[axch],not[member[x_,y_]],not[subclass[x_,image[inverse[PS],x_]]], not[subclass[Uchains[x_],image[inverse[S],x_]]]] := True (* derived 2008 January 12 in HAUS-MAX.NB *) or[not[axch],not[member[x_,y_]],not[subclass[intersection[chains[z_],P[x_]], image[inverse[PS],intersection[chains[z_],P[x_]]]]]] := True (* derived 2007 November 15 in ZORN-LEM.NB *) or[not[axch],not[member[x_,y_]],not[subclass[Uchains[x_],image[inverse[PS],x_]]]] := True (* derived 2007 November 23 in ZORN-MAX.NB *) or[not[axch],not[member[x_,y_]],not[subclass[Uchains[x_],image[inverse[S],x_]]], subclass[x_,image[inverse[S],intersection[x_,complement[image[inverse[PS],x_]]]]]] := True (* derived 2007 November 25 in MAX-CLIQ.NB *) or[not[axch],not[member[x_,y_]],subclass[chains[x_], image[inverse[S],intersection[chains[x_],complement[image[inverse[PS],chains[x_]]]]]]] := True (* derived 2007 November 25 in MAX-CLIQ.NB *) or[not[axch],not[member[x_,y_]],subclass[cliques[x_], image[inverse[S],intersection[cliques[x_],complement[image[inverse[PS],cliques[x_]]]]]]] := True (* derived 2007 November 25 in MAX-CLIQ.NB *) or[not[axch],not[member[x_,y_]],subclass[intersection[chains[S],P[x_]], image[inverse[S],intersection[chains[S],complement[image[inverse[PS], intersection[chains[S],P[x_]]]],P[x_]]]]] := True (* derived 2004 October 26 in AXCH.NB *) or[not[AxCh],subclass[CHOICE,inverse[E]]] := True (* derived 2004 October 26 in AXCH.NB *) or[not[AxCh],subclass[composite[id[x_],inverse[CHOICE]],E]] := True (* derived 2008 January 12 in HAUS-MAX.NB *) or[not[axch],subclass[composite[inverse[E],id[image[IMAGE[id[chains[x_]]],range[POWER]]]], composite[inverse[S],MAXIMAL[S]]]] := True (* derived 2005 November 20 in ACDORAFU.NB *) or[not[axch],subclass[image[DORA,FUNS],composite[Q,inverse[S]]]] := True (* derived 2004 October 26 in AXCH.NB *) or[not[AxCh],subclass[inverse[CHOICE],E_]] := True (* Szpilrajn Theorem,derived 2007 December 30 in IMS-TO.NB *) or[not[axch],subclass[PO,image[inverse[S],TO]]] := True (* derived 2004 November 7 in AXCH-RE.NB *) or[not[axch],subclass[x_,SELECT]] := True (* derived 2004 December 31 in X4291-99.NB *) or[not[AxReg],not[equal[x_,set[x_]]]] := True (* derived 2004 December 31 in X4291-99.NB *) or[not[AxReg],not[equal[x_,U[x_]]],not[member[x_,range[SINGLETON]]]] := True (* derived 2004 December 30 in AXREG.NB *) or[not[AxReg],not[member[x_,x_]]] := True (* derived 2004 December 31 in X4291-99.NB *) or[not[AxReg],not[member[x_,image[inverse[S],x_]]]] := True (* derived 2005 December 3 in X4300-02.NB *) or[not[AxReg],not[member[x_,y_]],not[member[y_,x_]]] := True (* derived 2005 February 15 in RUS-A-DJ.NB *) or[not[AxReg],not[member[y_,x_]],not[member[y_,A[x_]]]] := True (* derived 2004 December 31 in X4291-99.NB *) or[not[AxReg],not[member[x_,y_]],not[subclass[y_,x_]]] := True (* derived 2005 December 3 in X4300-02.NB *) or[not[AxReg],not[member[x_,U[x_]]]] := True (* derived 2008 July 27 in TC-0.NB *) or[not[AxReg],subclass[intersection[FULL,P[complement[set[0]]]],set[0]]] := True (* derived 2005 February 15 in RUS-A-DJ.NB *) or[not[AxReg],subclass[x_,REGULAR]] := True (* derived 2009 January 9 in CAT.NB *) or[not[category[x_]],subclass[x_,cart[cart[range[x_],range[x_]],range[x_]]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) or[not[category[x_]],subclass[composite[domain[x_],SECOND,inverse[x_]],domain[x_]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) or[not[category[x_]],subclass[composite[x_,inverse[FIRST],domain[x_]],domain[x_]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) or[not[category[x_]],subclass[domain[x_],cart[range[x_],range[x_]]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) or[not[category[x_]],subclass[range[x_],domain[cod[x_]]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) or[not[category[x_]],subclass[range[x_],domain[dom[x_]]]] := True (* derived 2008 August 13 in ALL-UB.NB *) or[not[equal[0,allclosed[id[x]]]],not[member[x,y]]] := True (* derived 2006 November 25 in U-BINHOM.NB *) or[not[equal[0,binhom[x_,x_]]],not[member[x_,BINOPS]]] := True (* derived 2008 December 28 in GP-DIR.NB *) or[not[equal[0,domain[domain[x_]]]],not[member[x_,GROUPS]]] := True (* derived 2004 November 18 in XS-IN-AC.NB *) or[not[equal[0,domain[x_]]],not[equal[0,X[x_]]]] := True (* derived 2006 January 4 in CL-X.NB *) or[not[equal[0,domain[x_]]],not[member[x_,CL]]] := True (* derived 2008 December 5 in DORA-GPS.NB *) or[not[equal[0,domain[x_]]],not[member[x_,GROUPS]]] := True (* derived 2008 April 18 in SU-X.NB *) or[not[equal[0,domain[x_]]],subclass[composite[Id,x_],y_]] := True (* derived 2008 December 5 in DORA-GPS.NB *) or[not[equal[0,fix[domain[x_]]]],not[member[x_,GROUPS]]] := True (* derived 2006 January 8 in ZER-CANT.NB *) or[not[equal[0,fix[x_]]],not[equal[domain[x_],P[y_]]],not[FUNCTION[x_]],not[member[x_,V]], not[subclass[composite[x_,S],composite[S,x_]]],not[subclass[range[x_],domain[x_]]]] := True (* derived 2005 December 28 in CL-0-1.NB *) or[not[equal[0,fix[x_]]],not[member[x_,CL]]] := True (* derived 2004 December 30 in AXREG.NB *) or[not[equal[0,fix[E]]],not[member[x_,x_]]] := True (* derived 2006 January 7 in CL-FP.NB *) or[not[equal[0,fix[y_]]],not[member[x_,CL]],not[member[y_,map[fix[x_],fix[x_]]]], not[subclass[composite[y_,x_,inverse[y_]],x_]]] := True (* derived 2006 January 7 in ZERMELO.NB *) or[not[equal[0,fix[x_]]],not[member[x_,map[P[y_],P[y_]]]],not[subclass[composite[x_,S,inverse[x_]],S]]] := True (* derived 2005 December 18 in ZER7-MAP.NB *) or[not[equal[0,fix[x_]]],not[member[x_,map[P[y_],P[y_]]]],not[subclass[composite[x_,S],composite[S,x_]]]] := True (* derived 2008 February 9 in ACY-TRV.NB *) or[not[equal[0,fix[x_]]],not[member[y_,z_]],not[member[pair[y_,y_],x_]]] := True (* derived 2004 June 26 in X1640.NB *) or[not[equal[0,fix[x_]]],not[subclass[x_,cart[y_,y_]]],not[TRANSITIVE[x_]],PARTIALORDER[union[x_,id[y_]]]] := True (* derived 2004 June 26 in X1640.NB *) or[not[equal[0,fix[x_]]],not[subclass[x_,cart[y_,y_]]],REFLEXIVE[union[x_,id[y_]]]] := True (* derived 2008 February 16 in STRICTTO.NB *) or[not[equal[0,fix[x_]]],not[subclass[cart[union[domain[x_],range[x_]],union[domain[x_],range[x_]]], union[Id,inverse[x_],x_]]],not[TRANSITIVE[x_]], TOTALORDER[union[id[union[domain[x_],range[x_]]],x_]]] := True (* derived 2007 June 7 in PO-IRR.NB *) or[not[equal[0,fix[x_]]],not[TRANSITIVE[x_]], PARTIALORDER[union[x_,id[union[domain[x_],range[x_]]]]]] := True (* derived 2004 June 26 in X1640.NB *) or[not[equal[0,fix[x_]]],not[TRANSITIVE[x_]],subclass[intersection[x_,inverse[x_]],Id]] := True (* derived 2006 February 16 in WFACYFIN.NB *) or[not[equal[0,fix[trv[x_]]]],not[member[x_,FINITE]], not[subclass[x_,cart[V,V]]],WELLFOUNDED[x_]] := True (* derived 2006 February 14 in ITER-OO.NB *) or[not[equal[0,fix[trv[x_]]]],not[member[u_,v_]],not[member[v_,omega]], subclass[image[iterate[x_,y_],set[v_]],image[Di,image[iterate[x_,y_],set[u_]]]]] := True (* derived 2008 February 9 in ACY-TRV.NB *) or[not[equal[0,fix[trv[x_]]]],not[member[pair[y_,y_],composite[trv[x_],trv[x_]]]]] := True (* derived 2008 February 9 in ACY-TRV.NB *) or[not[equal[0,fix[trv[x_]]]],not[member[pair[u_,v_],x_]], not[member[pair[v_,w_],x_]],not[member[pair[w_,u_],x_]],not[subclass[x_,cart[V,V]]]] := True (* derived 2008 February 9 in ACY-TRV.NB *) or[not[equal[0,fix[trv[x_]]]],not[member[pair[u_,v_],x_]], not[member[pair[v_,u_],x_]],not[subclass[x_,cart[V,V]]]] := True (* derived 2008 February 9 in ACY-TRV.NB *) or[not[equal[0,fix[trv[x_]]]],not[subclass[x_,cart[V,V]]], not[subclass[cart[union[domain[x_],range[x_]],union[domain[x_],range[x_]]], union[Id,x_,inverse[x_]]]],TRANSITIVE[x_]] := True (* derived 2007 June 7 in PO-IRR.NB *) or[not[equal[0,fix[trv[x_]]]],PARTIALORDER[union[id[union[domain[x_],range[x_]]],trv[x_]]]] := True (* derived 2006 March 1 in ACY-FIN.NB *) or[not[equal[0,fix[trv[x_]]]],subclass[intersection[FINITE,subvar[x_]],set[0]]] := True (* derived 2008 February 22 in WF-RS.NB *) or[not[equal[0,fix[trv[x_]]]],WELLFOUNDED[composite[id[fin[y_]],x_]]] := True (* derived 2008 December 28 in E.NB *) or[not[equal[0,ids[x_]]],not[member[e[x_],V]]] := True (* derived 2008 December 29 in MONOIDS.NB *) or[not[equal[0,ids[x_]]],not[member[x_,MONOIDS]]] := True (* derived 2008 January 30 in DJ-U-TRV.TXT *) or[not[equal[0,intersection[domain[x_],range[y_]]]], not[equal[0,intersection[domain[y_],range[x_]]]], not[TRANSITIVE[x_]],not[TRANSITIVE[y_]],TRANSITIVE[union[x_,y_]]] := True (* derived 2006 February 18 in DORA-DJ.NB *) or[not[equal[0,intersection[domain[x_],range[x_]]]],not[subclass[x_,cart[V,V]]],TRANSITIVE[x_]] := True (* derived 2006 February 18 in DORA-DJ.NB *) or[not[equal[0,intersection[domain[x_],range[x_]]]],not[subclass[x_,cart[V,V]]],WELLFOUNDED[x_]] := True (* added 2002 December 23 based on REPLACE.NB *) or[not[equal[0,intersection[y_,domain[x_]]]],subclass[image[x_,y_],z_]] := True (* derived 2008 August 1 in THM-63.NB *) or[not[equal[0,intersection[fix[composite[x_,id[y_],x_]],y_]]], not[WELLFOUNDED[composite[id[y_],intersection[Di,complement[inverse[x_]]]]]], WELLFOUNDED[composite[id[y_],x_]]] := True (* derived 2008 January 31 in DJ-U-PO.NB *) or[not[equal[0,intersection[fix[x_],fix[y_]]]], not[PARTIALORDER[x_]],not[PARTIALORDER[y_]],PARTIALORDER[union[x_,y_]]] := True (* derived 2008 January 30 in DJ-U-QO.NB *) or[not[equal[0,intersection[fix[x_],fix[y_]]]],not[REFLEXIVE[x_]],not[REFLEXIVE[y_]], not[TRANSITIVE[x_]],not[TRANSITIVE[y_]],TRANSITIVE[union[x_,y_]]] := True (* derived 2005 December 28 in BOTTOM.NB *) or[not[equal[0,intersection[fix[x_],lb[x_,fix[x_]]]]],not[member[x_,CL]]] := True (* derived 2006 January 16 in SUBFIXED.NB *) or[not[equal[0,intersection[fix[x_],P[y_]]]],not[FUNCTION[x_]], not[member[y_,fix[composite[S,x_]]]],not[subclass[composite[x_,S],composite[S,x_]]]] := True (* derived 2008 January 31 in DJ-U-PO.NB *) or[not[equal[0,intersection[fix[po[x_]],fix[po[y_]]]]],PARTIALORDER[union[po[x_],po[y_]]]] := True (* derived 2007 April 22 in CL-DUAL.NB *) or[not[equal[0,intersection[fix[x_],ub[x_,fix[x_]]]]],not[member[x_,CL]]] := True (* derived 2007 October 4 in TOWERS.NB *) or[not[equal[0,intersection[fix[UCHAINS],invar[x_]]]], not[equal[domain[x_],Uchains[domain[x_]]]],not[member[x_,UNOPS]]] := True (* derived 2008 January 4 in FNCH-UCH.NB *) or[not[equal[0,intersection[x_,image[S,intersection[FINITE,complement[x_]]]]]], not[equal[V,union[x_,image[S,intersection[FINITE,complement[x_]]]]]]] := not[equal[complement[x],image[S,intersection[FINITE,complement[x]]]]] (* derived 2008 August 3 in WF-TRICH.NB *) or[not[equal[0,intersection[lb[union[Id,x_],y_],y_]]], not[subclass[cart[y_,y_],union[Id,inverse[x_],x_]]],subclass[y_,image[x_,y_]]] := True (* derived 2008 January 3 in COVERFIN.NB *) or[not[equal[0,intersection[map[x_,y_],P[E]]]], not[member[x_,FINITE]],not[subclass[x_,U[y_]]]] := True (* derived 2007 December 20 in PC-SU.NB *) or[not[equal[0,intersection[x_,z_]]],not[equal[0,intersection[y_,P[complement[z_]]]]], not[member[x_,y_]]] := True (* added 2003 January 14 based on CHAIN-C.NB *) or[not[equal[0,intersection[x_,y_]]],not[equal[V,union[y_,z_]]],subclass[x_,z_]] := True (* derived 2004 February 8 in BASICS.NB *) or[not[equal[0,intersection[x_,y_]]],not[member[z_,x_]],not[member[z_,y_]]] := True (* derived 2005 February 6 in DESCEND.NB *) or[not[equal[0,intersection[x_,y_]]],not[member[x_,y_]],not[member[y_,DESCENDING]]] := True (* derived 2004 February 8 in BASICS.NB *) or[not[equal[0,intersection[x_,y_]]],not[subclass[x_,union[y_,z_]]],subclass[x_,z_]] := True (* derived 2004 June 14 in FU-F-O.NB *) or[not[equal[0,intersection[u_,x_]]],not[subclass[v_,union[x_,y_]]], subclass[intersection[u_,v_],y_]] := True (* derived 2007 November 29 in REGULAR.NB *) or[not[equal[0,intersection[x_,P[complement[x_]]]]], not[member[y_,REGULAR]],not[member[y_,x_]]] := True (* derived 2008 March 20 in RFX-IM.NB *) or[not[equal[0,intersection[y_,P[x_]]]],not[member[x_,y_]]] := True (* derived 2007 December 20 in PC-SU.NB *) or[not[equal[0,intersection[x_,P[y_]]]],not[member[0,x_]]] := True (* derived 2005 December 28 in CL-0-1.NB *) or[not[equal[0,lb[x_,fix[x_]]]],not[member[x_,CL]]] := True (* derived 2005 December 28 in CL-0-1.NB *) or[not[equal[0,lb[x_,y_]]],not[member[x_,CL]],not[subclass[y_,fix[x_]]]] := True (* derived 2005 December 28 in CL-0-1.NB *) or[not[equal[0,lb[x_,y_]]],not[member[y_,domain[GLB[x_]]]]] := True (* derived 2004 January 2 in CUT-EQNS.NB *) or[not[equal[0,x_]],not[equal[V,x_]]] := True (* added 2000 October 4 based on NONEMPTY.LOG *) or[not[equal[0,x_]],not[member[y_,x_]]] := True (* derived 2007 October 4 in TOWERS.NB *) or[not[equal[0,x_]],not[member[y_,z_]],not[subclass[A[x_],y_]]] := True (* derived 2007 February 1 in N-OVER-D.NB *) or[not[equal[0,x_]],not[member[pair[x_,y_],DIV]]] := or[not[equal[0,x]],not[equal[0,y]]] (* derived 2007 April 3 in DIV-DV.NB *) or[not[equal[0,x_]],not[member[pair[natmul[x_,y_],z_],DIV]]] := or[not[equal[0,x]],not[equal[0,z]],not[member[y,omega]]] (* added 2002 May 10 based on U-A.NB *) or[not[equal[0,x_]],not[member[x_,range[SINGLETON]]]] := True (* derived 2008 September 17 in MEMB-2.NB *) or[not[equal[0,x_]],not[subclass[x_,set[0]]]] := not[equal[0,x]] (* derived 2008 January 4 in SPINSETP.NB *) or[not[equal[0,spine[S,x_]]],not[member[x_,FINITE]],not[member[U[spine[S,x_]],x_]]] := True (* added 1998 August 22 *) or[not[equal[0,x_]],subclass[x_,y_]] := True (* derived 2005 December 28 in CL-0-1.NB *) or[not[equal[0,ub[x_,fix[x_]]]],not[member[x_,CL]]] := True (* derived 2005 December 28 in CL-0-1.NB *) or[not[equal[0,ub[x_,y_]]],not[member[x_,CL]],not[subclass[y_,fix[x_]]]] := True (* derived 2004 February 28 in IM-CP-3.NB *) or[not[equal[0,ub[x_,y_]]],not[subclass[cart[y_,y_],x_]]] := True (* derived 2004 December 6 in FIN-AXCH.NB *) or[not[equal[0,X[composite[inverse[E],id[x_]]]]],not[member[x_,FINITE]]] := True (* derived 2008 January 15 in X-WOB-RA.NB *) or[not[equal[0,X[composite[inverse[E],id[x_]]]]],not[member[U[x_],image[Q,OMEGA]]]] := True (* derived 2006 February 10 in PIGNHOLE.NB *) or[not[equal[0,X[inverse[x_]]]],not[member[x_,FINITE]]] := True (* derived 2008 January 15 in X-FU.NB *) or[not[equal[0,X[x_]]],not[FUNCTION[x_]],not[member[x_,y_]]] := True (* derived 2005 October 30 in X-FIN-DO.NB *) or[not[equal[0,X[x_]]],not[member[domain[x_],FINITE]]] := True (* derived 2008 January 15 in X-WOB-RA.NB *) or[not[equal[0,X[x_]]],not[member[domain[x_],y_]],not[member[range[x_],image[Q,OMEGA]]]] := True (* derived 2006 February 10 in PIGNHOLE.NB *) or[not[equal[0,X[x_]]],not[member[x_,FINITE]]] := True (* derived 2008 January 15 in X-WOB-RA.NB *) or[not[equal[0,X[x_]]],not[member[x_,y_]],not[member[range[x_],FINITE]]] := True (* derived 2008 January 15 in X-WOB-RA.NB *) or[not[equal[0,X[x_]]],not[member[x_,y_]],not[member[range[x_],image[Q,OMEGA]]]] := True (* derived 2004 December 24 in SEL-ON.NB *) or[not[equal[0,X[x_]]],not[member[x_,y_]],not[subclass[range[x_],OMEGA]]] := True (* derived 2008 June 3 in CARD-ORD.NB *) or[not[equal[x_,card[x_]]],not[member[x_,image[Q,x_]]]] := True (* derived 2004 July 14 in X1656.NB *) or[not[equal[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]]],not[PARTIALORDER[x_]]] := not[TOTALORDER[x]] (* derived 2004 June 27 in X1655-61.NB *) or[not[equal[cart[fix[x_],fix[x_]],union[inverse[x_],x_]]], not[subclass[intersection[inverse[x_],x_],Id]], not[TRANSITIVE[composite[Id,x_]]],TOTALORDER[x_]] := True (* derived 2004 February 10 in TOTORDER.NB *) or[not[equal[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]]], not[subclass[intersection[x_,inverse[x_]],Id]],not[TRANSITIVE[x_]],TOTALORDER[x_]] := True (* derived 2004 June 26 in TOTALORD.NB *) or[not[equal[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]]],REFLEXIVE[x_]] := True (* derived 2008 February 14 in DICHOT.NB *) or[not[equal[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]]], subclass[cart[union[domain[x_],range[x_]],union[domain[x_],range[x_]]], union[x_,inverse[x_]]]] := True (* derived 2004 June 26 in TOTALORD.NB *) or[not[equal[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]]],subclass[x_,cart[V,V]]] := True (* derived 2008 February 5 in TOT-RELN.NB *) or[not[equal[cart[union[domain[x_],range[x_]],union[domain[x_],range[x_]]],union[x_,inverse[x_]]]], REFLEXIVE[x_]] := True (* derived 2008 February 5 in TOT-RELN.NB *) or[not[equal[cart[union[domain[x_],range[x_]],union[domain[x_],range[x_]]],union[x_,inverse[x_]]]], subclass[x_,cart[V,V]]] := True (* derived 2008 September 17 in FNCH-CUT.NB *) or[not[equal[complement[x_],image[S,intersection[FINITE,complement[x_]]]]], subclass[image[IMAGE[id[x_]],FINCHAR],FINCHAR]] := True (* derived 2008 January 2 in FINCHR-1.NB *) or[not[equal[complement[x_],image[S,y_]]],not[member[z_,x_]],subclass[P[z_],x_]] := True (* derived 2008 September 18 in CIMS-HER.NB *) or[not[equal[complement[x_],image[S,y_]]],subclass[image[inverse[S],x_],x_]] := True (* derived 2008 October 24 in RFX-CMT.NB *) or[not[equal[composite[x_,y_],composite[y_,x_]]], not[REFLEXIVE[x_]],not[REFLEXIVE[y_]],REFLEXIVE[composite[x_,y_]]] := True (* derived 2005 April 19 in XVR-TRV.NB *) or[not[equal[composite[x_,y_],composite[y_,x_]]],not[subclass[image[x_,z_],image[y_,z_]]], subclass[image[trv[x_],z_],image[trv[y_],z_]]] := True (* derived 2005 April 17 in XVR-ITER.NB *) or[not[equal[composite[x_,y_],composite[y_,x_]]],not[subclass[image[x_,z_],image[y_,z_]]], subclass[iterate[x_,z_],iterate[y_,z_]]] := True (* derived 2004 August 28 in TRV-CO.NB *) or[not[equal[composite[x_,y_],composite[y_,x_]]],not[TRANSITIVE[x_]],not[TRANSITIVE[y_]], TRANSITIVE[composite[x_,y_]]] := True (* derived 2006 June 27 in TRV-U.NB *) or[not[equal[composite[x_,y_],composite[y_,x_]]],not[TRANSITIVE[x_]],not[TRANSITIVE[y_]], TRANSITIVE[union[composite[x_,y_],x_,y_]]] := True (* derived 2005 February 5 in X2894.NB *) or[not[equal[composite[x_,y_],composite[z_,x_]]], subclass[image[IMAGE[x_],fix[IMAGE[y_]]],fix[IMAGE[z_]]]] := True (* derived 2005 April 19 in XVR-TRV.NB *) or[not[equal[composite[x_,y_],composite[y_,x_]]], subclass[transvar[x_,y_],transvar[trv[x_],trv[y_]]]] := True (* derived 2008 June 20 in FIX-FUNP.NB *) or[not[equal[composite[funpart[y_],z_],composite[x_,funpart[y_]]]], subclass[image[funpart[y_],fix[funpart[z_]]],fix[funpart[x_]]]] := True (* derived 2007 October 30 in PROJ-SBV.NB *) or[not[equal[composite[funpart[x_],funpart[x_]],funpart[x_]]], not[subclass[y_,image[funpart[x_],y_]]],subclass[y_,fix[funpart[x_]]]] := True (* added 2002 December 23 based on REPLACE.NB *) or[not[equal[x_,composite[funpart[y_],id[domain[x_]]]]],subclass[x_,funpart[y_]]] := True (* derived 2007 October 30 in PROJ-SBV.NB *) or[not[equal[x_,composite[x_,x_]]],not[equal[y_,image[x_,y_]]], not[FUNCTION[x_]],subclass[y_,fix[x_]]] := True (* derived 2007 October 30 in PROJ-SBV.NB *) or[not[equal[x_,composite[x_,x_]]],not[FUNCTION[x_]], not[subclass[y_,image[x_,y_]]],subclass[y_,fix[x_]]] := True (* derived 2006 January 28 in PROJ.NB *) or[not[equal[x_,composite[x_,x_]]],not[FUNCTION[x_]], subclass[intersection[x_,inverse[x_]],Id]] := True (* derived 2007 October 30 in PROJ-SBV.NB *) or[not[equal[x_,composite[x_,x_]]],not[subclass[y_,image[IMAGE[x_],y_]]], subclass[y_,fix[IMAGE[x_]]]] := True (* added 2001 October 28 based on EQV.NB *) or[not[equal[composite[x_,y_],z_]],subclass[z_,cart[V,V]]] := True (* derived 2004 March 31 in EQV-DEFN.NB *) or[not[equal[x_,composite[x_,x_]]],TRANSITIVE[x_]] := True (* derived 2004 August 28 in TRV-CO.NB *) or[not[equal[composite[trv[x_],trv[y_]],composite[trv[y_],trv[x_]]]], TRANSITIVE[composite[trv[x_],trv[y_]]]] := True (* derived 2006 June 27 in TRV-U.NB *) or[not[equal[composite[trv[x_],trv[y_]],composite[trv[y_],trv[x_]]]], TRANSITIVE[union[composite[trv[x_],trv[y_]],trv[x_],trv[y_]]]] := True (* derived 2005 December 21 in SUBTWINE.NB *) or[not[equal[domain[x_],domain[y_]]],not[FUNCTION[x_]], not[subclass[composite[x_,y_,inverse[x_]],z_]],subclass[composite[x_,y_],composite[z_,x_]]] := True (* derived 2005 December 22 in MONO-FP.NB *) or[not[equal[domain[x_],domain[y_]]],not[FUNCTION[x_]], not[subclass[composite[x_,y_,inverse[x_]],z_]], subclass[image[x_,fix[composite[y_,x_]]],fix[composite[z_,x_]]]] := True (* derived 2008 November 13 in FIX-FUN.NB *) or[not[equal[domain[x_],fix[composite[inverse[x_],y_]]]],not[FUNCTION[x_]],subclass[x_,y_]] := True (* derived 2004 August 2 in FU-SU.NB *) or[not[equal[domain[x_],fix[composite[inverse[y_],x_]]]],not[FUNCTION[x_]],subclass[x_,y_]] := True (* derived 2006 October 7 in TRV-RFX.NB *) or[not[equal[domain[x_],fix[x_]]],not[equal[fix[x_],range[x_]]], not[subclass[x_,cart[V,V]]],REFLEXIVE[x_]] := True (* derived 2006 September 15 in ID-CHAR.NB *) or[not[equal[domain[x_],fix[x_]]],not[FUNCTION[x_]],subclass[x_,Id]] := True (* derived 2004 August 2 in FU-SU.NB *) or[not[equal[domain[funpart[x_]],fix[composite[inverse[y_],funpart[x_]]]]],subclass[funpart[x_],y_]] := True (* generalization of Theorem ZER-2 proved 2002 January 13 in ZER-2.NB *) or[not[equal[domain[x_],image[inverse[y_],domain[x_]]]], not[subclass[composite[x_,y_,inverse[x_]],y_]], subclass[composite[x_,y_],composite[y_,x_]]] := True (* derived 2006 January 5 in MONO-FP.NB *) or[not[equal[domain[x_],range[y_]]],not[FUNCTION[x_]],not[subclass[composite[x_,y_,inverse[x_]],z_]], subclass[image[x_,fix[composite[inverse[y_],x_]]],fix[composite[inverse[z_],x_]]]] := True (* derived 2007 October 27 in TOPPLE.NB *) or[not[equal[domain[x_],Uchains[domain[x_]]]],not[member[x_,UNOPS]],not[subclass[x_,K]]] := True (* derived 2007 October 4 in TOWERS.NB *) or[not[equal[domain[x_],Uchains[domain[x_]]]],not[member[x_,UNOPS]], subclass[A[intersection[fix[UCHAINS],invar[x_]]],domain[x_]]] := True (* derived 2007 June 10 in HULL-RFX.NB *) or[not[equal[x_,hull[RFX,x_]]],not[member[x_,y_]],REFLEXIVE[x_]] := True (* derived 2004 April 9 in SU-ID.NB *) or[not[equal[x_,id[y_]]],subclass[x_,Id]] := True (* derived 2007 December 14 in CANTOR.NB *) or[not[equal[x_,image[inverse[S],x_]]],not[equal[x_,image[inverse[TC],x_]]], subclass[U[x_],x_]] := True (* derived 2005 November 17 in RUSSELL.NB *) or[not[equal[x_,image[inverse[S],x_]]],not[member[x_,x_]]] := True (* derived 2008 March 20 in BNCL-DIF.NB *) or[not[equal[x_,image[inverse[S],x_]]],subclass[image[DIF,cart[x_,x_]],x_]] := True (* added 2002 May 24 based on OMEGA.NB *) or[not[equal[x_,intersection[y_,z_]]],subclass[x_,y_]] := True (* derived 2006 October 10 in SYM.NB *) or[not[equal[x_,inverse[x_]]],not[subclass[x_,y_]],subclass[x_,inverse[y_]]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) or[not[equal[x_,inverse[x_]]],not[TRANSITIVE[x_]]] := not[EQUIVALENCE[x]] (* derived 2004 March 20 in EQV-WRAP.NB *) or[not[equal[x_,inverse[x_]]],not[TRANSITIVE[composite[Id,x_]]]] := not[EQUIVALENCE[x]] (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[equal[x_,inverse[x_]]],subclass[x_,cart[V,V]]] := True (* derived 2005 January 7 in K-RULES.NB *) or[not[equal[x_,y_]],not[member[pair[x_,y_],K]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[equal[x_,y_]],not[REFLEXIVE[x_]],REFLEXIVE[y_]] := True (* derived 2007 September 12 in OR-EQ-SU.NB *) or[not[equal[x_,y_]],not[subclass[x_,y_]]] := not[equal[x,y]] (* added 2003 November 4 based on SBCOMMUT.NB *) or[not[equal[x_,y_]],not[subclass[composite[y_,z_],composite[z_,y_]]], subclass[composite[x_,z_],composite[z_,x_]]] := True (* added 2003 November 4 based on SBCOMMUT.NB *) or[not[equal[x_,y_]],not[subclass[composite[z_,y_],composite[y_,z_]]], subclass[composite[z_,x_],composite[x_,z_]]] := True (* added 2003 January 8 based on HULL-IVR.NB *) or[not[equal[y_,z_]],not[subclass[image[x_,y_],y_]],subclass[image[x_,z_],z_]] := True (* derived 2004 May 9 in IMGFU-FP.NB *) or[not[equal[x_,y_]],not[subclass[P[y_],z_]],subclass[P[x_],z_]] := True (* added 2001 March 4 based on SU-IN.NB *) or[not[equal[x_,y_]],not[subclass[x_,z_]],subclass[y_,z_]] := True (* added 2001 March 4 based on SU-IN.NB *) or[not[equal[x_,y_]],not[subclass[z_,x_]],subclass[z_,y_]] := True (* derived 2004 February 10 in TOTORDER.NB *) or[not[equal[x_,y_]],not[TOTALORDER[x_]],TOTALORDER[y_]] := True (* derived 2004 March 21 in TRV-WRAP.NB *) or[not[equal[x_,y_]],not[TRANSITIVE[composite[z_,x_]]],TRANSITIVE[composite[z_,y_]]] := True (* added 2003 July 1 based on TRANSTIV.NB *) or[not[equal[x_,y_]],not[TRANSITIVE[x_]],TRANSITIVE[y_]] := True (* added 2003 January 9 based on OM-SUC.NB *) or[not[equal[omega,x_]],not[member[x_,omega]]] := True (* derived 2005 August 14 in REPLACE2.NB *) or[not[equal[omega,U[x_]]],not[member[x_,FINITE]],not[subclass[x_,omega]]] := True (* derived 2007 May 29 in NEXT-LIM.NB *) or[not[equal[ord[y_],U[ord[y_]]]],not[member[ord[x_],ord[y_]]], not[member[ord[y_],hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x_]]]]]] := True (* derived 2004 December 30 in AXREG.NB *) or[not[equal[RUSSELL,V]],not[member[x_,x_]]] := True (* added 2001 January 11 based on AXIOM1.NB *) or[not[equal[x_,y_]],subclass[x_,y_]] := True (* added 2001 January 11 based on AXIOM1.NB *) or[not[equal[x_,y_]],subclass[y_,x_]] := True (* added 2001 December 20 based on SUBST-1.NB *) or[not[equal[x_,y_]],subclass[composite[Id,x_],y_]] := True (* added 2002 October 11 based on MUL-SU-S.NB *) or[not[equal[y_,z_]],subclass[intersection[x_,y_],z_]] := True (* added 2002 September 10 based on IMV-RULE.NB *) or[not[equal[x_,y_]],subclass[x_,union[y_,z_]]] := True (* derived 2003 December 24 based on ON-SC.NB *) or[not[equal[x_,U[x_]]],not[member[x_,OMEGA]],not[member[U[x_],x_]]] := True (* added 2003 January 20 based on ONSUC7OT.NB *) (* limit ordinals are successor-invariant *) (* Theorem ON-SUC-6 in ON7 proved 1997 June 6 *) or[not[equal[x_,U[x_]]],not[member[x_,OMEGA]],subclass[image[SUCC,x_],x_]] := True (* derived 2005 November 15 in IMG-IDX.NB *) or[not[equal[x_,U[range[y_]]]],not[subclass[y_,IMAGE[id[x_]]]],subclass[x_,U[domain[y_]]]] := True (* derived 2007 October 9 in A-TOWERS.NB *) or[not[equal[x_,Uchains[x_]]],not[member[x_,y_]],not[subclass[image[z_,x_],x_]], subclass[A[intersection[fix[UCHAINS],invar[z_]]],x_]] := True (* derived 2007 November 15 in ZORN-LEM.NB *) or[not[equal[x_,Uchains[x_]]],not[subclass[x_,image[inverse[PS],x_]]], subclass[intersection[chains[S],P[x_]],image[inverse[K],intersection[chains[S],P[x_]]]]] := True (* derived 2008 April 1 in UCH-ON.NB *) or[not[equal[x_,Uchains[x_]]],not[subclass[image[SUCC,x_],x_]],subclass[OMEGA,x_]] := True (* derived 2008 November 10 in TRV-IVR.NB *) or[not[equal[x_,Uclosure[x_]]],not[subclass[image[COMPOSE,cart[x_,x_]],x_]], subclass[image[HULL[TRV],x_],x_]] := True (* derived 2007 September 6 in UCL-ON.NB *) or[not[equal[x_,Uclosure[x_]]],not[subclass[image[SUCC,x_],x_]],subclass[OMEGA,x_]] := True (* added 2002 May 24 based on ADJOIN.NB *) or[not[equal[x_,union[y_,z_]]],subclass[y_,x_]] := True (* derived 2006 November 9 in SIMPLIFY.NB *) or[not[equal[V,domain[domain[x_]]]],not[member[x_,y_]]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[not[equal[V,domain[w_]]],not[equal[w_,composite[TC,IMAGE[w_],VERTSECT[y_]]]], not[subclass[range[w_],REGULAR]],WELLFOUNDED[inverse[y_]]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[not[equal[V,domain[w_]]],not[equal[w_,composite[TC,IMAGE[w_],VERTSECT[y_]]]], subclass[composite[w_,y_],composite[inverse[E],w_]]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[not[equal[V,domain[w_]]],not[equal[V,image[inverse[w_],x_]]],not[FUNCTION[w_]],subclass[range[w_],x_]] := True (*derived 2004 June 18 in X1400.NB *) or[not[equal[V,domain[x_]]],not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]],subclass[composite[x_,Di],composite[Di,x_]]] := True (* derived 2004 June 17 in X1366.NB *) or[not[equal[V,domain[x_]]],not[FUNCTION[x_]],not[subclass[composite[x_,y_],composite[y_,x_]]], subclass[composite[x_,inverse[y_]],composite[inverse[y_],x_]]] := True (* derived 2004 July 27 in FUNCTION.NB *) or[not[equal[V,domain[x_]]],not[FUNCTION[union[x_,y_]]],subclass[y_,x_]] := True (* derived 2005 December 31 in CL-VS-UB.NB *) or[not[equal[V,domain[x_]]],not[member[x_,y_]]] := True (* added 2003 October 20 based on MONOPLUS.NB *) or[not[equal[V,domain[x_]]],not[subclass[composite[x_,S],composite[S,x_]]], subclass[S,composite[inverse[x_],S,x_]]] := True (* added 2003 October 20 based on MONOPLUS.NB *) or[not[equal[V,domain[x_]]],not[subclass[composite[x_,S,inverse[x_]],S]], subclass[S,composite[inverse[x_],S,x_]]] := True (* derived 2006 May 28 in OOPART.NB *) or[not[equal[V,domain[oopart[x_]]]],subclass[composite[oopart[x_],Di],composite[Di,oopart[x_]]]] := True (* added 2003 October 7 based on WF-IND.NB *) or[not[equal[V,domain[VERTSECT[inverse[x_]]]]],not[WELLFOUNDED[x_]],WELLFOUNDED[trv[x_]]] := True (* derived 2004 September 14 in WF-REC-6.NB *) or[not[equal[V,domain[VERTSECT[y_]]]],not[equal[cart[V,V],domain[x_]]],not[FUNCTION[x_]], not[subclass[image[y_,domain[w_]],domain[w_]]],not[subclass[w_,composite[x_,history[w_,y_]]]], not[WELLFOUNDED[inverse[y_]]],subclass[w_,rec[x_,y_]]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[not[equal[V,domain[VERTSECT[y_]]]],not[equal[w_,composite[TC,IMAGE[w_],VERTSECT[y_]]]], not[WELLFOUNDED[inverse[y_]]],subclass[range[w_],OMEGA]] := True (* derived 2006 November 9 in THINSETP.NB *) or[not[equal[V,domain[VERTSECT[x_]]]],not[equal[V,image[x_,y_]]],not[member[y_,z_]]] := True (* derived 2005 January 29 in RFXTRVTH.NB *) or[not[equal[V,domain[VERTSECT[x_]]]],not[FUNCTION[composite[id[fix[x_]],inverse[VERTSECT[x_]]]]], not[REFLEXIVE[x_]],not[TRANSITIVE[x_]],subclass[intersection[x_,inverse[x_]],Id]] := True (* derived 2004 September 5 in WF-REC-4.NB *) or[not[equal[V,domain[VERTSECT[y_]]]],not[FUNCTION[x_]],not[WELLFOUNDED[inverse[y_]]], subclass[rec[x_,y_],composite[x_,history[rec[x_,y_],y_]]]] := True (* derived 2004 August 5 in WF-REC-2.NB *) or[not[equal[V,domain[VERTSECT[y_]]]],not[FUNCTION[x_]],not[WELLFOUNDED[inverse[y_]]],subclass[rec[x_,y_], composite[x_,id[composite[IMAGE[composite[id[rec[x_,y_]],inverse[FIRST]]],VERTSECT[y_]]],inverse[FIRST]]]] := True (* derived 2004 August 1 in SETHOOD.NB *) or[not[equal[V,domain[VERTSECT[x_]]]],not[member[invar[x_],y_]]] := True (* derived 2004 July 23 in X23--.NB *) or[not[equal[V,domain[VERTSECT[x_]]]],not[TRANSITIVE[x_]],subclass[composite[thinpart[x_],x_],x_]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[not[equal[V,domain[VERTSECT[y_]]]],not[WELLFOUNDED[inverse[y_]]], subclass[range[rec[composite[TC,IMAGE[SECOND],SECOND],y_]],OMEGA]] := True (* derived 2004 February 1 in FINCHAIN.NB *) or[not[equal[V,domain[VERTSECT[x_]]]], subclass[image[IMAGE[x_],cliques[y_]],cliques[composite[x_,y_,inverse[x_]]]]] := True (* derived 2004 April 20 in ID-REVU.NB *) or[not[equal[V,fix[composite[x_,y_]]]],not[subclass[composite[w_,u_],Id]], not[subclass[composite[z_,x_],composite[u_,v_]]],subclass[composite[w_,z_],composite[v_,y_]]] := True (* derived 2006 November 9 in THINSETP.NB *) or[not[equal[V,fix[x_]]],not[member[x_,y_]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[equal[V,fix[x_]]],REFLEXIVE[composite[Id,x_]]] := True (* derived 2005 April 19 in XVR-TRV.NB *) or[not[equal[V,fix[x_]]],subclass[cart[omega,Id],power[x_]]] := True (* derived 2004 June 15 in HULIVRSW.NB *) or[not[equal[V,fix[x_]]],subclass[y_,image[x_,y_]]] := True (* derived 2004 June 15 in HULIVRSW.NB *) or[not[equal[V,fix[x_]]],subclass[IMAGE[x_],S]] := True (* derived 2007 June 4 in VS-SU.NB *) or[not[equal[V,fix[x_]]],subclass[VERTSECT[x_],E]] := True (* derived 2005 February 6 in IVR-SBV.NB *) or[not[equal[V,image[inverse[S],x_]]],subclass[y_,image[CAP,cart[x_,y_]]]] := True (* derived 2005 February 6 in IVR-SBV.NB *) or[not[equal[V,image[inverse[S],y_]]],subclass[x_,image[CAP,cart[x_,y_]]]] := True (* revised 2003 June 2 based on SETHOOD.NB *) or[not[equal[V,x_]],not[member[x_,y_]]] := True (* derived 2007 March 11 in SIMPLIFY.NB *) or[not[equal[V,x_]],not[member[pair[x_,y_],DIV]]] := True (* derived 2006 November 9 in THINSETP.NB *) or[not[equal[V,range[x_]]],not[member[x_,y_]]] := True (* added 1998 August 22 *) or[not[equal[V,y_]],subclass[x_,y_]] := True (* derived 2006 November 9 in THINSETP.NB *) or[not[equal[V,U[x_]]],not[member[x_,y_]]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) or[not[EQUIVALENCE[x_]],REFLEXIVE[x_]] := True (* derived 2008 October 31 in EQV.NB *) or[not[EQUIVALENCE[x_]],subclass[cart[image[VERTSECT[x_],fix[x_]],image[VERTSECT[x_],fix[x_]]], union[DISJOINT,Id]]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) or[not[EQUIVALENCE[x_]],subclass[x_,cart[V,V]]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) or[not[EQUIVALENCE[x_]],subclass[range[VERTSECT[x_]],cliques[x_]]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) or[not[EQUIVALENCE[x_]],TRANSITIVE[x_]] := True (* derived 2005 December 18 in X2410.NB *) or[not[FUNCTION[composite[Id,x_]]],not[member[domain[x_],V]],not[subclass[P[domain[x_]],range[x_]]]] := True (* added 1999 August 19 *) or[not[FUNCTION[composite[Id,x_]]],not[subclass[x_,cart[V,V]]]] := not[FUNCTION[x]] (* derived 2006 February 23 in DO-FUNP.NB *) or[not[FUNCTION[composite[x_,id[y_]]]],not[subclass[y_,domain[x_]]], subclass[y_,domain[funpart[x_]]]] := True (* derived 2007 October 30 in PROJ-SBV.NB *) or[not[FUNCTION[idem[x_]]],not[subclass[y_,image[idem[x_],y_]]],subclass[y_,fix[idem[x_]]]] := True (* derived 2005 February 5 in X2076-79.NB *) or[not[FUNCTION[LEAST[x_]]],not[REFLEXIVE[x_]],not[subclass[P[fix[x_]],union[domain[LEAST[x_]],set[0]]]],WELLORDER[x_]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[FUNCTION[LEAST[x_]]],not[REFLEXIVE[x_]],subclass[intersection[x_,inverse[x_]],Id]] := True (* derived 2005 November 29 in TOTAL-FU.NB *) or[not[FUNCTION[x_]],not[FUNCTION[composite[Id,x_]]]] := not[FUNCTION[x]] (* derived 2006 January 25 in PO-XFORM.NB *) or[not[FUNCTION[y_]],not[FUNCTION[inverse[y_]]],PARTIALORDER[composite[inverse[y_],po[x_],y_]]] := True (* derived 2008 June 27 in PO-TFM-S.NB *) or[not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]],PARTIALORDER[composite[inverse[x_],S,x_]]] := True (* derived 2008 June 27 in PO-TFM-S.NB *) or[not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]],PARTIALORDER[composite[x_,S,inverse[x_]]]] := True (* Theorem Q-OO in Q proved 2000 May 3 *) or[not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]],subclass[composite[IMAGE[x_],id[P[domain[x_]]]],Q]] := True (* derived 2004 August 19 in X2896.NB *) or[not[FUNCTION[y_]],not[FUNCTION[inverse[x_]]],subclass[image[IMAGE[cross[x_,y_]],FUNS],FUNS]] := True (* derived 2004 May 7 in OO-TOPS.NB *) or[not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]],subclass[image[IMAGE[IMAGE[x_]],TOPS],TOPS]] := True (* derived 2008 May 20 in OO-Q.NB *) or[not[FUNCTION[x_]],not[FUNCTION[inverse[x_]]], subclass[P[domain[x_]],fix[composite[Q,IMAGE[x_]]]]] := True (* derived 2004 June 21 in X18--.NB *) or[not[FUNCTION[x_]],not[member[complement[x_],y_]]] := True (* derived 2006 January 15 in MONO-IVR.NB *) or[not[FUNCTION[x_]],not[member[y_,domain[x_]]],not[subclass[APPLY[x_,y_],y_]], not[subclass[composite[x_,S],composite[S,x_]]],subclass[U[image[x_,P[y_]]],y_]] := True (* derived 2005 February 5 in X2409.NB *) or[not[FUNCTION[x_]],not[member[domain[x_],y_]],not[subclass[P[domain[x_]],range[x_]]]] := True (* derived 2005 November 5 in FIN-FU.NB *) or[not[FUNCTION[x_]],not[member[x_,FINITE]],not[member[card[domain[x_]],card[range[x_]]]]] := True (* derived 2004 July 25 in CANTOR.NB *) or[not[FUNCTION[x_]],not[member[fix[composite[complement[inverse[E]],x_]],range[x_]]]] := True (* derived 2006 January 16 in SUBFIXED.NB *) or[not[FUNCTION[x_]],not[member[y_,fix[composite[S,x_]]]], not[subclass[composite[x_,S],composite[S,x_]]],subclass[P[y_],domain[x_]]] := True (* derived 2005 December 17 in CANCELFU.NB *) or[not[FUNCTION[x_]],not[member[y_,fix[composite[S,x_]]]],subclass[APPLY[x_,y_],y_]] := True (* derived 2006 January 15 in MONO-IVR.NB *) or[not[FUNCTION[x_]],not[member[y_,fix[composite[S,x_]]]], not[subclass[composite[x_,S],composite[S,x_]]],subclass[U[image[x_,P[y_]]],y_]] := True (* derived 2008 August 18 in CANTOR.NB *) or[not[FUNCTION[x_]],not[member[x_,y_]],not[subclass[P[domain[x_]],range[x_]]]] := True (* derived 2005 December 16 in CANCELFU.NB *) or[not[FUNCTION[x_]],not[member[pair[u_,v_],x_]],not[member[u_,fix[composite[S,x_]]]],subclass[v_,u_]] := True (* derived 2004 July 25 in CANTOR.NB *) or[not[FUNCTION[x_]],not[member[x_,V]],not[subclass[P[domain[x_]],range[x_]]]] := True (* derived 2005 January 16 in FUN-RFX.NB *) or[not[FUNCTION[x_]],not[REFLEXIVE[y_]],REFLEXIVE[composite[inverse[x_],y_,x_]]] := True (* derived 2004 July 17 in FU-RULES.NB *) or[not[FUNCTION[x_]],not[subclass[composite[x_,y_],composite[z_,x_]]],subclass[image[x_,fix[y_]],fix[z_]]] := True (* added 2003 October 8 based on FS-CUP.NB *) or[not[FUNCTION[y_]],not[subclass[composite[x_,id[domain[y_]]],y_]],subclass[composite[x_,inverse[y_]],Id]] := True (* derived 2004 June 19 in X14--.NB *) or[not[FUNCTION[x_]],not[subclass[composite[Id,x_],y_]],subclass[x_,y_]] := True (* derived 2006 April 13 in DBL-IND2.NB *) or[not[FUNCTION[y_]],not[subclass[composite[y_,intersection[x_,inverse[x_]]],x_]], not[subclass[hull[invar[y_],set[z_]],image[inverse[x_],set[z_]]]], subclass[cart[hull[invar[y_],set[z_]],hull[invar[y_],set[z_]]],x_]] := True (* derived 2008 August 27 in SU-CO-FU.NB *) or[not[FUNCTION[z_]],not[subclass[x_,composite[inverse[y_],z_]]], not[subclass[domain[z_],domain[x_]]],subclass[z_,composite[y_,x_]]] := True (* derived 2005 December 21 in SUBTWINE.NB *) or[not[FUNCTION[x_]],not[subclass[composite[x_,y_,inverse[x_]],z_]], not[subclass[image[inverse[y_],domain[x_]],domain[x_]]],subclass[composite[x_,y_],composite[z_,x_]]] := True (* derived 2004 June 12 in X1191.NB *) or[not[FUNCTION[z_]],not[subclass[x_,composite[inverse[z_],y_]]], subclass[composite[z_,x_],y_]] := True (* derived 2007 June 14 in MONOTONE.NB *) or[not[FUNCTION[z_]],not[subclass[x_,composite[inverse[z_],y_,z_]]], subclass[composite[z_,x_,inverse[z_]],y_]] := True (* derived 2007 May 5 in REPLACE.NB *) or[not[FUNCTION[x_]],not[subclass[composite[x_,y_,inverse[x_]],z_]], subclass[image[IMAGE[x_],chains[y_]],chains[z_]]] := True (* derived 2006 May 1 in MONOCLIQ.NB *) or[not[FUNCTION[x_]],not[subclass[composite[x_,y_,inverse[x_]],z_]], subclass[image[IMAGE[x_],cliques[y_]],cliques[z_]]] := True (* derived 2008 August 19 in WF-DESC.NB *) or[not[FUNCTION[x_]],not[subclass[composite[inverse[SUCC],id[omega]], composite[inverse[x_],y_,x_]]],not[WELLFOUNDED[y_]]] := True (* derived 2008 August 27 in SU-CO-FU.NB *) or[not[FUNCTION[z_]],not[subclass[x_,composite[y_,z_]]], not[subclass[domain[z_],domain[x_]]],subclass[z_,composite[inverse[y_],x_]]] := True (* added 2003 October 20 based on MONOPLUS.NB *) or[not[FUNCTION[x_]],not[subclass[composite[x_,S],composite[S,x_]]],subclass[composite[x_,S,inverse[x_]],S]] := True (* derived 2006 January 16 in SUBFIXED.NB *) or[not[FUNCTION[x_]],not[subclass[composite[x_,S],composite[S,x_]]], subclass[fix[composite[S,x_]],image[S,fix[x_]]]] := True (* derived 2005 December 15 in ZER-3COR.NB *) or[not[FUNCTION[x_]],not[subclass[composite[x_,S],composite[S,x_]]], subclass[image[x_,fix[composite[S,x_]]],fix[composite[S,x_]]]] := True (* derived 2006 January 15 in MONO-IVR.NB *) or[not[FUNCTION[x_]],not[subclass[composite[x_,S],composite[S,x_]]], subclass[image[POWER,fix[composite[S,x_]]],invar[x_]]] := True (* derived 2004 June 12 in X1187.NB *) or[not[FUNCTION[z_]],not[subclass[x_,composite[y_,z_]]],subclass[composite[x_,inverse[z_]],y_]] := True (* derived 2004 June 19 *) or[not[FUNCTION[x_]],not[subclass[x_,composite[y_,x_]]],subclass[range[x_],fix[y_]]] := True (* derived 2004 June 12 in X1228.NB *) or[not[FUNCTION[x_]],not[subclass[domain[x_],fix[composite[inverse[y_],x_]]]],subclass[x_,y_]] := True (* derived 2004 June 12 in X1228.NB *) or[not[FUNCTION[x_]],not[subclass[domain[x_],fix[composite[inverse[x_],y_]]]],subclass[x_,y_]] := True (* derived 2004 October 26 in AXCH.NB *) or[not[FUNCTION[x_]],not[subclass[domain[x_],fix[composite[y_,x_]]]],subclass[x_,inverse[y_]]] := True (* derived 2005 May 5 in FU-DORA.NB *) or[not[FUNCTION[x_]],not[subclass[domain[x_],image[inverse[x_],y_]]],subclass[range[x_],y_]] := True (* derived 2006 April 26 in FU-IM.NB *) or[not[FUNCTION[x_]],not[subclass[y_,domain[x_]]], not[subclass[image[x_,y_],z_]],subclass[y_,image[inverse[x_],z_]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) or[not[FUNCTION[x_]],not[subclass[domain[x_],y_]], not[subclass[range[x_],z_]],subclass[x_,cart[y_,z_]]] := True (* derived 2006 November 11 in FUNPWRAP.NB *) or[not[FUNCTION[x_]],not[subclass[domain[x_],y_]],subclass[x_,cart[y_,V]]] := True (* derived 2004 June 18 in X13-FUNP.NB *) or[not[FUNCTION[x_]],not[subclass[image[inverse[x_],y_],image[inverse[x_],z_]]],not[subclass[y_,range[x_]]],subclass[y_,z_]] := True (* derived 2004 June 18 in X13-FUNP.NB *) or[not[FUNCTION[x_]],not[subclass[y_,image[inverse[x_],z_]]],subclass[image[x_,y_],z_]] := True (* derived 2004 November 13 in AC1-A8.NB *) or[not[FUNCTION[z_]],not[subclass[z_,inverse[E]]], not[subclass[cart[domain[z_],domain[z_]],union[DISJOINT,Id]]], subclass[image[IMAGE[id[range[z_]]],domain[z_]],range[SINGLETON]]] := True (* derived 2004 June 17 in X1368.NB *) or[not[FUNCTION[x_]],not[subclass[y_,inverse[x_]]],subclass[composite[x_,y_],Id]] := True (* derived 2004 September 29 in WF-REC-7.NB *) or[not[FUNCTION[x_]],not[subclass[range[x_],REGULAR]],WELLFOUNDED[composite[inverse[x_],E,x_]]] := True (* derived 2004 August 19 in X2901-93.NB *) or[not[FUNCTION[x_]],not[subclass[range[x_],y_]],subclass[x_,cart[V,y_]]] := True (* derived 2007 October 7 in UCL-MONO.NB *) or[not[FUNCTION[x_]],not[subclass[S,composite[inverse[x_],S,x_]]], not[subclass[y_,z_]],subclass[APPLY[x_,y_],APPLY[x_,z_]]] := True (* added 2003 October 20 based on MONOPLUS.NB *) or[not[FUNCTION[x_]],not[subclass[S,composite[inverse[x_],S,x_]]], subclass[composite[x_,S],composite[S,x_]]] := True (* derived 2009 May 10 in WO-PS.NB *) or[not[FUNCTION[x_]],not[subclass[x_,S]],not[equal[0,fix[x_]]], subclass[P[hull[invar[x_],set[y_]]],union[fix[composite[E,BIGCAP]],set[0]]]] := True (* derived 2006 May 13 in DBL-IND3.NB *) or[not[FUNCTION[x_]],not[subclass[x_,S]], subclass[cart[hull[invar[x_],set[y_]],hull[invar[x_],set[y_]]],union[composite[S,x_],inverse[S]]]] := True (* derived 2006 May 8 in CHAIN.NB *) or[not[FUNCTION[x_]],not[subclass[x_,S]], subclass[cart[hull[invar[x_],set[y_]],hull[invar[x_],set[y_]]],union[S,inverse[S]]]] := True (* derived 2005 November 8 in RA-IMG.NB *) or[not[FUNCTION[y_]],not[subclass[x_,y_]],subclass[range[IMAGE[x_]],range[IMAGE[y_]]]] := True (* derived 2004 December 27 in FUN-TRV.NB *) or[not[FUNCTION[x_]],not[TRANSITIVE[y_]],TRANSITIVE[composite[inverse[x_],y_,x_]]] := True (* derived 2004 September 23 in WF-FU.NB *) or[not[FUNCTION[x_]],not[WELLFOUNDED[y_]],WELLFOUNDED[composite[inverse[x_],y_,x_]]] := True (* added 2003 June 9 based on VS-FUNS.NB *) or[not[FUNCTION[rotate[inverse[x_]]]],not[subclass[range[x_],cart[V,V]]], subclass[range[VERTSECT[x_]],FUNS]] := True (* derived 2004 November 14 in DJ-U.NB *) or[not[FUNCTION[x_]],subclass[cart[image[CART,composite[x_,inverse[SINGLETON]]], image[CART,composite[x_,inverse[SINGLETON]]]],union[DISJOINT,Id]]] := True (* added 2001 November 20 based on FUNCTION.NB *) or[not[FUNCTION[x_]],subclass[x_,cart[V,V]]] := True (* derived 2004 August 19 in X2901-93.NB *) or[not[FUNCTION[x_]],subclass[composite[id[P[range[x_]]],inverse[IMAGE[inverse[x_]]]],IMAGE[x_]]] := True (* Theorem ZER-3 proved 2002 January 13 in ZER-3.NB *) or[not[FUNCTION[x_]],subclass[image[x_,fix[composite[y_,x_]]],fix[composite[x_,y_]]]] := True (* derived 2004 January 8 in FIN-FU.NB *) or[not[FUNCTION[x_]],subclass[image[IMAGE[x_],FINITE],FINITE]] := True (* derived 2004 June 18 in X1372-82.NB *) or[not[FUNCTION[x_]],subclass[image[x_,image[inverse[x_],y_]],y_]] := True (* derived 2004 July 17 in FU-RULES.NB *) or[not[FUNCTION[x_]],subclass[image[IMAGE[inverse[DUP]],subcommutant[x_]],invar[x_]]] := True (* derived 2004 May 9 in IMGFU-FP.NB *) or[not[FUNCTION[x_]],subclass[P[fix[x_]],fix[IMAGE[x_]]]] := True (* derived 2006 May 11 in IVR-FUNP.NB *) or[not[FUNCTION[x_]],subclass[P[fix[x_]],invar[x_]]] := True (* derived 2004 September 5 in WF-REC-4.NB *) or[not[FUNCTION[x_]],subclass[partrec[x_,y_],FUNS]] := True (* derived 2004 August 27 in TRV-COND.NB *) or[not[FUNCTION[x_]],TRANSITIVE[composite[inverse[x_],x_]]] := True (* derived 2004 December 27 in FUN-TRV.NB *) or[not[FUNCTION[x_]],TRANSITIVE[composite[inverse[x_],trv[y_],x_]]] := True (* derived 2004 August 18 in X2812-61.NB *) or[not[FUNCTION[U[x_]]],subclass[x_,FUNS]] := True (* added 2003 October 8 based on FS-CUP.NB *) or[not[FUNCTION[union[x_,y_]]],subclass[composite[x_,id[domain[y_]]],y_]] := True (* added 2003 October 8 based on FS-CUP.NB *) or[not[FUNCTION[union[x_,y_]]],subclass[composite[x_,inverse[y_]],Id]] := True (* derived 2009 January 16 in FUNCTOR.NB *) or[not[functor[w_,x_,y_]],equal[image[y_,cart[range[w_],range[w_]]],range[w_]]] := True (* derived 2009 January 16 in FUNCTOR.NB *) or[not[functor[w_,x_,y_]],subclass[cod[x_],composite[inverse[w_],cod[y_],w_]]] := True (* derived 2009 January 16 in FUNCTOR.NB *) or[not[functor[w_,x_,y_]],subclass[dom[x_],composite[inverse[w_],dom[y_],w_]]] := True (* derived 2009 January 16 in FUNCTOR.NB *) or[not[functor[w_,x_,y_]],subclass[image[w_,ids[x_]],ids[y_]]] := True (* derived 2009 January 16 in FUNCTOR.NB *) or[not[functor[w_,x_,y_]],subclass[range[w_],range[y_]]] := True (* derived 2005 February 6 in DESCEND.NB *) or[not[member[0,x_]],not[member[x_,DESCENDING]]] := True (* derived 2003 December 22 in EMPTY.NB *) or[not[member[0,x_]],not[subclass[x_,cart[y_,z_]]]] := True (* derived 2004 January 2 in BNCL-FIN.NB *) or[not[member[0,x_]],not[subclass[image[CUP,cart[x_,x_]],x_]], not[subclass[image[SINGLETON,y_],x_]],subclass[intersection[FINITE,P[y_]],x_]] := True (* derived 2004 January 2 in BNCL-FIN.NB *) or[not[member[0,x_]],not[subclass[image[CUP,cart[x_,x_]],x_]], not[subclass[range[SINGLETON],x_]],subclass[FINITE,x_]] := True (* added 2003 November 28 based on FIN-IND.NB *) or[not[member[0,x_]],not[subclass[image[K,x_],x_]],subclass[FINITE,x_]] := True (* derived 2008 September 4 in IM-PS-0 *) or[not[member[0,x_]],not[subclass[x_,image[PS,x_]]]] := True (* derived 2007 July 3 in ITERSING.NB *) or[not[member[0,x_]],not[subclass[image[SINGLETON,x_],x_]], subclass[hull[invar[SINGLETON],set[0]],x_]] := True (* Axiom AX-OM-3 in AXC-REF *) or[not[member[0,x_]],not[subclass[image[SUCC,x_],x_]],subclass[omega,x_]] := True (* derived 2005 February 10 in X3571.NB *) or[not[member[0,x_]],not[subclass[intersection[omega,image[SUCC,x_]],x_]],subclass[omega,x_]] := True (* derived 2006 November 18 in CURMAP-3.NB *) or[not[member[0,range[w_]]],not[member[APPLY[inverse[CURRY],w_],x_]]] := True (* derived 2006 November 23 in CURMAP-3.NB *) or[not[member[0,range[w_]]],not[member[w_,image[CURRY,x_]]]] := True (* derived 2008 March 20 in BNCL-DIF.NB *) or[not[member[0,x_]],subclass[x_,image[DIF,cart[x_,x_]]]] := True (* added 2002 September 1 based on MONO-MUL.NB *) or[not[member[0,x_]],subclass[y_,natmul[x_,y_]]] := True (* derived 2007 September 6 in A-SETHD.NB *) or[not[member[A[intersection[x_,complement[y_]]],z_]],not[subclass[x_,y_]]] := True (* derived 2008 June 12 in MIN-A.NB *) or[not[member[A[x_],x_]],not[subclass[x_,image[PS,x_]]]] := True (* derived 2006 November 18 in CURMAP-3.NB *) or[not[member[APPLY[CURRY,w_],x_]],subclass[w_,cart[cart[V,V],V]]] := True (* derived 2006 November 18 in CURMAP-3.NB *) or[not[member[APPLY[inverse[CURRY],w_],x_]],subclass[U[range[w_]],cart[V,V]]] := True (* derived 2006 August 5 in BINHOM-7.NB *) or[not[member[x_,binhom[INTADD,INTADD]]], subclass[composite[IMAGE[SWAP],x_,inverse[IMAGE[SWAP]]],x_]] := True (* derived 2005 August 5 in BINHOM-5.NB *) or[not[member[x_,binhom[y_,INTADD]]],subclass[range[x_],Z]] := True (* derived 2006 December 29 in BINISO.NB *) or[not[member[w_,binhom[x_,y_]]],not[member[x_,BINOPS]],subclass[range[x_],domain[w_]]] := True (* derived 2006 September 27 in BH-BCL.NB *) or[not[member[t_,binhom[x_,y_]]],not[subclass[image[x_,cart[w_,w_]],w_]], subclass[image[y_,cart[image[t_,w_],image[t_,w_]]],image[t_,w_]]] := True (* derived 2006 July 20 in BINHOM-3.NB *) or[not[member[w_,binhom[x_,y_]]],subclass[w_,cart[V,V]]] := True (* derived 2006 September 21 in BH-IMAGE.NB *) or[not[member[w_,binhom[x_,y_]]], subclass[image[y_,cart[range[w_],range[w_]]],range[w_]]] := True (* derived 2006 November 27 in BH-IDEMP.NB *) or[not[member[w_,binhom[x_,y_]]], subclass[image[w_,fix[composite[x_,DUP]]],fix[composite[y_,DUP]]]] := True (* derived 2006 September 27 in BH-BCL.NB *) or[not[member[x_,binhom[y_,z_]]], subclass[image[IMAGE[x_],binclosed[y_]],binclosed[z_]]] := True (* derived 2006 July 20 in BINHOM-3.NB *) or[not[member[w_,binhom[x_,y_]]],subclass[range[w_],fix[domain[y_]]]] := True (* derived 2006 November 25 in U-BINHOM.NB *) or[not[member[x_,BINOPS]],REFLEXIVE[U[binhom[x_,x_]]]] := True (* derived 2008 October 2 in BIN-FLIP.NB *) or[not[member[x_,BINOPS]],subclass[x_,cart[cart[V,V],V]]] := True (* derived 2006 September 14 in BINOPS.NB *) or[not[member[x_,BINOPS]],subclass[x_,cart[V,fix[domain[x_]]]]] := True (* derived 2006 September 14 in BINOPS.NB *) or[not[member[x_,BINOPS]],subclass[x_,cart[V,V]]] := True (* derived 2008 December 28 in E.NB *) or[not[member[x_,BINOPS]],subclass[composite[x_,LEFT[e[x_]]],Id]] := True (* derived 2008 December 28 in E.NB *) or[not[member[x_,BINOPS]],subclass[composite[x_,RIGHT[e[x_]]],Id]] := True (* derived 2006 November 25 in U-BINHOM.NB *) or[not[member[x_,BINOPS]],subclass[fix[domain[x_]],fix[U[binhom[x_,x_]]]]] := True (* derived 2006 July 11 in BINOP-RS.NB *) or[not[member[x_,BINOPS]],subclass[range[x_],fix[domain[x_]]]] := True (* derived 2005 November 5 in FIN-RELN.NB *) or[not[member[card[domain[fin[x_]]],card[y_]]],not[subclass[y_,domain[fin[x_]]]]] := True (* derived 2005 November 4 in CARD-SU.NB *) or[not[member[card[fin[y_]],card[x_]]],not[subclass[x_,fin[y_]]]] := True (* derived 2007 May 1 in CARTRCH.NB *) or[not[member[x_,card[y_]]],not[member[card[y_],x_]]] := True (* derived 2008 May 17 in CARDMONO.NB *) or[not[member[card[wob[y_]],card[wob[x_]]]],not[subclass[wob[x_],wob[y_]]]] := True (* derived 2005 December 20 in CLGLBLUB.NB *) or[not[member[x_,CL]],not[member[composite[Id,x_],CL]]] := not[member[x,CL]] (* derived 2005 December 22 in MONO-FP.NB *) or[not[member[x_,CL]],not[member[y_,map[fix[x_],fix[x_]]]], not[subclass[composite[y_,x_,inverse[y_]],x_]], subclass[image[y_,fix[composite[x_,y_]]],fix[composite[x_,y_]]]] := True (* derived 2005 December 21 in SUBTWINE.NB *) or[not[member[x_,CL]],not[member[y_,map[fix[x_],w_]]], not[subclass[composite[y_,x_,inverse[y_]],z_]],subclass[composite[y_,x_],composite[z_,y_]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[not[member[x_,CL]],not[subclass[y_,fix[x_]]],subclass[y_,image[inverse[x_],set[APPLY[LUB[x_],y_]]]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[not[member[x_,CL]],not[subclass[y_,fix[x_]]],subclass[y_,image[x_,set[APPLY[GLB[x_],y_]]]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[not[member[x_,CL]],not[subclass[y_,fix[x_]]], subclass[intersection[fix[x_],lb[x_,y_]],image[inverse[x_],set[APPLY[GLB[x_],y_]]]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[not[member[x_,CL]],not[subclass[y_,fix[x_]]], subclass[intersection[fix[x_],ub[x_,y_]],image[x_,set[APPLY[LUB[x_],y_]]]]] := True (* derived 2007 April 26 in CL-GLBSU.NB *) or[not[member[w_,CL]],not[subclass[x_,image[w_,y_]]],subclass[x_,fix[w_]]] := True (* derived 2005 October 6 in CL.NB *) or[not[member[x_,CL]],PARTIALORDER[x_]] := True (* derived 2005 December 21 in CL-RULES.NB *) or[not[member[x_,CL]],REFLEXIVE[x_]] := True (* derived 2005 December 21 in MONOTONE.NB *) or[not[member[x_,CL]],subclass[x_,cart[V,V]]] := True (* derived 2007 April 26 in CL-GLBSU.NB *) or[not[member[x_,CL]],subclass[composite[GLB[x_],inverse[S],inverse[GLB[x_]]],x_]] := True (* derived 2005 December 21 in CL-RULES.NB *) or[not[member[x_,CL]],subclass[fix[composite[x_,y_]],fix[x_]]] := True (* derived 2005 December 21 in CL-RULES.NB *) or[not[member[x_,CL]],subclass[fix[composite[y_,x_]],fix[x_]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[not[member[x_,CL]],subclass[image[x_,y_],fix[x_]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[not[member[x_,CL]],subclass[image[inverse[x_],y_],fix[x_]]] := True (* derived 2005 December 21 in CL-RULES.NB *) or[not[member[x_,CL]],subclass[intersection[x_,inverse[x_]],Id]] := True (* derived 2005 December 28 in CL-0-1.NB *) or[not[member[x_,CL]],subclass[lb[x_,fix[x_]],fix[x_]]] := True (* derived 2005 October 6 in CL.NB *) or[not[member[x_,CL]],subclass[P[fix[x_]],domain[GLB[x_]]]] := True (* derived 2005 December 28 in CL-0-1.NB *) or[not[member[x_,CL]],subclass[ub[x_,fix[x_]],fix[x_]]] := True (* derived 2007 April 26 in CL-TOP.NB *) or[not[member[x_,CL]],subclass[ub[x_,fix[x_]],image[x_,set[APPLY[LUB[x_],fix[x_]]]]]] := True (* derived 2006 September 3 in BO-POWER.NB *) or[not[member[composite[x_,id[cart[y_,y_]]],BINOPS]],subclass[image[x_,cart[y_,y_]],y_]] := True (* derived 2006 August 1 in BCL-ZADD.NB *) or[not[member[composite[id[omega],SUCC],x_]],not[subclass[image[INTADD,cart[x_,x_]],x_]], not[subclass[image[IMAGE[SWAP],x_],x_]],subclass[Z,x_]] := True (* derived 2006 December 18 in Z-IND.NB *) or[not[member[composite[id[omega],SUCC],x_]],not[subclass[image[INTADD,cart[x_,x_]],x_]], not[subclass[image[INVERSE,x_],x_]],subclass[Z,x_]] := True (* derived 2007 November 22 in SU-HERED.NB *) or[not[member[x_,CONST]],subclass[x_,cart[V,V]]] := True (* derived 2008 August 8 in FIN-PP2.NB *) or[not[member[w_,core[subvar[PS],x_]]],not[WELLFOUNDED[composite[id[x_],PS]]]] := True (* derived 2008 August 8 in FIN-PP2.NB *) or[not[member[w_,core[subvar[PS],P[x_]]]],not[subclass[P[x_],FINITE]]] := True (* derived 2005 January 27 in DK-SU.NB *) or[not[member[x_,DEDEKIND]],not[member[pair[x_,omega],Q]]] := True (* derived 2005 December 20 in POGLBLUB.NB *) or[not[member[x_,domain[GLB[y_]]]],not[PARTIALORDER[y_]],subclass[x_,fix[y_]]] := True (* derived 2005 December 27 in CL-APGLB.NB *) or[not[member[y_,domain[GLB[x_]]]],not[PARTIALORDER[x_]],subclass[y_,image[x_,set[APPLY[GLB[x_],y_]]]]] := True (* derived 2005 December 20 in POGLBLUB.NB *) or[not[member[x_,domain[GLB[po[y_]]]]],subclass[x_,fix[po[y_]]]] := True (* derived 2005 October 2 in POLUBGLB.NB *) or[not[member[y_,domain[GLB[po[x_]]]]], subclass[intersection[fix[po[x_]],lb[po[x_],y_]],image[inverse[po[x_]],set[APPLY[GLB[po[x_]],y_]]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[not[member[x_,domain[GLB[y_]]]],subclass[x_,range[y_]]] := True (* derived 2006 May 16 in DO-ITER.NB *) or[not[member[w_,domain[iterate[x_,y_]]]],subclass[w_,domain[iterate[x_,y_]]]] := True (* derived 2005 December 20 in POGLBLUB.NB *) or[not[member[x_,domain[LUB[y_]]]],not[PARTIALORDER[y_]],subclass[x_,fix[y_]]] := True (* derived 2005 December 20 in POGLBLUB.NB *) or[not[member[x_,domain[LUB[po[y_]]]]],subclass[x_,fix[po[y_]]]] := True (* derived 2005 October 2 in POLUBGLB.NB *) or[not[member[y_,domain[LUB[po[x_]]]]], subclass[intersection[fix[po[x_]],ub[po[x_],y_]],image[po[x_],set[APPLY[LUB[po[x_]],y_]]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[not[member[x_,domain[LUB[y_]]]],subclass[x_,domain[y_]]] := True (* added 2003 November 8 based on APPLMONO.NB *) or[not[member[x_,domain[z_]]],not[subclass[x_,y_]], not[subclass[composite[z_,S,inverse[z_]],S]],subclass[APPLY[z_,x_],APPLY[z_,y_]]] := True (* derived 2006 May 29 in OL-DO.NB *) or[not[member[w_,domain[ordlist[x_]]]],subclass[w_,domain[ordlist[x_]]]] := True (* derived 2007 April 5 in EVEN-ODD.NB *) or[not[member[x_,even]],not[member[x_,odd]]] := True (* derived 2006 February 28 in PS.NB *) or[not[member[fin[x_],y_]],not[subclass[y_,image[PS,y_]]]] := True (* derived 2007 July 8 in IMS-ENS.NB *) or[not[member[y_,FINITE]],not[member[card[y_],card[x_]]],not[subclass[x_,y_]]] := True (* derived 2006 February 10 in FIN-MAP.NB *) or[not[member[x_,FINITE]],not[member[y_,FINITE]],subclass[map[x_,y_],FINITE]] := True (* derived 2006 February 10 in FIN-MAP.NB *) or[not[member[x_,FINITE]],not[member[y_,FINITE]],subclass[P[cart[x_,y_]],FINITE]] := True (* derived 2006 February 28 in PS.NB *) or[not[member[x_,FINITE]],not[member[x_,y_]],not[subclass[y_,image[PS,y_]]]] := True (* derived 2005 January 27 in FINITE.NB *) or[not[member[x_,FINITE]],not[member[pair[x_,omega],Q]]] := True (* derived 2004 January 13 based on FIN-SUPC.NB *) or[not[member[x_,FINITE]],not[subclass[x_,FINITE]],subclass[P[U[x_]],FINITE]] := True (* derived 2007 February 22 in SUOM-HER.NB *) or[not[member[x_,FINITE]],not[subclass[omega,image[inverse[S],x_]]],not[subclass[x_,omega]]] := True (* derived 2005 February 3 in X4224.NB *) or[not[member[x_,FINITE]],not[subclass[U[y_],x_]],subclass[y_,FINITE]] := True (* derived 2005 October 17 in WO-FIN.NB *) or[not[member[x_,FINITE]],not[TOTALORDER[x_]],WELLORDER[x_]] := True (* derived 2005 October 17 in WO-FIN.NB *) or[not[member[x_,FINITE]],not[TOTALORDER[x_]],WELLORDER[inverse[x_]]] := True (* derived 2008 January 6 in FIN-COV.NB *) or[not[member[x_,FINITE]],subclass[image[IMAGE[id[x_]],y_],image[COARSER,FINITE]]] := True (* derived 2008 January 3 in FIN-CUT.NB *) or[not[member[x_,FINITE]],subclass[image[IMAGE[id[x_]],y_],FINITE]] := True (* derived 2005 January 7 in CARD-K.NB *) or[not[member[x_,FINITE]],subclass[image[K,set[x_]],FINITE]] := True (* derived 2004 January 13 based on FIN-SUPC.NB *) or[not[member[x_,FINITE]],subclass[P[x_],FINITE]] := True (* derived 2007 January 23 in BINOM.NB *) or[not[member[x_,FINITE]],subclass[P[x_],image[Q,OMEGA]]] := True (* derived 2006 February 9 in FIN-SBV.NB *) or[not[member[x_,FINITE]],subclass[subvar[x_],FINITE]] := True (* derived 2008 June 7 in WF-FIN.NB *) or[not[member[x_,FINITE]],WELLFOUNDED[composite[id[P[x_]],PS]]] := True (* derived 2005 December 16 in CANCELFU.NB *) or[not[member[x_,fix[composite[S,funpart[y_]]]]],subclass[APPLY[funpart[y_],x_],x_]] := True (* derived 2007 May 7 in FINITE.NB *) or[not[member[fix[x_],FINITE]],subclass[chains[x_],FINITE]] := True (* derived 2006 October 20 in CLIQ-FIN.NB *) or[not[member[fix[x_],FINITE]],subclass[cliques[x_],FINITE]] := True (* derived 2008 December 5 in GROUPS.NB *) or[not[member[x_,GROUPS]],subclass[x_,cart[cart[V,V],V]]] := True (* added 2002 April 27 based on FULIND-5.NB *) or[not[member[H[x_],x_]],not[subclass[x_,RUSSELL]]] := True (* derived 2006 September 2 in HULL-Z.NB *) or[not[member[hull[Z,x_],Z]],subclass[cart[x_,x_],EQUIDIFF]] := True (* derived 2006 July 27 in IND-Z.NB *) or[not[member[id[omega],x_]],not[subclass[image[IMAGE[SWAP],x_],x_]], not[subclass[image[IMAGE[cross[inverse[SUCC],Id]],x_],x_]],subclass[Z,x_]] := True (* derived 2008 December 16 in IDS.NB *) or[not[member[y_,ids[x_]]],subclass[composite[x_,LEFT[y_]],Id]] := True (* derived 2008 December 16 in IDS.NB *) or[not[member[y_,ids[x_]]],subclass[composite[x_,RIGHT[y_]],Id]] := True (* derived 2008 December 16 in IDS.NB *) or[not[member[y_,ids[x_]]],subclass[image[x_,cart[set[y_],set[z_]]],set[z_]]] := True (* derived 2008 December 16 in IDS.NB *) or[not[member[y_,ids[x_]]],subclass[image[x_,cart[set[z_],set[y_]]],set[z_]]] := True (* derived 2006 November 23 in CURMAP-3.NB *) or[not[member[w_,image[CURRY,x_]]],subclass[U[range[w_]],cart[V,V]]] := True (* derived 2006 November 23 in CURMAP-3.NB *) or[not[member[w_,image[inverse[CURRY],x_]]],subclass[w_,cart[cart[V,V],V]]] := True (* derived 2005 November 17 in FIN-SBCV.NB *) or[not[member[x_,image[inverse[S],image[BIGCUP,intersection[w_,P[y_]]]]]],subclass[x_,U[y_]]] := True (* derived 2004 January 13 based on FIN-SUPC.NB *) or[not[member[x_,image[inverse[S],y_]]],subclass[P[x_],image[inverse[S],y_]]] := True (* derived 2005 November 13 in COVER.NB *) or[not[member[x_,image[inverse[S],y_]]],subclass[x_,U[y_]]] := True (* derived 2005 February 20 in CARD-TWO.NB *) or[not[member[y_,image[PAIRSET,Di]]],not[subclass[x_,y_]],subclass[card[x_],succ[set[0]]]] := True (* derived 2005 February 20 in CARD-TWO.NB *) or[not[member[x_,image[PAIRSET,Di]]],subclass[card[x_],succ[set[0]]]] := True (* derived 2008 May 17 in CARDMONO.NB *) or[not[member[x_,image[Q,OMEGA]]],not[member[card[y_],card[x_]]],not[subclass[x_,y_]]] := True (* derived 2007 April 29 in DO-CARD.NB *) or[not[member[x_,image[Q,OMEGA]]],subclass[y_,card[x_]]] := subclass[y,card[x]] (* derived 2004 July 23 in X23--.NB *) or[not[member[image[x_,y_],V]],subclass[y_,domain[VERTSECT[x_]]]] := True (* derived 2008 August 20 in CANT-REG.NB *) or[not[member[intersection[REGULAR,x_],y_]],not[subclass[P[x_],x_]]] := True (* derived 2008 August 20 in CANT-REG.NB *) or[not[member[intersection[RUSSELL,x_],y_]],not[subclass[P[x_],x_]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[not[member[u_,ld[x_,y_]]],not[member[v_,ld[x_,y_]]],subclass[ld[u_,v_],ld[x_,y_]]] := True (* derived 2006 November 11 in CUR-LEFT.NB *) or[not[member[w_,map[cart[x_,y_],z_]]],subclass[w_,cart[cart[V,V],V]]] := True (* derived 2007 June 14 in MONOTONE.NB *) or[not[member[z_,map[fix[po[x_]],fix[po[y_]]]]], not[subclass[composite[z_,po[x_],inverse[z_]],po[y_]]], subclass[po[x_],composite[inverse[z_],po[y_],z_]]] := True (* derived 2007 June 14 in MONOTONE.NB *) or[not[member[z_,map[u_,v_]]],not[subclass[x_,composite[inverse[z_],y_,z_]]], subclass[composite[z_,x_,inverse[z_]],y_]] := True (* derived 2008 January 3 in COVERFIN.NB *) or[not[member[z_,map[x_,y_]]],not[subclass[z_,E]],subclass[x_,U[range[z_]]]] := True (* derived 2005 December 21 in MONOTONE.NB *) or[not[member[x_,map[y_,z_]]],subclass[x_,cart[y_,z_]]] := True (* derived 2004 December 5 in MAP-CO.NB *) or[not[member[w_,map[x_,y_]]],subclass[w_,cart[V,y_]]] := True (* derived 2005 December 21 in MONOTONE.NB *) or[not[member[x_,map[y_,z_]]],subclass[x_,cart[V,V]]] := True (* introduced 2006 January 5 in MAPINVAR.NB *) or[not[member[x_,map[y_,z_]]],subclass[image[x_,y_],z_]] := True (* derived 2004 December 5 in MAP-CO.NB *) or[not[member[w_,map[x_,y_]]],subclass[range[w_],y_]] := True (* derived 2005 December 18 in U-MAP-ID.NB *) or[not[member[x_,map[y_,y_]]],subclass[range[x_],domain[x_]]] := True (* derived 2005 November 4 in CARD-SU.NB *) or[not[member[nat[y_],card[x_]]],not[subclass[x_,nat[y_]]]] := True (* derived 2007 March 21 in Q7.NB *) or[not[member[nat[x_],natmul[nat[y_],nat[z_]]]], not[member[natadd[natmod[nat[x_],nat[y_]],natmul[nat[y_],nat[z_]]],nat[x_]]]] := True (* derived 2005 February 13 in NAT.NB *) or[not[member[y_,nat[x_]]],not[member[nat[x_],y_]]] := True (* derived 2005 July 24 in RA-ITER.NB *) or[not[member[nat[x_],y_]],not[subclass[image[SUCC,y_],y_]],subclass[omega,union[y_,nat[x_]]]] := True (* derived 2005 April 28 in NATORDER.NB *) or[not[member[x_,nat[y_]]],not[subclass[nat[y_],x_]]] := True (* derived 2005 April 28 in NATORDER.NB *) or[not[member[nat[x_],y_]],not[subclass[y_,nat[x_]]]] := True (* derived 2005 April 28 in NATORDER.NB *) or[not[member[x_,nat[y_]]],subclass[x_,nat[y_]]] := True (* derived 2007 March 18 in MOD-DIV.NB *) or[not[member[z_,natmod[x_,y_]]],not[member[pair[y_,natsub[x_,z_]],DIV]]] := True (* derived 2007 February 8 in COMPOS-1.NB *) or[not[member[natmul[x_,y_],PRIMES]],not[member[set[0],x_]],not[member[set[0],y_]]] := True (* derived 2005 May 25 in NATSUB.NB *) or[not[member[natsub[x_,y_],z_]],subclass[y_,x_]] := True (* derived 2005 February 15 in ON-IND-4.NB *) or[not[member[y_,x_]],not[member[y_,A[x_]]],not[subclass[x_,omega]]] := True (* derived 2005 February 15 in RUS-A-DJ.NB *) or[not[member[y_,x_]],not[member[y_,A[x_]]],not[subclass[x_,REGULAR]]] := True (* derived 2005 February 15 in RUS-A-DJ.NB *) or[not[member[y_,x_]],not[member[y_,A[x_]]],not[subclass[x_,RUSSELL]]] := True (* derived 2006 March 30 in BINCLOS.NB *) or[not[member[x_,y_]],not[member[binclosed[x_],z_]]] := True (* added 2003 June 4 based on SETHOOD.NB *) or[not[member[x_,y_]],not[member[complement[x_],z_]]] := True (* derived 2007 December 14 in CANTOR.NB *) or[not[member[x_,y_]],not[member[y_,DESCENDING]], not[subclass[U[x_],x_]],not[WELLFOUNDED[composite[id[x_],E]]]] := True (* derived 2008 January 2 in FINCHR-1.NB *) or[not[member[x_,y_]],not[member[y_,FINCHAR]],subclass[P[x_],y_]] := True (* derived 2005 January 18 in OO-Q.NB *) or[not[member[x_,y_]],not[member[intersection[x_,z_],V]]] := not[member[x,y]] (* added 2003 June 4 based on SETHOOD.NB *) or[not[member[x_,y_]],not[member[invar[x_],z_]]]:=True (* derived 2005 May 25 in NATSUB.NB *) or[not[member[x_,y_]],not[member[natsub[x_,y_],z_]]] := True (* derived 2007 August 3 in REGULAR.NB *) or[not[member[x_,x_]],not[member[x_,y_]],not[member[y_,REGULAR]]] := True (* derived 2007 August 9 in UCH-TRV.NB *) or[not[member[x_,z_]],not[member[y_,z_]], not[subclass[cart[z_,z_],union[S,inverse[S]]]],subclass[x_,y_],subclass[y_,x_]] := True (* derived 2008 February 27 in REG-ACY.NB *) or[not[member[x_,y_]],not[member[y_,x_]],not[subclass[x_,REGULAR]]] := True (* added 2002 April 27 based on FULIND-5.NB *) or[not[member[x_,x_]],not[member[x_,y_]],not[subclass[y_,RUSSELL]]] := True (* derived 2007 August 3 in REGULAR.NB *) or[not[member[x_,x_]],not[member[x_,y_]],not[WELLFOUNDED[composite[id[y_],E]]]] := True (* derived 2005 April 23 in FACT-S.NB *) or[not[member[x_,y_]],not[member[y_,omega]],not[subclass[y_,x_]]] := True (* added 2002 May 11 based on OM-1.NB *) or[not[member[x_,y_]],not[member[y_,omega]],subclass[x_,y_]] := True (* added 2002 May 7 based on EXAMPLES.NB *) or[not[member[x_,y_]],not[member[y_,OMEGA]],subclass[x_,y_]] := True (* added 2002 May 11 based on OM-1.NB *) or[not[member[x_,y_]],not[member[y_,omega]],subclass[succ[x_],y_]] := True (* derived 2006 March 14 in ORDRULES.NB *) or[not[member[x_,y_]],not[member[y_,OMEGA]],subclass[succ[x_],y_]] := True (* derived 2007 January 15 in EXP-MONO.NB *) or[not[member[x_,y_]],not[member[pair[y_,x_],DIV]]] := or[equal[0,y],not[equal[0,x]],not[member[y,omega]]] (* derived 2007 August 21 in K-U.NB *) or[not[member[x_,y_]],not[member[pair[U[y_],x_],K]]] := True (* derived 2005 October 31 in RANK-SU.NB *) or[not[member[x_,y_]],not[member[rank[y_],rank[x_]]]] := True (* derived 2006 March 7 in REGULAR.NB *) or[not[member[x_,y_]],not[member[y_,REGULAR]],not[subclass[y_,x_]]] := True (* added 2003 February 26 based on ACL-Z.NB *) or[not[member[x_,z_]],not[member[y_,z_]],subclass[set[x_,y_],z_]] := True (* derived 2007 August 15 in MEMB-SU.NB *) or[not[member[x_,y_]],not[subclass[z_,A[y_]]],subclass[z_,x_]] := True (* derived 2006 October 11 in RA-CLIQ.NB *) or[not[member[x_,y_]],not[subclass[y_,cliques[z_]]],subclass[cart[x_,x_],z_]] := True (* derived 2007 September 20 in UCH-IDEM.NB *) or[not[member[x_,y_]],not[subclass[y_,fix[composite[inverse[S],COMPOSE,DUP]]]], subclass[x_,composite[x_,x_]]] := True (* derived 2007 October 7 in UCL-MONO.NB *) or[not[member[u_,v_]],not[subclass[v_,fix[composite[inverse[S],funpart[x_]]]]], subclass[u_,APPLY[funpart[x],u_]]] := True (* derived 2008 March 11 in LEAST-WO.NB *) or[not[member[x_,y_]],not[subclass[x_,fix[w_]]],not[WELLORDER[w_]], subclass[x_,image[w_,set[APPLY[LEAST[w_],x_]]]]] := True (* derived 2008 March 11 in LEAST-WO.NB *) or[not[member[x_,y_]],not[subclass[x_,fix[wo[w_]]]], subclass[x_,image[wo[w_],set[APPLY[LEAST[wo[w_]],x_]]]]] := True (* derived 2007 December 20 in FUND-X.NB *) or[not[member[x_,y_]],not[subclass[y_,FUND]],WELLFOUNDED[composite[id[x_],E]]] := True (* derived 2006 May 13 in DBL-IND3.NB *) or[not[member[y_,z_]],not[subclass[image[funpart[x_],z_],z_]],subclass[hull[invar[funpart[x_]],set[y_]],z_]] := True (* derived 2007 December 28 in MEMB-IMS.NB *) or[not[member[w_,x_]],not[subclass[x_,image[inverse[S],intersection[y_,complement[z_]]]]], not[subclass[intersection[y_,image[S,set[w_]]],z_]]] := True (* derived 2005 January 25 in X2759.NB *) or[not[member[x_,y_]],not[subclass[image[K,y_],y_]],subclass[range[SINGLETON],image[inverse[ADJOIN[x_]],y_]]] := True (* derived 2005 January 15 in HILBERT.NB *) or[not[member[x_,y_]],not[subclass[image[POWER,x_],x_]],not[subclass[Uclosure[x_],x_]]] := True (* derived 2007 July 10 in PC-SU.NB *) or[not[member[x_,y_]],not[subclass[z_,x_]],not[subclass[P[x_],z_]]] := True (* derived 2005 January 15 in HILBERT.NB *) or[not[member[x_,y_]],not[subclass[P[x_],x_]]] := True (* derived 2005 January 15 in HILBERT.NB *) or[not[member[x_,y_]],not[subclass[P[U[x_]],U[x_]]]] := True (* derived 2006 March 7 in REGULAR.NB *) or[not[member[x_,x_]],not[subclass[x_,REGULAR]]] := True (* derived 2004 June 27 in X1704-09.NB *) or[not[member[x_,y_]],not[subclass[x_,RUSSELL]],subclass[succ[x_],RUSSELL]] := True (* derived 2007 February 4 in NATDIV-1.NB *) or[not[member[x_,y_]],not[subclass[y_,set[x_]]]] := or[not[equal[y,set[x]]],not[member[x,V]]] (* added 2004 April 17 based on CORE.NB *) or[not[member[x_,y_]],not[subclass[x_,z_]],subclass[x_,core[y_,z_]]] := True (* derived 2006 March 12 in HULL.NB *) or[not[member[z_,x_]],not[subclass[y_,z_]],subclass[hull[x_,y_],z_]] := True (* added 2002 April 27 based on FULSUC-F.NB *) or[not[member[x_,y_]],not[subclass[x_,y_]],subclass[succ[x_],y_]] := True (* derived 2007 September 25 in UCH-CART.NB *) or[not[member[x_,y_]],not[subclass[w_,x_]],subclass[w_,U[y_]]] := True (* derived 2007 August 9 in UCH-TRV.NB *) or[not[member[x_,y_]],not[subclass[y_,TRV]],TRANSITIVE[x_]] := True (* added 2002 April 26 based on MYSTERY.NB *) or[not[member[x_,y_]],not[subclass[U[y_],z_]],subclass[x_,z_]] := True (* added 2002 April 27 based on FULSUC-F.NB *) or[not[member[x_,y_]],not[subclass[U[y_],y_]],subclass[succ[x_],y_]] := True (* derived 2007 November 23 in INDUCTIV.NB *) or[not[member[y_,x_]],not[subclass[Uchains[x_],image[inverse[S],x_]]], subclass[Uchains[intersection[image[S,set[y_]],x_]], image[inverse[S],intersection[image[S,set[y_]],x_]]]] := True (* derived 2007 August 15 in MEMB-SU.NB *) or[not[member[w_,x_]],not[subclass[x_,union[image[S,set[y_]],P[z_]]]], subclass[w_,z_],subclass[y_,w_]] := True (* derived 2005 October 8 in U-CL.NB *) or[not[member[x_,y_]],not[subclass[z_,union[y_,set[x_]]]],subclass[z_,y_]] := True (* derived 2004 April 28 in WF.NB *) or[not[member[x_,y_]],not[WELLFOUNDED[x_]],WELLFOUNDED[trv[x_]]] := True (* derived 2007 April 5 in EVEN-ODD.NB *) or[not[member[x_,odd]],not[member[y_,odd]],not[member[natmul[x_,y_],even]]] := True (* derived 2003 January 3 in OO-SUC-OM.NB *) or[not[member[x_,omega]],not[member[x_,x_]]] := True (* added 2002 May 15 based on TRICHOT.NB *) or[not[member[x_,OMEGA]],not[member[x_,x_]]] := True (* derived 2007 August 1 in TO-CHN-S.NB *) or[not[member[x_,OMEGA]],not[member[intersection[OMEGA,image[S,set[x_]]],V]]] := True (* Theorem IND-RUS-6 added 2003 July 5 based on IND-RUS-6.NB *) or[not[member[x_,omega]],not[member[x_,y_]],not[member[y_,x_]]] := True (* derived 2005 February 11 in X3625.NB *) or[not[member[x_,OMEGA]],not[member[x_,y_]],not[member[y_,x_]]] := True (* derived 2005 February 4 in X3583.NB *) or[not[member[x_,omega]],not[member[x_,y_]],not[subclass[y_,x_]]] := True (* derived 2005 February 17 in X3741-49.NB *) or[not[member[x_,OMEGA]],not[member[x_,y_]],not[subclass[y_,x_]]] := True (* derived 2005 February 12 in IND.NB *) or[not[member[x_,omega]],not[member[x_,y_]],not[subclass[image[SUCC,y_],y_]],subclass[omega,union[x_,y_]]] := True (* derived 2005 February 16 in X3730-38.NB *) or[not[member[x_,OMEGA]],not[member[y_,OMEGA]],not[subclass[x_,y_]],subclass[succ[x_],succ[y_]]] := True (* added 2002 October 13 based on THM-M8.NB *) or[not[member[x_,omega]],not[member[y_,omega]],subclass[x_,y_],subclass[y_,x_]] := True (* added 2002 May 7 based on EXAMPLES.NB *) or[not[member[x_,OMEGA]],not[member[y_,OMEGA]],subclass[x_,y_],subclass[y_,x_]] := True (* derived 2004 February 3 in FIN-RANK.NB *) or[not[member[x_,OMEGA]],not[member[pair[x_,y_],ZN]],subclass[rank[y_],x_]] := True (* derived 2005 February 12 in IND.NB *) or[not[member[x_,omega]],not[member[x_,y_]],subclass[image[SUCC,x_],union[x_,y_]]] := True (* derived 2006 April 23 in OM-REG.NB *) or[not[member[x_,omega]],not[member[succ[U[x_]],x_]]] := True (* added 2002 May 15 based on TRICHOT.NB *) or[not[member[x_,OMEGA]],not[member[x_,U[x_]]]] := True (* derived 2006 March 25 in PCON-RUS.NB *) or[not[member[x_,OMEGA]],not[member[U[x_],U[x_]]]] := True (* derived 2004 August 15 in X4055-56.NB *) or[not[member[x_,OMEGA]],not[subclass[y_,image[ZN,x_]]],subclass[rank[y_],x_]] := True (* derived 2005 January 22 in ON-IND.NB *) or[not[member[x_,OMEGA]],not[subclass[intersection[x_,P[y_]],y_]],subclass[x_,y_]] := True (* derived 2005 February 10 in X3575.NB *) or[not[member[x_,omega]],not[subclass[x_,y_]],not[subclass[intersection[omega,P[y_]],y_]],subclass[succ[x_],y_]] := True (* added 2003 January 9 based on OM-SUC.NB *) or[not[member[x_,omega]],not[subclass[omega,x_]]] := True (* derived 2006 March 18 in OL-DO.NB *) or[not[member[y_,OMEGA]],not[subclass[x_,OMEGA]],subclass[intersection[x_,hull[x_,succ[y_]]],succ[y_]]] := True (* derived 2007 January 15 in FACT-UB.NB *) or[not[member[x_,omega]],subclass[APPLY[FACTORIAL,x_],natexp[x_,x_]]] := True (* added 2001 December 5 based on CARD-ON.NB *) or[not[member[x_,OMEGA]],subclass[card[x_],x_]] := True (* derived 2008 February 24 in TRICH-ON.NB *) or[not[member[x_,OMEGA]],subclass[cart[x_,x_],union[E,composite[inverse[E],SUCC]]]] := True (* derived 2008 April 1 in UCH-ON.NB *) or[not[member[x_,OMEGA]],subclass[cart[x_,x_],union[S,inverse[S]]]] := True (* derived 2008 February 8 in ONSUFULL.NB *) or[not[member[x_,OMEGA]],subclass[x_,FULL]] := True (* derived 2005 January 30 in X3837.NB *) or[not[member[x_,OMEGA]],subclass[image[BIGCUP,x_],x_]] := True (* derived 2008 June 3 in CARD-ORD.NB *) or[not[member[x_,OMEGA]],subclass[image[CARD,x_],x_]] := True (* added 2002 October 6 based on OMEGA-2.NB *) or[not[member[x_,omega]],subclass[image[inverse[SUCC],x_],x_]] := True (* derived 2005 February 10 in X3557.NB *) or[not[member[x_,omega]],subclass[image[inverse[SUCC],intersection[omega,x_]],x_]] := True (* added 2003 June 2 based on ON-SUC-1.NB *) or[not[member[x_,OMEGA]],subclass[image[SUCC,x_],succ[x_]]] := True (* added 2002 May 24 based on ADJOIN.NB *) or[not[member[x_,omega]],subclass[image[SUCC,x_],succ[x_]]] := True (* derived 2005 April 26 in DICHOT.NB *) or[not[member[x_,omega]],subclass[image[SUCC,U[x_]],x_]] := True (* derived 2005 February 17 in X3741-49.NB *) or[not[member[x_,OMEGA]],subclass[image[SUCC,U[x_]],x_]] := True (* derived 2003 December 19 in RA-ITER.NB *) or[not[member[x_,omega]],subclass[image[trv[iterate[SUCC,set[x_]]],y_],omega]] := True (* derived 2003 December 18 in RA-ITER.NB *) or[not[member[x_,omega]],subclass[image[trv[SUCC],set[x_]],omega]] := True (* added 2002 May 27 based on ON-DEFN.NB *) or[not[member[x_,OMEGA]],subclass[intersection[FULL,P[x_]],succ[x_]]] := True (* added 2002 May 11 based on OM-1.NB *) or[not[member[x_,omega]],subclass[x_,omega]] := True (* added 2002 April 21 based on ON.NB *) or[not[member[x_,OMEGA]],subclass[x_,OMEGA]] := True (* derived 2007 February 17 in PLUS.NB *) or[not[member[x_,omega]],subclass[omega,union[x_,image[S,set[x_]]]]] := True (* added 2002 May 31 based on DICHOT.NB *) or[not[member[x_,OMEGA]],subclass[OMEGA,union[x_,image[S,set[x_]]]]] := True (* derived 2005 January 22 in ON-IND.NB *) or[not[member[x_,OMEGA]],subclass[x_,REGULAR]] := True (* derived 2008 September 18 in REPLACE.NB *) or[not[member[x_,omega]],subclass[x_,set[0]]] := or[not[member[x,omega]],not[member[set[0],x]]] (* derived 2005 February 12 in X3673-76.NB *) or[not[member[x_,OMEGA]],subclass[succ[x_],OMEGA]] := True (* derived 2006 April 23 in OM-REG.NB *) or[not[member[x_,omega]],subclass[x_,succ[U[x_]]]] := True (* derived 2006 March 7 in PC-ON-SC.NB *) or[not[member[x_,OMEGA]],subclass[x_,succ[U[x_]]]] := True (* derived 2005 February 16 in X3730-38.NB *) or[not[member[x_,OMEGA]],subclass[succ[U[x_]],succ[x_]]] := True (* added 2002 May 24 based on ADJOIN.NB *) or[not[member[x_,omega]],subclass[succ[x_],union[image[SUCC,x_],set[0]]]] := True (* added 2002 May 11 based on OM-1.NB *) or[not[member[x_,omega]],subclass[U[x_],x_]] := True (* added 2002 April 21 based on ON.NB *) or[not[member[x_,OMEGA]],subclass[U[x_],x_]] := True (* derived 2005 April 26 in DICHOT.NB *) or[not[member[x_,omega]],subclass[U[x_],omega]] := True (* derived 2005 February 16 in X3730-38.NB *) or[not[member[x_,OMEGA]],subclass[Uclosure[x_],succ[x_]]] := True (* added 2003 January 30 based on OMEGA.NB *) (* Theorem ON-SUC16 in ON7 proved 2000 February 10 *) or[not[member[x_,omega]],subclass[x_,union[image[SUCC,x_],set[0]]]] := True (* added 2002 May 13 based on OM-SUC.NB *) or[not[member[x_,omega]],subclass[x_,union[range[SUCC],set[0]]]] := True (* derived 2008 August 6 in WF-PC-ON.NB *) or[not[member[x_,omega]],WELLFOUNDED[composite[id[P[x_]],PS]]] := True (* derived 2007 September 18 in UCH-WO.NB *) or[not[member[x_,omega]],WELLORDER[composite[id[x_],inverse[S],id[x_]]]] := True (* derived 2005 December 6 in ORDINAL.NB *) or[not[member[y_,ord[x_]]],not[member[ord[x_],y_]]] := True (* derived 2005 December 6 in ORDINAL.NB *) or[not[member[ord[x_],y_]],not[subclass[y_,ord[x_]]]] := True (* derived 2006 March 14 in ORDRULES.NB *) or[not[member[x_,ord[y_]]],subclass[x_,ord[y_]]] := True (* derived 2006 March 14 in ORDRULES.NB *) or[not[member[x_,ord[y_]]],subclass[succ[x_],ord[y_]]] := True (* derived 2007 August 21 in REG.NB *) or[not[member[P[x_],x_]],not[subclass[x_,REGULAR]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[not[member[pair[w_,x_],DIV]],not[member[pair[w_,y_],DIV]], subclass[ld[x_,y_],image[DIV,set[w_]]]] := True (* derived 2007 April 12 in LD-4.NB *) or[not[member[pair[w_,x_],DIV]],not[member[pair[y_,z_],DIV]],subclass[ld[x_,z_],ld[w_,y_]]] := True (* derived 2007 April 3 in DIV-MUL.NB *) or[not[member[pair[x_,y_],DIV]],not[member[pair[natmul[x_,z_],y_],DIV]]] := not[member[pair[natmul[x,z],y],DIV]] (* derived 2005 December 20 in GLB-LUB.NB *) or[not[member[pair[u_,v_],GLB[x_]]],subclass[u_,image[x_,set[v_]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[not[member[pair[u_,v_],GLB[x_]]],subclass[intersection[domain[x_],lb[x_,u_]],image[inverse[x_],set[v_]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[not[member[pair[u_,v_],GLB[x_]]],subclass[u_,range[x_]]] := True (* derived 2007 June 30 in CANTOR.NB *) or[not[member[pair[x_,y_],image[DORA,FUNS]]],not[subclass[P[x_],y_]]] := True (* derived 2005 January 7 in K-RULES.NB *) or[not[member[pair[x_,y_],K]],not[subclass[y_,x_]]] := True (* derived 2007 September 23 in AND-K-SU.NB *) or[not[member[pair[x_,y_],K]],not[subclass[y_,z_]],not[subclass[z_,x_]]] := True (* derived 2007 September 23 in AND-K-SU.NB *) or[not[member[pair[x_,y_],K]],not[subclass[x_,z_]],not[subclass[y_,z_]]] := or[not[member[pair[x,y],K]],not[subclass[y,z]]] (* derived 2007 August 14 in K-PS.NB *) or[not[member[pair[x_,y_],K]],not[subclass[z_,x_]],subclass[z_,y_]] := True (* derived 2007 August 14 in K-PS.NB *) or[not[member[pair[x_,y_],K]],not[subclass[y_,z_]],subclass[x_,z_]] := True (* derived 2005 January 7 in K-RULES.NB *) or[not[member[pair[x_,y_],K]],subclass[x_,y_]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[not[member[pair[u_,v_],LUB[x_]]],subclass[u_,domain[x_]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[not[member[pair[u_,v_],LUB[x_]]],subclass[u_,image[inverse[x_],set[v_]]]] := True (* derived 2005 December 20 in GLB-LUB.NB *) or[not[member[pair[u_,v_],LUB[x_]]], subclass[intersection[range[x_],ub[x_,u_]],image[x_,set[v_]]]] := True (* derived 2005 May 25 in MOD-A.NB *) or[not[member[pair[y_,natsub[x_,z_]],DIV]],subclass[natmod[x_,y_],z_]] := True (* derived 2004 April 20 in ID-REVU.NB *) or[not[member[pair[x_,y_],z_]],not[member[x_,V]],not[subclass[composite[u_,z_],v_]], subclass[image[u_,set[y_]],image[v_,set[x_]]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[member[pair[u_,v_],x_]],not[REFLEXIVE[x_]],subclass[set[u_,v_],fix[x_]]] := True (* added 2003 August 8 based on CLIQEQDF.NB *) or[not[member[pair[x_,y_],z_]],not[subclass[cart[z_,z_],EQUIDIFF]], subclass[z_,composite[inverse[plus[x_]],plus[y_]]]] := True (* derived 2004 June 5 in THPT-TRV.NB *) or[not[member[pair[u_,v_],x_]],not[TRANSITIVE[x_]], subclass[image[x_,set[v_]],image[x_,set[u_]]]] := True (* derived 2007 June 30 in CANTOR.NB *) or[not[member[pair[x_,P[y_]],Q]],not[subclass[x_,y_]]] := True (* derived 2007 June 30 in CANTOR.NB *) or[not[member[pair[x_,y_],Q]],not[subclass[P[x_],y_]]] := True (* derived 2007 May 3 in SMALLWOB.NB *) or[not[member[pair[x_,y_],SMALLER]],not[subclass[y_,x_]]] := True (* derived 2004 June 5 in THPT-TRV.NB *) or[not[member[pair[u_,v_],trv[x_]]], subclass[image[trv[x_],set[v_]],image[trv[x_],set[u_]]]] := True (* derived 2008 February 9 in ASYM.NB *) or[not[member[pair[V,V],x_]],not[subclass[x_,cart[V,V]]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) or[not[member[w_,partrec[x_,y_]]],not[member[z_,domain[w_]]],subclass[image[y_,set[z_]],domain[w_]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) or[not[member[w_,partrec[x_,y_]]],subclass[w_,cart[V,V]]] := True (* derived 2004 September 5 in WF-REC-4.NB *) or[not[member[w_,partrec[x_,y_]]],subclass[w_,composite[x_,history[w_,y_]]]] := True (* derived 204 August 22 in PARTREC.NB *) or[not[member[w_,partrec[x_,y_]]], subclass[w_,composite[x_,id[composite[IMAGE[composite[id[w_],inverse[FIRST]]],VERTSECT[y_]]],inverse[FIRST]]]] := True (* derived 2008 May 3 in PARTREC.NB *) or[not[member[w_,partrec[x_,y_]]],subclass[domain[w_],domain[rec[x_,y_]]]] := True (* derived 204 August 22 in PARTREC.NB *) or[not[member[w_,partrec[x_,y_]]],subclass[domain[w_],domain[VERTSECT[y_]]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) or[not[member[w_,partrec[x_,y_]]],subclass[image[y_,domain[w_]],domain[w_]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) or[not[member[w_,partrec[x_,y_]]],subclass[w_,rec[x_,y_]]] := True (* derived 2008 September 28 in PERMS.NB *) or[not[member[x_,PERMS]],subclass[x_,cart[V,V]]] := True (* derived 2003 December 28 in PTCLOSED.NB *) or[not[member[x_,PointClosed]],subclass[image[SINGLETON,U[x_]],image[RC[U[x_]],x_]]] := True (* derived 2008 October 7 in QUASIGPS.NB *) or[not[member[x_,QUASIGPS]],subclass[x_,cart[cart[V,V],V]]] := True (* derived 2006 May 31 in OL-NOGAP.NB *) or[not[member[w_,range[ordlist[x_]]]],subclass[intersection[OMEGA,w_,x_],range[ordlist[x_]]]] := True (* derived 2005 January 21 in REPLACE.NB *) or[not[member[x_,range[SINGLETON]]],not[member[U[x_],y_]],subclass[x_,y_]] := True (* derived 2005 February 20 in CARD-TWO.NB *) or[not[member[x_,range[SINGLETON]]],subclass[card[x_],succ[set[0]]]] := True (* derived 2008 August 15 in SU-H.NB *) or[not[member[rank[x_],omega]],subclass[x_,H[FINITE]]] := True (* derived 2007 June 30 in RANK-FIN.NB *) or[not[member[rank[x_],omega]],subclass[tc[x_],FINITE]] := True (* derived 2005 October 31 in RANK-SU.NB *) or[not[member[rank[y_],rank[x_]]],not[subclass[x_,y_]]] := True (* derived 2005 October 31 in RANK-SU.NB *) or[not[member[rank[y_],rank[x_]]],not[subclass[x_,image[ZN,y_]]]] := True (* derived 2006 March 30 in REG-MEMB.NB *) or[not[member[x_,reg[y_]]],not[member[reg[y_],x_]]] := True (* derived 2006 March 30 in REG-SU.NB *) or[not[member[reg[x_],y_]],not[subclass[y_,reg[x_]]]] := True (* derived 2005 January 13 in REG-RUS.NB *) or[not[member[x_,REGULAR]],not[member[x_,x_]]] := True (* derived 2006 March 7 in REGULAR.NB *) or[not[member[x_,REGULAR]],not[member[x_,image[inverse[S],x_]]]] := True (* derived 2004 August 15 in X4055-56.NB *) or[not[member[x_,REGULAR]],not[member[x_,image[ZN,rank[x_]]]]] := True (* derived 2005 January 13 in REG-RUS.NB *) or[not[member[x_,REGULAR]],not[member[x_,y_]],not[member[y_,x_]]] := True (* derived 2007 December 17 in DESC-REG.NB *) or[not[member[x_,REGULAR]],not[member[x_,y_]],not[member[y_,DESCENDING]]] := True (* derived 2008 February 27 in REG-ACY.NB *) or[not[member[x_,REGULAR]],not[member[x_,y_]],not[member[y_,z_]],not[member[z_,x_]]] := True (* derived 2007 August 21 in REG.NB *) or[not[member[x_,REGULAR]],not[member[P[x_],x_]]] := True (* derived 2006 March 7 in REGULAR.NB *) or[not[member[x_,REGULAR]],not[member[x_,y_]],not[subclass[y_,x_]]] := True (* derived 2007 November 29 in FP-TRV-E.NB *) or[not[member[x_,REGULAR]],not[member[x_,tc[x_]]]] := True (* derived 2005 December 3 in X4300-02.NB *) or[not[member[x_,REGULAR]],not[member[x_,U[x_]]]] := True (* derived 2006 March 7 in REGULAR.NB *) or[not[member[x_,REGULAR]],not[member[U[x_],y_]],not[subclass[y_,U[x_]]]] := True (* derived 2006 March 7 in REGULAR.NB *) or[not[member[x_,REGULAR]],not[member[U[x_],U[x_]]]] := True (* derived 2004 August 21 in X1775.NB *) or[not[member[x_,REGULAR]],not[subclass[P[y_],y_]],subclass[x_,y_]] := True (* added 2003 June 5 based on REG.NB *) or[not[member[x_,REGULAR]],subclass[x_,REGULAR]] := True (* derived 2005 January 13 in REG-RUS.NB *) or[not[member[x_,REGULAR]],subclass[x_,RUSSELL]] := True (* derived 2004 September 24 in COREDESC.NB *) or[not[member[x_,REGULAR]],WELLFOUNDED[composite[id[x_],E]]] := True (* added 2003 June 25 based on RUSSELL.NB *) or[not[member[x_,RUSSELL]],not[member[x_,x_]]] := True (* derived 2008 December 5 in GROUPS.NB *) or[not[member[x_,SEMIGPS]],subclass[x_,cart[cart[V,V],V]]] := True (* derived 2008 December 6 in SGP-ASS.NB *) or[not[member[x_,SEMIGPS]],TRANSITIVE[composite[x_,inverse[FIRST]]]] := True (* derived 2008 December 6 in SGP-ASS.NB *) or[not[member[x_,SEMIGPS]],TRANSITIVE[composite[x_,inverse[SECOND]]]] := True (* derived 2007 April 17 in LD9-19.NB *) or[not[member[set[0],ld[nat[x_],nat[y_]]]], subclass[ld[nat[x_],nat[z_]],ld[nat[x_],natmul[nat[y_],nat[z_]]]]] := True (* derived 2005 February 10 in X3572.NB *) or[not[member[set[0],x_]],not[subclass[image[SUCC,x_],x_]], subclass[omega,union[x_,set[0]]]] := True (* Corollary A-1A in A1 proved 1994 December 31 *) or[not[member[x_,y_]],subclass[A[y_],x_]] := True (* derived 2008 August 14 in ALL-ID.NB *) or[not[member[x_,y_]],subclass[A[allclosed[id[x_]]],x_]] := True (* added 2002 November 24 based on VERTSECT.NB *) or[not[member[x_,y_]],subclass[image[z_,set[x_]],image[z_,y_]]] := True (* derived 2004 December 22 in UCL-COMT.NB *) or[not[member[x_,y_]],subclass[lb[COMMUTE,y_],commutant[x_]]] := True (* derived 2004 June 20 in X1563.NB *) or[not[member[x_,y_]],subclass[lb[z_,y_],image[inverse[z_],set[x_]]]] := True (* derived 2006 December 5 in MIXTIMES.NB *) or[not[member[w_,x_]],subclass[map[x_,y_],domain[eval[w_]]]] := True (* added 2003 March 1 based on HER-UCL.NB *) or[not[member[x_,y_]],subclass[P[x_],image[inverse[S],y_]]] := True (* derived 2007 August 11 in UCH-UIMS.NB *) or[not[member[x_,y_]],subclass[spine[S,y_],union[image[S,set[x_]],P[x_]]]] := True (* derived 2007 August 10 in SPINE.NB *) or[not[member[x_,y_]],subclass[spine[z_,y_], union[image[z_,set[x_]],image[inverse[z_],set[x_]]]]] := True (* derived 2005 January 30 in X4069.NB *) or[not[member[x_,y_]],subclass[succ[rank[x_]],rank[y_]]] := True (* derived 2005 February 12 in IND.NB *) or[not[member[x_,y_]],subclass[succ[x_],union[x_,y_]]] := True (* derived 2005 January 30 in X3942.NB *) or[not[member[x_,y_]],subclass[x_,tc[y_]]] := True (* added 2001 November 1 based on RFX.NB *) or[not[member[x_,y_]],subclass[x_,U[y_]]] := True (* derived 2007 August 14 in UCH-SPIN.NB *) or[not[member[w_,x_]],subclass[w_,U[spine[S,x_]]],subclass[U[spine[S,x_]],w_]] := True (* derived 2004 June 20 in X1563.NB *) or[not[member[x_,y_]],subclass[ub[z_,y_],image[z_,set[x_]]]] := True (* derived 2004 December 23 in UCLSBCMT.NB *) or[not[member[x_,y_]],subclass[ub[SUBCOMMUTE,y_],subcommutant[x_]]] := True (* derived 2003 December 27 in T1.NB *) or[not[member[x_,T1]],subclass[composite[Di,id[U[x_]]], composite[complement[inverse[E]],id[x_],E]]] := True (* derived 2003 December 30 in T2.NB *) or[not[member[x_,T1]],subclass[image[SINGLETON,U[x_]],image[RC[U[x_]],Uclosure[x_]]]] := True (* derived 2003 December 30 in T2.NB *) or[not[member[x_,T2]],subclass[composite[id[U[x_]],Di,id[U[x_]]], composite[inverse[E],id[x_],DISJOINT,id[x_],E]]] := True (* derived 2008 August 15 in SU-H.NB *) or[not[member[tc[x_],FINITE]],subclass[x_,H[FINITE]]] := True (* derived 2007 December 4 in H-FIN.NB *) or[not[member[tc[x_],FINITE]],subclass[tc[x_],FINITE]] := True (* derived 2007 December 5 in FULL.NB *) or[not[member[x_,tc[y_]]],subclass[x_,tc[y_]]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) or[not[member[x_,TOPS]],subclass[image[CAP,cart[x_,x_]],x_]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) or[not[member[x_,TOPS]],subclass[Uclosure[x_],x_]] := True (* derived 2007 November 22 in SU-HERED.NB *) or[not[member[U[x_],image[inverse[S],y_]]],subclass[x_,image[inverse[S],y_]]] := True (* derived 2006 March 7 in REGULAR.NB *) or[not[member[x_,U[y_]]],not[member[y_,REGULAR]],not[subclass[U[y_],x_]]] := True (* derived 2007 November 3 in MAX-GT.NB *) or[not[member[U[x_],x_]],not[subclass[x_,image[inverse[PS],x_]]]] := True (* derived 2006 June 1 in OL-FIN.NB *) or[not[member[U[x_],y_]],not[subclass[intersection[x_,U[x_]],y_]],not[subclass[x_,OMEGA]], subclass[x_,y_]] := True (* derived 2006 March 7 in PC-ON-SC.NB *) or[not[member[U[x_],x_]],not[subclass[x_,OMEGA]],not[subclass[x_,U[x_]]]] := True (* derived 2006 March 7 in REGULAR.NB *) or[not[member[U[x_],x_]],not[subclass[x_,REGULAR]],not[subclass[x_,U[x_]]]] := True (* derived 2006 March 30 in REG-SU.NB *) or[not[member[U[reg[x_]],y_]],not[subclass[y_,U[reg[x_]]]]] := True (* derived 2007 November 3 in MAX-U.NB *) or[not[member[U[x_],x_]],subclass[x_,union[image[inverse[PS],x_],set[U[x_]]]]] := True (* derived 2006 March 25 in PCON-RUS.NB *) or[not[member[U[x_],U[x_]]],not[subclass[x_,OMEGA]]] := True (* derived 2006 March 7 in REGULAR.NB *) or[not[member[U[x_],U[x_]]],not[subclass[x_,REGULAR]]] := True (* derived 2006 July 9 in UNOP-POW.NB *) or[not[member[w_,UNOPS]], subclass[image[VERTSECT[power[w_]],intersection[omega,complement[set[0]]]],UNOPS]] := True (* derived 2006 June 9 in UNARY.NB *) or[not[member[x_,UNOPS]],subclass[range[x_],domain[x_]]] := True (* rule proposed 1998 September 13 *) or[not[member[x_,V]],not[member[x_,y_]]] := not[member[x,y]] (* added 2003 May 20 based on SU-DO-VS.NB *) or[not[member[y_,V]],not[member[image[x_,y_],V]],subclass[y_,domain[VERTSECT[x_]]]] := True (* derived 2005 January 27 in DIV.NB *) or[not[member[x_,V]],not[member[pair[x_,y_],DIV]]] := not[member[pair[x,y],DIV]] (* derived 2005 January 27 in DIV.NB *) or[not[member[y_,V]],not[member[pair[x_,y_],DIV]]] := not[member[pair[x,y],DIV]] (* derived 2005 January 27 in K.NB *) or[not[member[x_,V]],not[member[pair[x_,y_],K]]] := not[member[pair[x,y],K]] (* derived 2005 January 27 in K.NB *) or[not[member[y_,V]],not[member[pair[x_,y_],K]]] := not[member[pair[x,y],K]] (* derived 2005 January 27 in Q.NB *) or[not[member[x_,V]],not[member[pair[x_,y_],Q]]] := not[member[pair[x,y],Q]] (* derived 2005 January 27 in Q.NB *) or[not[member[y_,V]],not[member[pair[x_,y_],Q]]] := not[member[pair[x,y],Q]] (* derived 2005 January 27 in ZN.NB *) or[not[member[x_,V]],not[member[pair[x_,y_],ZN]]] := not[member[pair[x,y],ZN]] (* derived 2005 January 27 in ZN.NB *) or[not[member[y_,V]],not[member[pair[x_,y_],ZN]]] := not[member[pair[x,y],ZN]] (* derived 2004 July 17 in FU-IM-IN.NB *) or[not[member[x_,V]],not[member[y_,V]],not[member[pair[x_,y_],z_]], subclass[APPLY[z_,x_],y_]] := True (* added 2003 June 25 based on RUSSELL.NB *) or[not[member[x_,V]],not[subclass[P[x_],x_]]] := True (* derived 2006 September 2 in HULL-Z.NB *) or[not[member[x_,Z]],not[subclass[y_,x_]],subclass[cart[y_,y_],EQUIDIFF]] := True (* derived 2006 September 2 in HULL-Z.NB *) or[not[member[x_,Z]],subclass[cart[x_,x_],EQUIDIFF]] := True (* derived 2006 August 1 in BCL-ZADD.NB *) or[not[member[x_,Z]],subclass[x_,cart[omega,omega]]] := True (* derived 2006 September 5 in RA-PLUS.NB *) or[not[member[x_,Z]],subclass[x_,cart[V,V]]] := True (* added 2003 August 12 based on RO-ZADD.NB *) or[not[member[x_,Z]],subclass[domain[x_],omega]] := True (* added 2003 August 12 based on RO-ZADD.NB *) or[not[member[x_,Z]],subclass[range[x_],omega]] := True (* derived 2004 March 21 in PO-WRAP.NB *) or[not[PARTIALORDER[x_]],not[PARTIALORDER[y_]],PARTIALORDER[cross[x_,y_]]] := True (* derived 2004 March 21 in PO-WRAP.NB *) or[not[PARTIALORDER[x_]],not[PARTIALORDER[y_]],PARTIALORDER[intersection[x_,y_]]] := True (* derived 2004 June 26 in X1650.NB *) or[not[PARTIALORDER[x_]],not[REFLEXIVE[y_]],not[TRANSITIVE[y_]], PARTIALORDER[intersection[x_,y_]]] := True (* derived 2005 April 7 in WF-TO.NB *) or[not[PARTIALORDER[x_]],not[subclass[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]]]] := not[TOTALORDER[x]] (* derived 2007 December 29 in PO-RULES.NB *) or[not[PARTIALORDER[x_]],not[subclass[x_,cart[y_,y_]]],subclass[fix[x_],y_]] := True (* derived 2007 December 29 in PO-RULES.NB *) or[not[PARTIALORDER[x_]],not[subclass[fix[x_],y_]],subclass[x_,cart[y_,y_]]] := True (* derived 2008 January 4 in PO-RS.NB *) or[not[PARTIALORDER[x_]],not[subclass[image[x_,y_],y_]],PARTIALORDER[composite[x_,id[y_]]]] := True (* derived 2005 February 5 in X2076-79.NB *) or[not[PARTIALORDER[x_]], not[subclass[P[fix[x_]],union[domain[LEAST[x_]],set[0]]]],WELLORDER[x_]] := True (* derived 2004 March 21 in PO-WRAP.NB *) or[not[PARTIALORDER[x_]],PARTIALORDER[composite[Id,x_]]] := True (* derived 2004 March 21 in PO-WRAP.NB *) or[not[PARTIALORDER[x_]],PARTIALORDER[composite[id[y_],x_,id[y_]]]] := True (* derived 2005 October 1 in PO-THIN.NB *) or[not[PARTIALORDER[x_]],PARTIALORDER[thinpart[x_]]] := True (* derived 2004 June 26 in X1639.NB *) or[not[PARTIALORDER[x_]],PARTIALORDER[union[Id,x_]]] := True (* derived 2004 June 26 in X1639.NB *) or[not[PARTIALORDER[x_]],PARTIALORDER[union[x_,id[y_]]]] := True (* derived 2004 March 21 in PO-WRAP.NB *) or[not[PARTIALORDER[x_]],REFLEXIVE[x_]] := True (* derived 2004 March 21 in PO-WRAP.NB *) or[not[PARTIALORDER[x_]],subclass[x_,cart[V,V]]] := True (* derived 2008 July 1 in CLIQ-TFM.NB *) or[not[PARTIALORDER[x_]],subclass[image[IMAGE[VERTSECT[x_]],chains[x_]],chains[S]]] := True (* derived 2008 July 1 in CLIQ-TFM.NB *) or[not[PARTIALORDER[x_]],subclass[image[IMAGE[VERTSECT[inverse[x_]]],chains[x_]],chains[S]]] := True (* derived 2004 March 21 in PO-WRAP.NB *) or[not[PARTIALORDER[x_]],subclass[intersection[x_,inverse[x_]],Id]] := True (* derived 2004 March 21 in PO-WRAP.NB *) or[not[PARTIALORDER[x_]],TRANSITIVE[x_]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[REFLEXIVE[composite[Id,x_]]],not[subclass[x_,cart[y_,z_]]],REFLEXIVE[x_]] := True (* derived 2005 April 7 in WF-TO.NB *) or[not[REFLEXIVE[composite[Id,x_]]],not[TRANSITIVE[x_]]] := or[not[REFLEXIVE[x]],not[TRANSITIVE[x]]] (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[REFLEXIVE[x_]],not[REFLEXIVE[y_]],REFLEXIVE[cross[x_,y_]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[REFLEXIVE[x_]],not[REFLEXIVE[y_]],REFLEXIVE[intersection[x_,y_]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[REFLEXIVE[x_]],not[REFLEXIVE[y_]],REFLEXIVE[union[x_,y_]]] := True (* derived 2004 March 18 in RFX-TRV.NB *) or[not[REFLEXIVE[x_]],not[subclass[x_,cart[V,V]]]] := not[REFLEXIVE[x]] (* derived 2007 June 2 in SUBVAR.NB *) or[not[REFLEXIVE[x_]],not[subclass[y_,image[inverse[x_],y_]]],subclass[y_,fix[x_]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[REFLEXIVE[x_]],not[subclass[image[x_,y_],y_]],REFLEXIVE[composite[x_,id[y_]]]] := True (* derived 2007 June 2 in SUBVAR.NB *) or[not[REFLEXIVE[x_]],not[subclass[y_,image[x_,y_]]],subclass[y_,fix[x_]]] := True (* derived 2008 March 2 in WO-LEAST.NB *) or[not[REFLEXIVE[x_]],not[subclass[intersection[x_,inverse[x_]],Id]], not[subclass[P[fix[x_]],union[domain[LEAST[x_]],set[0]]]],WELLORDER[x_]] := True (* derived 2004 March 21 in PO-WRAP.NB *) or[not[REFLEXIVE[x_]],not[subclass[intersection[x_,inverse[x_]],Id]],not[TRANSITIVE[x_]]] := not[PARTIALORDER[x]] (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[REFLEXIVE[x_]],not[subclass[P[fix[x_]],union[domain[funpart[LEAST[x_]]],set[0]]]]] := not[WELLORDER[x]] (* derived 2006 October 10 in RFX.NB *) or[not[REFLEXIVE[x_]],not[subclass[x_,y_]],subclass[x_,rfx[y_]]] := True (* derived 2004 June 20 in X1604-56.NB *) or[not[REFLEXIVE[x_]],not[TRANSITIVE[composite[Id,x_]]]] := or[not[REFLEXIVE[x]],not[TRANSITIVE[x]]] (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[REFLEXIVE[x_]],REFLEXIVE[composite[Id,x_]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[REFLEXIVE[x_]],REFLEXIVE[composite[id[y_],x_,id[y_]]]] := True (* derived 2006 May 2 in RFX-XFM.NB *) or[not[REFLEXIVE[y_]],REFLEXIVE[composite[x_,y_,inverse[x_]]]] := True (* derived 2006 October 7 in TRV-RFX.NB *) or[not[REFLEXIVE[x_]],REFLEXIVE[trv[x_]]] := True (* derived 2004 June 26 in X1639.NB *) or[not[REFLEXIVE[x_]],REFLEXIVE[union[x_,id[y_]]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[REFLEXIVE[x_]],subclass[x_,cart[V,V]]] := True (* derived 2004 March 18 in RFX-TRV.NB *) or[not[REFLEXIVE[x_]],subclass[x_,composite[x_,x_]]] := True (* derived 2004 July 18 in RFX-FP.NB *) or[not[REFLEXIVE[x_]],subclass[fix[composite[y_,x_]],fix[x_]]] := True (* derived 2004 July 18 in RFX-FP.NB *) or[not[REFLEXIVE[x_]],subclass[fix[composite[x_,y_]],fix[x_]]] := True (* derived 2008 October 24 in RFX-CMT.NB *) or[not[REFLEXIVE[x_]],subclass[image[x_,y_],fix[x_]]] := True (* derived 2004 June 10 in X1586.NB *) or[not[REFLEXIVE[x_]],subclass[intersection[x_,inverse[x_]],composite[LEAST[x_],inverse[LEAST[x_]]]]] := True (* derived 2004 June 26 in X1639.NB *) or[not[REFLEXIVE[union[x_,y_]]],subclass[x_,cart[V,V]]] := True (* derived 2008 September 4 in DJ-PA-PS.NB *) or[not[subclass[x_,A[y_]]],subclass[intersection[y_,P[x_]],set[x_]]] := True (* derived 2007 August 10 in A-IM-S.NB *) or[not[subclass[x_,A[y_]]],subclass[y_,union[z_,image[S,set[x_]]]]] := True (* derived 2007 September 22 in UCH-ACY.NB *) or[not[subclass[x_,ACYCLIC]],subclass[U[x_],cart[V,V]]] := True (* derived 2007 June 23 in ALLCLOSED.NB *) or[not[subclass[y_,allclosed[x_]]],subclass[image[x_,P[A[y_]]],A[y_]]] := True (* added 2003 May 21 based on BINCLOSE.NB *) or[not[subclass[z_,binclosed[x_]]],subclass[image[x_,cart[A[z_],A[z_]]],A[z_]]] := True (* derived 2008 August 17 in CLQ-CMT.NB *) or[not[subclass[cart[x_,y_],COMMUTE]],subclass[cart[y_,x_],COMMUTE]] := True (* derived 2008 August 17 in CLQ-CMT.NB *) or[not[subclass[cart[x_,x_],COMMUTE]],subclass[cart[Uclosure[x_],Uclosure[x_]],COMMUTE]] := True (* derived 2006 April 29 in PO-TO-XF.NB *) or[not[subclass[cart[domain[oopart[x_]],domain[oopart[x_]]],union[S,inverse[S]]]], TOTALORDER[composite[oopart[x_],S,inverse[oopart[x_]]]]] := True (* added 2003 August 8 based on CLIQEQDF.NB *) or[not[subclass[cart[x_,x_],EQUIDIFF]],subclass[x_,cart[omega,omega]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) or[not[subclass[w_,cart[x_,intersection[y_,z_]]]],subclass[range[w_],y_]] := True (* derived 2004 February 26 in IN-DJ-SU.NB *) or[not[subclass[x_,cart[u_,v_]]],not[subclass[composite[Id,x_],y_]],subclass[x_,y_]] := True (* derived 2006 May 1 in MONOCLIQ.NB *) or[not[subclass[cart[w_,w_],y_]],not[subclass[composite[x_,y_,inverse[x_]],z_]], subclass[cart[image[x_,w_],image[x_,w_]],z_]] := True (* derived 2008 October 28 in RFX.NB *) or[not[subclass[x_,cart[y_,y_]]],not[subclass[y_,fix[x_]]],REFLEXIVE[x_]] := True (* derived 2006 February 18 in DORA-DJ.NB *) or[not[subclass[x_,cart[y_,z_]]],not[WELLFOUNDED[composite[Id,x_]]],WELLFOUNDED[x_]] := True (* derived 2006 April 29 in PO-TO-XF.NB *) or[not[subclass[cart[range[oopart[x_]],range[oopart[x_]]],union[S,inverse[S]]]], TOTALORDER[composite[inverse[oopart[x_]],S,oopart[x_]]]] := True (* derived 2004 March 4 in RELATION.NB *) or[not[subclass[x_,cart[u_,v_]]],subclass[x_,cart[domain[x_],range[x_]]]] := True (* added 2003 July 1 based on ASS-TRV.NB *) or[not[subclass[x_,cart[y_,z_]]],subclass[domain[x_],y_]] := True (* derived 2008 September 4 in CLIQ-FIX.NB *) or[not[subclass[cart[x_,x_],y_]],subclass[x_,fix[y_]]] := True (* derived 2004 January 24 in WO-WRAP.NB *) or[not[subclass[x_,cart[y_,z_]]],subclass[image[x_,y_],z_]] := True (* added 2003 July 1 based on ASS-TRV.NB *) or[not[subclass[x_,cart[y_,z_]]],subclass[range[x_],z_]] := True (* added 2000 December 9 based on IM-CP-0.NB *) or[not[subclass[cart[x_,x_],y_]],subclass[x_,image[y_,x_]]] := True (* derived 2008 July 1 in CLIQ-TFM.NB *) or[not[subclass[cart[x_,x_],y_]],subclass[cart[image[w_,x_],image[w_,x_]], composite[w_,y_,inverse[w_]]]] := True (* derived 2008 July 20 in TRV-MONO.NB *) or[not[subclass[x_,cart[u_,v_]]],subclass[x_,union[y_,trv[x_]]]] := True (* derived 2007 November 22 in SU-HERED.NB *) or[not[subclass[cart[U[x_],U[x_]],y_]],subclass[x_,cliques[y_]]] := True (* derived 2007 November 22 in SU-HERED.NB *) or[not[subclass[cart[U[x_],U[x_]],union[y_,inverse[y_]]]],subclass[x_,chains[y_]]] := True (* derived 2008 February 14 in WF-TRICH.NB *) or[not[subclass[cart[union[domain[x_],range[x_]],union[domain[x_],range[x_]]], union[Id,x_,inverse[x_]]]],not[WELLFOUNDED[x_]],TRANSITIVE[x_]] := True (* derived 2008 February 28 in TRCHDICH.NB *) or[not[subclass[cart[x_,x_],union[E,composite[inverse[E],SUCC]]]], not[subclass[x_,FULL]],subclass[cart[x_,x_],union[S,inverse[S]]]] := True (* derived 2008 February 22 in WF-RS.NB *) or[not[subclass[cart[y_,y_],union[Id,x_,inverse[x_]]]], not[WELLFOUNDED[composite[id[y_],x_]]],TRANSITIVE[composite[id[y_],x_,id[y_]]]] := True (* derived 2008 August 1 in THM-63.NB *) or[not[subclass[cart[y_,y_],union[Id,x_,inverse[x_]]]],not[WELLFOUNDED[composite[id[y_],x_]]], WELLFOUNDED[composite[id[y_],intersection[Di,complement[inverse[x_]]]]]] := True (* derived 2006 May 8 in CHAIN.NB *) or[not[subclass[cart[w_,w_],union[inverse[y_],y_]]],not[subclass[composite[x_,y_,inverse[x_]],z_]], subclass[cart[image[x_,w_],image[x_,w_]],union[inverse[z_],z_]]] := True (* derived 2007 May 4 in CHAIN.NB *) or[not[subclass[cart[x_,x_],union[inverse[po[y_]],po[y_]]]], TOTALORDER[composite[id[x_],po[y_],id[x_]]]] := True (* derived 2007 May 4 in CHAIN.NB *) or[not[subclass[cart[x_,x_],union[y_,inverse[y_]]]],subclass[x_,fix[y_]]] := True (* derived 2008 August 2 in CHN-SBV.NB *) or[not[subclass[cart[y_,y_],union[x_,inverse[x_]]]],subclass[y_,image[x_,y_]]] := True (* derived 2007 September 3 in CHN-SQR.NB *) or[not[subclass[cart[x_,x_],union[S,inverse[S]]]], subclass[cart[fix[image[inverse[CART],x_]],fix[image[inverse[CART],x_]]], union[S,inverse[S]]]] := True (* derived 2007 September 22 in UCH-ACY.NB *) or[not[subclass[cart[x_,x_],union[S,inverse[S]]]], subclass[cart[image[HULL[y_],x_],image[HULL[y_],x_]],union[S,inverse[S]]]] := True (* derived 2007 September 3 in CHN-SQR.NB *) or[not[subclass[cart[y_,y_],union[S,inverse[S]]]], subclass[cart[image[IMAGE[x_],y_],image[IMAGE[x_],y_]],union[S,inverse[S]]]] := True (* derived 2006 April 20 in ACL-NEST.NB *) or[not[subclass[cart[x_,y_],union[S,inverse[S]]]],subclass[cart[y_,x_],union[S,inverse[S]]]] := True (* derived 2007 September 8 in UCH-SQ.NB *) or[not[subclass[cart[x_,x_],union[S,inverse[S]]]], subclass[image[CART,cart[x_,x_]],image[inverse[S],image[CART,id[x_]]]]] := True (* derived 2004 August 18 in X2812-61.NB *) or[not[subclass[cart[x_,x_],union[S,inverse[S]]]],subclass[image[CUP,cart[x_,x_]],x_]] := True (* derived 2008 January 4 in UCH-FIN.NB *) or[not[subclass[cart[x_,x_],union[S,inverse[S]]]], subclass[intersection[FINITE,P[U[x_]]],union[image[inverse[S],x_],set[0]]]] := True (* derived 2004 March 14 in WO-TRV.NB *) or[not[subclass[x_,cart[V,z_]]],not[subclass[x_,cart[y_,V]]]] := not[subclass[x,cart[y,z]]] (* derived 2004 February 10 in TOTORDER.NB *) or[not[subclass[x_,cart[V,V]]],not[TOTALORDER[composite[Id,x_]]],TOTALORDER[x_]] := True (* derived 2004 March 18 in RFX-TRV.NB *) or[not[subclass[x_,cart[V,V]]],not[TRANSITIVE[x_]]] := not[TRANSITIVE[x]] (* derived 2004 March 20 in EQV-WRAP.NB *) or[not[subclass[x_,cart[V,V]]],not[TRANSITIVE[composite[Id,x_]]]] := not[TRANSITIVE[x]] (* derived 2004 March 30 in CO-ES-ID.NB *) or[not[subclass[x_,cart[V,V]]],subclass[x_,composite[x_,S]]] := True (* derived 2006 October 11 in RA-CLIQ.NB *) or[not[subclass[x_,cliques[y_]]],not[subclass[cart[x_,x_],union[S,inverse[S]]]], subclass[cart[U[x_],U[x_]],y_]] := True (* added 2001 December 25 based on SCHRODER.NB *) or[not[subclass[composite[complement[z_],inverse[y_]],complement[x_]]], subclass[composite[x_,y_],z_]] := True (* derived 2004 August 28 in TRV-CO.NB *) or[not[subclass[composite[x_,y_],composite[y_,x_]]],not[TRANSITIVE[x_]],not[TRANSITIVE[y_]], TRANSITIVE[composite[y_,x_]]] := True (* derived 2005 April 17 in XVR-ITER.NB *) or[not[subclass[composite[y_,z_],composite[x_,y_]]], subclass[composite[cross[Id,y_],power[z_]],composite[cross[inverse[y_],Id],power[x_]]]] := True (* derived 2005 April 17 in XVR-ITER.NB *) or[not[subclass[composite[x_,y_],composite[y_,z_]]], subclass[composite[cross[inverse[y_],Id],power[x_]],composite[cross[Id,y_],power[z_]]]] := True (* derived 2005 August 16 in TWINE.NB *) or[not[subclass[composite[x_,y_],composite[y_,z_]]], subclass[composite[image[power[x_],w_],y_],composite[y_,image[power[z_],w_]]]] := True (* derived 2005 April 17 in XVR-ITER.NB *) or[not[subclass[composite[y_,z_],composite[x_,y_]]], subclass[composite[y_,image[power[z_],w_]],composite[image[power[x_],w_],y_]]] := True (* derived 2005 April 17 in XVR-ITER.NB *) or[not[subclass[composite[x_,y_],composite[y_,z_]]], subclass[composite[trv[x_],y_],composite[y_,trv[z_]]]] := True (* derived 2005 April 17 in XVR-ITER.NB *) or[not[subclass[composite[y_,z_],composite[x_,y_]]], subclass[composite[y_,trv[z_]],composite[trv[x_],y_]]] := True (* derived 2005 August 16 in TWINE.NB *) or[not[subclass[composite[x_,y_],composite[y_,x_]]], subclass[composite[trv[x_],trv[y_]],composite[trv[y_],trv[x_]]]] := True (* derived 2006 April 12 in SBV-IMG6.NB *) or[not[subclass[composite[x_,y_],composite[z_,x_]]], subclass[image[IMAGE[x_],subvar[y_]],subvar[z_]]] := True (* derived 2004 March 4 in RELATION.NB *) or[not[subclass[composite[x_,y_],composite[y_,x_]]], subclass[image[inverse[y_],domain[x_]],domain[x_]]] := True (* added 2003 March 16 based on IMG-UCL.NB *) or[not[subclass[composite[x_,y_],composite[y_,x_]]],subclass[image[x_,range[y_]],range[y_]]] := True (* derived 2004 Agust 13 in X4015-56.NB *) or[not[subclass[composite[x_,E],composite[E,x_]]],subclass[inverse[x_],ZN]] := True (* derived 2004 July 17 in FU-RULES.NB *) or[not[subclass[composite[funpart[x_],y_],composite[z_,funpart[x_]]]], subclass[image[funpart[x_],fix[y_]],fix[z_]]] := True (* derived 2006 April 13 in DBL-IND2.NB *) or[not[subclass[composite[funpart[y_],intersection[x_,inverse[x_]]],x_]], not[subclass[hull[invar[funpart[y_]],set[z_]],image[inverse[x_],set[z_]]]], subclass[cart[hull[invar[funpart[y_]],set[z_]],hull[invar[funpart[y_]],set[z_]]],x_]] := True (* derived 2007 September 4 in MONOCHNS.NB *) or[not[subclass[composite[funpart[x_],y_,inverse[funpart[x_]]],z_]], subclass[image[IMAGE[funpart[x_]],chains[y_]],chains[z_]]] := True (* derived 2006 May 1 in MONOCLIQ.NB *) or[not[subclass[composite[funpart[x_],y_,inverse[funpart[x_]]],z_]], subclass[image[IMAGE[funpart[x_]],cliques[y_]],cliques[z_]]] := True (* derived 2004 June 12 in X1187.NB *) or[not[subclass[x_,composite[y_,funpart[z_]]]], subclass[composite[x_,inverse[funpart[z_]]],y_]] := True (* derived 2004 September 5 in WF-REC-4.NB *) or[not[subclass[w_,composite[x_,history[w_,y_]]]],not[subclass[image[y_,z_],z_]], subclass[composite[w_,id[z_]],composite[x_,history[composite[w_,id[z_]],y_]]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) or[not[subclass[composite[y_,id[domain[x_]]],z_]], subclass[composite[y_,inverse[x_]],composite[z_,inverse[x_]]]] := True (* derived 2008 February 12 in REFLEXIV.NB *) or[not[subclass[composite[id[y_],inverse[x_],id[y_]],x_]], not[TRANSITIVE[composite[id[y_],x_,id[y_]]]],REFLEXIVE[composite[id[y_],x_,id[y_]]]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) or[not[subclass[composite[Id,x_],y_]],subclass[composite[z_,x_],composite[z_,y_]]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) or[not[subclass[composite[Id,x_],y_]],subclass[composite[x_,z_],composite[y_,z_]]] := True (* added 2001 December 25 based on SCHRODER.NB *) or[not[subclass[composite[inverse[x_],complement[z_]],complement[y_]]], subclass[composite[x_,y_],z_]] := True (* Theorem ZN-SU1 in ZN3 proved 2001 July 11 *) or[not[subclass[composite[inverse[E],x_],composite[x_,inverse[E]]]], subclass[composite[Id,x_],ZN]] := True (* derived 2004 Agust 13 in X4015-56.NB *) or[not[subclass[composite[inverse[E],x_],composite[x_,inverse[E]]]], subclass[U[image[x_,set[y_]]],image[x_,y_]]] := True (* derived 2008 January 12 in HAUS-MAX.NB *) or[not[subclass[composite[inverse[E],id[x_]],composite[inverse[S],MAXIMAL[S]]]], subclass[intersection[x_,subvar[inverse[PS]]],set[0]]] := True (* derived 2007 June 17 in MONO-GT.NB *) or[not[subclass[x_,composite[inverse[funpart[z_]],y_,funpart[z_]]]], subclass[composite[funpart[z_],GREATEST[x_]],composite[GREATEST[y_],IMAGE[funpart[z_]]]]] := True (* derived 2007 June 14 in MONOTONE.NB *) or[not[subclass[x_,composite[inverse[funpart[z_]],y_,funpart[z_]]]], subclass[composite[funpart[z_],x_,inverse[funpart[z_]]],y_]] := True (* derived 2007 June 17 in MONO-GT.NB *) or[not[subclass[x_,composite[inverse[funpart[z_]],y_,funpart[z_]]]], subclass[composite[funpart[z_],LEAST[x_]],composite[LEAST[y_],IMAGE[funpart[z_]]]]] := True (* derived 2007 June 14 in MONOTONE.NB *) or[not[subclass[x_,composite[inverse[funpart[z_]],y_,funpart[z_]]]], subclass[fix[x_],image[inverse[funpart[z_]],fix[y_]]]] := True (* derived 2007 June 18 in MONOCLIQ.NB *) or[not[subclass[x_,composite[inverse[funpart[z_]],y_,funpart[z_]]]], subclass[image[IMAGE[funpart[z_]],chains[x_]],chains[y_]]] := True (* derived 2007 June 18 in MONOCLIQ.NB *) or[not[subclass[x_,composite[inverse[funpart[z_]],y_,funpart[z_]]]], subclass[image[IMAGE[funpart[z_]],cliques[x_]],cliques[y_]]] := True (* derived 2007 June 17 in MONO-GT.NB *) or[not[subclass[x_,composite[inverse[funpart[z_]],y_,funpart[z_]]]], subclass[image[IMAGE[funpart[z_]],domain[GREATEST[x_]]],domain[GREATEST[y_]]]] := True (* derived 2007 June 17 in MONO-GT.NB *) or[not[subclass[x_,composite[inverse[funpart[z_]],y_,funpart[z_]]]], subclass[image[IMAGE[funpart[z_]],domain[LEAST[x_]]],domain[LEAST[y_]]]] := True (* derived 2007 June 18 in MONOCLIQ.NB *) or[not[subclass[x_,composite[inverse[funpart[z_]],y_,funpart[z_]]]], subclass[image[IMAGE[funpart[z_]],subvar[x_]],subvar[y_]]] := True (* derived 2008 August 27 in SU-CO-FU.NB *) or[not[subclass[x_,composite[inverse[y_],funpart[z_]]]], not[subclass[domain[funpart[z_]],domain[x_]]],subclass[funpart[z_],composite[y_,x_]]] := True (* derived 2004 June 12 in X1191.NB *) or[not[subclass[x_,composite[inverse[funpart[z_]],y_]]], subclass[composite[funpart[z_],x_],y_]] := True (* added 2003 October 8 based on FS-CUP.NB *) or[not[subclass[composite[x_,inverse[y_]],Id]],subclass[composite[x_,id[domain[y_]]],y_]] := True (* added 2003 October 8 based on FS-CUP.NB *) or[not[subclass[composite[x_,inverse[y_]],Id]], subclass[composite[y_,inverse[x_]],Id]] := True (* derived 2004 April 26 in ANTITONE.NB *) or[not[subclass[composite[x_,inverse[u_],inverse[x_]],v_]], not[subclass[composite[y_,w_,inverse[y_]],u_]], subclass[composite[x_,y_,inverse[w_],inverse[y_],inverse[x_]],v_]] := True (* derived 2004 April 26 in ANTITONE.NB *) or[not[subclass[composite[x_,inverse[u_],inverse[x_]],v_]], not[subclass[composite[y_,inverse[w_],inverse[y_]],u_]], subclass[composite[x_,y_,w_,inverse[y_],inverse[x_]],v_]] := True (* derived 2004 April 26 in ANTITONE.NB *) or[not[subclass[composite[x_,u_,inverse[x_]],v_]], not[subclass[composite[y_,w_,inverse[y_]],u_]], subclass[composite[x_,y_,w_,inverse[y_],inverse[x_]],v_]] := True (* derived 2007 June 16 in SUBTWINE.NB *) or[not[subclass[composite[w_,x_,inverse[w_]],y_]],not[subclass[domain[x_],domain[w_]]], subclass[composite[w_,x_],composite[y_,w_]]] := True (* derived 2006 May 8 in CHAIN.NB *) or[not[subclass[composite[x_,y_,inverse[x_]],z_]],not[TOTALORDER[y_]], subclass[cart[image[x_,fix[y_]],image[x_,fix[y_]]],union[inverse[z_],z_]]] := True (* derived 2008 January 6 in ALLCL-BC.NB *) or[not[subclass[x_,composite[y_,inverse[S]]]],subclass[allclosed[y_],allclosed[x_]]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) or[not[subclass[composite[y_,inverse[x_]],z_]], subclass[composite[y_,id[domain[x_]]],composite[z_,x_]]] := True (* derived 2004 September 21 in WF-X.NB *) or[not[subclass[w_,composite[y_,w_,inverse[x_]]]],subclass[domain[w_],image[x_,domain[w_]]]] := True (* derived 2005 February 3 in IVR-FP.NB *) or[not[subclass[composite[x_,y_,inverse[x_]],z_]],subclass[image[x_,fix[y_]],fix[z_]]] := True (* derived 2007 June 17 in MONO-GT.NB *) or[not[subclass[x_,composite[inverse[z_],y_,z_]]], subclass[inverse[x_],composite[inverse[z_],inverse[y_],z_]]] := True (* added 2003 June 9 based on VS-CLIQ.NB *) or[not[subclass[composite[x_,inverse[x_]],y_]],subclass[range[VERTSECT[x_]],cliques[y_]]] := True (* derived 2008 November 18 in FIX-1-2.NB *) or[not[subclass[composite[x_,LEFT[y_]],Id]], subclass[image[x_,cart[set[y_],set[z_]]],set[z_]]] := True (* added 2003 November 4 based on SBCOMMUT.NB *) or[not[subclass[u_,composite[v_,w_]]], not[subclass[composite[w_,x_],y_]], subclass[composite[u_,x_],composite[v_,y_]]] := True (* added 2003 November 4 based on SBCOMMUT.NB *) or[not[subclass[u_,composite[v_,w_]]], not[subclass[composite[x_,v_],y_]], subclass[composite[x_,u_],composite[y_,w_]]] := True (* derived 2004 September 23 in WF-U.NB *) or[not[subclass[composite[x_,y_],y_]],not[WELLFOUNDED[x_]],not[WELLFOUNDED[y_]], WELLFOUNDED[union[x_,y_]]] := True (* derived 2007 June 14 in MONOTONE.NB *) or[not[subclass[composite[z_,po[x_],inverse[z_]],po[y_]]],not[subclass[fix[po[x_]],domain[z_]]], subclass[po[x_],composite[inverse[z_],po[y_],z_]]] := True (* derived 2008 November 18 in FIX-1-2.NB *) or[not[subclass[composite[x_,RIGHT[y_]],Id]], subclass[image[x_,cart[set[z_],set[y_]]],set[z_]]] := True (* derived 2008 August 20 in FU-EQ.NB *) or[not[subclass[x_,composite[S,funpart[y_]]]], not[subclass[x_,composite[inverse[S],funpart[y_]]]]] := not[subclass[x,funpart[y]]] (* derived 2007 October 23 in SBCMT-S.NB *) or[not[subclass[x_,composite[S,y_]]],subclass[composite[S,x_],composite[S,y_]]] := True (* derived 2007 June 23 in ALLCLOSED.NB *) or[not[subclass[composite[S,IMAGE[y_]],composite[S,IMAGE[x_]]]], subclass[allclosed[y_],allclosed[x_]]] := True (* added 2001 December 25 based on SCHRODER.NB *) or[not[subclass[composite[x_,y_],z_]], subclass[composite[complement[z_],inverse[y_]],complement[x_]]] := True (* added 2001 December 25 based on SCHRODER.NB *) or[not[subclass[composite[x_,y_],z_]], subclass[composite[inverse[x_],complement[z_]],complement[y_]]] := True (* derived 2008 August 27 in DO-RA-SU.NB *) or[not[subclass[x_,composite[y_,z_]]],subclass[domain[x_],domain[z_]]] := True (* derived 2008 August 27 in DO-RA-SU.NB *) or[not[subclass[x_,composite[y_,z_]]],subclass[range[x_],range[y_]]] := True (* derived 2006 May 1 in MONOCLIQ.NB *) or[not[subclass[composite[thinpart[x_],y_,inverse[thinpart[x_]]],z_]], subclass[image[IMAGE[thinpart[x_]],cliques[y_]],cliques[z_]]] := True (* derived 2004 August 28 in TRV-CO.NB *) or[not[subclass[composite[trv[y_],trv[x_]],composite[trv[x_],trv[y_]]]], TRANSITIVE[composite[trv[x_],trv[y_]]]] := True (* derived 2004 September 23 in WF-U.NB *) or[not[subclass[composite[wf[x_],wf[y_]],wf[y_]]],WELLFOUNDED[union[wf[x_],wf[y_]]]] := True (* derived 2005 April 7 in WF-TO.NB *) or[not[subclass[domain[x_],fix[x_]]],not[subclass[range[x_],fix[x_]]]] := not[REFLEXIVE[composite[Id,x]]] (* derived 2008 August 27 in SU-CO-FU.NB *) or[not[subclass[domain[funpart[z_]],domain[x_]]],not[subclass[x_,composite[y_,funpart[z_]]]], subclass[funpart[z_],composite[inverse[y_],x_]]] := True (* derived 2004 March 21 in TRV-WRAP.NB *) or[not[subclass[E,x_]],not[TRANSITIVE[x_]],subclass[composite[inverse[TC],E],x_]] := True (* derived 2008 January 3 in COVERFIN.NB *) or[not[subclass[x_,E]],subclass[domain[x_],U[range[x_]]]] := True (* derived 2006 February 28 in PS.NB *) or[not[subclass[x_,FINITE]],WELLFOUNDED[composite[id[x_],PS]]] := True (* derived 2007 May 4 in CHAIN.NB *) or[not[subclass[x_,fix[po[y_]]]],not[TOTALORDER[composite[id[x_],po[y_],id[x_]]]], subclass[cart[x_,x_],union[inverse[po[y_]],po[y_]]]] := True (* derived 2008 February 12 in REFLEXIV.NB *) or[not[subclass[y_,fix[x_]]],REFLEXIVE[composite[id[y_],x_,id[y_]]]] := True (* derived 2007 June 2 in SUBVAR.NB *) or[not[subclass[y_,fix[x_]]],subclass[y_,image[x_,y_]]] := True (* derived 2007 June 2 in SUBVAR.NB *) or[not[subclass[y_,fix[x_]]],subclass[y_,image[inverse[x_],y_]]] := True (* derived 2008 February 28 in TRCHDICH.NB *) or[not[subclass[x_,FULL]],subclass[composite[id[x_],inverse[IMAGE[id[x_]]],E],S]] := True (* added 2002 April 25 based on FUL-A.NB *) or[not[subclass[x_,FULL]],subclass[U[A[x_]],A[x_]]] := True (* derived 2007 May 23 in SU-ON.NB *) or[not[subclass[x_,FULL]], subclass[U[intersection[x_,y_]],image[inverse[S],intersection[x_,y_]]]] := True (* added 2002 April 25 based on FUL-SC-4.NB *) or[not[subclass[x_,FULL]],subclass[U[U[x_]],U[x_]]] := True (* derived 2005 January 5 in TC-HC.NB *) or[not[subclass[x_,H[y_]]],subclass[tc[x_],y_]] := True (* derived 2005 January 5 in TC-HC.NB *) or[not[subclass[x_,H[y_]]],subclass[tc[x_],H[y_]]] := True (* derived 2007 June 25 in HULL-TRV.NB *) or[not[subclass[u_,hull[x_,v_]]],not[subclass[v_,hull[x_,w_]]],subclass[u_,hull[x_,w_]]] := True (* derived 2004 April 20 in ID-REVU.NB *) or[not[subclass[x_,Id]],not[subclass[y_,Id]],not[subclass[domain[x_],domain[y_]]]] := or[not[subclass[x,y]],not[subclass[y,Id]]] (* derived 2004 March 30 in CO-ES-ID.NB *) or[not[subclass[x_,Id]],not[subclass[y_,Id]],subclass[composite[x_,y_],Id]] := True (* derived 2004 August 11 in X2612.NB *) or[not[subclass[x_,Id]],not[subclass[y_,Id]],subclass[cross[x_,y_],Id]] := True (* added 2003 July 5 based on TRANSTIV.NB *) or[not[subclass[x_,Id]],not[TRANSITIVE[y_]],TRANSITIVE[union[x_,y_]]] := True (* added 2003 July 5 based on TRANSTIV.NB *) or[not[subclass[x_,Id]],subclass[composite[x_,y_],y_]] := True (* added 2003 July 5 based on TRANSTIV.NB *) or[not[subclass[x_,Id]],subclass[composite[y_,x_],y_]] := True (* derived 2005 October 8 in OO-TRFM.NB *) or[not[subclass[y_,Id]],subclass[composite[oopart[x_],y_,inverse[oopart[x_]]],Id]] := True (* derived 2006 September 16 in SU-ID.NB *) or[not[subclass[x_,id[y_]]],subclass[domain[x_],y_]] := True (* derived 2006 September 16 in SU-ID.NB *) or[not[subclass[x_,id[y_]]],subclass[fix[x_],y_]] := True (* derived 2006 September 16 in SU-ID.NB *) or[not[subclass[x_,id[y_]]],subclass[range[x_],y_]] := True (* added 2003 July 5 based on TRANSTIV.NB *) or[not[subclass[x_,Id]],TRANSITIVE[x_]] := True (* derived 2008 January 6 in ALLCL-BC.NB *) or[not[subclass[image[BIGCUP,intersection[FINITE,P[x_]]],x_]], subclass[image[CUP,cart[x_,x_]],x_]] := True (* derived 2004 June 17 in X2124.NB *) or[not[subclass[image[BIGCUP,x_],x_]],subclass[U[x_],image[inverse[S],x_]]] := True (* added 2002 April 27 based on FUL-BC.NB *) or[not[subclass[image[BIGCUP,x_],x_]],subclass[U[U[x_]],U[x_]]] := True (* added 2003 August 30 based on UCL-CAP.NB *) or[not[subclass[image[CAP,cart[x_,x_]],x_]], subclass[image[CAP,cart[Uclosure[x_],Uclosure[x_]]],Uclosure[x_]]] := True (* derived 2003 January 13 in CAPCUPRC.NB *) or[not[subclass[image[CAP,cart[x_,x_]],x_]], subclass[image[CUP,cart[image[RC[y_],x_],image[RC[y_],x_]]],image[RC[y_],x_]]] := True (* derived 2007 October 18 in ERASE.NB *) or[not[subclass[image[CAP,cart[y_,y_]],y_]], TRANSITIVE[composite[CAP,id[cart[x_,y_]],inverse[FIRST]]]] := True (* derived 2007 September 10 in SU-SQR.NB *) or[not[subclass[x_,image[CART,id[y_]]]],subclass[fix[image[inverse[CART],x_]],y_]] := True (* derived 2006 October 21 in INTDIV.NB *) or[not[subclass[image[COMPOSE,cart[x_,x_]],x_]],TRANSITIVE[composite[Id,U[x_]]]] := True (* derived 2003 January 13 in CAPCUPRC.NB *) or[not[subclass[image[CUP,cart[x_,x_]],x_]], subclass[image[CAP,cart[image[RC[y_],x_],image[RC[y_],x_]]],image[RC[y_],x_]]] := True (* added 2003 August 31 based on ACL-CUP.NB *) or[not[subclass[image[CUP,cart[x_,x_]],x_]], subclass[image[CUP,cart[Aclosure[x_],Aclosure[x_]]],Aclosure[x_]]] := True (* added 2003 September 6 based on CUP-HULL.NB *) or[not[subclass[image[CUP,cart[x_,x_]],x_]], subclass[image[CUP,cart[fix[HULL[x_]],fix[HULL[x_]]]],fix[HULL[x_]]]] := True (* derived 2006 November 18 in CURMAP-3.NB *) or[not[subclass[u_,image[CURRY,v_]]],subclass[image[inverse[CURRY],u_],v_]] := True (* derived 2006 April 26 in FU-IM.NB *) or[not[subclass[image[funpart[x_],y_],z_]],not[subclass[y_,domain[funpart[x_]]]], subclass[y_,image[inverse[funpart[x_]],z_]]] := True (* derived 2008 January 26 in TRV-A.NB *) or[not[subclass[image[IMAGE[id[cart[V,V]]],x_],TRV]],TRANSITIVE[composite[Id,A[x_]]]] := True (* derived 2008 August 13 in BCL-IMBC.NB *) or[not[subclass[image[IMAGE[thinpart[x_]],image[CART,cart[y_,y_]]],y_]], subclass[image[thinpart[x_],cart[U[y_],U[y_]]],U[y_]]] := True (* derived 2008 August 13 in IVR-IMBC.NB *) or[not[subclass[image[IMAGE[thinpart[x_]],y_],y_]], subclass[image[thinpart[x_],U[y_]],U[y_]]] := True (* derived 2006 November 18 in CURMAP-3.NB *) or[not[subclass[u_,image[inverse[CURRY],v_]]],subclass[image[CURRY,u_],v_]] := True (* derived 2004 April 1 in EQV-EQ.NB *) or[not[subclass[x_,image[inverse[funpart[y_]],z_]]],subclass[image[funpart[y_],x_],z_]] := True (* derived 2006 September 27 in BH-BCL.NB *) or[not[subclass[y_,image[inverse[IMAGE[x_]],z_]]],subclass[image[IMAGE[x_],y_],z_]] := True (* derived 2005 February 6 in IVR-SBV.NB *) or[not[subclass[image[inverse[x_],z_],z_]],not[subclass[y_,image[x_,y_]]], subclass[intersection[y_,z_],image[x_,intersection[y_,z_]]]] := True (* derived 2007 December 29 in SU-IM.NB *) or[not[subclass[x_,image[inverse[S],y_]]],not[subclass[y_,image[inverse[S],z_]]], subclass[x_,image[inverse[S],z_]]] := True (* derived 2005 February 18 in X3446.NB *) or[not[subclass[image[inverse[x_],y_],y_]],subclass[image[IMAGE[id[y_]],subvar[x_]],subvar[x_]]] := True (* derived 2005 February 5 in X3112.NB *) or[not[subclass[image[K,x_],x_]],subclass[image[ADJOIN[set[y_]],x_],x_]] := True (* derived 2004 August 26 in WF-REC-3.NB *) or[not[subclass[image[y_,z_],z_]], not[subclass[w_,composite[x_,id[composite[IMAGE[composite[id[w_],inverse[FIRST]]],VERTSECT[y_]]],inverse[FIRST]]]], subclass[composite[w_,id[z_]], composite[x_,id[composite[IMAGE[composite[id[composite[w_,id[z_]]],inverse[FIRST]]],VERTSECT[y_]]],inverse[FIRST]]]] := True (* derived 2007 December 29 in TRV-U-CP.NB *) or[not[subclass[image[x_,z_],z_]],not[subclass[image[inverse[x_],y_],y_]], not[TRANSITIVE[x_]],TRANSITIVE[union[x_,cart[y_,z_]]]] := True (* derived 2004 April 26 in ANTITONE.NB *) or[not[subclass[image[u_,v_],w_]],not[subclass[image[x_,w_],y_]], subclass[image[x_,image[u_,v_]],y_]] := True (* derived 2004 August 27 in IVR-TRV.NB *) or[not[subclass[image[x_,y_],z_]],not[subclass[image[x_,z_],z_]], subclass[image[trv[x_],y_],z_]] := True (* derived 2007 December 29 in SU-IM.NB *) or[not[subclass[w_,image[x_,y_]]],not[subclass[y_,z_]],subclass[w_,image[x_,z_]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) or[not[subclass[image[z_,y_],y_]],not[subclass[y_,union[image[inverse[z_],complement[x_]],x_]]], subclass[y_,union[image[inverse[z_],intersection[complement[x_],y_]],x_]]] := True (* derived 2005 January 25 in X2288.NB *) or[not[subclass[image[POWER,x_],x_]],subclass[image[inverse[S],x_],U[x_]]] := True (* derived 2004 July 22 in X22--.NB *) or[not[subclass[image[POWER,x_],y_]],subclass[x_,U[y_]]] := True (* derived 2004 January 18 in SBV-PS1.NB *) or[not[subclass[x_,image[PS,x_]]],subclass[intersection[x_,P[y_]],image[PS,intersection[x_,P[y_]]]]] := True (* derived 2006 January 16 in SUBFIXED.NB *) or[not[subclass[x_,image[S,y_]]],subclass[A[y_],A[x_]]] := True (* derived 2005 April 19 in XVR-TRV.NB *) or[not[subclass[y_,image[x_,y_]]],subclass[cart[omega,y_],iterate[x_,y_]]] := True (* derived 2004 August 26 in WF-REC-3.NB *) or[not[subclass[image[y_,z_],z_]], subclass[composite[VERTSECT[y_],id[z_]],composite[IMAGE[id[z_]],VERTSECT[y_]]]] := True (* derived 2005 February 1 in DIV-WF.NB *) or[not[subclass[y_,image[x_,y_]]],subclass[y_,image[x_,image[x_,y_]]]] := True (* derived 2004 August 26 in WF-REC-3.NB *) or[not[subclass[image[y_,z_],z_]], subclass[image[IMAGE[id[cart[z_,V]]],partrec[x_,y_]],partrec[x_,y_]]] := True (* added 2003 September 18 based on IVR-I-U.NB *) or[not[subclass[image[x_,y_],y_]],subclass[image[IMAGE[id[y_]],invar[x_]],invar[x_]]] := True (* derived 2004 February 28 in IM-IN.NB *) or[not[subclass[x_,image[y_,z_]]],subclass[x_,image[y_,intersection[z_,image[inverse[y_],x_]]]]] := True (* derived 2005 January 6 in DJ-U-Q.NB *) or[not[subclass[image[x_,y_],z_]], subclass[intersection[y_,domain[x_]],image[inverse[x_],z_]]] := True (* derived 2004 September 5 in WF-REC-4.NB *) or[not[subclass[y_,image[x_,y_]]],subvariant[x_,y_]] := True (* derived 2005 February 12 in IND.NB *) or[not[subclass[image[SUCC,x_],x_]],subclass[omega,union[x_,A[intersection[omega,x_]]]]] := True (* added 2002 May 28 based on IND-SC-1.NB *) or[not[subclass[image[SUCC,x_],x_]],subclass[x_,U[x_]]] := True (* derived 2005 December 6 in ORDINAL.NB *) or[not[subclass[x_,image[ZN,ord[y_]]]],subclass[rank[x_],ord[y_]]] := True (* derived 2008 January 2 in FINCHR-1.NB *) or[not[subclass[intersection[FINITE,P[t_]],cliques[x_]]],subclass[cart[t_,t_],x_]] := True (* derived 2005 January 1 in ON-IND.NB *) or[not[subclass[intersection[FULL,P[x_]],x_]],subclass[OMEGA,x_]] := True (* derived 2007 June 7 in PO-IRR.NB *) or[not[subclass[intersection[x_,inverse[x_]],Id]],not[TRANSITIVE[x_]], PARTIALORDER[union[x_,id[union[domain[x_],range[x_]]]]]] := True (* added 2002 October 6 based on IND-2ND.NB *) or[not[subclass[intersection[omega,P[x_]],x_]],subclass[omega,x_]] := True (* derived 2005 January 22 in ON-IND.NB *) or[not[subclass[intersection[OMEGA,P[x_]],x_]],subclass[OMEGA,x_]] := True (* derived 2005 December 6 in ORDINAL.NB *) or[not[subclass[intersection[ord[x_],P[y_]],y_]],subclass[ord[x_],y_]] := True (* derived 2004 December 29 in EPSILON.NB *) or[not[subclass[intersection[x_,P[y_]],y_]],not[subclass[U[x_],x_]], subclass[intersection[REGULAR,x_],y_]] := True (* added 2003 September 14 based on FXHL-BCL.NB *) or[not[subclass[x_,invar[y_]]],subclass[image[y_,A[x_]],A[x_]]] := True (* added 2003 September 18 based on IVR-I-U.NB *) or[not[subclass[y_,invar[x_]]],subclass[image[x_,U[y_]],U[y_]]] := True (* derived 2004 October 28 in AC2.NB *) or[not[subclass[x_,inverse[E]]],subclass[composite[x_,VERTSECT[y_]],y_]] := True (* derived 2004 October 28 in AC2.NB *) or[not[subclass[x_,inverse[E]]],subclass[composite[x_,VERTSECT[y_]],thinpart[y_]]] := True (* derived 2004 July 15 in X2310-57.NB *) or[not[subclass[inverse[E],x_]],subclass[VERTSECT[x_],S]] := True (* derived 2004 June 17 in X1368.NB *) or[not[subclass[y_,inverse[funpart[x_]]]],subclass[composite[funpart[x_],y_],Id]] := True (* derived 2009 January 1 in COD-SU.NB *) or[not[subclass[u_,inverse[v_]]],not[subclass[v_,inverse[w_]]],subclass[u_,w_]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) or[not[subclass[inverse[x_],x_]],not[TRANSITIVE[x_]]] := not[EQUIVALENCE[x]] (* derived 2004 March 20 in EQV-WRAP.NB *) or[not[subclass[x_,inverse[x_]]],not[TRANSITIVE[x_]]] := not[EQUIVALENCE[x]] (* derived 2004 March 20 in EQV-WRAP.NB *) or[not[subclass[x_,inverse[x_]]],not[TRANSITIVE[composite[Id,x_]]]] := not[EQUIVALENCE[x]] (* derived 2008 February 12 in REFLEXIV.NB *) or[not[subclass[inverse[x_],x_]],not[TRANSITIVE[composite[Id,x_]]], REFLEXIVE[composite[Id,x_]]] := True (* derived 2004 June 17 in X1337-65.NB *) or[not[subclass[x_,inverse[y_]]],subclass[domain[x_],fix[composite[y_,x_]]]] := True (* added 2001 November 6 based on CP-SU.NB *) or[not[subclass[x_,inverse[y_]]],subclass[inverse[x_],y_]] := True (* derived 2005 November 5 in FIN-FU.NB *) or[not[subclass[x_,inverse[y_]]],subclass[range[x_],domain[y_]]] := True (* derived 2006 November 16 in MAP-SU.NB *) or[not[subclass[x_,map[y_,z_]]],subclass[y_,A[image[IMAGE[FIRST],x_]]]] := True (* derived 2006 November 16 in MAP-SU.NB *) or[not[subclass[x_,map[y_,z_]]],subclass[cart[x_,y_],composite[inverse[E],IMAGE[FIRST]]]] := True (* derived 2006 November 16 in MAP-SU.NB *) or[not[subclass[x_,map[y_,z_]]],subclass[domain[U[x_]],y_]] := True (* derived 2006 November 16 in MAP-SU.NB *) or[not[subclass[x_,map[y_,z_]]],subclass[image[IMAGE[FIRST],x_],set[y_]]] := True (* derived 2006 November 16 in MAP-SU.NB *) or[not[subclass[x_,map[y_,z_]]],subclass[range[U[x_]],z_]] := True (* derived 2006 November 16 in MAP-SU.NB *) or[not[subclass[x_,map[y_,z_]]],subclass[U[x_],cart[y_,z_]]] := True (* added 1998 October 8 *) or[not[subclass[x_,y_]],not[subclass[y_,x_]]] := not[equal[x,y]] (* derived 2007 July 3 in ITERSING.NB *) or[not[subclass[x_,y_]],not[subclass[z_,A[x_]]],subclass[hull[y_,z_],A[x_]]] := True (* derived 2006 February 26 in SU-SU.NB *) or[not[subclass[x_,y_]],not[subclass[cart[y_,y_],z_]],subclass[cart[x_,x_],z_]] := True (* derived 2004 December 25 in SELCO-LT.NB *) or[not[subclass[x_,y_]],not[subclass[composite[Id,x_],y_]]] := not[subclass[x,y]] (* derived 2006 February 26 in SU-SU.NB *) or[not[subclass[x_,y_]],not[subclass[composite[id[y_],w_,id[y_]],z_]], subclass[composite[id[x_],w_,id[x_]],z_]] := True (* added 2003 November 2 based on CHARHULL.NB *) or[not[subclass[x_,y_]],not[subclass[composite[z_,S],composite[S,z_]]], subclass[APPLY[z_,x_],APPLY[z_,y_]]] := True (* derived 2008 July 20 in TRV-IND.NB *) or[not[subclass[z_,y_]],not[subclass[composite[x_,y_],y_]], subclass[composite[trv[x_],z_],y_]] := True (* derived 2008 July 20 in TRV-IND.NB *) or[not[subclass[z_,y_]],not[subclass[composite[y_,x_],y_]], subclass[composite[z_,trv[x_]],y_]] := True (* derived 2003 December 18 in RA-ITER.NB *) or[not[subclass[w_,x_]],not[subclass[image[x_,y_],z_]],subclass[image[w_,y_],z_]] := True (* derived 2006 August 1 in BCL-ZADD.NB *) or[not[subclass[u_,v_]],not[subclass[image[w_,v_],x_]],subclass[image[w_,u_],x_]] := True (* derived 2003 December 18 in RA-ITER.NB *) or[not[subclass[y_,z_]],not[subclass[image[x_,z_],z_]],subclass[image[trv[x_],y_],z_]] := True (* derived 2005 July 24 in RA-ITER.NB *) or[not[subclass[y_,z_]],not[subclass[image[x_,z_],z_]],subclass[range[iterate[x_,y_]],z_]] := True (* derived 2004 February 7 in T1-FIN.NB *) or[not[subclass[x_,y_]],not[subclass[intersection[x_,y_],z_]],subclass[x_,z_]] := True (* derived 2006 February 26 in SU-SU.NB *) or[not[subclass[x_,y_]],not[subclass[intersection[w_,y_],z_]], subclass[intersection[w_,x_],z_]] := True (* derived 2006 October 7 in TRV-RFX.NB *) or[not[subclass[s_,u_]],not[subclass[t_,v_]], not[subclass[x_,cart[s_,t_]]],subclass[x_,cart[u_,v_]]] := True (* derived 2005 October 2 in CPLT-LAT.NB *) or[not[subclass[w_,x_]],not[subclass[w_,y_]], not[subclass[intersection[x_,y_],z_]],subclass[w_,z_]] := True (* derived 2007 November 22 in 3CHAIN.NB *) or[not[subclass[w_,x_]],not[subclass[x_,y_]],not[subclass[y_,z_]],subclass[w_,z_]] := True (* derived 2006 February 26 in SU-SU.NB *) or[not[subclass[x_,y_]],not[subclass[P[y_],z_]],subclass[P[x_],z_]] := True (* derived 2004 August 18 in X2812-61.NB *) or[not[subclass[x_,y_]],not[subclass[range[y_],z_]],subclass[range[x_],z_]] := True (* added 2000 October 4 based on NONEMPTY.LOG *) or[not[subclass[x_,y_]],not[subclass[y_,z_]],subclass[x_,z_]] := True (* added 2001 November 3 based on MONOTONE.NB *) or[not[subclass[u_,x_]],not[subclass[v_,y_]],subclass[composite[u_,v_],composite[x_,y_]]] := True (* added 2001 November 3 based on MONOTONE.NB *) or[not[subclass[u_,x_]],not[subclass[v_,y_]],subclass[cross[u_,v_],cross[x_,y_]]] := True (* added 2003 September 6 based on CUP-HULL.NB *) or[not[subclass[u_,x_]],not[subclass[v_,y_]], subclass[image[z_,cart[u_,v_]],image[z_,cart[x_,y_]]]] := True (* derived 2007 November 1 in MAX-ON.NB *) or[not[subclass[u_,v_]],not[subclass[x_,image[u_,y_]]],subclass[x_,image[v_,y_]]] := True (* added 2001 November 3 based on MONOTONE.NB *) or[not[subclass[u_,x_]],not[subclass[v_,y_]],subclass[image[u_,v_],image[x_,y_]]] := True (* added 2001 December 29 based on X-FU-FP.NB *) or[not[subclass[u_,v_]],not[subclass[x_,y_]], subclass[image[inverse[x_],u_],image[inverse[y_],v_]]] := True (* derived 2005 August 16 in ITERATE.NB *) or[not[subclass[u_,x_]],not[subclass[v_,y_]],subclass[iterate[u_,v_],iterate[x_,y_]]] := True (* derived 2007 June 15 in TRANSVAR.NB *) or[not[subclass[v_,y_]],not[subclass[x_,u_]],subclass[transvar[u_,v_],transvar[x_,y_]]] := True (* derived 2005 January 5 in SU-HC.NB *) or[not[subclass[x_,y_]],not[subclass[U[x_],x_]],subclass[x_,H[y_]]] := True (* derived 2008 August 15 in SU-H.NB *) or[not[subclass[x_,y_]],not[subclass[U[y_],y_]],subclass[x_,H[y_]]] := True (* added 2002 April 27 based on H-TC.NB *) or[not[subclass[x_,y_]],not[subclass[U[x_],x_]],subclass[tc[x_],y_]] := True (* added 2002 March 24 based on TRV-2.NB *) or[not[subclass[x_,y_]],not[subclass[U[y_],y_]],subclass[tc[x_],y_]] := True (* derived 2007 December 19 in CONDUCT.NB *) or[not[subclass[x_,y_]],not[subclass[U[y_],z_]],subclass[U[x_],z_]] := True (* derived 2006 February 26 in SU-SU.NB *) or[not[subclass[x_,y_]],not[TRANSITIVE[composite[z_,id[y_]]]], TRANSITIVE[composite[z_,id[x_]]]] := True (* derived 2004 March 21 in TRV-WRAP.NB *) or[not[subclass[x_,y_]],not[TRANSITIVE[x_]],subclass[trv[x_],y_]] := True (* derived 2004 March 21 in TRV-WRAP.NB *) or[not[subclass[x_,y_]],not[TRANSITIVE[y_]],subclass[trv[x_],y_]] := True (* derived 2004 March 21 in TRV-WRAP.NB *) or[not[subclass[x_,y_]],not[TRANSITIVE[y_]],subclass[x_,trv[y_]]] := True (* derived 2008 August 6 in WF-PC-ON.NB *) or[not[subclass[x_,y_]],not[WELLFOUNDED[composite[id[P[y_]],z_]]], WELLFOUNDED[composite[id[P[x_]],z_]]] := True (* derived 2008 August 1 in WF-MONO.NB *) or[not[subclass[x_,y_]],not[WELLFOUNDED[composite[id[y_],z_]]], WELLFOUNDED[composite[id[x_],z_]]] := True (* added 2003 September 29 based on WF.NB *) or[not[subclass[x_,y_]],not[WELLFOUNDED[y_]],WELLFOUNDED[x_]] := True (* derived 2006 April 13 in DBL-IND1.NB *) or[not[subclass[omega,image[inverse[x_],set[0]]]], not[subclass[composite[SUCC,intersection[inverse[x_],x_]],x_]], subclass[cart[omega,omega],x_]] := True (* derived 2007 June 26 in UCLOSURE.NB *) or[not[subclass[omega,invar[x_]]],subclass[image[x_,omega],omega]] := True (* derived 2005 February 10 in X3557.NB *) or[not[subclass[x_,omega]],not[subclass[image[BIGCUP,x_],x_]], subclass[image[inverse[SUCC],x_],x_]] := True (* derived 2005 February 10 in X3557.NB *) or[not[subclass[x_,omega]],not[subclass[image[BIGCUP,x_],x_]], subclass[image[inverse[SUCC],intersection[omega,x_]],x_]] := True (* added 2003 June 4 based on LIMITORD.NB *) or[not[subclass[x_,OMEGA]],not[subclass[image[SUCC,x_],x_]], subclass[image[SUCC,U[x_]],U[x_]]] := True (* derived 2005 November 27 in ON-ORD-8.NB *) or[not[subclass[x_,OMEGA]],not[subclass[U[x_],x_]]] := and[not[equal[OMEGA,x]],not[member[x,OMEGA]]] (* derived 2007 November 1 in MAX-ON.NB *) or[not[subclass[x_,OMEGA]],not[subclass[x_,U[x_]]],subclass[x_,image[inverse[PS],x_]]] := True (* derived 2008 August 6 in WF-PC-ON.NB *) or[not[subclass[omega,x_]],not[WELLFOUNDED[composite[id[P[x_]],PS]]]] := True (* derived 2005 August 14 in REPLACE1.NB *) or[not[subclass[x_,omega]],subclass[cart[x_,x_],union[S,inverse[S]]]] := True (* derived 2005 August 14 in REPLACE1.NB *) or[not[subclass[x_,OMEGA]],subclass[cart[x_,x_],union[S,inverse[S]]]] := True (* derived 2006 March 18 in OL-DO.NB *) or[not[subclass[x_,OMEGA]],subclass[image[HULL[x_],y_],x_]] := True (* derived 2007 March 6 in LCM.NB *) or[not[subclass[x_,omega]],subclass[x_,image[inverse[DIV],set[APPLY[LUB[DIV],x_]]]]] := True (* derived 2005 December 3 in X3567.NB *) or[not[subclass[x_,omega]],subclass[image[inverse[SUCC],x_],image[BIGCUP,x_]]] := True (* derived 2005 December 3 in X3567.NB *) or[not[subclass[x_,OMEGA]],subclass[image[inverse[SUCC],x_],image[BIGCUP,x_]]] := True (* derived 2005 February 9 in ON-1.NB *) or[not[subclass[x_,OMEGA]],subclass[intersection[FULL,image[inverse[S],x_]],union[x_,U[x_]]]] := True (* derived 2008 June 7 in WF-ON.NB *) or[not[subclass[x_,OMEGA]],subclass[P[x_],union[fix[composite[E,BIGCAP]],set[0]]]] := True (* derived 2006 March 11 in PC-ON-SC.NB *) or[not[subclass[x_,OMEGA]],subclass[x_,succ[U[x_]]]] := True (* derived 2007 February 22 in SUOM-HER.NB *) or[not[subclass[x_,omega]],subclass[U[x_],image[inverse[S],x_]]] := True (* derived 2005 February 9 in ON-1.NB *) or[not[subclass[x_,OMEGA]],subclass[U[x_],image[inverse[S],x_]]] := True (* derived 2005 February 17 in X3741-49.NB *) or[not[subclass[x_,omega]],subclass[U[x_],omega]] := True (* derived 2005 February 9 in ON-1.NB *) or[not[subclass[x_,OMEGA]],subclass[U[x_],OMEGA]] := True (* derived 2005 December 3 in SU-ON-OM.NB *) or[not[subclass[x_,omega]],subclass[U[U[x_]],U[x_]]] := True (* derived 2005 December 3 in SU-ON-OM.NB *) or[not[subclass[x_,OMEGA]],subclass[U[U[x_]],U[x_]]] := True (* derived 2008 June 7 in WF-ON.NB *) or[not[subclass[x_,OMEGA]],WELLFOUNDED[composite[id[x_],E]]] := True (* derived 2008 June 7 in WF-ON.NB *) or[not[subclass[x_,OMEGA]],WELLFOUNDED[composite[id[x_],PS]]] := True (* derived 2008 March 2 in WO-LEAST.NB *) or[not[subclass[P[fix[x_]],union[domain[LEAST[x_]],set[0]]]], not[TOTALORDER[x_]],WELLORDER[x_]] := True (* derived 2005 January 30 in X3949.NB *) or[not[subclass[P[x_],FULL]],subclass[U[x_],x_]] := True (* derived 2006 January 16 in SUBFIXED.NB *) or[not[subclass[P[x_],y_]],not[subclass[U[z_],x_]],subclass[z_,y_]] := True (* derived 2008 September 4 in CLIQ-FIX.NB *) or[not[subclass[P[x_],y_]],not[subclass[U[y_],z_]],subclass[x_,z_]] := True (* derived 2005 February 8 in X3675.NB *) or[not[subclass[P[x_],x_]],subclass[OMEGA,x_]] := True (* Theorem TC-REG1 in TC2 proved 2001 January 4 *) or[not[subclass[P[x_],x_]],subclass[REGULAR,x_]] := True (* derived 2004 March 4 in A-SC-PC.NB *) or[not[subclass[P[x_],y_]],subclass[x_,U[y_]]] := True (* derived 2006 April 29 in TO-WO.NB *) or[not[subclass[P[x_],union[fix[composite[E,BIGCAP]],set[0]]]], subclass[cart[x_,x_],union[S,inverse[S]]]] := True (* derived 2008 June 7 in WF-ON.NB *) or[not[subclass[P[x_],union[fix[composite[E,BIGCAP]],set[0]]]], WELLFOUNDED[composite[id[x_],PS]]] := True (* derived 2008 June 19 in I-PO.NB *) or[not[subclass[x_,PO]],PARTIALORDER[A[x_]]] := not[equal[0,x]] (* derived 2007 September 25 in UCH-CART.NB *) or[not[subclass[x_,range[CART]]],subclass[U[x_],cart[V,V]]] := True (* derived 2007 June 24 in UCL-UO.NB *) or[not[subclass[range[x_],domain[x_]]],subclass[X[x_],UNOPS]] := True (* derived 2007 October 8 in UCL-DORA.NB *) or[not[subclass[range[x_],fix[x_]]],subclass[composite[Id,x_],composite[x_,x_]]] := True (* derived 2007 June 15 in TRANSVAR.NB *) or[not[subclass[range[x_],fix[y_]]],subclass[image[S,set[range[x_]]],transvar[x_,y_]]] := True (* derived 2006 August 22 in CHAR.NB *) or[not[subclass[range[x_],y_]],subclass[domain[x_],image[inverse[x_],y_]]] := True (* derived 2008 October 28 in BCL-CPS.NB *) or[not[subclass[x_,rfx[y_]]],subclass[domain[x_],fix[y_]]] := True (* derived 2004 March 4 in PAIRSET.NB *) or[not[subclass[set[u_,v_],x_]],not[subclass[set[v_,w_],x_]],subclass[set[u_,w_],x_]] := True (* derived 2004 November 12 in XS-CO.NB *) or[not[subclass[range[y_],domain[x_]]], subclass[image[COMPOSE,cart[X[x_],X[y_]]],X[composite[x_,y_]]]] := True (* derived 2004 October 18 in XVR-V.NB *) or[not[subclass[range[x_],OMEGA]],subclass[composite[BIGCAP,VERTSECT[x_]],x_]] := True (* derived 2004 February 28 in IM-IN.NB *) or[not[subclass[x_,range[y_]]],subclass[x_,image[y_,image[inverse[y_],x_]]]] := True (* derived 2005 January 22 in ON-IND.NB *) or[not[subclass[x_,REGULAR]],not[subclass[intersection[x_,P[y_]],y_]],not[subclass[U[x_],x_]], subclass[x_,y_]] := True (* derived 2004 August 21 in X1775.NB *) or[not[subclass[x_,REGULAR]],not[subclass[P[y_],y_]],subclass[x_,y_]] := True (* derived 2008 July 27 in PRS-REG.NB *) or[not[subclass[x_,REGULAR]],not[subclass[y_,REGULAR]],subclass[cart[x_,y_],REGULAR]] := True (* added 2003 June 5 based on REG.NB *) or[not[subclass[x_,REGULAR]],subclass[domain[x_],REGULAR]] := True (* derived 2005 January 5 in REG-ZN.NB *) or[not[subclass[x_,REGULAR]],subclass[image[ZN,x_],REGULAR]] := True (* derived 2004 June 28 in X1780.NB *) or[not[subclass[x_,REGULAR]],subclass[range[x_],REGULAR]] := True (* derived 2004 September 24 in COREDESC.NB *) or[not[subclass[x_,REGULAR]],WELLFOUNDED[composite[id[x_],E]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[subclass[x_,RFX]],REFLEXIVE[U[x_]]] := True (* derived 2004 June 28 in X1719.NB *) or[not[subclass[RUSSELL,x_]],subclass[P[x_],x_]] := True (* derived 2004 June 27 in X1712-20.NB *) or[not[subclass[x_,RUSSELL]],subclass[P[x_],RUSSELL]] := True (* derived 2007 October 7 in UCL-MONO.NB *) or[not[subclass[S,composite[inverse[funpart[x_]],S,funpart[x_]]]],not[subclass[y_,z_]], subclass[APPLY[funpart[x_],y_],APPLY[funpart[x_],z_]]] := True (* derived 2006 May 13 in DBL-IND3.NB *) or[not[subclass[x_,S]],subclass[y_,A[image[x_,image[S,set[y_]]]]]] := True (* added 2003 October 28 based on APPLY.NB *) or[not[subclass[x_,S]],subclass[y_,APPLY[x_,y_]]] := True (* derived 2004 March 23 in ADJECT.NB *) or[not[subclass[x_,S]],subclass[intersection[x_,inverse[x_]],Id]] := True (* derived 2006 November 16 in MAP-SU.NB *) or[not[subclass[x_,set[y_]]],subclass[y_,A[x_]]] := True (* Theorem A-6 in A1 *) or[not[subclass[x_,y_]],subclass[A[y_],A[x_]]] := True (* Theorem ACL-SU2 in ACL1 proved 2001 September 29 *) or[not[subclass[x_,y_]],subclass[Aclosure[x_],Aclosure[y_]]] := True (* derived 2007 June 23 in ALLCLOSED.NB *) or[not[subclass[x_,y_]],subclass[allclosed[y_],allclosed[x_]]] := True (* derived 2008 January 6 in ALLCL-BC.NB *) or[not[subclass[x_,y_]],subclass[allclosed[composite[BIGCUP,id[y_]]], allclosed[composite[BIGCUP,id[x_]]]]] := True (* added 2003 October 28 based on APPLY.NB *) or[not[subclass[x_,y_]],subclass[APPLY[y_,z_],APPLY[x_,z_]]] := True (* added 2003 May 23 based on BCL-SU.NB *) or[not[subclass[x_,y_]],subclass[binclosed[y_],binclosed[x_]]] := True (* derived 2004 February 19 in REPLACE2.NB *) or[not[subclass[y_,z_]],subclass[cart[lb[x_,z_],y_],x_]] := True (* derived 2007 August 11 in SU-SPINE.NB *) or[not[subclass[x_,y_]],subclass[cart[spine[x_,z_],z_],union[y_,inverse[y_]]]] := True (* derived 2004 February 19 in REPLACE2.NB *) or[not[subclass[y_,z_]],subclass[cart[y_,ub[x_,z_]],x_]] := True (* derived 2007 June 18 in MONOCLIQ.NB *) or[not[subclass[x_,y_]],subclass[chains[x_],chains[y_]]] := True (* added 2001 November 3 based on MONOTONE.NB *) or[not[subclass[x_,y_]],subclass[cliques[x_],cliques[y_]]] := True (* Theorems CO-SU1 and CO-SU2 in CO2 proved 1994 July 26 *) or[not[subclass[x_,y_]],subclass[composite[u___,x_,v___],composite[u___,y_,v___]]] := True (* added 2002 March 28 based on TRV.NB *) or[not[subclass[x_,y_]],subclass[composite[x_,x_],composite[y_,y_]]] := True (* derived 2007 November 7 in CLQ-C.NB *) or[not[subclass[x_,y_]],subclass[composite[DISJOINT,IMAGE[y_]], composite[DISJOINT,IMAGE[x_]]]] := True (* added 2001 November 3 based on MONOTONE.NB *) or[not[subclass[x_,y_]],subclass[composite[Id,x_],y_]] := True (* added 2002 January 14 based on RS-SU.NB *) or[not[subclass[x_,z_]],subclass[composite[id[w_],x_,id[y_]],z_]] := True (* added 2002 January 14 based on RS-SU.NB *) or[not[subclass[y_,z_]],subclass[composite[id[x_],y_],z_]] := True (* added 2002 January 14 based on RS-SU.NB *) or[not[subclass[x_,z_]],subclass[composite[x_,id[y_]],z_]] := True (* derived 2007 October 18 in ERASE.NB *) or[not[subclass[x_,y_]], subclass[composite[u_,id[cart[v_,x_]],w_],composite[u_,id[cart[v_,y_]],w_]]] := True (* added 2003 May 30 based on RESTRICT.NB *) or[not[subclass[u_,v_]],subclass[composite[x___,id[u_],y___],composite[x___,id[v_],y___]]] := True (* derived 2007 June 4 in IMG-SU.NB *) or[not[subclass[x_,y_]],subclass[composite[IMAGE[x_],id[P[domain[VERTSECT[y_]]]]], composite[inverse[S],IMAGE[y_]]]] := True (* derived 2007 June 4 in IMG-SU.NB *) or[not[subclass[x_,y_]],subclass[composite[IMAGE[y_],inverse[IMAGE[x_]]],S]] := True (* derived 2007 June 14 in MONOTONE.NB *) or[not[subclass[x_,y_]], subclass[composite[x_,z_,inverse[x_]],composite[y_,z_,inverse[y_]]]] := True (* derived 2007 June 23 in ALLCLOSED.NB *) or[not[subclass[x_,y_]],subclass[composite[S,IMAGE[y_]],composite[S,IMAGE[x_]]]] := True (* added 2002 November 24 based on VERTSECT.NB *) or[not[subclass[x_,y_]],subclass[composite[VERTSECT[y_],inverse[x_]],E]] := True (* added 2002 January 27 based on IMAGE.NB *) or[not[subclass[x_,y_]],subclass[CORE[y_],composite[S,CORE[x_]]]] := True (* added 2004 April 17 based on CORE.NB *) or[not[subclass[x_,y_]],subclass[core[x_,z_],core[y_,z_]]] := True (* added 2004 April 17 based on CORE.NB *) or[not[subclass[y_,z_]],subclass[core[x_,y_],core[x_,z_]]] := True (* added 2001 December 25 based on CROSS.NB *) or[not[subclass[x_,y_]],subclass[cross[x_,z_],cross[y_,z_]]] := True (* added 2001 December 25 based on CROSS.NB *) or[not[subclass[x_,y_]],subclass[cross[z_,x_],cross[z_,y_]]] := True (* added 2000 December 15 based on OFFICE1.NB *) or[not[subclass[x_,y_]],subclass[domain[x_],domain[y_]]] := True (* derived 2004 July 18 in MONODOLT.NB *) or[not[subclass[x_,y_]],subclass[domain[GREATEST[x_]],domain[GREATEST[y_]]]] := True (* added 2003 June 9 based on BOUNDED.NB *) or[not[subclass[x_,y_]],subclass[domain[LB[x_]],domain[LB[y_]]]] := True (* derived 2004 July 18 in MONODOLT.NB *) or[not[subclass[x_,y_]],subclass[domain[LEAST[x_]],domain[LEAST[y_]]]] := True (* added 2003 June 9 based on BOUNDED.NB *) or[not[subclass[x_,y_]],subclass[domain[UB[x_]],domain[UB[y_]]]] := True (* added 2001 November 22 based on THIN.NB *) or[not[subclass[x_,y_]],subclass[domain[VERTSECT[y_]],domain[VERTSECT[x_]]]] := True (* derived 2004 May 11 in EQV-GEN.NB *) or[not[subclass[x_,y_]],subclass[eqv[x_],eqv[y_]]] := True (* derived 2007 November 7 in CLQ-C.NB *) or[not[subclass[x_,y_]],subclass[fix[composite[DISJOINT,IMAGE[y_]]], fix[composite[DISJOINT,IMAGE[x_]]]]] := True (* derived 2008 February 5 in SU-FP-CO.NB *) or[not[subclass[x_,y_]],subclass[fix[composite[w_,x_]],fix[composite[w_,y_]]]] := True (* derived 2008 February 5 in SU-FP-CO.NB *) or[not[subclass[x_,y_]],subclass[fix[composite[x_,z_]],fix[composite[y_,z_]]]] := True (* derived 2008 February 5 in SU-FP-CO.NB *) or[not[subclass[x_,y_]],subclass[fix[composite[w_,x_,z_]],fix[composite[w_,y_,z_]]]] := True (* Theorem FP-SU in FP1 proved 1995 February 3 *) or[not[subclass[x_,y_]],subclass[fix[x_],fix[y_]]] := True (* derived 2007 September 10 in SU-SQR.NB *) or[not[subclass[x_,y_]],subclass[fix[image[inverse[CART],x_]],fix[image[inverse[CART],y_]]]] := True (* added 2001 November 3 based on MONOTONE.NB *) or[not[subclass[x_,y_]],subclass[H[x_],y_]] := True (* derived 2005 January 5 in TC-HC.NB *) or[not[subclass[x_,y_]],subclass[H[x_],H[y_]]] := True (* added 2003 September 2 based on MONOHULL.NB *) or[not[subclass[x_,y_]],subclass[HULL[x_],composite[S,HULL[y_]]]] := True (* derived 2004 March 29 based on HULL.NB *) or[not[subclass[y_,z_]],subclass[hull[x_,y_],hull[x_,z_]]] := True (* derived 2004 March 29 based on HULL.NB *) or[not[subclass[x_,y_]],subclass[hull[y_,z_],hull[x_,z_]]] := True (* Theorem IM-6A in IM2 *) or[not[subclass[x_,y_]],subclass[image[z_,x_],image[z_,y_]]] := True (* Theorem IM-6B in IM2 *) or[not[subclass[x_,y_]],subclass[image[x_,z_],image[y_,z_]]] := True (* added 2001 December 29 based on X-FU-FP.NB *) or[not[subclass[x_,y_]], subclass[image[inverse[x_],z_],image[inverse[y_],z_]]] := True (* added 2002 January 27 based on IMAGE.NB *) or[not[subclass[x_,y_]],subclass[IMAGE[y_],composite[S,IMAGE[x_]]]] := True (* added 2002 January 27 based on IMAGE.NB *) or[not[subclass[x_,y_]],subclass[IMAGE[id[y_]],composite[S,IMAGE[id[x_]]]]] := True (* derived 2007 June 9 in CONST.NB *) or[not[subclass[y_,z_]], subclass[image[w_,intersection[x_,P[y_]]],image[w_,intersection[x_,P[z_]]]]] := True (* derived 2004 May 4 in ALLCLOSED.NB *) or[not[subclass[y_,z_]],subclass[image[x_,P[y_]],image[x_,P[z_]]]] := True (* added 2001 October 19 based on CORE.NB *) or[not[subclass[x_,y_]],subclass[intersection[x_,z_],y_]] := True (* derived 2006 October 10 in SYM.NB *) or[not[subclass[x_,y_]],subclass[intersection[x_,inverse[x_]],inverse[y_]]] := True (* Theorem IVR-SU in INVAR *) or[not[subclass[x_,y_]],subclass[invar[y_],invar[x_]]] := True (* Theorem IN-5 in IN1 *) or[not[subclass[x_,y_]],subclass[inverse[x_],inverse[y_]]] := True (* added 2002 April 15 based on ITERATE.NB *) or[not[subclass[y_,z_]],subclass[iterate[x_,y_],iterate[x_,z_]]] := True (* added 2002 April 20 based on MONOTONE.NB *) or[not[subclass[x_,y_]],subclass[iterate[x_,z_],iterate[y_,z_]]] := True (* added 2003 May 7 based on MAP-MONO.NB *) or[not[subclass[y_,z_]],subclass[map[x_,y_],map[x_,z_]]] := True (* derived 2007 June 30 in UNOPS.NB *) or[not[subclass[y_,x_]],subclass[map[x_,y_],UNOPS]] := True (* added 2000 October 13 based on RA1.USE clause 456 *) or[not[subclass[x_,y_]],subclass[range[x_],range[y_]]] := True (* derived 2006 October 10 in RFX.NB *) or[not[subclass[x_,y_]],subclass[rfx[x_],rfx[y_]]] := True (* added 2001 November 3 based on MONOTONE.NB *) or[not[subclass[x_,y_]],subclass[rotate[x_],rotate[y_]]] := True (* Theorem SBV-SU1 in SUBBAR2 proved 1999 February 14 *) or[not[subclass[x_,y_]],subclass[subvar[x_],subvar[y_]]] := True (* derived 2005 January 19 in H-FIN.NB *) or[not[subclass[x_,y_]],not[subclass[tc[y_],z_]],subclass[tc[x_],z_]] := True (* derived 2004 June 24 in XVR-SU.NB *) or[not[subclass[y_,z_]],subclass[transvar[x_,y_],transvar[x_,z_]]] := True (* derived 2004 June 24 in XVR-SU.NB *) or[not[subclass[x_,y_]],subclass[transvar[y_,z_],transvar[x_,z_]]] := True (* added 2002 March 27 based on TRV.NB *) or[not[subclass[x_,y_]],subclass[trv[x_],trv[y_]]] := True (* derived 2008 July 20 in TRV-MONO.NB *) or[not[subclass[x_,y_]],subclass[trv[x_],union[z_,trv[y_]]]] := True (* added 2001 November 3 based on MONOTONE.NB *) or[not[subclass[x_,y_]],subclass[twist[x_],twist[y_]]] := True (* Corollary SC-2-COR in SC1 proved 1994 June 9 *) or[not[subclass[x_,y_]],subclass[U[x_],U[y_]]] := True (* derived 2007 June 23 in UCHAINS.NB *) or[not[subclass[x_,y_]],subclass[Uchains[x_],Uchains[y_]]] := True (* added 2001 November 3 based on MONOTONE.NB *) or[not[subclass[x_,y_]],subclass[x_,union[y_,z_]]] := True (* Theorem VS-SU1 in VS-SU1 proved 1999 November 23 *) or[not[subclass[x_,y_]],subclass[VERTSECT[y_],composite[S,VERTSECT[x_]]]] := True (* added 2002 November 24 based on VERTSECT.NB *) or[not[subclass[x_,y_]],subclass[VERTSECT[x_],inverse[LB[y_]]]] := True (* derived 2004 June 24 in SBCOMTNT.NB *) or[not[subclass[x_,subcommutant[y_]]],subclass[composite[y_,U[x_]],composite[U[x_],y_]]] := True (* derived 2004 January 19 in SBV-PC.NB *) or[not[subclass[x_,subvar[y_]]],subclass[U[x_],image[y_,U[x_]]]] := True (* derived 2007 July 17 in U-EQV.NB *) or[not[subclass[x_,SYM]],subclass[U[x_],cart[V,V]]] := True (* derived 2007 December 14 in CANTOR.NB *) or[not[subclass[x_,tc[y_]]],not[subclass[y_,REGULAR]],subclass[x_,REGULAR]] := True (* derived 2005 January 5 in TC-HC.NB *) or[not[subclass[tc[x_],y_]],subclass[x_,H[y_]]] := True (* derived 2004 April 18 in TC-FIN.NB *) or[not[subclass[x_,tc[y_]]],subclass[U[x_],tc[y_]]] := True (* derived 2005 January 5 in TC-HC.NB *) or[not[subclass[tc[x_],y_]],subclass[tc[x_],H[y_]]] := True (* derived 2007 June 4 in IMG-SU.NB *) or[not[subclass[x_,thinpart[y_]]], subclass[IMAGE[x_],composite[inverse[S],IMAGE[thinpart[y_]]]]] := True (* derived 2004 June 16 in TRANSVAR.NB *) or[not[subclass[v_,transvar[x_,y_]]],subclass[image[x_,U[v_]],image[y_,U[v_]]]] := True (* derived 2007 August 9 in UCH-TRV.NB *) or[not[subclass[x_,TRV]],not[subclass[cart[x_,x_],union[S,inverse[S]]]], subclass[image[COMPOSE,cart[x_,x_]],image[inverse[S],x_]]] := True (* derived 2007 August 9 in UCH-TRV.NB *) or[not[subclass[x_,TRV]],not[subclass[cart[x_,x_],union[S,inverse[S]]]],TRANSITIVE[U[x_]]] := True (* derived 2008 July 20 in TRV-SU.NB *) or[not[subclass[x_,trv[z_]]],not[subclass[y_,trv[z_]]],subclass[composite[x_,y_],trv[z_]]] := True (* derived 2007 August 9 in UCH-TRV.NB *) or[not[subclass[x_,TRV]],subclass[U[x_],cart[V,V]]] := True (* derived 2008 January 26 in TRV-A.NB *) or[not[subclass[x_,TRV]],TRANSITIVE[composite[Id,A[x_]]]] := True (* derived 2005 November 13 in COVER.NB *) or[not[subclass[x_,U[y_]]],not[subclass[y_,z_]],subclass[x_,U[z_]]] := True (* derived 2007 December 18 in FULLFUND.NB *) or[not[subclass[U[x_],x_]],not[WELLFOUNDED[composite[id[x_],E]]],subclass[x_,REGULAR]] := True (* derived 2005 July 24 in ACL-P-OM.NB *) or[not[subclass[U[x_],OMEGA]],subclass[x_,fix[ACLOSURE]]] := True (* corollary ON-BA1-A in ON5 derived 2004 October 16 in ON-ACL.NB *) or[not[subclass[U[x_],OMEGA]],subclass[image[BIGCAP,x_],U[x_]]] := True (* derived 2004 June 27 in X1712-20.NB *) or[not[subclass[U[x_],RUSSELL]],subclass[x_,RUSSELL]] := True (* derived 2005 February 18 in X3446.NB *) or[not[subclass[U[x_],x_]],subclass[image[IMAGE[id[x_]],DESCENDING],DESCENDING]] := True (* derived 2004 August 3 in WF-REC-1.NB or[not[subclass[y,union[x,image[inverse[z],complement[x]]]]], not[subclass[intersection[y,image[inverse[z],complement[x]]],image[inverse[z],intersection[y,complement[x]]]]], subclass[y,union[x,image[inverse[z],intersection[y,complement[x]]]]]] == True *) (* derived 2006 April 20 in ACL-NEST.NB *) or[not[subclass[x_,union[image[S,set[y_]],P[y_]]]],subclass[A[x_],y_],subclass[y_,A[x_]]] := True (* derived 2006 April 20 in ACL-NEST.NB *) or[not[subclass[x_,union[image[S,set[y_]],P[y_]]]],subclass[y_,U[x_]],subclass[U[x_],y_]] := True (* derived 2004 January 17 in SBV-PS-K.NB *) or[not[subclass[x_,union[y_,z_]]],not[subclass[y_,z_]],subclass[x_,z_]] := True (* derived 2005 December 31 in CL-VS-UB.NB *) or[not[subclass[w_,union[x_,y_]]],not[subclass[y_,z_]],subclass[w_,union[x_,z_]]] := True (* derived 2004 September 18 in WF-WRAP.NB *) or[not[subclass[x_,wf[y_]]],WELLFOUNDED[x_]] := True (* derived 2004 September 5 in WF-REC-4.NB *) or[not[subvariant[x_,y_]],subclass[y_,image[x_,y_]]] := True (* derived 2005 April 7 in WF-TO.NB *) or[not[TOTALORDER[x_]],not[WELLFOUNDED[intersection[Di,x_]]]] := not[WELLORDER[x]] (* derived 2004 March 21 in PO-WRAP.NB *) or[not[TOTALORDER[x_]],PARTIALORDER[x_]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[TOTALORDER[x_]],REFLEXIVE[x_]] := True (* derived 2006 April 29 in TO-WO.NB *) or[not[TOTALORDER[x_]],subclass[cart[fix[x_],fix[x_]],union[x_,inverse[x_]]]] := True (* derived 2007 August 1 in TO-CHN-S.NB *) or[not[TOTALORDER[t_]],subclass[cart[image[VERTSECT[t_],fix[t_]],image[VERTSECT[t_],fix[t_]]], union[S,inverse[S]]]] := True (* derived 2008 February 3 in TOTALORD.NB *) or[not[TOTALORDER[x_]],subclass[cart[union[domain[x_],range[x_]],union[domain[x_],range[x_]]], union[x_,inverse[x_]]]] := True (* derived 2004 February 10 in TOTORDER.NB *) or[not[TOTALORDER[x_]],subclass[x_,cart[V,V]]] := True (* derived 2004 February 10 in TOTORDER.NB *) or[not[TOTALORDER[x_]],subclass[intersection[x_,inverse[x_]],Id]] := True (* derived 2004 February 10 in TOTORDER.NB *) or[not[TOTALORDER[x_]],TOTALORDER[composite[Id,x_]]] := True (* derived 2004 June 27 in X1655-61.NB *) or[not[TOTALORDER[x_]],TOTALORDER[composite[id[y_],x_,id[y_]]]] := True (* derived 2005 October 13 in WO-OO.NB *) or[not[TOTALORDER[y_]],TOTALORDER[composite[oopart[x_],y_,inverse[oopart[x_]]]]] := True (* derived 2004 February 10 in TOTORDER.NB *) or[not[TOTALORDER[x_]],TOTALORDER[inverse[x_]]] := True (* derived 2005 October 15 in TO-THIN.NB *) or[not[TOTALORDER[x_]],TOTALORDER[thinpart[x_]]] := True (* derived 2004 February 10 in TOTORDER.NB *) or[not[TOTALORDER[x_]],TRANSITIVE[x_]] := True (* derived 2004 March 21 in TRV-WRAP.NB *) or[not[TRANSITIVE[x_]],not[TRANSITIVE[composite[Id,y_]]],TRANSITIVE[intersection[x_,y_]]] := True (* derived 2004 March 20 in EQV-WRAP.NB *) or[not[TRANSITIVE[x_]],not[TRANSITIVE[y_]],TRANSITIVE[cross[x_,y_]]] := True (* added 2003 July 1 based on TRANSTIV.NB *) or[not[TRANSITIVE[x_]],not[TRANSITIVE[y_]],TRANSITIVE[intersection[x_,y_]]] := True (* added 2003 July 1 based on TRANSTIV.NB *) or[not[TRANSITIVE[x_]],subclass[x_,cart[V,V]]] := True (* derived 2006 June 27 in TRV-U.NB *) or[not[TRANSITIVE[x_]],subclass[composite[x_,x_],union[x_,y_]]] := True (* derived 2004 March 21 in TRV-WRAP.NB *) or[not[TRANSITIVE[x_]],subclass[image[IMAGE[id[x_]],TRV],TRV]] := True (* derived 2008 February 23 in IM-TRV.NB *) or[not[TRANSITIVE[x_]],subclass[image[x_,image[x_,y_]],image[x_,y_]]] := True (* derived 2008 February 23 in IM-TRV.NB *) or[not[TRANSITIVE[x_]], subclass[image[inverse[x_],image[inverse[x_],y_]],image[inverse[x_],y_]]] := True (* derived 2004 September 30 in EQV-THNP.NB *) or[not[TRANSITIVE[x_]],subclass[RS[x_],TRV]] := True (* added 2003 July 1 based on TRANSTIV.NB *) or[not[TRANSITIVE[x_]],TRANSITIVE[composite[Id,x_]]] := True (* added 2003 July 4 based on TRANSTIV.NB *) or[not[TRANSITIVE[x_]],TRANSITIVE[composite[id[z_],x_,id[y_]]]] := True (* added 2003 July 1 based on TRANSTIV.NB *) or[not[TRANSITIVE[x_]],TRANSITIVE[composite[id[y_],x_]]] := True (* added 2003 July 1 based on TRANSTIV.NB *) or[not[TRANSITIVE[x_]],TRANSITIVE[composite[x_,id[y_]]]] := True (* derived 2004 December 27 in FUN-TRV.NB *) or[not[TRANSITIVE[x_]],TRANSITIVE[composite[inverse[funpart[y_]],x_,funpart[y_]]]] := True (* derived 2004 April 4 in IRR-TRV.NB *) or[not[TRANSITIVE[x_]],TRANSITIVE[intersection[x_,complement[inverse[x_]]]]] := True (* derived 2004 December 18 in QO-FU.NB *) or[not[TRANSITIVE[x_]],TRANSITIVE[rfx[x_]]] := True (* derived 2005 January 29 in RFXTRVTH.NB *) or[not[TRANSITIVE[x_]],TRANSITIVE[thinpart[x_]]] := True (* derived 2007 December 29 in TRV-U-CP.NB *) or[not[TRANSITIVE[x_]],TRANSITIVE[union[x_,cart[image[inverse[x_],y_],image[x_,z_]]]]] := True (* derived 2007 December 23 in TRV.NB *) or[not[TRANSITIVE[x_]],TRANSITIVE[union[Id,x_]]] := True (* added 2003 July 5 based on TRANSTIV.NB *) or[not[TRANSITIVE[x_]],TRANSITIVE[union[x_,id[y_]]]] := True (* derived 2007 December 18 in FULLFUND.NB *) or[not[WELLFOUNDED[composite[id[x_],E]]],subclass[H[x_],REGULAR]] := True (* derived 2007 December 19 in CONDUCT.NB *) or[not[WELLFOUNDED[composite[id[x_],E]]],subclass[x_,RUSSELL]] := True (* derived 2007 December 20 in FUND-X.NB *) or[not[WELLFOUNDED[composite[id[U[x_]],E]]],subclass[x_,FUND]] := True (* derived 2005 February 1 in DIV-WF.NB *) or[not[WELLFOUNDED[composite[x_,x_]]],WELLFOUNDED[composite[Id,x_]]] := True (* derived 2004 September 21 in WF-X.NB *) or[not[WELLFOUNDED[cross[x_,y_]]],WELLFOUNDED[cross[y_,x_]]] := True (* derived 2004 August 5 in WF-REC-2.NB *) or[not[WELLFOUNDED[inverse[y_]]],subclass[rec[funpart[x_],thinpart[y_]],composite[funpart[x_], id[composite[IMAGE[composite[id[rec[funpart[x_],thinpart[y_]]],inverse[FIRST]]],VERTSECT[thinpart[y_]]]],inverse[FIRST]]]] := True (* derived 2004 September 23 in WF-LEX.NB *) or[not[WELLFOUNDED[x_]],not[WELLFOUNDED[y_]],WELLFOUNDED[union[composite[inverse[FIRST],x_,FIRST],cross[Id,y_]]]] := True (* added 2003 September 29 based on WF.NB *) or[not[WELLFOUNDED[x_]],subclass[x_,cart[V,V]]] := True (* derived 2008 August 3 in WF-TRICH.NB *) or[not[WELLFOUNDED[x_]], subclass[chains[union[Id,x_]],union[domain[LEAST[union[Id,x_]]],set[0]]]] := True (* derived 2008 February 22 in WF-RS.NB *) or[not[WELLFOUNDED[x_]],WELLFOUNDED[composite[id[y_],x_]]] := True (* derived 2005 October 13 in WO-OO.NB *) or[not[WELLFOUNDED[y_]],WELLFOUNDED[composite[oopart[x_],y_,inverse[oopart[x_]]]]] := True (* derived 2004 September 21 in WF-X.NB *) or[not[WELLFOUNDED[x_]],WELLFOUNDED[cross[x_,y_]]] := True (* derived 2004 September 21 in WF-X.NB *) or[not[WELLFOUNDED[y_]],WELLFOUNDED[cross[x_,y_]]] := True (* derived 2007 June 19 in OO-XFM.NB *) or[not[WELLFOUNDED[x_]],WELLFOUNDED[intersection[x_,y_]]] := True (* derived 2005 October 16 in WO-WRAP.NB *) or[not[WELLORDER[composite[Id,x_]]],WELLORDER[wo[x_]]] := True (* derived 2004 March 21 in PO-WRAP.NB *) or[not[WELLORDER[x_]],PARTIALORDER[x_]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) or[not[WELLORDER[x_]],REFLEXIVE[x_]] := True (* derived 2004 January 24 in WO-WRAP.NB *) or[not[WELLORDER[x_]],subclass[x_,cart[V,V]]] := True (* derived 2004 January 24 in RFX-LT-2.NB *) or[not[WELLORDER[x_]],subclass[intersection[x_,inverse[x_]],Id]] := True (* derived 2004 January 24 in WO-WRAP.NB *) or[not[WELLORDER[x_]],subclass[P[fix[x_]],union[domain[funpart[LEAST[x_]]],set[0]]]] := True (* derived 2008 March 2 in WO-LEAST.NB *) or[not[WELLORDER[x_]],subclass[P[fix[x_]],union[domain[LEAST[x_]],set[0]]]] := True (* derived 2004 March 14 in WO-TRV.NB *) or[not[WELLORDER[x_]],TOTALORDER[x_]] := True (* derived 2004 March 14 in WO-TRV.NB *) or[not[WELLORDER[x_]],TRANSITIVE[x_]] := True (* derived 2004 March 14 in WF-WO.NB *) or[not[WELLORDER[x_]],WELLFOUNDED[intersection[Di,x_]]] := True (* derived 2004 July 20 in X2081.NB *) or[not[WELLORDER[x_]],WELLORDER[composite[id[y_],x_,id[y_]]]] := True (* derived 2005 October 13 in WO-OO.NB *) or[not[WELLORDER[y_]],WELLORDER[composite[oopart[x_],y_,inverse[oopart[x_]]]]] := True (* derived 2007 August 10 in A-IM-S.NB *) or[subclass[x_,A[y_]],subclass[y_,union[z_,image[S,set[x_]]]]] := subclass[y,union[z,image[S,set[x]]]] (* derived 2006 March 7 in ORDLIST.NB *) ordlist[0] := 0 (* derived 2007 May 31 in OL.NB *) ordlist[complement[nat[x_]]] := plus[nat[x]] (* derived 2007 May 23 in OL-C-ORD.NB *) ordlist[complement[ord[x_]]] := iterate[SUCC,set[ord[x]]] (* derived 2007 May 31 in OL.NB *) ordlist[complement[set[0]]] := composite[id[omega],SUCC] (* derived 2006 March 7 in ORDLIST.NB *) ordlist[intersection[OMEGA,x_]] := ordlist[x] (* derived 2007 August 6 in OL-NAT.NB *) ordlist[nat[x_]] := id[nat[x]] (* derived 2006 March 7 in ORDLIST.NB *) ordlist[omega] := id[omega] (* derived 2006 March 7 in ORDLIST.NB *) ordlist[OMEGA] := id[omega] (* derived 2006 March 7 in ORDLIST.NB *) ordlist[PRIMES] := PRIMESEQ (* derived 2007 May 18 in OL-SS.NB *) ordlist[set[x_]] := cart[set[0],intersection[OMEGA,set[x]]] (* derived 2006 March 7 in ORDLIST.NB *) ordlist[V] := id[omega] (* 2008 November 27 in AP-RO.NB *) over[x_] := rotate[flip[x]] (* Theorem PC-0 in PC2 *) P[0] := set[0] (* added 2002 May 11 based on PAIR.NB *) P[cart[set[x_],set[y_]]] := set[0,cart[set[x],set[y]]] (* Theorem PC-IM-V2 in PC2 added 1998 April 19 *) P[complement[image[V,x_]]] := union[complement[image[V,x]],set[0]] (* added 2001 July 14 based on ZN-IMG.NB *) P[domain[VERTSECT[ZN]]] := domain[VERTSECT[ZN]] (* derived 2004 April 18 in H-RUS.NB *) P[H[RUSSELL]] := H[RUSSELL] (* Theorem PC-IM-V1 in PC2 simplified rule proved 1998 April 19 *) P[image[V,x_]] := union[image[V,x],set[0]] (* Theorem REG-2 in REG2 *) P[REGULAR] := REGULAR (* revised 2001 November 22 *) P[set[x_]] := set[0,set[x]] (* derived 2005 December 5 in ISB5HER2.NB *) P[set[x_,y_]] := set[0,set[x],set[y],set[x,y]] (* added 1999 December 21 based on U-IMAGE.NB *) P[union[x_,complement[image[V,y_]]]] := union[complement[image[V,y]],P[x]] (* added 1999 December 21 based on U-IMAGE.NB *) P[union[x_,image[V,y_]]] := union[image[V,y],P[x]] (* Theorem PC-4C in PC1 *) P[V] := V (* derived 2007 March 4 in IMV-NAT.NB *) PAIR[x_,image[V,y_]] := union[image[V,y],PAIR[x,0]] (* derived 2007 March 4 in IMV-NAT.NB *) PAIR[image[V,x_],y_] := union[image[V,x],PAIR[0,y]] (* added 2004 July 14 based on X2530-41.NB *) PAIR[pair[u_,v_],pair[x_,y_]] := pair[pair[u,v],pair[x,y]] (* derived 2005 December 23 in PAIR.NB *) PAIR[union[x_,complement[image[V,y_]]],z_] := union[complement[image[V,y]],PAIR[x,z]] (* derived 2005 December 23 in PAIR.NB *) PAIR[x_,union[y_,complement[image[V,z_]]]] := union[complement[image[V,z]],PAIR[x,y]] (* added 2002 November 1 based on IMV.NB *) PAIR[union[x_,image[V,y_]],z_] := union[image[V,y],PAIR[x,z]] (* added 2002 November 1 based on IMV.NB *) PAIR[x_,union[y_,image[V,z_]]] := union[image[V,z],PAIR[x,y]] (* derived 2005 January 10 in SET.NB *) pairset[x_,y_] := set[x,y] (* derived 2004 March 21 in PO-WRAP.NB *) PARTIALORDER[0] := True (* derived 2005 January 29 in RFXTRVTH.NB *) PARTIALORDER[cart[x_,y_]] := or[and[equal[x,y],member[x,range[SINGLETON]]],equal[0,x],equal[0,y]] (* derived 2004 March 21 in PO-WRAP.NB *) PARTIALORDER[COARSER] := True (* derived 2008 June 18 in PO-SYMRS.NB *) PARTIALORDER[composite[CAP,id[cart[x_,image[CART,Id]]],inverse[FIRST]]] := and[subclass[image[CAP,cart[x,image[CART,Id]]],x],subclass[U[x],cart[V,V]]] (* derived 2007 October 18 in ERASE.NB *) PARTIALORDER[composite[CAP,id[cart[P[cart[V,V]],range[CART]]],inverse[FIRST]]] := True (* derived 2007 October 18 in ERASE.NB *) PARTIALORDER[composite[CAP,id[cart[PO,image[CART,Id]]],inverse[FIRST]]] := True (* derived 2008 June 18 in RS-TRV.NB *) PARTIALORDER[composite[CAP,id[cart[TRV,range[CART]]],inverse[FIRST]]] := True (* derived 2004 March 23 in ADJECT.NB *) PARTIALORDER[composite[CUP,id[cart[V,x_]],inverse[FIRST]]] := or[and[member[0,x],subclass[image[CUP,cart[x,x]],x]],equal[0,x]] (* derived 2006 January 17 in PO-RS.NB *) PARTIALORDER[composite[id[image[inverse[po[x_]],y_]],po[x_]]] := True (* derived 2008 September 14 in PO-IN.NB *) PARTIALORDER[composite[id[x_],inverse[y_]]] := PARTIALORDER[composite[y,id[x]]] (* derived 2005 October 19 in IN-RS.NB *) PARTIALORDER[composite[id[x_],inverse[y_],id[z_]]] := PARTIALORDER[composite[id[z],y,id[x]]] (* derived 2008 September 14 in PO-IN.NB *) PARTIALORDER[composite[id[x_],po[y_]]] := subclass[image[inverse[po[y]],x],x] (* derived 2005 October 1 in PO-RS.NB *) PARTIALORDER[composite[id[y_],po[x_],id[y_]]] := True (* derived 2008 September 14 in PO-IN.NB *) PARTIALORDER[composite[id[PO],RESTRICT,id[PO]]] := True (* derived 2006 January 14 in PO-RS-S.NB *) PARTIALORDER[composite[id[x_],S]] := equal[image[inverse[S],x],x] (* derived 2004 March 21 in PO-WRAP.NB *) PARTIALORDER[composite[id[x_],S,id[x_]]] := True (* derived 2008 August 18 in CL-S.NB *) PARTIALORDER[composite[id[x_],S,id[y_]]] := and[subclass[intersection[x,image[S,y]],y], subclass[intersection[y,image[inverse[S],x]],x]] (* derived 2004 December 18 in PO-BIJ.NB *) PARTIALORDER[composite[inverse[funpart[x_]],inverse[S],funpart[x_]]] := FUNCTION[inverse[funpart[x]]] (* derived 2006 April 29 in PO-TO-XF.NB *) PARTIALORDER[composite[inverse[funpart[x_]],po[y_],funpart[x_]]] := FUNCTION[composite[inverse[funpart[x]],id[fix[po[y]]]]] (* derived 2006 April 29 in PO-TO-XF.NB *) PARTIALORDER[composite[inverse[funpart[x_]],S,funpart[x_]]] := FUNCTION[inverse[funpart[x]]] (* derived 2006 January 6 in PO-S-REG.NB *) PARTIALORDER[composite[inverse[x_],id[y_]]] := PARTIALORDER[composite[id[y],x]] (* derived 2004 October 14 in REFINE.NB *) PARTIALORDER[composite[inverse[IMAGE[inverse[S]]],COARSER]] := False (* derived 2004 October 14 in REFINE.NB *) PARTIALORDER[composite[inverse[IMAGE[inverse[S]]],S]] := False (* derived 2004 December 18 in PO-BIJ.NB *) PARTIALORDER[composite[inverse[oopart[x_]],inverse[S],oopart[x_]]] := True (* derived 2006 January 25 in PO-XFORM.NB *) PARTIALORDER[composite[inverse[oopart[x_]],po[y_],oopart[x_]]] := True (* derived 2008 June 27 in PO-TFM-S.NB *) PARTIALORDER[composite[inverse[oopart[x_]],S,oopart[x_]]] := True (* derived 2004 October 14 in REFINE.NB *) PARTIALORDER[composite[inverse[S],IMAGE[inverse[S]]]] := False (* derived 2007 December 26 in COARSER.NB *) PARTIALORDER[composite[inverse[VERTSECT[x_]],S,VERTSECT[x_]]] := FUNCTION[inverse[VERTSECT[x]]] (* derived 2008 October 23 in PREFIX.NB *) PARTIALORDER[composite[JOIN,inverse[FIRST]]] := True (* derived 2008 October 24 in SUFX-PO.NB *) PARTIALORDER[composite[JOIN,inverse[SECOND]]] := True (* derived 2005 October 8 in OO-TRFM.NB *) PARTIALORDER[composite[oopart[x_],po[y_],inverse[oopart[x_]]]] := True (* derived 2008 June 27 in PO-TFM-S.NB *) PARTIALORDER[composite[oopart[x_],S,inverse[oopart[x_]]]] := True (* derived 2008 January 4 in PO-RS.NB *) PARTIALORDER[composite[po[x_],id[y_]]] := subclass[image[po[x],y],y] (* derived 2004 August 10 in RS-3.NB *) PARTIALORDER[composite[RESTRICT,id[P[cart[V,V]]]]] := True (* derived 2008 September 14 in PO-IN.NB *) PARTIALORDER[composite[RESTRICT,id[WF]]] := True (* derived 2006 January 17 in PO-RS.NB *) PARTIALORDER[composite[S,id[image[S,x_]]]] := True (* derived 2006 May 9 *) PARTIALORDER[composite[S,IMAGE[x_]]] := equal[Id,composite[Id,x]] (* derived 2005 October 6 in BINCL-X.NB *) PARTIALORDER[cross[po[x_],po[y_]]] := True (* derived 2004 March 21 in PO-WRAP.NB *) PARTIALORDER[DIV] := True (* derived 2006 January 3 in E.NB *) PARTIALORDER[E] := False (* derived 2007 June 12 in FIN-PO.NB *) PARTIALORDER[fin[po[x_]]] := True (* derived 2004 March 21 in PO-WRAP.NB *) PARTIALORDER[Id] := True (* derived 2004 March 21 in PO-WRAP.NB *) PARTIALORDER[id[x_]] := True (* derived 2008 June 19 in I-PO.NB *) PARTIALORDER[intersection[po[x_],po[y_]]] := True (* derived 2006 September 24 in INTLEQ.NB *) PARTIALORDER[INTLEQ] := True (* derived 2004 March 21 in PO-WRAP.NB *) PARTIALORDER[inverse[x_]] := PARTIALORDER[composite[Id,x]] (* derived 2005 October 1 in PO-WRAP.NB *) PARTIALORDER[po[x_]] := True (* derived 2008 September 5 in NOT-PORS.NB *) PARTIALORDER[RESTRICT] := False (* derived 2004 March 21 in PO-WRAP.NB *) PARTIALORDER[S] := True (* derived 2005 August 1 in SS-RULES.NB *) PARTIALORDER[set[x_]] := or[and[equal[first[x],second[x]],member[first[x],V]],not[member[x,V]]] (* derived 2005 October 1 in PO-SETPT.NB *) PARTIALORDER[setpart[x_]] := or[not[member[x,V]],PARTIALORDER[x]] (* derived 2005 October 1 in PO-THIN.NB *) PARTIALORDER[thinpart[po[x_]]] := True (* derived 2005 October 15 in TO-THIN.NB *) PARTIALORDER[thinpart[to[x_]]] := True (* derived 2005 October 8 in TO-WRAP.NB *) PARTIALORDER[to[x_]] := True (* derived 2005 October 8 in U-CL.NB *) PARTIALORDER[union[cart[set[x_],set[y_]],id[set[x_,y_]]]] := True (* derived 2007 November 3 in IMIN-PS.NB *) PARTIALORDER[union[id[x_],po[y_]]] := True (* derived 2004 March 23 in TRV-K.NB *) PARTIALORDER[union[Id,trv[K]]] := True (* derived 2008 June 19 in I-PO.NB *) PARTIALORDER[V] := False (* derived 2005 October 16 in WO-WRAP.NB *) PARTIALORDER[wo[x_]] := True (* derived 2004 August 3 in WF-REC-1.NB *) partrec[0,x_] := set[0] (* derived 2004 August 3 in WF-REC-1.NB *) partrec[x_,0] := P[composite[x,RIGHT[0]]] (* derived 2004 August 5 in WF-REC-2.NB *) partrec[x_,composite[Id,y_]] := partrec[x,y] (* added 2003 August 7 based on PLUS.NB *) plus[0] := id[omega] (* derived 2005 August 5 in MODADD.NB *) plus[complement[image[V,x_]]] := id[intersection[omega,image[V,x]]] (* derived 2004 May 2 in REGULAR.NB *) plus[REGULAR] := 0 (* added 2003 August 7 based on PLUS.NB *) plus[set[0]] := composite[id[omega],SUCC] (* added 2003 August 7 based on PLUS.NB *) plus[succ[x_]] := composite[plus[x],SUCC] (* added 2003 August 7 based on PLUS.NB *) plus[union[x_,complement[image[V,y_]]]] := composite[plus[x],id[image[V,y]]] (* added 2003 August 7 based on PLUS.NB *) plus[union[x_,image[V,y_]]] := composite[plus[x],id[complement[image[V,y]]]] (* derived 2005 October 1 in PO-WRAP.NB *) po[composite[Id,x_]] := po[x] (* derived 2005 October 1 in PO-WRAP.NB *) po[inverse[x_]] := inverse[po[x]] (* added 2002 May 21 based on POWER.NB *) power[0] := cart[set[0],Id] (* added 2002 June 8 based on POW-CART.NB *) power[cart[x_,y_]] := union[cart[intersection[omega,complement[set[0]]], cart[x,intersection[y,image[V,intersection[x,y]]]]], cart[set[0],Id],cart[set[set[0]],cart[x,y]]] (* added 2002 May 21 based on POWER.NB *) power[composite[Id,x_]] := power[x] (* added 2002 May 25 based on POW-SUCC.NB *) power[composite[id[omega],SUCC]] := union[cart[set[0],Id],composite[id[cart[V,omega]],power[SUCC]]] (* added 2002 June 15 based on CANCEL.NB *) power[composite[inverse[SUCC],id[omega]]] := union[cart[set[0],Id],inverse[rotate[NATADD]]] (* added 2002 May 22 based on POWER-X.NB *) power[cross[x_,y_]] := union[cart[set[0],id[complement[cart[V,V]]]], intersection[composite[cross[inverse[FIRST],inverse[FIRST]],power[x]], composite[cross[inverse[SECOND],inverse[SECOND]],power[y]]]] (* added 2002 May 21 based on POWER.NB *) power[Id] := cart[omega,Id] (* added 2002 May 21 based on POWER.NB *) power[id[x_]] := union[cart[omega,id[x]],cart[set[0],Id]] (* added 2002 December 23 based on EXPONENT.NB *) power[image[power[x_],y_]] := composite[power[x], iterate[composite[NATADD,id[cart[V,y]],inverse[FIRST]],set[0]]] (* added 2002 May 22 based on INVERSE.NB *) power[inverse[x_]] := composite[SWAP,power[x]] (* derived 2006 February 16 in PO-PLUS.NB *) power[plus[x_]] := union[cart[set[0],Id],composite[SWAP,inverse[rotate[NATADD]],times[x]]] (* derived 2004 May 2 in REGULAR.NB *) power[REGULAR] := union[cart[intersection[omega,complement[set[0]]],cart[REGULAR,REGULAR]],cart[set[0],Id]] (* added 2002 May 22 based on EXAMPLES.NB *) power[S] := union[cart[omega,Id],cart[intersection[omega,complement[set[0]]],S]] (* added 2002 June 10 based on POWERUID.NB *) power[union[Id,x_]] := composite[power[x],inverse[S],id[omega]] (* added 2002 June 8 based on POW-CART.NB *) power[V] := union[cart[intersection[omega,complement[set[0]]],cart[V,V]],cart[set[0],Id]] (* definition of the predicate propersubclass *) propersubclass[x_,y_] := and[subclass[x,y],not[subclass[y,x]]] (* Definition of PSM added 1998 September 5*) PSM[x_] := intersection[complement[composite[PS,x]],x] (* derived 2008 October 9 in QUASIGP.NB *) quasigp[x_] := x /; member[x,QUASIGPS] (* definition introduced 2008 January 30 in DJ-U-QO.NB *) QUASIORDER[x_] := and[REFLEXIVE[x],TRANSITIVE[x]] (* Theorem RA-2A in RA1 *) range[0] := 0 (* added 2001 May 10 based on UCLOS-4.NB *) range[ACLOSURE] := fix[ACLOSURE] (* Theorem ADJ-RA in ADJ proved 1999 March 13 *) range[ADJOIN[x_]] := image[S,set[x]] (* derived 2008 October 21 in DORAJOIN.NB *) range[APPLY[JOIN,PAIR[list[x_],list[y_]]]] := union[range[list[x]],range[list[y]]] (* added 1999 October 13 based on ASSOC.1 *) range[ASSOC] := cart[V,cart[V,V]] (* Theorem BA-RA in BIGCAP/BA1 added 1998 July 30 *) range[BIGCAP] := V (* Theorem BC-RA in BIGCUP/BC *) range[BIGCUP] := V (* Theorem CAP-RA in CAP proved 1999 August 12 *) range[CAP] := V (* added 2001 December 10 based on CARD-ALL.NB *) range[CARD] := fix[CARD] (* derived 2008 October 8 in DORA-SQR.NB *) range[cart[x_,x_]] := x (* Theorem IM-CP-RA in IM3 *) range[cart[x_,y_]] := intersection[y,image[V,x]] (* derived 2005 August 1 in CATOFUNS.NB *) range[CATOFUNS] := composite[S,IMAGE[SECOND],id[FUNS]] (* derived 2005 July 30 in CATORELN.NB *) range[CATORELN] := composite[S,IMAGE[SECOND],id[P[cart[V,V]]]] (* derived 2007 May 6 in HULL-SYM.NB *) range[CHAINS] := range[CLIQUES] (* derived 2006 August 22 in CHAR.NB *) range[CHAR[x_]] := map[x,succ[set[0]]] (* derived 2006 July 13 in CLOCK.NB *) range[clock[x_]] := nat[x] (* added 2003 July 4 based on COARSER.NB *) range[COARSER] := V (* derived 2008 December 25 in COD-DOM.NB *) range[cod[x_]] := ids[x] (* added 2001 May 18 based on COMMUTE2.NB *) range[COMMUTE] := V (* derived 2004 February 20 in REPLACE1.NB *) range[complement[x_]] := complement[ub[x,V]] (* Theorem CPS-RA2 in COMPOSE-CPS proved 2001 January 23 *) range[COMPOSE] := P[cart[V,V]] (* Theorem CO-RA5 in CO3 *) range[composite[x_,y_]] := image[x,range[y]] (* added 2002 May 3 based on CORE-UCL.NB *) range[CORE[x_]] := Uclosure[x] (* Theorem X-RA-3 in X2 *) range[cross[x_,y_]] := cart[range[x],range[y]] (* Theorem CUP-RA in CUP1 proved 1999 July 22 *) range[CUP] := V (* derived 2006 November 5 in CURRY.NB *) range[CURRY] := intersection[FUNS,P[cart[V,intersection[complement[set[0]],P[cart[V,V]]]]]] (* Theorem DI-RA in DI added 1998 July 2 *) range[Di] := V (* added 1999 November 6 based on CO-2.LOG *) range[DIF] := V (* Theorem DJT-RA in DJT *) range[DISJOINT] := V (* added 2002 August 30 based on DIVIDES.NB *) range[DIV] := omega (* derived 2008 December 25 in COD-DOM.NB *) range[dom[x_]] := ids[x] (* derived 2008 October 7 in BNP-WRAP.NB *) range[domain[binop[x_]]] := fix[domain[binop[x]]] (* derived 2008 December 30 in CAT-WRAP.NB *) range[domain[cat[x_]]] := range[cat[x]] (* derived 2009 January 21 in HOM.NB *) range[domain[hom[x_]]] := ids[x] (* derived 2008 October 9 in QUASIGP.NB *) range[domain[quasigp[x_]]] := range[quasigp[x]] (* derived 2008 October 19 in SEMIGP.NB *) range[domain[semigp[x_]]] := fix[domain[semigp[x]]] (* added 2001 December 18 based on DORA.NB *) range[DORA] := union[cart[complement[set[0]],complement[set[0]]],cart[set[0],set[0]]] (* Theorem DUP-RA2 in DUP1 *) range[DUP] := Id (* Theorem E-RA3 in E1 *) range[E] := complement[set[0]] (* added 2002 November 3 based on EQUIDIFF.NB *) range[EQUIDIFF] := cart[omega,omega] (* derived 2004 May 12 in EQUIV.NB *) range[EQUIV] := EQV (* derived 2004 May 12 in EQV-GEN.NB *) range[eqv[x_]] := fix[eqv[x]] (* derived 2006 October 24 in EVAL.NB *) range[eval[x_]] := image[V,set[x]] (* Theorem FIN-RA2 proved 2000 April 22 *) range[FINITE] := V (* Theorem 1ST-RA *) range[FIRST] := V (* added 2002 October 29 based on RO-I.NB *) range[fix[composite[DUP,x_]]] := fix[composite[x,DUP]] (* derived 2006 September 12 in DIRECT.NB *) range[fix[composite[inverse[FIRST],w_,cross[x_,y_],TWIST]]] := composite[rotate[y],twist[w],inverse[rotate[x]]] (* derived 2005 August 5 in IMG-X.NB *) range[fix[composite[inverse[FIRST],Di,ASSOC]]] := V (* derived 2005 August 5 in IMG-X.NB *) range[fix[composite[inverse[FIRST],Di,CART]]] := V (* derived 2009 January 13 in CAT-IDS.NB *) range[fix[composite[inverse[FIRST],Di,cat[x_]]]] := intersection[complement[ids[cat[x]]],range[cat[x]]] (* derived 2006 September 17 in CATR-IDS.NB *) range[fix[composite[inverse[FIRST],Di,CATORELN]]] := composite[intersection[complement[inverse[IMAGE[DUP]]], composite[S,IMAGE[SECOND]]],id[P[cart[V,V]]]] (* derived 2005 August 5 in IMG-X.NB *) range[fix[composite[inverse[FIRST],Di,COMPOSE]]] := V (* derived 2005 August 5 in IMG-X.NB *) range[fix[composite[inverse[FIRST],Di,IMAGE[DUP]]]] := V (* derived 2005 August 5 in IMG-X.NB *) range[fix[composite[inverse[FIRST],Di,PAIRSET]]] := V (* derived 2005 August 5 in IMG-X.NB *) range[fix[composite[inverse[FIRST],Di,RIF]]] := cart[V,V] (* derived 2005 August 5 in IMG-X.NB *) range[fix[composite[inverse[FIRST],Di,ROT]]] := V (* derived 2005 August 5 in IMG-X.NB *) range[fix[composite[inverse[FIRST],Di,SINGLETON]]] := V (* derived 2007 March 2 in LD-2.NB *) range[fix[composite[inverse[FIRST],FIRST,id[cart[V,x_]], inverse[NATADD],NATADD]]] := intersection[omega,x] (* added 1996 July 15 in SIMPLIFY.5 *) range[fix[composite[inverse[SECOND],x_]]] := fix[composite[x,inverse[SECOND]]] (* added 1996 July 15 in SIMPLIFY.5 *) range[fix[composite[x_,SECOND]]] := fix[composite[SECOND,x]] (* added 2000 September 9 based on SU-FP-RA.NB *) range[FUNPART] := FUNS (* derived 2008 June 21 in FUNP-RFX.NB *) range[funpart[eqv[x_]]] := fix[funpart[eqv[x]]] (* derived 2008 June 21 in FP-FUNP.NB *) range[funpart[po[x_]]] := fix[funpart[po[x]]] (* derived 2008 June 21 in FUNP-RFX.NB *) range[funpart[rfx[x_]]] := fix[funpart[rfx[x]]] (* derived 2005 October 5 in GLB-DIV.NB *) range[GLB[DIV]] := omega (* derived 2005 October 2 in POLUBGLB.NB *) range[GLB[po[x_]]] := fix[po[x]] (* added 2000 November 18 based on GREATEST.NB *) range[GREATEST[x_]] := fix[x] (* Theorem HF-RA in HC proved 2001 April 10 *) range[HC] := FULL (* derived 2009 January 21 in HOM.NB *) range[hom[cat[x_]]] := range[cat[x]] (* derived 2009 January 21 in HOM.NB *) range[hom[composite[cross[x_,y_],TWIST]]] := cart[range[hom[x]],range[hom[y]]] (* added 2003 February 21 based on IDEMHULL.NB *) range[HULL[x_]] := fix[HULL[x]] (* derived 2007 March 1 in TRV-RFX.NB *) range[hull[RFX,x_]] := fix[hull[RFX,x]] (* Theorem ID-5B in ID2 *) range[Id] := V (* Theorem IDX-RA in IDX2 *) range[id[x_]] := x (* derived 2007 December 6 in IDEMFUNP.NB *) range[idem[funpart[x_]]] := fix[idem[funpart[x]]] (* derived 2007 May 29 in IVR-HULL.NB *) range[IMAGE[ACLOSURE]] := P[fix[ACLOSURE]] (* added 2001 September 30 based on IMAGEBA.NB *) range[IMAGE[BIGCAP]] := V range[IMAGE[BIGCUP]] := V (* added 2003 January 5 based on RA-IMG.NB *) range[IMAGE[CAP]] := V (* derived 2007 May 27 in COARSER.NB *) range[IMAGE[COARSER]] := fix[IMAGE[COARSER]] (* derived 2004 August 7 in RS-1.NB *) range[IMAGE[composite[id[x_],inverse[FIRST]]]] := RS[x] (* derived 2006 October 19 in IMVS-EQV.NB *) range[IMAGE[composite[id[x_],inverse[SECOND]]]] := image[INVERSE,RS[inverse[x]]] (* derived 2007 May 29 in IVR-CORE.NB *) range[IMAGE[CORE[x_]]] := P[Uclosure[x]] (* added 2002 March 12 based on CUP.NB *) range[IMAGE[CUP]] := V (* added 2003 January 5 based on RA-IMG.NB *) range[IMAGE[DIF]] := V (* derived 2007 January 27 in DIV-SBV.NB *) range[IMAGE[DIV]] := fix[IMAGE[DIV]] (* added 2001 December 23 based on DORA-1.NB *) range[image[DORA,x_]] := image[IMAGE[SECOND],x] (* added 1996 June 29 Theorem IDP-RA in IDP proved 1998 December 17 *) range[IMAGE[DUP]] := P[Id] (* added 2002 November 19 based on FP-EQDF.NB *) range[IMAGE[EQUIDIFF]] := fix[IMAGE[EQUIDIFF]] range[IMAGE[FIRST]] := V (* derived 2005 November 8 in RA-IMG.NB *) range[IMAGE[funpart[setpart[x_]]]] := P[range[funpart[setpart[x]]]] (* derived 2007 June 2 in HC-TC.NB *) range[IMAGE[HC]] := P[FULL] (* derived 2007 May 29 in IVR-HULL.NB *) range[IMAGE[HULL[x_]]] := P[fix[HULL[x]]] (* Theorem CUT-RA2 in CUT1 *) range[IMAGE[id[x_]]] := P[x] (* derived 2007 June 6 in IDEMWRAP.NB *) range[IMAGE[idem[x_]]] := fix[IMAGE[idem[x]]] (* added 2003 March 13 based on IMG-CUT.NB *) range[IMAGE[IMAGE[id[x_]]]] := P[P[x]] (* derived 2007 May 29 in IVR-HULL.NB *) range[IMAGE[IMAGE[inverse[S]]]] := P[fix[IMAGE[inverse[S]]]] (* added 2001 March 31 based on BIN-FU.NB *) range[image[inverse[CAP],x_]] := image[S,x] (* derived 2007 May 27 in COARSER.NB *) range[IMAGE[inverse[COARSER]]] := fix[IMAGE[inverse[COARSER]]] (* added 2001 March 31 based on BIN-FU.NB *) range[image[inverse[CUP],x_]] := image[inverse[S],x] (* added 1999 November 2 based on 1999 November 1 session WORK/ASSOC.LOG *) range[image[inverse[DIF],x_]] := image[DISJOINT,x] (* derived 2007 January 27 in DIV-SBV.NB *) range[IMAGE[inverse[DIV]]] := fix[IMAGE[inverse[DIV]]] (* added 1996 June 29 *) range[IMAGE[inverse[DUP]]] := V (* derived 2008 July 29 in EVAL-DO.NB *) range[image[inverse[IMG],range[SINGLETON]]] := complement[set[0]] (* derived 2008 September 13 in INTADD.NB *) range[image[inverse[INTADD],x_]] := intersection[Z,image[V,intersection[x,Z]]] (* derived 2008 September 13 in IMINTMUL.NB *) range[image[inverse[INTMUL],x_]] := image[inverse[INTDIV],x] (* derived 2006 August 15 in NAT-SUCC.NB *) range[image[inverse[NATADD],set[x_]]] := nat[succ[x]] (* added 2002 September 2 based on IMAGEDIV.NB *) range[image[inverse[NATMUL],x_]] := image[inverse[DIV],x] (* derived 2005 January 19 in GRAPH.NB *) range[IMAGE[inverse[PAIRSET]]] := SYM (* derived 2008 March 18 in RA-VS-PO.NB *) range[IMAGE[inverse[po[x_]]]] := fix[IMAGE[inverse[po[x]]]] (* derived 2008 October 18 in QG-RL.NB *) range[image[inverse[quasigp[x_]],set[y_]]] := intersection[image[V,intersection[range[quasigp[x]],set[y]]],range[quasigp[x]]] (* derived 2006 April 11 in IMINRANK.NB *) range[IMAGE[inverse[RANK]]] := fix[IMAGE[inverse[RANK]]] (* added 2000 January 11 based on HER-FIX1.NB *) range[IMAGE[inverse[S]]] := fix[IMAGE[inverse[S]]] (* added 1996 June 29 *) range[IMAGE[inverse[SINGLETON]]] := V (* added 1999 December 24 based on SYMDIF-2.NB *) range[image[inverse[SYMDIF],set[x_]]] := image[V,set[x]] (* derived 2008 March 18 in RA-VS-TO.NB *) range[IMAGE[inverse[to[x_]]]] := fix[IMAGE[inverse[to[x]]]] (* added 1999 August 17 based on session INTRIGUE.2 *) range[IMAGE[LEFT[x_]]] := P[cart[set[x],V]] (* derived 2007 May 7 in SBV-PO.NB *) range[IMAGE[po[x_]]] := fix[IMAGE[po[x]]] (* derived 2007 July 4 in IMAGRANK.NB *) range[IMAGE[RANK]] := P[OMEGA] (* added 2003 January 5 based on RA-IMG.NB *) range[IMAGE[RIF]] := P[cart[V,V]] (* added 1999 August 17 based on session INTRIGUE.2 *) range[IMAGE[RIGHT[x_]]] := P[cart[V,set[x]]] range[IMAGE[SECOND]] := V (* derived 2005 November 8 in RA-IMG.NB *) range[IMAGE[setpart[funpart[x_]]]] := P[range[setpart[funpart[x]]]] (* added 1996 June 29 *) range[IMAGE[SINGLETON]] := P[range[SINGLETON]] (* added 2000 January 1 based on RA-IMG-H.NB *) range[IMAGE[SUCC]] := P[range[SUCC]] (* Theorem INV-RA2 in INV1 *) range[IMAGE[SWAP]] := P[cart[V,V]] (* added 2003 January 5 based on RA-IMG.NB *) range[IMAGE[SYMDIF]] := V (* derived 2007 June 2 in HC-TC.NB *) range[IMAGE[TC]] := P[FULL] (* derived 2004 May 14 in THINPART.NB *) range[IMAGE[thinpart[x_]]] := range[IMAGE[x]] (* derived 2008 March 18 in RA-VS-TO.NB *) range[IMAGE[to[x_]]] := fix[IMAGE[to[x]]] (* derived 2007 June 6 in HLTRVRFX.NB *) range[IMAGE[trv[rfx[x_]]]] := fix[IMAGE[trv[rfx[x]]]] (* derived 2007 May 29 in IVR-HULL.NB *) range[IMAGE[UCLOSURE]] := P[fix[UCLOSURE]] (* Theorem IM-V-RA in IM2 *) range[image[V,x_]] := image[V,x] (* added 2001 July 17 based on ZN-IMG2.NB *) range[IMAGE[ZN]] := fix[IMAGE[ZN]] (* Theorem MG-RA in MG proved 2000 August 27 *) range[IMG] := V (* added 2003 July 25 based on INTADD.NB *) range[INTADD] := Z (* derived 2006 October 21 in INTDIV.NB *) range[INTDIV] := Z (* Theorem FP-CO4 in FP2 *) range[intersection[x_,y_]] := fix[composite[x,inverse[y]]] (* derived 2006 September 24 in INTLEQ.NB *) range[INTLEQ] := Z (* derived 2006 December 21 in INTMUL-1.NB *) range[INTMUL] := Z (* derived 2006 December 19 in ZTIMES-1.NB *) range[INTTIMES] := binhom[INTADD,INTADD] (* derived 2008 September 15 in INTTIMES.NB *) range[inttimes[x_]] := image[INTDIV,set[x]] (* derived 2009 January 21 in INV.NB *) range[inv[x_]] := domain[inv[x]] (* added 2002 April 10 based on INVAR.NB *) range[INVAR] := V (* added 1999 October 12 based on INVERSE.4 *) range[INVERSE] := P[cart[V,V]] (* introduced 1996 March 7 in RANGE.M based on Theorem IN-6 in IN2 *) range[inverse[z_]] := domain[z] (* derived 2007 May 29 in ITERSUCC.NB *) range[iterate[composite[id[OMEGA],SUCC],set[x_]]] := hull[invar[composite[id[OMEGA],SUCC]],set[x]] (* derived 2008 May 15 in H-ITER.NB *) range[iterate[E,x_]] := complement[H[complement[x]]] (* derived 2005 July 24 in RA-ITER.NB *) range[iterate[funpart[x_],set[y_]]] := hull[invar[funpart[x]],set[y]] (* derived 2005 January 1 in ITER-FUN.NB *) range[iterate[inverse[E],x_]] := tc[x] (* derived 2007 May 29 in ITERSUCC.NB *) range[iterate[SUCC,set[x_]]] := hull[invar[SUCC],set[x]] (* derived 2007 December 23 in HULL-IVR.NB *) range[iterate[thinpart[x_],set[y_]]] := hull[invar[thinpart[x]],set[y]] (* derived 2005 July 24 in RA-ITER.NB *) range[iterate[thinpart[x_],setpart[y_]]] := hull[invar[thinpart[x]],setpart[y]] (* derived 2008 October 21 in JOIN.NB *) range[JOIN] := LISTS (* Theorem K-RA in K proved 2000 May 16 *) range[K] := complement[set[0]] (* derived 2005 January 18 in RA-KURA.NB *) range[KURA] := image[PAIRSET,composite[PAIRSET,inverse[FIRST],inverse[SINGLETON]]] (* added 2000 November 10 based on UB-LB-1.LOG *) range[LB[x_]] := V (* added 2000 November 18 based on GREATEST.NB *) range[LEAST[x_]] := fix[x] (* added 1999 August 16 based on session NORMAL.5 *) range[LEFT[x_]] := cart[set[x],V] (* derived 2005 October 5 in GLB-DIV.NB *) range[LUB[DIV]] := omega (* derived 2005 October 2 in POLUBGLB.NB *) range[LUB[po[x_]]] := fix[po[x]] (* added 2000 November 17 based on CO-ID.NB *) range[MAXIMAL[x_]] := V (* added 2000 November 17 based on CO-ID.NB *) range[MINIMAL[x_]] := V (* derived 2006 December 3 in MIXDIV.NB *) range[MIXDIV] := Z (* derived 2006 December 6 in MIXMUL-1.NB *) range[MIXMUL] := Z (* derived 2006 December 5 in MIXTIMES.NB *) range[MIXTIMES] := binhom[NATADD,INTADD] (* derived 2005 July 18 in MODULO.NB *) range[modulo[x_]] := union[intersection[omega,complement[image[V,x]]],nat[x]] (* added 2002 June 12 based on NATADD.NB *) range[NATADD] := omega (* derived 2006 June 27 in NATEXP-1.NB *) range[NATEXP] := omega (* derived 2005 May 17 based on NATMOD.NB *) range[NATMOD] := omega (* added 2002 June 30 based on MUL-RA.NB *) range[NATMUL] := omega (* added 1998 May 24 *) range[omega] := 0 (* Theorem ON-1-RA in ON1 added 1998 May 24 *) range[OMEGA] := 0 (* derived 2004 May 9 in OOPART.NB *) range[OOPART] := BIJ (* derived 2006 June 1 in OL-FIN.NB *) range[ordlist[fin[x_]]] := intersection[OMEGA,fin[x]] (* derived 2005 July 16 in DBLCOUNT.NB *) range[plus[x_]] := intersection[omega,complement[x],image[V,intersection[omega,set[x]]]] (* derived 2005 October 1 in PO-WRAP.NB *) range[po[x_]] := fix[po[x]] (* added 2002 June 8 based on POW-TRV.NB *) range[power[x_]] := union[Id,trv[x]] (* derived 2005 August 17 in PRIMESEQ.NB *) range[PRIMESEQ] := PRIMES (* Theorem PS-RA-2 in PS *) range[PS] := complement[set[0]] (* Theorem Q-RA in Q proved 2000 April 25 *) range[Q] := V (* added 1998 November 10 *) range[range[LeftPairV]] := 0 (* added 1998 November 10 *) range[range[RightPairV]] := 0 (* Theorem RK-RA in RANK2 proved 2001 July 25 *) range[RANK] := OMEGA (* added 1999 October 31 based on DIF-LEFT.NB *) range[RC[x_]]:=intersection[image[V,set[x]],P[x]] (* Theorem REG-31 in REG2 *) range[REGULAR] := REGULAR (* added 2003 May 30 based on RESTRICT.NB *) range[RESTRICT] := P[cart[V,V]] (* derived 2004 December 16 in RFX-CORE.NB *) range[rfx[x_]] := fix[x] (* added 2001 January 20 based on RIF-2.NB *) range[RIF] := cart[V,V] (* added 1999 August 16 based on session NORMAL.5 *) range[RIGHT[x_]] := cart[V,set[x]] (* added 1999 August 2 *) range[ROT] := cart[cart[V,V],V] (* added 1999 September 3 based on ROTATE.1 *) range[rotate[x_]] := range[domain[x]] (* Theorem SR-RA in SR1 *) range[S] := V (* Theorem 2ND-RA *) range[SECOND] := V (* added 2001 November 13 based on 1ST-2ND.NB *) range[set[x_]] := set[second[x]] (* derived 2004 April 6 in SMALLER.NB *) range[SMALLER] := complement[set[0]] (* added 2002 December 27 based on SBCOMMUT.NB *) range[SUBCOMMUTE] := V (* Theorem SW-RA in SW3 *) range[SWAP] := cart[V,V] (* added 1999 December 2 based on SYMDIF-2.NB *) range[SYMDIF] := V (* added 2000 January 8 based on TC-RA.NB *) range[TC] := FULL (* derived 2006 January 21 in LEAST-VS.NB *) range[thinpart[po[x_]]] := fix[thinpart[po[x]]] (* derived 2005 October 15 in TO-THIN.NB *) range[thinpart[to[x_]]] := fix[thinpart[to[x]]] (* derived 2007 June 5 in COA-ZN.NB *) range[thinpart[ZN]] := domain[VERTSECT[ZN]] (* derived 2006 September 23 in TIMES.NB *) range[TIMES] := binhom[NATADD,NATADD] (* derived 2005 July 17 in TIMES.NB *) range[times[x_]] := image[DIV,set[x]] (* derived 2005 October 8 in TO-WRAP.NB *) range[to[x_]] := fix[to[x]] (* added 2003 March 28 based on RA-TRV.NB *) range[trv[x_]] := range[x] (* added 2001 January 18 based on ROT-CPS.NB *) range[twist[x_]] := composite[SECOND,x,inverse[SECOND]] (* Theorem TW-3 in TWIST proved 1999 July 30 *) range[TWIST] := cart[cart[V,V],cart[V,V]] (* added 2000 November 5 based on UB-2.NB *) range[UB[x_]] := V (* derived 2008 July 8 in UBD-RA.NB *) range[UBD] := image[IMAGE[inverse[S]],complement[P[complement[set[0]]]]] (* added 2001 May 10 based on UCLOS-4.NB *) range[UCLOSURE] := fix[UCLOSURE] (* Theorem RA-3 in RA1 *) range[union[x_,y_]] := union[range[x],range[y]] (* Theorem RA-2B in RA1 *) range[V] := V (* derived 2004 February 25 in HULLUBLB.NB *) range[VERTSECT[complement[composite[complement[x_],LB[x_]]]]] := fix[VERTSECT[complement[composite[complement[x],LB[x]]]]] (* derived 2008 November 5 in MAP-FIN.NB *) range[VERTSECT[composite[id[cart[x_,V]],inverse[SECOND]]]] := image[CART,cart[set[x],range[SINGLETON]]] (* added 2002 November 17 based on HER-Z.NB *) range[VERTSECT[EQUIDIFF]] := union[Z,set[0]] (* derived 2007 June 9 in VS-LT-GT.NB *) range[VERTSECT[GREATEST[x_]]] := cliques[x] (* derived 2007 June 9 in VS-LT-GT.NB *) range[VERTSECT[LEAST[x_]]] := cliques[x] (* derived 2007 June 9 in VS-LT-GT.NB *) range[VERTSECT[MAXIMAL[x_]]] := cliques[union[Id,complement[x]]] (* derived 2007 June 9 in VS-LT-GT.NB *) range[VERTSECT[MINIMAL[x_]]] := cliques[union[Id,complement[x]]] (* added 2003 June 15 based on RA-VS.NB *) range[VS] := intersection[FUNS,P[cart[V,complement[set[0]]]]] (* derived 2004 September 25 in LAMB-WF.NB *) range[WFPART] := WF (* derived 2005 October 16 in WO-WRAP.NB *) range[wo[x_]] := fix[wo[x]] (* added 2001 July 12 based on ZN-2.NB *) range[ZN] := V (* added 2001 July 15 based on RANK.NB *) rank[0] := 0 (* derived 2006 May 18 in RK-ACL.NB *) rank[Aclosure[x_]] := rank[x] (* derived 2005 April 27 in CARDRANK.NB *) rank[card[x_]] := card[x] (* Corollary RK-IM-SR in RANK1 proved 2001 August 4 *) rank[image[inverse[S],x_]] := rank[x] (* Theorem RK-ZN-IM in RANK1 proved 2001 July 27 *) rank[image[ZN,x_]] := rank[x] (* derived 2007 August 6 in RK-RA-OL.NB *) rank[intersection[omega,complement[nat[x_]]]] := omega (* derived 2004 February 3 in FIN-RANK.NB *) rank[intersection[REGULAR,H[FINITE]]] := omega (* derived 2005 April 27 in CARDRANK.NB *) rank[nat[x_]] := nat[x] (* added 2001 December 2 based on RANK-2.NB *) rank[omega] := omega (* derived 2005 December 6 in ORDINAL.NB *) rank[ord[x_]] := ord[x] (* Theorem RK-PC in RANK1 proved 2001 August 3 *) rank[P[x_]] := succ[rank[x]] (* derived 2007 August 6 in RK-RA-OL.NB *) rank[PRIMES] := omega (* derived 2007 August 6 in RK-RA-OL.NB *) rank[range[ordlist[x_]]] := tc[range[ordlist[x]]] (* derived 2005 January 8 in RANK-UP.NB *) rank[set[x_,y_]] := union[intersection[image[V,set[x]],succ[rank[x]]], intersection[image[V,set[y]],succ[rank[y]]]] (* Theorem RK-RK-1 in RANK1 proved 2001 July 24 *) rank[rank[x_]] := rank[x] (* derived 2005 January 10 in SET.NB *) rank[set[x_,y___]] := union[intersection[image[V,set[x]],succ[rank[x]]],rank[set[y]]] (* added 2001 December 2 based on RANK-2.NB *) rank[succ[x_]] := succ[rank[x]] (* Theorem RK-TC-1 in RANK1 proved 2001 August 1 *) rank[tc[x_]] := rank[x] (* derived 2006 May 21 in RK-SC.NB *) rank[U[x_]] := U[rank[x]] (* derived 2006 May 21 in RK-UCL.NB *) rank[Uclosure[x_]] := succ[U[rank[x]]] (* Theorem RK-U in RANK1 proved 2001 August 5 *) rank[union[x_,y_]] := union[rank[x],rank[y]] (* added 2001 March 9 based on RC.NB *) RC[0] := cart[set[0],set[0]] (* added 2001 March 9 based on RC.NB *) RC[set[x_]] := union[cart[set[0],set[set[x]]], cart[set[set[x]],set[0]]] (* added 2002 February 3 based on RCF.NB *) RC[union[x_,complement[image[V,set[y_]]]]] := composite[id[image[V,set[y]]],RC[x]] (* derived 2004 August 3 in WF-REC-1.NB *) rec[0,x_] := 0 (* derived 2004 August 3 in WF-REC-1.NB *) rec[x_,0] := composite[x,RIGHT[0]] (* derived 2004 August 5 in WF-REC-2.NB *) rec[x_,composite[Id,y_]] := rec[x,y] (* derived 2008 May 3 in REC-ID.NB *) rec[composite[IMAGE[SECOND],SECOND],composite[inverse[E],id[OMEGA]]] := union[cart[complement[OMEGA],set[0]],id[OMEGA]] (* derived 2004 September 5 in WF-REC-4.NB *) rec[composite[POWER,BIGCUP,IMAGE[SECOND],SECOND],composite[inverse[E],id[REGULAR]]] := union[cart[complement[REGULAR],set[set[0]]],composite[VERTSECT[ZN],id[REGULAR]]] (* derived 2005 November 25 in RANK-ON.NB *) rec[composite[TC,IMAGE[SECOND],SECOND],composite[inverse[E],id[omega]]] := union[cart[complement[omega],set[0]],id[omega]] (* derived 2005 November 25 in RANK-ON.NB *) rec[composite[TC,IMAGE[SECOND],SECOND],composite[inverse[E],id[OMEGA]]] := union[cart[complement[OMEGA],set[0]],id[OMEGA]] (* derived 2005 December 1 in ORD-UNIQ.NB *) rec[composite[TC,IMAGE[SECOND],SECOND],composite[inverse[E],id[ord[x_]]]] := union[cart[complement[ord[x]],set[0]],id[ord[x]]] (* derived 2004 September 14 in WF-REC-6.NB *) rec[composite[TC,IMAGE[SECOND],SECOND],composite[inverse[E],id[REGULAR]]] := union[RANK,cart[complement[REGULAR],set[0]]] (* derived 2004 September 29 in WF-REC-7.NB *) rec[composite[TC,IMAGE[SECOND],SECOND],composite[inverse[SUCC],id[omega]]] := union[cart[complement[omega],set[0]],id[omega]] (* derived 2008 May 9 in PRIMESEQ.NB *) rec[composite[VERTSECT[composite[id[omega],complement[composite[complement[inverse[E]],id[PRIMES], complement[inverse[E]]]]]],IMAGE[SECOND],SECOND],composite[inverse[E],id[omega]]] := union[PRIMESEQ,cart[complement[omega],set[succ[set[0]]]]] (* added 2003 December 21 in RECT.NB *) RECTANGLE[x_] := equal[x,cart[domain[x],range[x]]] (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[0] := True (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[cart[x_,y_]] := or[equal[0,x],equal[0,y],equal[x,y]] (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[COARSER] := True (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[COMMUTE] := True (* derived 2007 October 18 in ERASE.NB *) REFLEXIVE[composite[CAP,id[x_],inverse[FIRST]]] := and[subclass[domain[x],fix[composite[inverse[S],x]]], subclass[image[CAP,x],fix[composite[inverse[S],x]]]] (* derived 2009 January 7 in CAT-DIV.NB *) REFLEXIVE[composite[cat[x_],inverse[FIRST]]] := True (* derived 2009 January 7 in CAT-DIV.NB *) REFLEXIVE[composite[cat[x_],inverse[SECOND]]] := True (* derived 2004 March 23 in ADJECT.NB *) REFLEXIVE[composite[CUP,id[cart[V,x_]],inverse[FIRST]]] := or[equal[0,x],member[0,x]] (* derived 2008 September 10 in RFX-S.NB *) REFLEXIVE[composite[Id,complement[composite[complement[x_],inverse[x_]]]]] := True (* derived 2008 September 10 in RFX-S.NB *) REFLEXIVE[composite[Id,complement[composite[complement[inverse[x_]],x_]]]] := True (* derived 2008 September 10 in RFX-S.NB *) REFLEXIVE[composite[Id,complement[composite[x_,complement[inverse[x_]]]]]] := True (* derived 2008 September 10 in RFX-S.NB *) REFLEXIVE[composite[Id,complement[composite[inverse[x_],complement[x_]]]]] := True (* added 2004 April 17 based on CORE.NB *) REFLEXIVE[composite[id[fix[x_]],x_,id[fix[x_]]]] := True (* derived 2004 October 2 in RFX.NB *) REFLEXIVE[composite[x_,id[y_],inverse[x_]]] := True (* derived 2005 October 19 in IN-RS.NB *) REFLEXIVE[composite[id[x_],inverse[y_],id[z_]]] := REFLEXIVE[composite[id[z],y,id[x]]] (* derived 2004 December 17 in RFX.NB *) REFLEXIVE[composite[id[y_],rfx[x_],id[y_]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[composite[id[x_],S]] := equal[x,image[inverse[S],x]] (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[composite[id[x_],S,id[x_]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[composite[x_,inverse[x_]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[composite[inverse[x_],x_]] := True (* derived 2007 August 2 in HULL-SG.NB *) REFLEXIVE[composite[inverse[E],HULL[x_],SINGLETON]] := True (* derived 2004 October 2 in RFX.NB *) REFLEXIVE[composite[inverse[x_],id[y_],x_]] := True (* derived 2004 October 14 in REFINE.NB *) REFLEXIVE[composite[inverse[IMAGE[inverse[S]]],COARSER]] := True (* derived 2004 October 14 in REFINE.NB *) REFLEXIVE[composite[inverse[IMAGE[inverse[S]]],S]] := True (* derived 2006 May 2 in RFX-XFM.NB *) REFLEXIVE[composite[inverse[x_],inverse[y_],x_]] := REFLEXIVE[composite[inverse[x],y,x]] (* derived 2006 May 2 in RFX-XFM.NB *) REFLEXIVE[composite[x_,inverse[y_],inverse[x_]]] := REFLEXIVE[composite[x,y,inverse[x]]] (* derived 2006 May 2 in RFX-XFM.NB *) REFLEXIVE[composite[inverse[x_],rfx[y_],x_]] := True (* derived 2004 December 18 in RFX-WRAP.NB *) REFLEXIVE[composite[inverse[x_],S,x_]] := True (* derived 2007 June 25 in HULL-TRV.NB *) REFLEXIVE[composite[inverse[S],ACLOSURE]] := True (* derived 2007 June 25 in HULL-TRV.NB *) REFLEXIVE[composite[inverse[S],HULL[x_]]] := True (* derived 2004 October 14 in REFINE.NB *) REFLEXIVE[composite[inverse[S],IMAGE[inverse[S]]]] := True (* derived 2007 June 25 in HULL-TRV.NB *) REFLEXIVE[composite[inverse[S],TC]] := True (* derived 2007 June 25 in HULL-TRV.NB *) REFLEXIVE[composite[inverse[S],UCLOSURE]] := True (* derived 2008 October 23 in PREFIX.NB *) REFLEXIVE[composite[JOIN,inverse[FIRST]]] := True (* derived 2008 October 24 in RFX-CMT.NB *) REFLEXIVE[composite[JOIN,inverse[FIRST],JOIN,inverse[SECOND]]] := True (* derived 2008 October 23 in PREFIX.NB *) REFLEXIVE[composite[JOIN,inverse[SECOND]]] := True (* derived 2004 March 18 in RFX-TRV.NB *) REFLEXIVE[composite[Q,S]] := True (* derived 2004 August 10 in RS-3.NB *) REFLEXIVE[composite[RESTRICT,id[P[cart[V,V]]]]] := True (* derived 2006 May 2 in RFX-XFM.NB *) REFLEXIVE[composite[x_,rfx[y_],inverse[x_]]] := True (* derived 2007 June 25 in HULL-TRV.NB *) REFLEXIVE[composite[S,CORE[x_]]] := True (* derived 2007 June 25 in HULL-TRV.NB *) REFLEXIVE[composite[S,HC]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[composite[S,id[x_]]] := equal[image[S,x],x] (* derived 2006 May 9 *) REFLEXIVE[composite[S,IMAGE[x_]]] := subclass[composite[Id,x],Id] (* derived 2005 October 6 in BINCL-X.NB *) REFLEXIVE[cross[rfx[x_],rfx[y_]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[Di] := False (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[DISJOINT] := False (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[DIV] := True (* derived 2008 November 26 in SEMIGP.NB *) REFLEXIVE[domain[binop[x_]]] := True (* derived 2009 January 21 in HOM.NB *) REFLEXIVE[domain[hom[x_]]] := True (* derived 2008 November 26 in QUASIGP.NB *) REFLEXIVE[domain[quasigp[x_]]] := True (* derived 2008 November 26 in SEMIGP.NB *) REFLEXIVE[domain[semigp[x_]]] := True (* derived 2006 January 3 in E.NB *) REFLEXIVE[E] := False (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[EQUIDIFF] := True (* derived 2004 May 12 in EQV-GEN.NB *) REFLEXIVE[eqv[x_]] := True (* derived 2007 March 1 in TRV-RFX.NB *) REFLEXIVE[hull[RFX,x_]] := and[member[x,V],subclass[x,cart[V,V]]] (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[id[x_]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[Id] := True (* derived 2004 July 26 in DORAFUNS.NB *) REFLEXIVE[image[DORA,FUNS]] := True (* derived 2006 October 21 in INTDIV.NB *) REFLEXIVE[INTDIV] := True (* derived 2007 June 7 in PO-IRR.NB *) REFLEXIVE[intersection[Di,x_]] := subclass[composite[Id,x],Id] (* derived 2006 September 26 in CORECART.NB *) REFLEXIVE[intersection[inverse[rfx[x_]],rfx[x_]]] := True (* derived 2006 September 24 in INTLEQ.NB *) REFLEXIVE[INTLEQ] := True (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[inverse[x_]] := REFLEXIVE[composite[Id,x]] (* derived 2008 August 23 in UB-RFX.NB *) REFLEXIVE[LB[x_]] := subclass[E,inverse[x]] (* derived 2005 October 1 in PO-WRAP.NB *) REFLEXIVE[po[x_]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[Q] := True (* derived 2004 December 18 in RFX-WRAP.NB *) REFLEXIVE[RC[x_]] := or[equal[0,x],not[member[x,V]]] (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[RESTRICT] := False (* derived 2004 December 16 in RFX-CORE.NB *) REFLEXIVE[rfx[x_]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[S] := True (* derived 2005 August 1 in SS-RULES.NB *) REFLEXIVE[set[x_]] := or[and[equal[first[x],second[x]],member[first[x],V]],not[member[x,V]]] (* derived 2006 October 20 in SETPART.NB *) REFLEXIVE[setpart[x_]] := or[not[member[x,V]],REFLEXIVE[x]] (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[SUBCOMMUTE] := True (* derived 2005 October 1 in PO-THIN.NB *) REFLEXIVE[thinpart[po[x_]]] := True (* derived 2004 December 17 in RFXTRV-C.NB *) REFLEXIVE[thinpart[rfx[trv[x_]]]] := True (* derived 2005 October 15 in TO-THIN.NB *) REFLEXIVE[thinpart[to[x_]]] := True (* derived 2005 October 8 in TO-WRAP.NB *) REFLEXIVE[to[x_]] := True (* derived 2006 October 7 in TRV-RFX.NB *) REFLEXIVE[trv[rfx[x_]]] := True (* derived 2008 August 23 in UB-RFX.NB *) REFLEXIVE[UB[x_]] := subclass[E,x] (* derived 2007 March 1 in TRV-RFX.NB *) REFLEXIVE[union[composite[Id,x_],id[union[domain[x_],range[x_]]]]] := True (* derived 2004 March 23 in TRV-K.NB *) REFLEXIVE[union[Id,x_]] := subclass[x,cart[V,V]] (* derived 2007 June 10 in ADD-ID.NB *) REFLEXIVE[union[id[x_],rfx[y_]]] := True (* derived 2007 March 1 in TRV-RFX.NB *) REFLEXIVE[union[x_,id[union[domain[x_],range[x_]]]]] := subclass[x,cart[V,V]] (* derived 2006 February 16 in HULL-RFX.NB *) REFLEXIVE[union[id[union[domain[x_],range[x_]]],trv[x_]]] := True (* derived 2008 January 31 in DJ-U-PO.NB *) REFLEXIVE[union[rfx[x_],rfx[y_]]] := True (* derived 2007 March 1 in TRV-RFX.NB *) REFLEXIVE[V] := False (* derived 2005 October 17 in 0-RFX.NB *) REFLEXIVE[wo[x_]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) REFLEXIVE[ZN] := True (* derived 2006 March 30 in REG-FIN.NB *) reg[fin[x_]] := fin[reg[x]] reify[x_,x_] := inverse[E] reify[x_,y_] := cart[V,y] /; FreeQ[y,x] reify[x_,A[y_]] := composite[Id,complement[composite[complement[inverse[E]], reify[x,y]]]] reify[x_,Aclosure[y_]] := composite[BIGCAP,inverse[LB[reify[x,y]]]] reify[x_,ADJOIN[y_]] := composite[SWAP,id[inverse[S]], intersection[composite[inverse[DIF],inverse[S]], composite[inverse[FIRST],S]],VERTSECT[reify[x,y]]] (* derived 2007 June 23 in ALLCLOSED.NB *) reify[x_,allclosed[y_]] := composite[Id,complement[composite[ intersection[composite[S,FIRST],composite[complement[E],SECOND]],reify[x,y]]]] (* added 2003 October 28 based on APPLY.NB *) reify[x_,APPLY[y_,z_]] := composite[Id,complement[composite[complement[inverse[E]],SECOND, intersection[composite[inverse[FIRST],VERTSECT[reify[x,z]]],reify[x,y]]]]] (* derived 2008 September 29 in BIJ.NB *) reify[x_,bij[y_,z_]] := composite[id[BIJ],intersection[ composite[inverse[IMAGE[FIRST]],VERTSECT[reify[x,y]]], composite[inverse[IMAGE[SECOND]],VERTSECT[reify[x,z]]]]] (* derived 2004 January 3 in BINCLOSE.NB *) reify[x_,binclosed[y_]] := composite[intersection[composite[S,IMAGE[rotate[inverse[reify[x,y]]]],CART], composite[inverse[DUP],inverse[CART],SECOND]],inverse[FIRST],SINGLETON] (* derived 2006 July 18 in BINHOM-1.NB *) reify[x_,binhom[y_,z_]] := composite[id[FUNS],intersection[ composite[inverse[IMAGE[FIRST]],VERTSECT[composite[inverse[DUP],FIRST,reify[x,y]]]], composite[SECOND,intersection[composite[cross[Id,composite[inverse[DUP],inverse[CROSS]]], inverse[rotate[composite[IMAGE[composite[SWAP,RIF,cross[reify[x,z],Id]]],CART,SWAP]]]], inverse[rotate[composite[IMAGE[composite[RIF,cross[composite[SWAP,reify[x,y]],SWAP]]],CART,SWAP]]]],SINGLETON], composite[inverse[IMAGE[SECOND]],inverse[IMAGE[DUP]],inverse[LB[composite[FIRST,reify[x,z]]]]]]] (* derived 2008 October 7 in BNP-WRAP.NB *) reify[x_,binop[y_]] := composite[reify[x,y],id[image[inverse[VERTSECT[reify[x,y]]],BINOPS]]] reify[x_,card[y_]] := union[cart[complement[ image[inverse[VERTSECT[reify[x,y]]],image[Q,OMEGA]]],V], composite[inverse[E],CARD,VERTSECT[reify[x,y]]]] reify[x_,cart[y_,z_]] := intersection[composite[inverse[FIRST],reify[x,y]], composite[inverse[SECOND],reify[x,z]]] (* derived 2007 May 5 in REPLACE.NB *) reify[x_,chains[y_]] := composite[inverse[E],CLIQUES, inverse[LB[union[composite[SWAP,reify[x,y]],reify[x,y]]]]] (* derived 2006 August 22 in CHAR.NB *) reify[x_,CHAR[y_]] := composite[cross[Id,CUP],id[composite[inverse[FIRST],IMAGE[RIGHT[set[0]]]]], cross[Id,composite[inverse[SECOND],IMAGE[RIGHT[0]]]],id[DISJOINT],inverse[CUP],VERTSECT[reify[x,y]]] (* derived 2006 October 9 in REIFCLIQ.NB *) reify[x_,cliques[y_]] := composite[inverse[E],CLIQUES,inverse[LB[reify[x,y]]]] (* derived 2006 July 13 in CLOCK.NB *) reify[x_,clock[y_]] := composite[SWAP,RIF,id[cart[V,SUCC]], intersection[composite[inverse[SECOND],inverse[FIRST],reify[x,y]], composite[inverse[FIRST],SWAP,inverse[rotate[NATMOD]],VERTSECT[reify[x,y]]]]] reify[x_,complement[y_]] := composite[Id,complement[reify[x,y]]] reify[x_,composite[y_,z_]] := composite[SWAP,RIF, intersection[composite[inverse[FIRST],reify[x,y]], composite[inverse[SECOND],reify[x,z]]]] reify[x_,CORE[y_]] := composite[SWAP,cross[BIGCUP,inverse[POWER]],inverse[ rotate[composite[IMAGE[SECOND],IMAGE[id[reify[x,y]]],CART,SWAP]]],SINGLETON] (* derived 2004 April 18 in CORE-IVR.NB *) reify[x_,core[y_,z_]] := composite[inverse[E],intersection[inverse[LB[reify[x,z]]],reify[x,y]]] reify[x_,cross[y_,z_]] := intersection[ composite[cross[inverse[FIRST],inverse[FIRST]],reify[x,y]], composite[cross[inverse[SECOND],inverse[SECOND]],reify[x,z]]] reify[x_,domain[y_]] := composite[FIRST,reify[x,y]] (* derived 2004 May 12 in EQUIV.NB *) reify[x_,eqv[y_]] := composite[inverse[E],CAP,intersection[ composite[inverse[FIRST],HULL[TRV],inverse[LB[reify[x,y]]]], composite[inverse[SECOND],INVERSE,HULL[TRV],inverse[LB[reify[x,y]]]]]] (* derived 2006 October 25 in EVAL.NB *) reify[x_,eval[y_]] := composite[SWAP,inverse[rotate[composite[inverse[SINGLETON],IMG]]], SINGLETON,VERTSECT[reify[x,y]]] (* derived 2005 October 17 in TO-FIN.NB *) reify[x_,fin[y_]] := composite[reify[x,y],id[image[inverse[VERTSECT[reify[x,y]]],FINITE]]] reify[x_,first[y_]] := union[cart[complement[image[inverse[VERTSECT[reify[x,y]]], cart[V,V]]],V],composite[inverse[E],FIRST,VERTSECT[reify[x,y]]]] reify[x_,fix[y_]] := composite[inverse[DUP],reify[x,y]] reify[x_,funpart[y_]] := composite[SWAP,inverse[rotate[ composite[funpart[rotate[inverse[reify[x,y]]]],SWAP]]]] (* derived 2005 September 27 in REIFY.NB *) reify[x_,GLB[y_]] := composite[SWAP,RIF,intersection[composite[inverse[SECOND],SWAP,intersection[ complement[composite[RIF,intersection[composite[inverse[FIRST],complement[reify[x,y]]], composite[inverse[SECOND],SWAP,RIF,intersection[composite[inverse[SECOND],SWAP,complement[ composite[cross[Id,E],complement[reify[x,y]]]]],composite[inverse[FIRST],DUP,FIRST,reify[x,y]]]]]]], complement[composite[cross[Id,E],complement[reify[x,y]]]]]],composite[inverse[FIRST],DUP,FIRST,reify[x,y]]]] reify[x_,GREATEST[y_]] := composite[id[inverse[E]], complement[composite[cross[E,Id],complement[reify[x,y]]]]] (* derived 2006 October 7 in REIF-H.NB *) reify[x_,H[y_]] := composite[inverse[E],id[FULL],inverse[LB[reify[x,y]]]] (* derived 2004 September 5 in REIFHIST.NB *) reify[x_,history[y_,z_]] := composite[id[inverse[FIRST]],inverse[SECOND],SWAP,RIF, intersection[composite[inverse[SECOND],SWAP,inverse[rotate[composite[VERTSECT[rotate[inverse[reify[x,z]]]],SWAP]]]], composite[inverse[FIRST],SWAP,inverse[rotate[composite[IMAGE[intersection[composite[inverse[FIRST],SECOND], composite[reify[x,y],FIRST]]],CART,SWAP]]],SINGLETON]]] reify[x_,HULL[y_]] := composite[SWAP,inverse[rotate[ composite[VERTSECT[complement[composite[complement[inverse[E]], intersection[composite[S,SECOND],composite[reify[x,y],FIRST]]]]], SWAP]]]] (* derived 2004 March 29 based on HULL.NB *) reify[x_,hull[y_,z_]] := composite[Id,complement[composite[complement[inverse[E]], intersection[composite[S,VERTSECT[reify[x,z]]],reify[x,y]]]]] reify[x_,id[y_]] := composite[DUP,reify[x,y]] (* derived 2008 December 16 in IDS.NB *) reify[x_,ids[y_]] := intersection[ complement[composite[FIRST,FIRST,id[composite[Di,SECOND]],reify[x,y]]], complement[composite[SECOND,FIRST,id[composite[Di,FIRST]],reify[x,y]]], composite[inverse[DUP],FIRST,reify[x,y]]] reify[x_,IMAGE[y_]] := composite[SWAP,inverse[rotate[ composite[IMAGE[rotate[inverse[reify[x,y]]]],CART,SWAP]]],SINGLETON] reify[x_,image[y_,z_]] := composite[SECOND,intersection[reify[x,y], composite[inverse[FIRST],reify[x,z]]]] (* added 2003 August 9 based on REIFZADD.NB *) reify[x_,intadd[y_,z_]] := union[cart[union[complement[image[inverse[VERTSECT[reify[x,y]]],Z]], complement[image[inverse[VERTSECT[reify[x,z]]],Z]]],V],composite[inverse[E],INTADD, intersection[composite[inverse[FIRST],VERTSECT[reify[x,y]]], composite[inverse[SECOND],VERTSECT[reify[x,z]]]]]] reify[x_,intersection[y_,z_]] := intersection[reify[x,y],reify[x,z]] (* derived 2007 January 7 in REIFZMUL.NB *) reify[x_,intmul[y_,z_]] := union[cart[union[complement[image[inverse[VERTSECT[reify[x,y]]],Z]], complement[image[inverse[VERTSECT[reify[x,z]]],Z]]],V],composite[inverse[E],INTMUL, intersection[composite[inverse[FIRST],VERTSECT[reify[x,y]]], composite[inverse[SECOND],VERTSECT[reify[x,z]]]]]] (* derived 2008 September 15 in INTTIMES.NB *) reify[x_,inttimes[y_]] := composite[SWAP,inverse[rotate[INTMUL]],VERTSECT[reify[x,y]]] reify[x_,invar[y_]] := composite[Id,complement[ composite[complement[INVAR],SINGLETON,reify[x,y]]]] reify[x_,inverse[y_]] := composite[SWAP,reify[x,y]] reify[x_,iterate[y_,z_]]:=composite[SWAP,RIF,id[cart[SECOND,V]], intersection[composite[inverse[SECOND],reify[x,power[y]]], composite[inverse[FIRST],inverse[FIRST],inverse[FIRST],reify[x,z]]]] reify[x_,LB[y_]] := composite[SWAP,complement[ composite[cross[Id,E],complement[reify[x,y]]]]] (* derived 2004 February 21 in LBUBREIF.NB *) reify[x_,lb[y_,z_]] := composite[Id,complement[composite[FIRST, intersection[complement[reify[x,y]],composite[inverse[SECOND],reify[x,z]]]]]] (* derived 2007 March 2 in LD-1.NB *) reify[x_,ld[y_,z_]] := composite[SECOND,intersection[ composite[inverse[FIRST],DIV,VERTSECT[reify[x,z]]], composite[inverse[NATADD],DIV,VERTSECT[reify[x,y]]]]] reify[x_,LEAST[y_]] := composite[SWAP,id[E], complement[composite[cross[Id,E],complement[reify[x,y]]]]] reify[x_,LEFT[y_]] := composite[id[inverse[SECOND]],inverse[SECOND], inverse[FIRST],VERTSECT[reify[x,y]]] (* derived 2008 October 20 in LIST.NB *) reify[x_,list[y_]] := composite[reify[x,y],id[image[inverse[VERTSECT[reify[x,y]]],LISTS]]] (* derived 2005 September 27 in REIFY.NB *) reify[x_,LUB[y_]] := composite[SWAP,RIF,intersection[composite[inverse[SECOND],intersection[ complement[composite[cross[E,Id],complement[reify[x,y]]]],composite[SWAP,complement[ composite[RIF,intersection[composite[inverse[FIRST],SWAP,complement[reify[x,y]]], composite[inverse[SECOND],SWAP,RIF,intersection[composite[inverse[SECOND],complement[ composite[cross[E,Id],complement[reify[x,y]]]]],composite[inverse[FIRST],DUP,SECOND,reify[x,y]]]]]]]]]], composite[inverse[FIRST],DUP,SECOND,reify[x,y]]]] reify[x_,map[y_,z_]] := composite[id[FUNS],intersection[ composite[inverse[IMAGE[FIRST]],VERTSECT[reify[x,y]]], composite[inverse[IMAGE[SECOND]],inverse[LB[reify[x,z]]]]]] reify[x_,MINIMAL[y_]] := composite[id[inverse[E]],complement[composite[cross[E,Id],id[Di],reify[x,y]]]] reify[x_,MAXIMAL[y_]] := composite[SWAP,id[E],complement[composite[cross[Id,E],id[Di],reify[x,y]]]] (* derived 2005 July 18 in MODULO.NB *) reify[x_,modulo[y_]] := composite[SWAP,inverse[rotate[NATMOD]],VERTSECT[reify[x,y]]] (* derived 2005 February 13 in NAT.NB *) reify[x_,nat[y_]] := composite[reify[x,y],id[image[inverse[VERTSECT[reify[x,y]]],omega]]] (* added 2002 October 29 based on REIF-NAT.NB *) reify[x_,natadd[y_,z_]] := union[cart[union[complement[image[inverse[VERTSECT[reify[x,y]]],omega]], complement[image[inverse[VERTSECT[reify[x,z]]],omega]]],V], composite[inverse[E],NATADD, intersection[composite[inverse[FIRST],VERTSECT[reify[x,y]]], composite[inverse[SECOND],VERTSECT[reify[x,z]]]]]] (* derived 2007 March 3 in REIF-ND.NB *) reify[x_,natdiv[y_,z_]] := composite[Id,complement[composite[complement[inverse[E]],SECOND, intersection[composite[inverse[FIRST],VERTSECT[reify[x,y]]], composite[inverse[rotate[NATMUL]],VERTSECT[reify[x,z]]]]]]] (* derived 2006 June 27 in NATEXP-1.NB *) reify[x_,natexp[y_,z_]] := union[cart[union[complement[image[inverse[VERTSECT[reify[x,y]]],omega]], complement[image[inverse[VERTSECT[reify[x,z]]],omega]]],V], composite[inverse[E],NATEXP,intersection[composite[inverse[FIRST],VERTSECT[reify[x,y]]], composite[inverse[SECOND],VERTSECT[reify[x,z]]]]]] (* derived 2005 May 17 based on NATMOD.NB *) reify[x_,natmod[y_,z_]] := composite[Id,complement[composite[complement[inverse[E]],SECOND, intersection[composite[inverse[NATADD],VERTSECT[reify[x,y]]], composite[inverse[FIRST],DIV,VERTSECT[reify[x,z]]]]]]] (* added 2002 October 29 based on REIF-NAT.NB *) reify[x_,natmul[y_,z_]] := union[cart[union[complement[image[inverse[VERTSECT[reify[x,y]]],omega]], complement[image[inverse[VERTSECT[reify[x,z]]],omega]]],V], composite[inverse[E],NATMUL, intersection[composite[inverse[FIRST],VERTSECT[reify[x,y]]], composite[inverse[SECOND],VERTSECT[reify[x,z]]]]]] (* added 2002 October 29 based on NATSUB.NB *) reify[x_,natsub[y_,z_]] := union[cart[ union[complement[image[inverse[VERTSECT[reify[x,y]]],omega]], complement[image[inverse[VERTSECT[reify[x,z]]],omega]], fix[composite[inverse[VERTSECT[reify[x,y]]],inverse[E], id[omega],VERTSECT[reify[x,z]]]]],V], composite[inverse[E],rotate[NATADD], intersection[composite[inverse[FIRST],VERTSECT[reify[x,y]]], composite[inverse[SECOND],VERTSECT[reify[x,z]]]]]] (* derived 2004 May 7 in OOPART.NB *) reify[x_,oopart[y_]] := intersection[ composite[SWAP,inverse[rotate[composite[funpart[rotate[inverse[reify[x,y]]]],SWAP]]]], inverse[rotate[composite[funpart[rotate[composite[inverse[reify[x,y]],SWAP]]],SWAP]]]] (* derived 2005 October 19 in ORD-WRAP.NB *) reify[x_,ord[y_]] := composite[reify[x,y],id[image[inverse[VERTSECT[reify[x,y]]],OMEGA]]] reify[x_,P[y_]] := inverse[LB[reify[x,y]]] reify[x_,PAIR[y_,z_]] := union[cart[ union[complement[domain[VERTSECT[reify[x,y]]]], complement[domain[VERTSECT[reify[x,z]]]]],V], composite[inverse[E],intersection[ composite[inverse[FIRST],VERTSECT[reify[x,y]]], composite[inverse[SECOND],VERTSECT[reify[x,z]]]]]] (* added 2003 September 24 based on REIFY.NB *) reify[x_,plus[y_]] := composite[SWAP,inverse[rotate[NATADD]],VERTSECT[reify[x,y]]] (* derived 2005 October 2 in PO-REIF.NB *) reify[x_,po[y_]] := composite[id[cart[V,V]],reify[x,y],id[image[inverse[SINGLETON], lb[image[inverse[CART],image[inverse[IMAGE[id[reify[x,y]]]],image[inverse[IMAGE[SECOND]],PO]]],image[CART,Id]]]]] reify[x_,power[y_]] := composite[inverse[E],complement[ composite[FIRST,id[composite[inverse[E],IMAGE[id[complement[cart[set[0],Id]]]]]], complement[composite[cross[E,Id],id[composite[id[cart[omega,V]],inverse[FIRST],SUCC,FIRST]], cross[inverse[SECOND],composite[inverse[SECOND],SWAP]],inverse[RIF],reify[x,y]]]]]] (* derived 2008 October 9 in QUASIGP.NB *) reify[x_,quasigp[y_]] := composite[reify[x,y],id[image[inverse[VERTSECT[reify[x,y]]],QUASIGPS]]] reify[x_,range[y_]] := composite[SECOND,reify[x,y]] reify[x_,rank[y_]] := union[cart[complement[ image[inverse[VERTSECT[reify[x,y]]],REGULAR]],V], composite[inverse[E],RANK,VERTSECT[reify[x,y]]]] reify[x_,RC[y_]] := composite[inverse[E],RCF,VERTSECT[reify[x,y]]] (* derived 2005 December 8 in REG.NB *) reify[x_,reg[y_]] := composite[reify[x,y],id[image[inverse[VERTSECT[reify[x,y]]],REGULAR]]] (* derived 2006 October 7 in REIF-RFX.NB *) reify[x_,rfx[y_]] := composite[inverse[E],id[RFX],inverse[LB[reify[x,y]]]] reify[x_,RIGHT[y_]] := composite[id[inverse[FIRST]], inverse[SECOND],inverse[SECOND],VERTSECT[reify[x,y]]] reify[x_,rotate[y_]] := composite[ROT,reify[x,y]] (* derived 2004 August 10 in RS-3.NB *) reify[x_,RS[y_]] := composite[IMAGE[composite[SWAP,RIF,cross[reify[x,y],Id]]],CART,id[cart[V,P[Id]]],inverse[FIRST],SINGLETON] reify[x_,second[y_]] := union[cart[ complement[image[inverse[VERTSECT[reify[x,y]]],cart[V,V]]],V], composite[inverse[E],SECOND,VERTSECT[reify[x,y]]]] (* derived 2008 October 19 in SEMIGP.NB *) reify[x_,semigp[y_]] := composite[reify[x,y],id[image[inverse[VERTSECT[reify[x,y]]],SEMIGPS]]] reify[x_,set[y_]] := VERTSECT[reify[x,y]] reify[x_,set[y_,z_]] := union[VERTSECT[reify[x,y]],VERTSECT[reify[x,z]]] (* derived 2004 April 18 in REIFWORK.NB *) reify[x_,setpart[y_]] := composite[reify[x,y],id[domain[VERTSECT[reify[x,y]]]]] (* derived 2007 June 10 in SPINE.NB *) reify[x_,spine[y_,z_]] := composite[Id,intersection[complement[composite[SECOND, intersection[composite[inverse[FIRST],reify[x,z]], composite[inverse[E],id[SYM],inverse[LB[complement[reify[x,y]]]]]]]],reify[x,z]]] (* added 2002 December 27 based on SBCOMMUT.NB *) reify[x_,subcommutant[y_]] := composite[Id,complement[fix[composite[SWAP,complement[ composite[cross[E,inverse[reify[x,y]]],inverse[RIF]]],RIF,cross[reify[x,y],inverse[E]]]]]] (* derived 2006 October 12 in REIF-SBV.NB *) reify[x_,subvar[y_]] := composite[inverse[E],SUBVAR,inverse[LB[reify[x,y]]]] reify[x_,succ[y_]] := union[reify[x,y],VERTSECT[reify[x,y]]] reify[x_,tc[y_]] := composite[inverse[E],TC,inverse[LB[reify[x,y]]]] (* derived 2004 May 14 in THINPART.NB *) reify[x_,thinpart[y_]] := intersection[composite[inverse[FIRST], domain[VERTSECT[rotate[inverse[reify[x,y]]]]]],reify[x,y]] (* derived 2005 July 17 in TIMES.NB *) reify[x_,times[y_]] := composite[SWAP,inverse[rotate[NATMUL]],VERTSECT[reify[x,y]]] (* derived 2005 October 11 in TO-REIF.NB *) reify[x_,to[y_]] := composite[id[cart[V,V]],reify[x,y],id[image[inverse[SINGLETON], lb[image[inverse[CART],image[inverse[IMAGE[id[reify[x,y]]]],image[inverse[IMAGE[SECOND]],TO]]],image[CART,Id]]]]] (* derived 2005 October 25 in TOP-WRAP.NB *) reify[x_,top[y_]] := composite[inverse[E],HULL[TOPS],VERTSECT[thinpart[reify[x,y]]]] (* derived 2004 June 16 in TRANSVAR.NB *) reify[x_,transvar[y_,z_]] := composite[Id,complement[composite[FIRST, intersection[complement[composite[cross[E,Id],reify[x,z]]],composite[cross[E,Id],reify[x,y]]]]]] reify[x_,trv[y_]] := composite[inverse[E],HULL[TRV],inverse[LB[reify[x,y]]]] reify[x_,twist[y_]] := composite[TWIST,reify[x,y]] reify[x_,U[y_]] := composite[inverse[E],reify[x,y]] reify[x_,UB[y_]] := composite[id[cart[V,V]], complement[composite[cross[E,Id],complement[reify[x,y]]]]] (* derived 2004 February 21 in LBUBREIF.NB *) reify[x_,ub[y_,z_]] := composite[Id,complement[composite[SECOND, intersection[complement[reify[x,y]],composite[inverse[FIRST],reify[x,z]]]]]] (* derived 2007 June 23 in UCHAINS.NB *) reify[x_,Uchains[y_]] := composite[BIGCUP,id[chains[S]],inverse[LB[reify[x,y]]]] reify[x_,Uclosure[y_]] := composite[BIGCUP,inverse[LB[reify[x,y]]]] reify[x_,union[y_,z_]] := union[reify[x,y],reify[x,z]] reify[x_,VERTSECT[y_]] := composite[SWAP,inverse[rotate[composite[VERTSECT[rotate[inverse[reify[x,y]]]],SWAP]]]] (* derived 2004 September 25 in LAMB-WF.NB *) reify[x_,wf[y_]] := composite[id[cart[V,V]],intersection[ complement[inverse[fix[composite[complement[inverse[fix[composite[inverse[SECOND],E,complement[ composite[SECOND,intersection[composite[inverse[FIRST],inverse[E],SECOND],composite[reify[x,y],SECOND,FIRST]]]]]]]], E,SECOND,FIRST]]]],reify[x,y]]] (* derived 2007 May 2 in REIF-WO.NB *) reify[x_,wo[y_]] := composite[id[cart[V,V]],reify[x,y],id[image[inverse[SINGLETON], lb[image[inverse[CART],image[inverse[IMAGE[id[reify[x,y]]]], image[inverse[IMAGE[SECOND]],WO]]],image[CART,Id]]]]] (* derived 2007 May 2 in WOB.NB *) reify[x_,wob[y_]] := composite[reify[x,y],id[image[inverse[VERTSECT[reify[x,y]]],image[Q,OMEGA]]]] (* derived 2004 October 28 in X.NB *) reify[x_,X[y_]] := composite[id[FUNS],intersection[composite[inverse[IMAGE[FIRST]], VERTSECT[composite[FIRST,reify[x,y]]]],inverse[LB[reify[x,y]]]]] (* Theorem IDX-RS4 in IDX2 *) restrict[z_,x_,y_] := composite[id[y],z,id[x]] (* used by Quaife *) (* derived 2004 December 18 in RFX-WRAP.NB *) rfx[cart[x_,y_]] := cart[intersection[x,y],intersection[x,y]] (* derived 2004 December 17 in RFX.NB *) rfx[composite[Id,x_]] := rfx[x] (* derived 2004 December 18 in RFX-WRAP.NB *) rfx[cross[x_,y_]] := cross[rfx[x],rfx[y]] (* derived 2004 December 18 in RFX-WRAP.NB *) rfx[DISJOINT] := cart[set[0],set[0]] (* derived 2004 December 16 in RFX-CORE.NB *) rfx[eqv[x_]] := eqv[x] (* derived 2004 December 18 in RFX-WRAP.NB *) rfx[funpart[x_]] := id[fix[funpart[x]]] (* derived 2004 December 17 in RFX.NB *) rfx[intersection[x_,y_]] := intersection[rfx[x],rfx[y]] (* derived 2004 December 17 in RFX.NB *) rfx[inverse[x_]] := inverse[rfx[x]] (* derived 2004 December 18 in RFX-WRAP.NB *) rfx[RESTRICT] := composite[RESTRICT,id[P[cart[V,V]]]] (* derived 2004 December 16 in RFX-CORE.NB *) rfx[rfx[x_]] := rfx[x] (* derived 2007 May 8 in PAIRSET.NB *) rfx[union[x_,inverse[x_]]] := union[inverse[rfx[x]],rfx[x]] (* derived 2005 August 5 in MODADD.NB *) RIGHT[complement[image[V,x_]]] := composite[RIGHT[0],id[image[V,x]]] (* added 2002 August 28 based on RIGHT.NB *) RIGHT[union[x_,complement[image[V,y_]]]] := composite[RIGHT[x],id[image[V,y]]] (* added 2002 August 28 based on RIGHT.NB *) RIGHT[union[x_,image[V,y_]]] := composite[RIGHT[x],id[complement[image[V,y]]]] (* added 1999 August 16 based on session NORMAL.4 *) RIGHT[V] := 0 (* Theorem RO-6A in RO3 *) rotate[0] := 0 (* added 1999 December 2 based on ROTATE.2 *) rotate[ASSOC] := composite[SECOND,SECOND,FIRST,id[cross[Id,FIRST]]] (* added 1999 December 2 based on BOOLEAN.LOG *) rotate[CAP] := composite[intersection[composite[DISJOINT,DIF],composite[S,SECOND]], SWAP,id[S]] (* discovered 1996 March 22 in FLIP.LOG *) rotate[cart[x_,y_]] := composite[x,SECOND,id[cart[y,V]]] (* added 1999 September 7 based on ROTATE.6 *) rotate[complement[x_]] := composite[complement[rotate[x]],id[cart[V,V]]] (* added 2002 November 13 based on NORM-ADD.NB *) rotate[composite[complement[composite[Di,SECOND,GREATEST[complement[cross[SUCC,SUCC]]]]], id[intersection[P[cart[omega,V]],subvar[union[cross[SUCC,SUCC], id[cart[set[0],V]]]]]],E]] := composite[rotate[inverse[power[SUCC]]],SWAP] (* added 2000 September 21 based on COMPOSE.NB *) rotate[composite[x_,complement[E]]] := composite[complement[rotate[E]],cross[inverse[x],Id]] (* discovered 1999 December 18 in DELTA-1.NB *) rotate[composite[complement[inverse[E]],CUP]] := composite[complement[E],FIRST,id[complement[E]]] (* added 2001 February 6 based on ROT-3.NB *) rotate[composite[x___,complement[S],DIF]] := composite[complement[S],DIF,SWAP,cross[inverse[composite[x]],Id]] (* added 2000 January 2 based on ROTATE-X.NB *) rotate[composite[x_,cross[y_,z_]]] := composite[inverse[z],rotate[x],cross[Id,y]] (* added 2003 August 10 based on RODIRECT.NB *) rotate[composite[cross[x_,y_],TWIST]] := composite[cross[rotate[x],rotate[y]],TWIST] (* added 1999 December 2 based on BOOLEAN.LOG *) rotate[composite[DIF,SWAP]] := composite[intersection[composite[S,FIRST], composite[inverse[S],CUP]],id[DISJOINT]] (* added 1999 December 2 based on 1999/NOV/30/SYMDIF-2.LOG *) rotate[composite[DISJOINT,CAP]] := composite[DISJOINT,CAP] (* added 1999 December 2 based on ROTATE.2 *) rotate[composite[DISJOINT,CART]] := composite[DISJOINT,IMG] (* added 2001 June 6 based on IMG-RO.NB *) rotate[composite[DISJOINT,CART,SWAP]] := composite[DISJOINT,IMG,cross[IMAGE[SWAP],Id]] (* added 2000 January 2 based on DC.NB *) rotate[composite[DISJOINT,COMPOSE]] := composite[DISJOINT,COMPOSE,SWAP,cross[Id,IMAGE[SWAP]]] (* added 2000 January 2 based on DC.NB *) rotate[composite[DISJOINT,COMPOSE,SWAP]] := composite[DISJOINT,COMPOSE,cross[Id,IMAGE[SWAP]]] (* added 1999 December 2 based on CUP-LOG.1 *) rotate[composite[DISJOINT,CUP]] := composite[DISJOINT,FIRST,id[DISJOINT]] (* added 1999 December 2 based on CAP-LOG.1 *) rotate[composite[DISJOINT,DIF]] := composite[S,CAP] (* added 1999 December 2 based on CAP-LOG.2 *) rotate[composite[DISJOINT,DIF,SWAP]] := composite[DISJOINT,DIF] (* added 2001 June 6 based on IMG-RO.NB *) rotate[composite[DISJOINT,IMG]] := composite[DISJOINT,IMG,SWAP,cross[Id,IMAGE[SWAP]]] (* added 2000 January 2 based on ROT-X.NB *) rotate[composite[DISJOINT,IMG,SWAP]] := composite[DISJOINT,CART,SWAP] (* added 1999 December 2 based on PAIRSET.1 *) rotate[composite[DISJOINT,PAIRSET]] := composite[complement[inverse[E]],FIRST,id[complement[inverse[E]]]] (* derived 2008 November 25 in RO-ASS.NB *) rotate[composite[domain[assoc[x_]],assoc[x_],SWAP]] := composite[inverse[domain[assoc[x]]],assoc[x],SWAP] (* added 2000 December 29 based on CLS6.NB *) rotate[composite[x___,E,inverse[E],DIF]] := composite[complement[S],CAP,cross[inverse[composite[x]],Id]] (* derived 2004 November 6 in IMIM-CAP.NB *) rotate[composite[x_,E,inverse[E],DIF,SWAP]] := composite[E,inverse[E],DIF,cross[inverse[x],Id]] (* added 2003 May 30 based on FIX-ROT.NB *) rotate[composite[x_,E,rotate[E]]] := composite[inverse[E],IMG,SWAP,cross[inverse[x],IMAGE[SWAP]]] (* added 1999 September 7 based on ROTATE.1 *) rotate[composite[x_,FIRST]] := cart[inverse[x],V] (* added 2001 February 4 based on IMAGEDIF.NB *) rotate[composite[FIRST,id[x_],intersection[composite[y_,FIRST],composite[inverse[SECOND], intersection[composite[u_,FIRST],composite[v_,SECOND]]]]]] := composite[inverse[v], intersection[composite[u,FIRST],composite[x,SECOND],rotate[inverse[y]]],SWAP] (* added 2001 February 1 based on RO-TW.NB *) rotate[composite[FIRST,intersection[composite[u_,cross[v_,w_]], composite[x_,SECOND]],SWAP]] := composite[inverse[v],FIRST, intersection[composite[inverse[u],intersection[composite[x,SECOND], composite[inverse[FIRST],FIRST]]],composite[inverse[SECOND],w,SECOND]]] (* added 2001 February 1 based on RO-TW.NB *) rotate[composite[FIRST,intersection[composite[w_,SECOND],composite[x_,cross[y_,z_]]]]] := composite[intersection[composite[inverse[w],FIRST], composite[inverse[z],SECOND,SECOND]],id[inverse[x]], cross[inverse[FIRST],composite[inverse[FIRST],y]]] (* added 1999 September 12 based on *) rotate[composite[Id,x_]] := rotate[x] (* added 1999 September 7 based on ROTATE.1 *) rotate[composite[id[x_],y_]] := composite[rotate[y],id[cart[x,V]]] (* added 1999 September 7 based on ROTATE.3 *) rotate[composite[x_,id[y_]]] := intersection[rotate[x],composite[y,SECOND]] (* added 2002 September 21 based on ROTATE.NB *) rotate[composite[image[inverse[NATADD],set[x_]],NATADD]] := composite[image[inverse[NATADD],set[x]],NATADD] (* added 2001 March 9 based on RO-FL-I.NB *) rotate[composite[intersection[x_,y_],SWAP]] := intersection[rotate[composite[x,SWAP]],rotate[composite[y,SWAP]]] (* added 1999 September 12 based on 1999\SEP\11\ROTATE.1 *) rotate[composite[x_,intersection[composite[y_,FIRST], composite[z_,SECOND]]]] := composite[inverse[z], intersection[composite[y,SECOND],composite[inverse[x],FIRST]]] (* weakened rule added 2001 February 8 based on REPEAT-3.NB *) rotate[composite[inverse[x_],complement[inverse[S]],CUP]] := composite[complement[S],DIF,cross[x,Id]] (* derived 2008 November 25 in RO-ASS.NB *) rotate[composite[inverse[domain[assoc[x_]]],assoc[x_]]] := composite[domain[assoc[x]],assoc[x]] (* added 1999 October 17 based on TRIPLES.2 *) rotate[composite[x_,inverse[DUP]]] := composite[SECOND,id[inverse[x]]] (* added 2001 June 1 based on ROTATE.NB *) rotate[composite[inverse[E],BIGCUP,IMG,SWAP]] := composite[inverse[IMAGE[SWAP]],E,cross[E,inverse[E]]] (* added 1999 December 2 based on CAP-LOG.1 *) rotate[composite[inverse[E],CAP]] := composite[E,FIRST,id[E]] (* added 1999 December 2 based on ROTATE.2 *) rotate[composite[inverse[E],CART]] := composite[E,SECOND,FIRST,id[composite[E,FIRST]]] (* added 1999 December 2 based on ROTATE.2 *) rotate[composite[inverse[E],COMPOSE]] := composite[E,intersection[composite[inverse[FIRST],FIRST,FIRST], composite[inverse[SECOND],FIRST,intersection[composite[inverse[E],SECOND], composite[inverse[SECOND],SECOND,FIRST]]]]] (* added 1999 December 2 based on ROTATE.2 *) rotate[composite[inverse[E],CROSS]] := composite[E,cross[SECOND,SECOND],FIRST, id[composite[E,cross[FIRST,FIRST]]]] (* added 1999 December 2 based on DIF-LOG.1 *) rotate[composite[inverse[E],DIF]] := composite[complement[E],FIRST,id[E]] (* added 1999 December 2 based on DIF-LOG.1 *) rotate[composite[inverse[E],DIF,SWAP]] := composite[E,FIRST,id[complement[E]]] (* added 2001 April 21 based on PT.NB *) rotate[composite[inverse[E],IMG,SWAP]] := composite[inverse[IMAGE[SWAP]],E,cross[Id,inverse[E]]] (* added 2001 May 25 based on FUNPART.NB *) rotate[composite[inverse[FUNPART],E]] := composite[inverse[SINGLETON],IMG,cross[Id,SINGLETON]] (* added 1999 November 30 based on IMG-SWAP.2 *) rotate[composite[inverse[IMAGE[id[cart[V,V]]]],E]] := rotate[E] (* added 2000 September 9 based on FNP-3.NB *) rotate[composite[x_,inverse[IMAGE[id[cart[V,V]]]],E]] := rotate[composite[x,E]] (* added 1999 December 27 based on ROT-IMG1.NB *) rotate[composite[inverse[E],IMG]] := composite[E,rotate[composite[inverse[IMAGE[SWAP]],E]],SWAP] (* derived 2006 December 21 in INTMUL-1.NB *) rotate[composite[inverse[INTTIMES],E]] := INTMUL (* added 1999 December 6 based on CURRY.NB *) rotate[composite[x_,inverse[LEFT[y_]]]] := composite[inverse[x],inverse[RIGHT[y]]] (* derived 2006 December 6 in MIXMUL-1.NB *) rotate[composite[inverse[MIXTIMES],E]] := MIXMUL (* derived 2006 July 1 in PLUS-MAP.NB *) rotate[composite[inverse[PLUS],E]] := NATADD (* added 1999 December 6 based on CURRY.NB *) rotate[composite[x_,inverse[RIGHT[y_]]]] := cart[inverse[x],set[y]] (* added 1999 December 2 based on CAP-LOG.1 *) rotate[composite[inverse[S],CAP]] := composite[S,FIRST,id[S]] (* added 1999 December 2 based on ROTATE.2 *) rotate[composite[inverse[S],CART]] := composite[S,IMAGE[SECOND],FIRST, id[composite[S,IMAGE[FIRST],id[P[cart[V,V]]]]]] (* added 1999 December 2 based on ROTATE.2 *) rotate[composite[inverse[S],CROSS]] := composite[S,IMAGE[cross[SECOND,SECOND]],FIRST, id[composite[S,IMAGE[cross[FIRST,FIRST]], id[P[cart[cart[V,V],cart[V,V]]]]]]] (* added 1999 December 2 based on 1999/NOV/30/SYMDIF-2.LOG *) rotate[composite[inverse[S],CUP]] := composite[S,DIF] (* added 1999 December 2 based on DIF-LOG.1 *) rotate[composite[inverse[S],DIF]] := composite[DISJOINT,FIRST,id[S]] (* added 1999 December 2 based on DIF-LOG.1 *) rotate[composite[inverse[S],DIF,SWAP]] := composite[S,FIRST,id[DISJOINT]] (* added 2001 March 8 based on IMAGEDIF.NB *) rotate[composite[inverse[S],POWER,CUP]] := composite[S,DIF,cross[BIGCUP,Id]] (* derived 2008 July 29 in FUNAPPLY.NB *) rotate[composite[inverse[SINGLETON],rotate[composite[inverse[SINGLETON],IMG]]]] := composite[inverse[FUNPART],E] (* derived 2006 October 21 in INTDIV.NB *) rotate[composite[inverse[TIMES],E]] := NATMUL (* added 2001 January 20 based on TWIST-3.NB *) rotate[composite[x_,RIF]] := composite[RIF,cross[inverse[x],Id]] (* added 2002 December 27 based on TWIST.NB *) rotate[composite[rotate[x_],inverse[ROT],SWAP]] := inverse[twist[x]] (* added 1999 November 30 based on ROT-SWAP.LOG *) rotate[composite[rotate[x_],SWAP]] := composite[x,SWAP] (* added 2001 February 3 based on ROTATE-2.NB *) rotate[composite[x_,rotate[y_],SWAP]] := composite[y,SWAP,cross[inverse[x],Id]] (* added 1999 December 2 based on CAP-LOG.1 *) rotate[composite[S,CAP]] := composite[DISJOINT,DIF,SWAP] (* added 1999 December 2 based on CUP-LOG.2 *) rotate[composite[S,CUP]] := composite[inverse[S],FIRST,id[inverse[S]]] (* added 1999 December 2 based on 1999/NOV/30/SYMDIF-2.LOG *) rotate[composite[S,DIF]] := composite[S,DIF,SWAP] (* added 1999 December 2 based on CUP-LOG.2 *) rotate[composite[S,DIF,SWAP]] := composite[inverse[S],CUP] (* discovered 1999 December 18 in DELTA-1.NB *) rotate[composite[S,PAIRSET]] := composite[inverse[E],FIRST,id[inverse[E]]] (* added 1999 September 7 based on ROTATE.1 *) rotate[composite[x_,SECOND]] := composite[inverse[x],FIRST] (* added 2001 January 28 based on GENERAL.NB *) rotate[composite[SECOND,intersection[composite[x_,FIRST], composite[inverse[FIRST],y_]],SWAP]] := composite[intersection[composite[inverse[x],FIRST], composite[rotate[composite[y,SWAP]],SWAP,SECOND]],inverse[RIF]] (* discovered 2000 January 2 in ROT-COMP.NB *) rotate[composite[x_,SYMDIF]] := composite[SYMDIF,cross[inverse[x],Id]] (* added 1999 September 7 based on ROTATE.7 *) rotate[cross[x_,y_]] := composite[inverse[y],SECOND,FIRST, id[composite[inverse[x],FIRST]]] (* added 1999 December 1 based on PAIRSET.LOG *) rotate[CUP] := composite[intersection[composite[S,DIF], composite[inverse[S],FIRST]],id[inverse[S]]] (* added 1999 December 2 based on BOOLEAN.LOG *) rotate[DIF] := composite[intersection[composite[DISJOINT,SECOND], composite[S,DIF]],SWAP,id[S]] (* added 1999 September 3 based on ROTATE.3 *) rotate[FIRST] := cart[Id,V] (* added 1999 December 2 based on ROTATE.2 *) rotate[Id] := composite[SECOND,FIRST,id[FIRST]] (* added 2003 August 12 based on RO-ZADD.NB *) rotate[INTADD] := composite[INTADD,cross[Id,INVERSE]] (* Theorem RO-1B in RO1 added 1999 September 7 *) rotate[intersection[x_,y_]] := intersection[rotate[x],rotate[y]] (* added 1999 December 2 based on ROTATE.2 *) rotate[inverse[ASSOC]] := composite[cross[SECOND,Id],FIRST,id[composite[FIRST,FIRST]]] (* added 1999 October 17 based on TRIPLES.1 *) rotate[inverse[DUP]] := inverse[DUP] (* added 1999 December 7 based on RESTRICT.NB *) rotate[inverse[LEFT[x_]]] := inverse[RIGHT[x]] (* added 1999 December 7 based on RESTRICT.NB *) rotate[inverse[RIGHT[x_]]] := cart[Id,set[x]] (* added 1999 September 12 based on 1999\SEP\07\ROTATE.6 *) rotate[inverse[ROT]] := composite[SECOND,FIRST,FIRST, id[composite[cross[Id,FIRST],SWAP]]] (* added 1999 December 1 based on PAIRSET.LOG *) rotate[PAIRSET] := composite[inverse[SINGLETON],SECOND, intersection[composite[inverse[CUP],FIRST], composite[inverse[FIRST],SINGLETON,SECOND]]] (* added 2001 February 15 based on RO-REG.NB *) rotate[REGULAR] := cart[cart[REGULAR,REGULAR],REGULAR] (* added 2001 January 20 based on RIF-2.NB *) rotate[RIF] := RIF (* added 1999 September 12 based on ROTATE.4 *) rotate[ROT] := composite[FIRST,FIRST,FIRST,id[cross[SECOND,Id]]] (* added 1999 November 30 based on LOOPING.NB *) rotate[rotate[x_]] := composite[rotate[composite[x,SWAP]],SWAP] (* added 2000 August 24 based on ROT-S.NB *) rotate[S] := composite[rotate[E],cross[POWER,Id]] (* added 1999 September 3 based on ROTATE.3 *) rotate[SECOND] := FIRST (* added 1999 December 2 based on ROTATE.2 *) rotate[SWAP] := composite[FIRST,FIRST,id[SECOND]] (* added 1999 December 2 based on SYMDIF-2.NB *) rotate[SYMDIF] := SYMDIF (* discovered 1999 December 18 in DELTA-1.NB *) rotate[TWIST] := composite[cross[SECOND,SECOND],FIRST,id[cross[FIRST,FIRST]]] (* Theorem RO-1D in RO1 *) rotate[union[x_,y_]] := union[rotate[x],rotate[y]] (* added 1999 September 3 based on ROTATE.2 *) rotate[V] := cart[cart[V,V],V] (* derived 2004 August 7 in RS-1.NB *) RS[0] := set[0] (* derived 2006 November 4 in RS-CART.NB *) RS[cart[x_,y_]] := image[CART,cart[P[x],set[setpart[y]]]] (* derived 2004 August 7 in RS-1.NB *) RS[composite[Id,x_]] := RS[x] (* derived 2004 August 9 in RS-2.NB *) RS[composite[thinpart[x_],id[y_]]] := RS[composite[x,id[y]]] (* derived 2004 August 9 in RS-2.NB *) RS[funpart[x_]] := P[funpart[x]] (* derived 2004 August 7 in RS-1.NB *) RS[Id] := P[Id] (* derived 2008 January 4 in PO-RS.NB *) RS[S] := set[0] (* derived 2004 August 9 in RS-2.NB *) RS[thinpart[x_]] := RS[x] (* derived 2004 August 7 in RS-1.NB *) RS[V] := set[0] (* added 2001 November 13 based on REPLACE.NB *) second[0] := V (* added 2001 November 13 based on 1ST-2ND.NB *) second[pair[x_,y_]] := union[y,complement[image[V,set[x]]], complement[image[V,set[y]]]] (* added 2002 January 1 based on PAIR-MEM.NB *) second[PAIR[x_,y_]] := union[y,complement[image[V,set[x]]], complement[image[V,set[y]]]] (* added 2002 November 1 based on IMV.NB *) second[union[x_,complement[image[V,y_]]]] := union[complement[image[V,y]],second[x]] (* added 2002 November 1 based on IMV.NB *) second[union[x_,image[V,y_]]] := union[image[V,y],second[x]] (* derived 2008 October 19 in SEMIGP.NB *) semigp[x_] := x /; member[x,SEMIGPS] (* introduced 2005 January 10 in SET.NB *) set[] := 0 (* unsafe flag added 2008 August 27 based on a looping problem in the file LOOPING.NB for an expression of form set[X[x]] set[x_] := 0 /; unsafe && simplify && not[member[U[x],V]] *) (* derived 2005 January 18 in SET-PC.NB *) set[x_,y___] := set[y] /; simplify && not[member[x,V]] (* derived 2005 January 10 in SET.NB *) set[x_,x_,y___] := set[x,y] (* added 2003 March 18 based on INDSCRET.NB *) set[0,intersection[x_,image[V,set[x_]]]] := set[0,x] (* added 1999 February 7 *) set[BIGCAP] := 0 (* Theorem BC-SS in BIGCUP/BC proved 1999 February 9 *) set[BIGCUP] := 0 (* Corollary SP-CP-C3 in SP3 proved 1999 February 28 *) set[complement[cart[x_,y_]]] := 0 set[complement[composite[x_,y_]]] := 0 set[complement[cross[x_,y_]]] := 0 set[complement[E]] := 0 (* Theorem FULC-SS in FUL2 proved 1999 March 27 *) set[complement[FULL]] := 0 (* derived 2007 August 6 in OL-NAT.NB *) set[complement[image[V,x_]]] := intersection[image[V,x],set[0]] set[complement[inverse[x_]]] := 0 (* Corollary ON-C-SS in ON1 proved 1999 March 2 *) set[complement[OMEGA]] := 0 set[complement[S]] := 0 (* Theorem SP-SS-C in SP3 proved 1998 July 16 *) set[complement[set[x_]]] := 0 (* Theorem SP-DI-SS in SP4 added 1998 August 8 *) set[Di] := 0 (* Corollary SP-DJT-5 in SP4 proved 1999 March 25 *) set[DISJOINT] := 0 set[DUP] := 0 (* Theorem SP-E-SS in SP4 *) set[E] := 0 set[FIRST] := 0 (* added 2003 May 12 based on LAMBHULL.NB *) set[fix[HULL[x_]]] := set[Aclosure[x]] (* added 1998 February 7 *) set[FULL] := 0 (* Theorem FS-RP-2 in FS added 1998 August 17 *) set[FUNS] := 0 (* Theorem SP-ID-SS in SP4 *) set[Id] := 0 (* Theorem SP-IM-SR in SP4 proved 1998 October 22 *) set[image[S,x_]] := intersection[set[0], complement[image[V,x]]] (* Theorem SP-SS-IM in SP2 *) set[image[V,x_]] := intersection[set[0],complement[image[V,x]]] (* From session REPLACE1.LOG added 1999 February 18 *) set[inverse[E]] := 0 (* added 1998 February 7 *) set[OMEGA] := 0 (* replaced 2002 January 1 based on REPLACE.NB *) set[PAIR[x_,y_]] := cart[set[x],set[y]] (* Theorem POW-SS in POW3 proved 1998 July 18 *) set[POWER] := 0 set[PS] := 0 (* Corollary SP-SG-RA proved 1998 October 24 in SP2 *) set[range[SINGLETON]] := 0 (* Theorem SUC-RA-5 in SUC-RELATION added 1998 August 7 *) set[range[SUCC]] := 0 (* Theorem REG-29 in REG2 *) set[REGULAR] := 0 set[RUSSELL] := 0 (* Theorem SP-SR-SS in SP4 *) set[S] := 0 set[SECOND] := 0 (* derived 2005 January 11 in SET-SUCC.NB *) set[x___,y_,set[y_]] := union[set[x],succ[set[y]]] (* Theorem SP-SG-SS in SP4 added 1998 August 8 *) set[SINGLETON] := 0 (* Theorem SUC-MEM2 in SUC-RELATION added 1998 August 7 *) set[SUCC] := 0 set[SWAP] := 0 (* added 2002 January 27 based on FIXCORE1.NB *) set[union[x_,complement[image[V,y_]]]] := intersection[image[V,y],set[x]] (* added 2002 February 16 based on SS.NB *) set[union[x_,image[V,y_]]] := intersection[complement[image[V,y]],set[x]] (* introduced 1996 March 7 in SINGLETO.M based on Theorem SP-9 in SP2 *) set[V] := 0 (* derived 2004 December 26 in SETPART.NB *) setpart[Aclosure[x_]] := Aclosure[setpart[x]] (* derived 2004 December 26 in SETPART.NB *) setpart[ADJOIN[x_]] := 0 (* derived 2004 May 14 in THINPART.NB *) setpart[cart[x_,y_]] := cart[setpart[x],setpart[y]] (* derived 2004 December 26 in SETPART.NB *) setpart[id[x_]] := id[setpart[x]] (* derived 2004 December 26 in SETPART.NB *) setpart[image[inverse[S],x_]] := image[inverse[S],setpart[x]] (* derived 2004 December 26 in SETPART.NB *) setpart[LEFT[x_]] := 0 (* derived 2004 December 26 in SETPART.NB *) setpart[RIGHT[x_]] := 0 (* derived 2004 March 20 in EQV-WRAP.NB *) setpart[setpart[x_]] := setpart[x] (* derived 2004 August 1 in SETHOOD.NB *) setpart[set[x_]] := set[x] (* derived 2004 December 26 in SETPART.NB *) setpart[tc[x_]] := tc[setpart[x]] (* derived 2004 December 26 in SETPART.NB *) setpart[U[x_]] := U[setpart[x]] (* derived 2004 June 5 in THPT-TRV.NB *) setpart[V] := 0 (* derived 2005 January 10 in SET.NB *) singleton[x_] := set[x] (* definition of the predicate singlevalued *) singlevalued[x_] := equal[0,fix[composite[inverse[x],complement[Id],x]]] (* Quaife introduced this predicate *) SINGVAL[x_] := subclass[composite[x,inverse[x]],Id] (* derived 2007 June 10 in SPINE.NB *) spine[0,x_] := intersection[x,complement[image[V,x]]] (* derived 2007 June 10 in SPINE.NB *) spine[composite[Id,x_],y_] := spine[x,y] (* derived 2007 June 10 in SPINE.NB *) spine[inverse[x_],y_] := spine[x,y] (* derived 2007 June 10 in SPINE.NB *) spine[x_,set[y_]] := intersection[fix[x],set[y]] (* derived 2007 June 10 in SPINE.NB *) spine[x_,spine[x_,y_]] := spine[x,y] (* derived 2007 October 4 in TOWERS.NB *) spine[S,V] := set[0] (* derived 2007 July 8 in IMS-ENS.NB removed 2007 July 9 because it causes looping to occur subclass[x_,y_] := False /; And[member[y,FINITE],member[card[y],card[x]]] *) (* derived 2006 August 27 in CARDOMSQ.NB removed 2008 October 31 due to looping problems: see NAT-LOOP.NB subclass[x_,y_] := not[member[y,x]] /; and[member[x,omega],member[y,omega]] *) (* Theorem SP-3A in SP1 *) subclass[0,x_] := True (* Theorem PO-1 in PO *) subclass[x_,x_] := True (* added 2002 May 6 based on A-IMS.NB *) subclass[A[x_],A[intersection[x_,y_]]] := True (* derived 2006 January 14 in OM-LFP.NB *) subclass[x_,A[fix[composite[ADJOIN[x_],y_]]]] := True (* derived 2006 May 13 in DBL-IND3.NB *) subclass[y_,A[fix[composite[S,id[image[S,set[y_]]],x_]]]] := True (* derived 2007 May 26 in A-HULL.NB *) subclass[A[x_],hull[x_,y_]] := True (* derived 2006 May 13 in DBL-IND3.NB *) subclass[y_,A[hull[invar[funpart[intersection[S,x_]]],set[y_]]]] := True (* derived 2006 May 13 in DBL-IND3.NB *) subclass[y_,A[image[funpart[intersection[S,x_]],image[S,set[y_]]]]] := True (* derived 2006 April 20 in ACL-NEST.NB *) subclass[v_,A[intersection[x_,complement[P[v_]]]]] := subclass[x,union[image[S,set[v]],P[v]]] (* derived 2007 September 6 in SU-A-ON.NB *) subclass[A[intersection[OMEGA,complement[x_]]],x_] := or[equal[V,x],not[subclass[OMEGA,x]]] (* derived 2007 September 6 in SU-A-ON.NB *) subclass[A[intersection[OMEGA,x_]],OMEGA] := not[equal[0,intersection[OMEGA,x]]] (* added 2000 January 5 based on A-SC-0.NB *) subclass[A[x_],U[x_]] := not[equal[0,x]] (* Theorem ACL-SU1 in ACL1 proved 2001 September 29 *) subclass[x_,Aclosure[x_]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[ACLOSURE,cart[x_,y_]] := and[equal[V,x],subclass[fix[ACLOSURE],y]] (* derived 2003 December 31 in COARSER.NB *) subclass[ACLOSURE,COARSER] := True (* derived 2004 January 23 in P-FINITE.NB *) subclass[Aclosure[x_],FINITE] := subclass[x,FINITE] (* added 2002 May 6 based on FIX-HULL.NB *) subclass[Aclosure[x_],fix[HULL[x_]]] := True (* derived 2007 December 18 in SU-FULL.NB *) subclass[Aclosure[x_],FULL] := subclass[x,FULL] (* derived 2007 December 18 in SU-FUND.NB *) subclass[Aclosure[x_],FUND] := subclass[x,FUND] (* Theorem ACL-IMS in ACL1 proved 2001 September 29 *) subclass[Aclosure[x_],image[inverse[S],x_]] := True (* derived 2004 April 24 in BA-BC.NB *) subclass[Aclosure[x_],image[inverse[S],Uclosure[x_]]] := True (* added 2002 October 8 based on ACL-IND.NB *) subclass[Aclosure[intersection[x_,y_]],Aclosure[x_]] := True (* derived 2006 March 21 in SU-REG.NB *) subclass[Aclosure[x_],REGULAR] := subclass[x,REGULAR] (* added 2001 May 10 based on ACLOSURE.NB *) subclass[ACLOSURE,S] := True (* derived 2006 January 30 in ACY-I.NB *) subclass[ACYCLIC,ANTISYM] := True (* derived 2006 January 30 in ACY-I.NB *) subclass[ACYCLIC,fix[composite[DISJOINT,INVERSE]]] := True (* derived 2007 June 7 in PO-IRR.NB *) subclass[ACYCLIC,image[inverse[S],PO]] := True (* derived 2004 January 2 in COAR-ADJ.NB *) subclass[ADJOIN[x_],COARSER] := or[equal[0,x],equal[x,set[0]],not[member[x,V]]] (* derived 2004 January 16 in ADJ-UIDK.NB *) subclass[ADJOIN[x_],Id] := or[equal[0,x],not[member[x,V]]] (* Theorem ADJ-SR in ADJ proved 1999 March 11 *) subclass[ADJOIN[x_],S] := True (* derived 2004 January 16 in ADJ-UIDK.NB *) subclass[ADJOIN[x_],union[Id,K]] := or[equal[0,x],member[x,range[SINGLETON]],not[member[x,V]]] (* derived 2007 June 23 in ALLCLOSED.NB *) subclass[allclosed[x_],domain[VERTSECT[x_]]] := True (* derived 2008 December 4 in UNCURRY.NB *) subclass[APPLY[CURRY,binop[x_]],cart[V,FUNS]] := True (* derived 2005 April 23 in FACT-S.NB *) subclass[x_,APPLY[FACTORIAL,x_]] := True (* derived 2006 May 29 in OL-AP.NB *) subclass[APPLY[ordlist[x_],y_],APPLY[ordlist[x_],succ[y_]]] := True (* derived 2005 August 17 in PRIMESEQ.NB *) subclass[x_,APPLY[PRIMESEQ,x_]] := True (* derived 2008 May 9 in PRIMESEQ.NB *) subclass[APPLY[PRIMESEQ,nat[x_]],omega] := True (* added 2003 November 8 based on APPLMONO.NB *) subclass[APPLY[x_,y_],U[image[x_,set[y_]]]] := member[y,domain[x]] (* derived 2008 November 21 in ASSOCFUN.NB *) subclass[assoc[x_],x_] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[ASSOC,cart[x_,y_]] := and[subclass[cart[V,cart[V,V]],y],subclass[cart[cart[V,V],V],x]] (* derived 2008 November 17 in ASS-WRAP.NB *) subclass[assoc[x_],cart[cart[V,V],V]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[BIGCAP,cart[x_,y_]] := and[equal[V,y],equal[V,union[x,set[0]]]] (* added 2001 September 9 based on ACLOSURE.NB *) subclass[BIGCAP,composite[inverse[S],BIGCUP]] := True subclass[BIGCUP,cart[x_,y_]] := and[equal[V,x],equal[V,y]] (* derived 2003 December 31 in BC-I.NB *) subclass[BIGCUP,composite[inverse[E],UCLOSURE]] := True (* derived 2003 December 31 in BC-I.NB *) subclass[BIGCUP,composite[inverse[POWER],S]] := True (* derived 2008 September 29 in BIJ.NB *) subclass[bij[x_,y_],BIJ] := True (* derived 2008 September 29 in BIJ.NB *) subclass[bij[x_,y_],FUNS] := True (* added 2000 September 4 based on NEW.M *) subclass[BIJ,FUNS] := True (* derived 2008 September 29 in BIJ.NB *) subclass[bij[x_,y_],image[INVERSE,FUNS]] := True (* derived 2004 December 27 in FUN-TRV.NB *) subclass[BIJ,image[INVERSE,FUNS]] := True (* derived 2008 October 1 in BIJ-MAP.NB *) subclass[bij[x_,y_],image[INVERSE,map[y_,x_]]] := True (* derived 2008 September 29 in BIJ.NB *) subclass[bij[x_,y_],map[x_,y_]] := True (* derived 2008 September 29 in BIJ.NB *) subclass[bij[x_,x_],PERMS] := True (* derived 2007 July 7 in LAMBHULL.NB *) subclass[BIJ,range[LAMBHULL]] := False (* derived 2007 July 27 in BINCL.NB *) subclass[binclosed[CAP],binclosed[CUP]] := False (* derived 2007 July 6 in CUPC-UCL.NB *) subclass[binclosed[CAP],fix[ACLOSURE]] := False (* derived 2007 July 27 in BINCL.NB *) subclass[binclosed[CAP],fix[IMAGE[inverse[S]]]] := False (* derived 2007 July 27 in BINCL.NB *) subclass[binclosed[CAP],range[CLIQUES]] := False (* added 2003 May 21 based on BINCLOSE.NB *) subclass[binclosed[x_],cliques[domain[VERTSECT[x_]]]] := True (* derived 2007 July 27 in BINCL.NB *) subclass[binclosed[CUP],binclosed[CAP]] := False (* derived 2007 July 27 in TOPS.NB *) subclass[binclosed[CUP],fix[ACLOSURE]] := False (* derived 2007 July 27 in BINCL.NB *) subclass[binclosed[CUP],fix[IMAGE[inverse[S]]]] := False (* derived 2007 July 6 in CUPC-UCL.NB *) subclass[binclosed[CUP],fix[UCLOSURE]] := False (* derived 2007 July 27 in BINCL.NB *) subclass[binclosed[CUP],range[CLIQUES]] := False (* revised 2003 May 24 based on DIF-DIF.NB *) subclass[binclosed[DIF],binclosed[CAP]] := True (* derived 2007 July 27 in BINCL.NB *) subclass[binclosed[x_],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := False (* derived 2007 July 25 in FIX-UCH.NB *) subclass[binclosed[x_],fix[UCHAINS]] := False (* derived 2007 July 27 in ACL-UCL.NB *) subclass[binclosed[x_],fix[UCLOSURE]] := False (* derived 2008 September 23 in BINCL-UB.NB *) subclass[binclosed[x_],invar[composite[x_,DUP]]] := True (* derived 2007 July 26 in RA-POWER.NB *) subclass[binclosed[x_],range[POWER]] := False (* derived 2007 July 27 in BINCL.NB *) subclass[binclosed[x_],range[SUBVAR]] := False (* derived 2005 September 8 in RAVS-DIV.NB *) subclass[binclosed[rotate[NATADD]],binclosed[NATMOD]] := True (* derived 2007 July 27 in TOPS.NB *) subclass[binclosed[x_],TOPS] := False (* derived 2006 July 18 in BINHOM-1.NB *) subclass[binhom[x_,y_],fix[composite[inverse[IMAGE[cross[inverse[x_],Id]]],IMAGE[cross[Id,y_]],CROSS,DUP]]] := True (* derived 2006 July 20 in BINHOM-3.NB *) subclass[binhom[x_,y_],FUNS] := True (* derived 2006 December 20 in DO-EVAL.NB *) subclass[binhom[INTADD,INTADD],domain[eval[x_]]] := member[x,Z] (* derived 2005 August 5 in BINHOM-5.NB *) subclass[binhom[INTADD,INTADD],map[Z,Z]] := True (* derived 2006 July 18 in BINHOM-1.NB *) subclass[binhom[x_,y_],map[fix[domain[x_]],fix[domain[y_]]]] := True (* derived 2006 December 20 in DO-EVAL.NB *) subclass[binhom[NATADD,INTADD],domain[eval[x_]]] := member[x,omega] (* derived 2006 December 3 in MIXDIV.NB *) subclass[binhom[NATADD,INTADD],map[omega,Z]] := True (* derived 2006 December 20 in DO-EVAL.NB *) subclass[binhom[NATADD,NATADD],domain[eval[x_]]] := member[x,omega] (* derived 2006 July 18 in BINHOM-2.NB *) subclass[binhom[NATADD,NATADD],map[omega,omega]] := True (* derived 2008 October 20 in BO-SU-CP.NB *) subclass[binop[x_],cart[y_,z_]] := and[subclass[domain[binop[x]],y],subclass[range[binop[x]],z]] (* derived 2006 June 10 in BINOPS.NB *) subclass[BINOPS,FUNS] := True (* derived 2006 June 17 in BIN-UNOP.NB *) subclass[BINOPS,U[image[MAP,cart[image[CART,Id],V]]]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[CAP,cart[x_,y_]] := and[equal[V,y],subclass[cart[V,V],x]] (* added 1999 October 7 based on SC5-LOG.3 *) subclass[CAP,composite[inverse[S],FIRST]] := True (* added 1999 October 7 based on SC5-LOG.3 *) subclass[CAP,composite[inverse[S],SECOND]] := True (* derived 2005 October 31 in RANK-SU.NB *) subclass[card[x_],card[y_]] := not[member[card[y],card[x]]] (* derived 2006 December 19 in SU-CP.NB *) subclass[CARD,cart[x_,y_]] := and[subclass[fix[CARD],y],subclass[image[Q,OMEGA],x]] (* derived 2005 November 4 in CARD-SU.NB *) subclass[card[x_],nat[y_]] := not[member[nat[y],card[x]]] (* derived 2007 September 6 in SU-A-ON.NB *) subclass[card[x_],OMEGA] := member[x,image[Q,OMEGA]] (* derived 2007 April 29 in ORD-CARD.NB *) subclass[card[x_],ord[y_]] := not[member[ord[y],card[x]]] (* added 2001 December 4 based on ON-WO.NB *) subclass[CARD,Q] := True (* derived 2005 April 27 in CARDRANK.NB *) subclass[card[rank[x_]],rank[x_]] := True (* added 1999 November 6 based on SU-CP-0.LOG *) subclass[cart[x_,y_],0] := or[equal[0,x],equal[0,y]] (* derived 2006 April 20 in ACL-NEST.NB *) subclass[cart[Aclosure[x_],y_],union[S,inverse[S]]] := subclass[cart[x,y],union[S,inverse[S]]] (* derived 2006 April 20 in ACL-NEST.NB *) subclass[cart[x_,Aclosure[y_]],union[S,inverse[S]]] := subclass[cart[x,y],union[S,inverse[S]]] (* derived 2006 September 23 in CMTV-CMT.NB *) subclass[cart[binhom[NATADD,NATADD],binhom[NATADD,NATADD]],COMMUTE] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[CART,cart[x_,y_]] := and[subclass[cart[V,V],x],subclass[range[CART],y]] subclass[cart[u_,v_],cart[x_,y_]] := or[equal[0,u],equal[0,v],and[subclass[u,x],subclass[v,y]]] (* derived 2004 June 11 in X702.NB *) subclass[x_,cart[cart[domain[domain[x_]],range[domain[x_]]],range[x_]]] := subclass[x,cart[cart[V,V],V]] (* derived 2008 October 8 in CARTRELN.NB *) subclass[cart[x_,y_],cart[V,V]] := True (* added 2003 August 8 based on CLIQEQDF.NB *) subclass[cart[cliques[EQUIDIFF],Z],union[DISJOINT,S]] := True (* derived 2008 February 9 in ASYM.NB *) subclass[cart[x_,x_],composite[Di,SWAP]] := and[equal[0,fix[composite[x,x]]],subclass[x,cart[V,V]]] (* derived 2007 May 11 in CONSTCLQ.NB *) subclass[cart[x_,x_],composite[inverse[SECOND],SECOND]] := or[and[member[range[x],range[SINGLETON]],subclass[x,cart[V,V]]],equal[0,x]] (* derived 2006 September 4 in PLUS-CO.NB *) subclass[cart[composite[plus[x_],inverse[plus[y_]]],composite[plus[x_],inverse[plus[y_]]]],EQUIDIFF] := True (* added 2002 January 2 based on CRSRULES.NB *) subclass[cart[u_,v_],cross[x_,y_]] := or[and[subclass[u,cart[V,V]],subclass[v,cart[V,V]], subclass[cart[domain[u],domain[v]],x],subclass[cart[range[u],range[v]],y]],equal[0,u],equal[0,v]] (* added 2002 September 10 based on DJ-DJT.NB *) subclass[cart[x_,y_],DISJOINT] := equal[0,intersection[U[x],U[y]]] (* derived 2006 November 14 in FUN-CHAR.NB *) subclass[x_,cart[domain[funpart[x_]],V]] := FUNCTION[x] (* derived 2004 March 18 in RFX-WRAP.NB *) subclass[x_,cart[domain[x_],range[x_]]] := subclass[x,cart[V,V]] (* derived 2004 August 7 in RS-1.NB *) subclass[x_,cart[domain[x_],V]] := subclass[x,cart[V,V]] (* derived 2004 May 14 in THINPART.NB *) subclass[x_,cart[domain[VERTSECT[x_]],V]] := and[equal[V,domain[VERTSECT[x]]],subclass[x,cart[V,V]]] (* added 2002 September 10 based on DJ-CP.NB *) subclass[cart[x_,y_],E] := subclass[x,A[y]] (* derived 2008 April 18 in FIX-CARD.NB *) subclass[cart[fix[CARD],fix[CARD]],union[S,inverse[S]]] := True (* derived 2004 March 18 in RFX-WRAP.NB *) subclass[x_,cart[fix[x_],fix[x_]]] := REFLEXIVE[x] (* derived 2006 April 20 in ACL-NEST.NB *) subclass[cart[fix[HULL[x_]],y_],union[S,inverse[S]]] := subclass[cart[x,y],union[S,inverse[S]]] (* derived 2006 April 20 in ACL-NEST.NB *) subclass[cart[x_,fix[HULL[y_]]],union[S,inverse[S]]] := subclass[cart[x,y],union[S,inverse[S]]] (* derived 2007 May 8 in POWER.TXT *) subclass[cart[fix[po[x_]],fix[po[x_]]],union[inverse[po[x_]],po[x_]]] := TOTALORDER[po[x]] (* derived 2006 May 13 in DBL-IND3.NB *) subclass[cart[hull[invar[funpart[intersection[S,x_]]],set[y_]],hull[invar[funpart[intersection[S,x_]]],set[y_]]], union[composite[S,funpart[intersection[S,x_]]],inverse[S]]] := True (* derived 2006 May 8 in CHAIN.NB *) subclass[cart[hull[invar[funpart[intersection[S,x_]]],set[y_]], hull[invar[funpart[intersection[S,x_]]],set[y_]]],union[S,inverse[S]]] := True (* derived 2007 August 21 in IVR-UCH.NB *) subclass[cart[hull[invar[UCHAINS],set[x_]],hull[invar[UCHAINS],set[x_]]],union[S,inverse[S]]] := True (* added 2002 September 9 based on CP-SU-ID.NB *) subclass[cart[x_,y_],Id] := or[and[equal[x,y], member[x,range[SINGLETON]]],equal[0,x],equal[0,y]] (* added 2002 June 21 based on NATSUB.NB *) subclass[cart[id[omega],id[omega]],composite[inverse[rotate[NATADD]],rotate[NATADD]]] := True (* derived 2006 September 7 in CO-IMS-Z.NB *) subclass[cart[id[omega],id[omega]],EQUIDIFF] := True (* derived 2004 November 14 in DJ-U.NB *) subclass[cart[image[CART,composite[funpart[x_],inverse[SINGLETON]]], image[CART,composite[funpart[x_],inverse[SINGLETON]]]],union[DISJOINT,Id]] := True (* derived 2004 November 14 in DJ-U.NB *) subclass[cart[image[CART,composite[VERTSECT[x_],inverse[SINGLETON]]], image[CART,composite[VERTSECT[x_],inverse[SINGLETON]]]],union[DISJOINT,Id]] := True (* derived 2007 September 3 in CHN-SQR.NB *) subclass[cart[image[CART,id[x_]],image[CART,id[x_]]],union[S,inverse[S]]] := subclass[cart[x,x],union[S,inverse[S]]] (* derived 2004 November 14 in DJ-U.NB *) subclass[cart[image[CART,inverse[SINGLETON]],image[CART,inverse[SINGLETON]]],union[DISJOINT,Id]] := True (* derived 2004 June 6 in EQV-TRV.NB *) subclass[cart[image[eqv[x_],set[y_]],image[eqv[x_],set[y_]]],eqv[x_]] := True (* derived 2007 September 4 in U-CHAINS.NB *) subclass[cart[image[IMAGE[id[x_]],image[IMAGE[inverse[RANK]],OMEGA]], image[IMAGE[id[x_]],image[IMAGE[inverse[RANK]],OMEGA]]],union[S,inverse[S]]] := True (* derived 2007 September 18 in UCH-WO.NB *) subclass[cart[image[IMAGE[x_],image[CART,id[omega]]], image[IMAGE[x_],image[CART,id[omega]]]],union[S,inverse[S]]] := True (* derived 2006 April 14 in PC-TOWER.NB *) subclass[cart[image[IMAGE[inverse[RANK]],omega],image[IMAGE[inverse[RANK]],omega]],union[S,inverse[S]]] := True (* derived 2006 April 14 in PC-TOWER.NB *) subclass[cart[image[IMAGE[inverse[RANK]],omega],image[IMAGE[inverse[RANK]],omega]], union[composite[S,POWER,id[FULL]],inverse[S]]] := True (* derived 2007 September 4 in U-CHAINS.NB *) subclass[cart[image[IMAGE[x_],OMEGA],image[IMAGE[x_],OMEGA]],union[S,inverse[S]]] := True (* derived 2005 February 20 in CARD-TWO.NB *) subclass[cart[image[PAIRSET,Di],image[PAIRSET,Di]],Q] := True (* derived 2005 November 9 in POWCHAIN.NB *) subclass[cart[image[POWER,x_],image[POWER,x_]],union[S,inverse[S]]] := subclass[cart[x,x],union[S,inverse[S]]] (* derived 2008 January 26 in CHN-Q-S.NB *) subclass[cart[image[Q,OMEGA],image[Q,OMEGA]],union[composite[Q,S],composite[Q,inverse[S]]]] := True (* derived 2005 February 20 in CARD-ONE.NB *) subclass[cart[image[Q,set[x_]],image[Q,set[x_]]],Q] := True (* derived 2004 October 12 in CMPCT-OM.NB *) subclass[cart[image[RC[omega],omega],image[RC[omega],omega]],union[S,inverse[S]]] := True (* derived 2004 November 14 in DJ-U.NB *) subclass[cart[image[SINGLETON,x_],image[SINGLETON,x_]],union[DISJOINT,Id]] := True (* derived 2004 November 14 in DJ-U.NB *) subclass[cart[image[VERTSECT[cross[Id,x_]],Id],image[VERTSECT[cross[Id,x_]],Id]],union[DISJOINT,Id]] := True (* derived 2006 October 16 in EQV-PROJ.NB *) subclass[cart[image[VERTSECT[eqv[x_]],fix[eqv[x_]]],image[VERTSECT[eqv[x_]],fix[eqv[x_]]]], union[DISJOINT,Id]] := True (* derived 2007 August 1 in TO-CHN-S.NB *) subclass[cart[image[VERTSECT[to[x_]],fix[to[x_]]],image[VERTSECT[to[x_]],fix[to[x_]]]],union[S,inverse[S]]] := True (* added 2003 September 21 based on RFX-CORE.NB *) subclass[u_,cart[intersection[v_,w_],intersection[x_,y_]]] := and[subclass[u,cart[v,x]],subclass[u,cart[w,y]]] (* derived 2004 March 6 in LB-UB-SU.NB *) subclass[cart[intersection[z_,lb[x_,y_]],y_],x_] := True (* derived 2007 June 10 in LEAST.NB *) subclass[cart[intersection[y_,lb[x_,y_]],intersection[y_,lb[x_,y_]]],x_] := True (* derived 2007 September 25 in UCH-CL.NB *) subclass[cart[intersection[omega,x_],intersection[omega,x_]],union[S,inverse[S]]] := True (* added 2002 November 24 based on VERTSECT.NB *) subclass[cart[intersection[x_,set[u_]],intersection[y_,set[v_]]],w_] := or[member[pair[u,v],w],not[member[u,x]],not[member[v,y]]] (* derived 2004 March 6 in LB-UB-SU.NB *) subclass[cart[y_,intersection[z_,ub[x_,y_]]],x_] := True (* derived 2004 March 9 in IDEMLTGT.NB *) subclass[cart[intersection[x_,y_],ub[z_,x_]],z_] := True (* derived 2007 June 10 in LEAST.NB *) subclass[cart[intersection[y_,ub[x_,y_]],intersection[y_,ub[x_,y_]]],x_] := True (* added 2001 November 6 based on CP-SU.NB *) subclass[cart[x_,y_],inverse[z_]] := subclass[cart[y,x],z] (* derived 2004 February 19 in REPLACE2.NB *) subclass[cart[lb[x_,y_],y_],x_] := True (* derived 2004 December 21 in COMUTANT.NB *) subclass[cart[x_,lb[COMMUTE,x_]],COMMUTE] := True (* derived 2004 March 9 in IDEMLTGT.NB *) subclass[cart[lb[x_,y_],intersection[y_,z_]],x_] := True (* derived 2004 February 25 in HULLUBLB.NB *) subclass[cart[lb[x_,z_],ub[x_,lb[x_,y_]]],x_] := subclass[cart[lb[x,z],y],x] (* derived 2004 February 25 in HULLUBLB.NB *) subclass[cart[lb[x_,ub[x_,y_]],ub[x_,z_]],x_] := subclass[cart[y,ub[x,z]],x] (* derived 2006 November 16 in MAP-SU.NB *) subclass[cart[map[x_,y_],x_],composite[inverse[E],IMAGE[FIRST]]] := True (* derived 2005 December 28 in CL-NAT.NB *) subclass[cart[nat[x_],nat[x_]],union[S,inverse[S]]] := True (* added 2002 June 8 based on POWER-SU..NB *) subclass[cart[omega,id[fix[x_]]],power[x_]] := True (* derived 2007 August 3 in TRICHOT.NB *) subclass[cart[OMEGA,OMEGA],union[composite[inverse[E],SUCC],composite[inverse[SUCC],E]]] := True (* derived 2006 May 13 in DBL-IND3.NB *) subclass[cart[omega,omega],union[composite[S,SUCC],inverse[S]]] := True (* added 2002 May 13 based on OM-SC-3.NB *) subclass[cart[omega,omega],union[E,composite[inverse[E],SUCC]]] := True (* added 2002 October 3 based on MONOSUB1.NB *) subclass[cart[omega,omega],union[S,inverse[E]]] := True (* added 2001 November 11 based on CHAINS.NB *) subclass[cart[omega,omega],union[S,inverse[S]]] := True (* derived 2008 January 26 in CHN-Q-S.NB *) subclass[cart[OMEGA,OMEGA],union[composite[Q,S],composite[Q,inverse[S]]]] := True (* added 2000 December 12 based on ON-ORD-5.NB *) subclass[cart[OMEGA,OMEGA],union[composite[S,SUCC],inverse[S]]] := True (* added 2000 December 12 based on ON-ORD-5.NB *) subclass[cart[OMEGA,OMEGA],union[E,composite[inverse[E],SUCC]]] := True (* Corollary ONORD-6A in ON3 proved 2000 December 12 *) subclass[cart[OMEGA,OMEGA],union[E,inverse[S]]] := True (* added 2000 December 12 based on ON-ORD-5.NB *) subclass[cart[OMEGA,OMEGA],union[S,composite[inverse[SUCC],inverse[S]]]] := True (* Corollary ONORD-6B in ON3 proved 2000 December 12 *) subclass[cart[OMEGA,OMEGA],union[S,inverse[E]]] := True (* Corollary ONORD-5A in ON3 proved 2000 December 12 *) subclass[cart[OMEGA,OMEGA],union[S,inverse[S]]] := True (* derived 2007 August 3 in TRICHOT.NB *) subclass[cart[ord[x_],ord[x_]],union[composite[inverse[E],SUCC],composite[inverse[SUCC],E]]] := True (* derived 2008 February 24 in TRICH-ON.NB *) subclass[cart[ord[x_],ord[x_]],union[E,composite[inverse[E],SUCC]]] := True (* derived 2005 October 19 in TO-CL-WO.NB *) subclass[cart[ord[x_],ord[x_]],union[S,inverse[S]]] := True (* derived 2004 December 21 in COMUTANT.NB *) subclass[cart[P[complement[cart[V,V]]],V],COMMUTE] := True (* derived 2004 December 21 in SBCOMMUT.NB *) subclass[cart[P[complement[cart[V,V]]],V],SUBCOMMUTE] := True (* added 2002 December 23 based on REPLACE.NB *) subclass[cart[P[complement[domain[x_]]],V],composite[S,IMAGE[x_]]] := True (* derived 2004 April 20 in ID-REVU.NB *) subclass[cart[P[Id],P[Id]],fix[composite[inverse[CAP],COMPOSE]]] := True (* derived 2004 January 22 in INVAR.NB *) subclass[cart[P[x_],invar[x_]],INVAR] := True (* derived 2006 September 7 in CO-IMS-Z.NB *) subclass[cart[plus[x_],plus[x_]],EQUIDIFF] := True (* derived 2006 May 13 in DBL-IND3.NB *) subclass[cart[PRIMES,PRIMES],union[composite[S,HULL[PRIMES],SUCC],inverse[S]]] := True (* derived 2006 May 13 in DBL-IND3.NB *) subclass[cart[range[ordlist[x_]],range[ordlist[x_]]], union[composite[S,HULL[intersection[OMEGA,x_]],SUCC],inverse[S]]] := True (* derived 2006 September 23 in CMTV-CMT.NB *) subclass[cart[range[PLUS],range[PLUS]],COMMUTE] := True (* Theorem Q-RA-SG1 in Q proved 2000 April 27 *) subclass[cart[range[SINGLETON],range[SINGLETON]],Q] := True (* derived 2006 October 10 in RA-SG-DJ.NB *) subclass[cart[range[SINGLETON],range[SINGLETON]],union[DISJOINT,Id]] := True (* derived 2004 July 15 in X1698.NB *) subclass[cart[range[VERTSECT[eqv[x_]]],range[VERTSECT[eqv[x_]]]],union[DISJOINT,Id]] := True (* derived 2007 November 22 in SU-HERED.NB *) subclass[cart[x_,x_],REGULAR] := subclass[x,REGULAR] (* derived 2008 January 2 in FINCHR-1.NB *) subclass[cart[x_,x_],rfx[y_]] := subclass[cart[x,x],y] (* added 2001 November 6 based on CP-SU.NB *) subclass[cart[x_,y_],S] := subclass[U[x],A[y]] (* added 2002 October 18 based on SINGLTON.NB *) subclass[cart[set[x_],y_],z_] := or[not[member[x,V]],subclass[y,image[z,set[x]]]] (* added 2002 October 18 based on SINGLTON.NB *) subclass[cart[x_,set[y_]],z_] := or[not[member[y,V]],subclass[x,image[inverse[z],set[y]]]] (* derived 2007 June 10 in SPINE.NB *) subclass[cart[spine[x_,y_],spine[x_,y_]],union[x_,inverse[x_]]] := True (* derived 2007 August 10 in SPINE.NB *) subclass[cart[spine[x_,y_],y_],union[x_,inverse[x_]]] := True (* derived 2007 August 15 in MEMB-SU.NB *) subclass[cart[x_,spine[y_,x_]],union[y_,inverse[y_]]] := True (* derived 2005 October 19 in TO-CL-WO.NB *) subclass[cart[succ[omega],succ[omega]],union[S,inverse[S]]] := True (* added 2003 June 23 based on T1.NB *) subclass[cart[U[t_],complement[U[t_]]], composite[complement[inverse[E]],id[t_],E]] := True (* derived 2006 September 19 in IMG-X.NB *) subclass[cart[U[fix[IMAGE[x_]]],U[fix[IMAGE[y_]]]],U[fix[IMAGE[cross[x_,y_]]]]] := True (* derived 2006 September 19 in IMG-X.NB *) subclass[cart[U[subvar[x_]],U[subvar[y_]]],U[subvar[cross[x_,y_]]]] := True (* derived 2004 February 19 in REPLACE2.NB *) subclass[cart[y_,ub[x_,y_]],x_] := True (* derived 2006 April 16 in UCL-NEST.NB *) subclass[cart[Uclosure[x_],y_],union[S,inverse[S]]] := subclass[cart[x,y],union[S,inverse[S]]] (* derived 2006 April 16 in UCL-NEST.NB *) subclass[cart[x_,Uclosure[y_]],union[S,inverse[S]]] := subclass[cart[x,y],union[S,inverse[S]]] (* derived 2007 September 8 in UCH-SQ.NB *) subclass[cart[x_,y_],union[cart[x_,x_],cart[y_,y_]]] := or[subclass[x,y],subclass[y,x]] (* derived 2007 October 21 in RELN.NB *) subclass[x_,cart[union[y_,domain[x_]],z_]] := subclass[x,cart[V,z]] (* derived 2004 June 26 in X1639.NB *) subclass[x_,cart[union[y_,fix[x_]],union[y_,fix[x_]]]] := REFLEXIVE[union[x,id[y]]] (* derived 2008 February 10 in TRICH-I.NB *) subclass[cart[u_,v_],union[Id,composite[Id,x_],inverse[y_]]] := subclass[cart[u,v],union[Id,x,inverse[y]]] (* derived 2008 February 26 in WF-TRICH.NB *) subclass[cart[x_,x_],union[Id,composite[id[x_],inverse[IMAGE[id[x_]]],E], composite[inverse[E],IMAGE[id[x_]],id[x_]]]] := subclass[cart[x,x],union[E,composite[inverse[E],SUCC]]] (* derived 2007 October 21 in RELN.NB *) subclass[x_,cart[y_,union[z_,range[x_]]]] := subclass[x,cart[y,V]] (* derived 2004 December 21 in COMUTANT.NB *) subclass[cart[V,P[complement[cart[V,V]]]],COMMUTE] := True (* derived 2004 December 21 in SBCOMMUT.NB *) subclass[cart[V,P[complement[cart[V,V]]]],SUBCOMMUTE] := True (* derived 2007 October 19 in RECT-CUT.NB *) subclass[x_,cart[V,range[x_]]] := subclass[x,cart[V,V]] (* added 2002 December 16 based on EQUIDIFF.NB *) subclass[cart[Z,Z],union[DISJOINT,Id]] := True (* derived 2009 January 12 in CAT-SU.NB *) subclass[cat[x_],cart[y_,z_]] := and[subclass[domain[cat[x]],y],subclass[range[cat[x]],z]] (* derived 2008 November 12 in CATOFUNS.NB *) subclass[CATOFUNS,CATORELN] := True (* derived 2008 December 23 in CATORELN.NB *) subclass[CATORELN,cart[x_,y_]] := and[subclass[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]],y], subclass[composite[id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]], inverse[SECOND],IMAGE[FIRST],FIRST,id[composite[S,IMAGE[SECOND],id[P[cart[V,V]]]]]],x]] (* derived 2005 July 30 in CATORELN.NB *) subclass[CATORELN,composite[cross[COMPOSE,FIRST],TWIST]] := True (* derived 2008 December 23 in SU-CP.NB *) subclass[CHAINS,cart[x_,y_]] := and[equal[V,x],subclass[range[CLIQUES],y]] (* derived 2007 May 7 in SUBCLASS.NB *) subclass[chains[x_],chains[union[x_,y_]]] := True (* derived 2007 July 10 in SBV-CLQ.NB *) subclass[CHAINS,composite[inverse[S],SUBVAR]] := True (* derived 2007 July 10 in SBV-CLQ.NB *) subclass[CHAINS,composite[S,CLIQUES]] := True (* derived 2007 May 7 in FINITE.NB *) subclass[chains[fin[x_]],FINITE] := True (* derived 2007 May 7 in SUBCLASS.NB *) subclass[chains[intersection[x_,y_]],chains[x_]] := True (* derived 2007 December 17 in DESC-REG.NB *) subclass[chains[x_],REGULAR] := subclass[fix[x],REGULAR] (* derived 2007 May 5 in REPLACE.NB *) subclass[chains[S],binclosed[CAP]] := True (* derived 2007 May 5 in REPLACE.NB *) subclass[chains[S],binclosed[CUP]] := True (* derived 2008 January 26 in CHN-Q-S.NB *) subclass[chains[S],chains[composite[Q,S]]] := True (* derived 2007 May 5 in REPLACE.NB *) subclass[chains[S],union[fix[composite[E,BIGCAP]],subvar[PS]]] := True (* derived 2008 January 6 in SUBVAR.NB *) subclass[chains[x_],subvar[y_]] := subclass[fix[x],fix[y]] (* derived 2008 July 13 in CHN-C-E.NB *) subclass[chains[union[Id,x_]],union[chains[complement[x_]], image[S,intersection[complement[set[0]],subvar[x_]]]]] := True (* derived 2008 August 3 in THM-64.NB *) subclass[chains[union[Id,x_]],union[domain[funpart[LEAST[union[Id,x_]]]], image[S,intersection[complement[set[0]],subvar[x_]]],set[0]]] := True (* derived 2008 August 3 in THM-64.NB *) subclass[chains[union[Id,x_]],union[domain[LEAST[union[Id,x_]]], image[S,intersection[complement[set[0]],subvar[x_]]],set[0]]] := True (* derived 2008 August 3 in WF-TRICH.NB *) subclass[chains[union[Id,x_]],union[domain[LEAST[union[Id,x_]]],subvar[x_]]] := True (* derived 2008 August 3 in WF-TRICH.NB *) subclass[chains[union[Id,wf[x_]]],union[domain[LEAST[union[Id,wf[x_]]]],set[0]]] := True (* derived 2006 August 22 in CHAR.NB *) subclass[CHAR[x_],cart[V,V]] := True (* derived 2005 December 21 in CL-RULES.NB *) subclass[CL,ANTISYM] := True (* derived 2005 October 19 in ORD-WRAP.NB *) subclass[CL,FINITE] := False (* derived 2008 May 29 in COREPROJ.NB *) subclass[CL,invar[composite[DUP,SECOND]]] := True (* derived 2005 October 6 in CL.NB *) subclass[CL,PO] := True (* derived 2005 December 21 in CL-RULES.NB *) subclass[CL,RFX] := True (* derived 2005 December 21 in CL-RULES.NB *) subclass[CL,TRV] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[CLIQUES,cart[x_,y_]] := and[equal[V,x],subclass[range[CLIQUES],y]] (* derived 2007 May 7 in SUBCLASS.NB *) subclass[cliques[x_],chains[x_]] := True (* derived 2007 May 7 in SUBCLASS.NB *) subclass[cliques[x_],cliques[union[x_,y_]]] := True (* derived 2006 March 30 in BINCLOS.NB *) subclass[cliques[complement[domain[x_]]],binclosed[x_]] := True (* derived 2006 October 14 in HULLCLIQ.NB *) subclass[x_,cliques[composite[inverse[E],id[x_],E]]] := True (* derived 2007 July 10 in SBV-CLQ.NB *) subclass[CLIQUES,composite[inverse[S],CHAINS]] := True (* derived 2007 July 10 in SBV-CLQ.NB *) subclass[CLIQUES,composite[inverse[S],SUBVAR]] := True (* derived 2008 August 27 in SU-CO-FU.NB *) subclass[CLIQUES,composite[inverse[S],UBD]] := True (* derived 2008 January 6 in SUBVAR.NB *) subclass[cliques[x_],DESCENDING] := subclass[fix[x],fix[E]] (* added 2000 December 17 based on CLIQUES.NB *) subclass[cliques[x_],domain[UB[x_]]] := True (* derived 2007 May 7 in FINITE.NB *) subclass[cliques[fin[x_]],FINITE] := True (* derived 2004 February 1 in FINCHAIN.NB *) subclass[cliques[y_],image[inverse[IMAGE[x_]],cliques[composite[x_,y_,inverse[x_]]]]] := subclass[fix[y],domain[VERTSECT[x]]] (* derived 2006 March 21 in SU-REG.NB *) subclass[cliques[x_],REGULAR] := subclass[fix[x],REGULAR] (* derived 2008 January 6 in SUBVAR.NB *) subclass[cliques[x_],subvar[y_]] := subclass[fix[x],fix[y]] (* derived 2008 January 6 in SUBVAR.NB *) subclass[cliques[x_],SYM] := subclass[fix[x],Id] (* derived 2007 February 17 in RELNS.NB *) subclass[clock[x_],cart[y_,z_]] := and[subclass[nat[x],y],subclass[nat[x],z]] (* derived 2006 December 19 in SU-CP.NB *) subclass[COARSER,cart[x_,y_]] := and[equal[V,x],equal[V,y]] (* derived 2003 December 31 in COARSER.NB *) subclass[COARSER,composite[inverse[BIGCUP],BIGCUP]] := True (* derived 2003 December 31 in COARSER.NB *) subclass[COARSER,composite[inverse[UCLOSURE],COARSER,UCLOSURE]] := True (* added 2003 July 4 based on COARSER.NB *) subclass[COARSER,S] := True (* added 2003 July 4 based on COARSER.NB *) subclass[COARSER,cart[V,V]] := True (* derived 2009 January 1 in COD-SU.NB *) subclass[cod[x_],composite[FIRST,inverse[x_]]] := True (* derived 2009 January 1 in COD-SU.NB *) subclass[cod[x_],inverse[fix[composite[inverse[SECOND],x_]]]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[COMMUTE,cart[x_,y_]] := and[equal[V,x],equal[V,y]] (* added 2003 January 30 *) subclass[COMMUTE,inverse[SUBCOMMUTE]] := True (* added 2003 January 30 *) subclass[COMMUTE,SUBCOMMUTE] := True (* derived 2004 February 7 in COMPACT.NB *) subclass[COMPACT,image[COARSER,FINITE]] := True (* added 2002 September 7 based on REPLACE.NB *) subclass[x_,complement[y_]] := equal[0,intersection[x,y]] (* added 2002 September 7 based on REPLACE.NB *) subclass[complement[x_],y_] := equal[V,union[x,y]] (* Theorems SU-9 and SU-10 in SU1 *) subclass[complement[x_],complement[y_]] := subclass[y,x] (* derived 2006 December 19 in SU-CP.NB *) subclass[COMPOSE,cart[x_,y_]] := and[subclass[cart[V,V],x],subclass[P[cart[V,V]],y]] (* derived 2004 March 20 in EQV-WRAP.NB *) subclass[composite[x_,x_],x_] := TRANSITIVE[composite[Id,x]] (* added 2002 February 16 based on THINRULE.NB *) subclass[composite[ACLOSURE,inverse[S]],composite[inverse[S],ACLOSURE]] := True (* added 2002 January 23 based on HULL-ACL.TXT *) subclass[composite[ACLOSURE,S],composite[S,ACLOSURE]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[composite[ACLOSURE,S,inverse[ACLOSURE]],S] := True (* added 2002 April 27 based on FULSUC-D.NB *) subclass[composite[BIGCUP,SUCC],S] := True (* derived 2004 July 15 in X2310-57.NB *) subclass[x_,composite[BIGCUP,VERTSECT[x_]]] := FUNCTION[x] (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[CAP,cross[S,S]],composite[S,CAP]] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[CAP,cross[S,S],inverse[CAP]],S] := True (* derived 2008 May 17 in CARDMONO.NB *) subclass[composite[CARD,S,inverse[CARD]],S] := True subclass[composite[u_,v_],cart[x_,y_]] := and[subclass[image[inverse[v],domain[u]],x],subclass[image[u,range[v]],y]] (* added 2001 December 19 based on Q-CP.NB *) subclass[composite[CART,cross[Q,Q],inverse[CART]],Q] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[CART,cross[S,S]],composite[S,CART]] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[CART,cross[S,S],inverse[CART]],S] := True (* added 2001 December 18 based on DORA.NB *) subclass[composite[CART,DORA],composite[S,IMAGE[id[cart[V,V]]]]] := True (* derived 2007 May 25 in HULLRECT.NB *) subclass[composite[CART,DORA,id[P[cart[V,V]]]],S] := True (* derived 2007 May 25 in HULLRECT.NB *) subclass[composite[CART,DORA,id[P[cart[V,V]]],S],composite[S,CART,DORA]] := True (* derived 2008 September 4 in CLIQ-FIX.NB *) subclass[composite[CART,DUP],composite[S,IMAGE[DUP]]] := True (* derived 2008 October 8 in CARTRELN.NB *) subclass[composite[x_,y_],cart[V,V]] := True (* derived 2009 Janaury 11 in CAT-DIV.NB *) subclass[composite[cat[x_],inverse[FIRST]],composite[inverse[cod[cat[x_]]],cod[cat[x_]]]] := True (* derived 2008 December 30 in CAT-WRAP.NB *) subclass[composite[cat[x_],inverse[FIRST],domain[cat[x_]]],domain[cat[x_]]] := True (* derived 2009 Janaury 11 in CAT-DIV.NB *) subclass[composite[cat[x_],inverse[SECOND]],composite[inverse[dom[cat[x_]]],dom[cat[x_]]]] := True (* derived 2009 January 13 in CAT-IDS.NB *) subclass[composite[cat[x_],LEFT[APPLY[cod[cat[x_]],w_]]],Id] := True (* derived 2009 January 13 in CAT-IDS.NB *) subclass[composite[cat[x_],LEFT[APPLY[dom[cat[x_]],w_]]],Id] := True (* derived 2009 January 13 in CAT-IDS.NB *) subclass[composite[cat[x_],RIGHT[APPLY[cod[cat[x_]],w_]]],Id] := True (* derived 2009 January 13 in CAT-IDS.NB *) subclass[composite[cat[x_],RIGHT[APPLY[dom[cat[x_]],w_]]],Id] := True (* derived 2008 December 23 in CATOFUNS.NB *) subclass[composite[CATOFUNS,LEFT[PAIR[id[x_],x_]]],Id] := True (* derived 2008 December 23 in CATOFUNS.NB *) subclass[composite[CATOFUNS,RIGHT[PAIR[id[x_],x_]]],Id] := True (* derived 2006 September 17 in CATR-IDS.NB *) subclass[composite[CATORELN,LEFT[x_]],Id] := or[equal[first[x],id[second[x]]],not[subclass[first[x],cart[V,second[x]]]]] (* derived 2006 September 17 in CATR-IDS.NB *) subclass[composite[CATORELN,RIGHT[x_]],Id] := or[equal[first[x],id[second[x]]],not[subclass[first[x],cart[V,second[x]]]]] (* derived 2007 July 10 in SBV-CLQ.NB *) subclass[composite[CHAINS,inverse[CLIQUES]],S] := True (* added 2002 February 16 based on THINRULE.NB *) subclass[composite[CLIQUES,inverse[S]], composite[inverse[S],CLIQUES]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[composite[CLIQUES,S],composite[S,CLIQUES]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[composite[CLIQUES,S,inverse[CLIQUES]],S] := True (* derived 2003 December 31 in COARSER.NB *) subclass[composite[COARSER,inverse[COARSER]],composite[inverse[BIGCUP],BIGCUP]] := True (* derived 2003 December 31 in COARSER.NB *) subclass[composite[COARSER,inverse[UCLOSURE]],composite[inverse[UCLOSURE],COARSER]] := True (* derived 2007 December 26 in SCHRODER.NB *) subclass[composite[complement[composite[complement[x_],y_]],inverse[y_]],x_] := True (* derived 2007 December 26 in SCHRODER.NB *) subclass[composite[complement[composite[complement[x_],inverse[y_]]],y_],x_] := True (* derived 2004 May 14 based on SPECIAL.NB *) subclass[composite[x_,complement[composite[inverse[x_],complement[y_]]]],y_] := True (* added 2002 March 17 based on TRVCLOS.NB *) subclass[composite[COMPOSE,cross[HULL[TRV],HULL[TRV]]],composite[inverse[S],HULL[TRV],CUP]] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[COMPOSE,cross[S,S]],composite[S,COMPOSE]] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[COMPOSE,cross[S,S],inverse[COMPOSE]],S] := True (* added 1998 September 10 *) subclass[composite[x_,y_],composite[Id,z_]] := subclass[composite[x,y],z] (* derived 2008 August 15 in CORE-I.NB *) subclass[composite[CORE[x_],inverse[CORE[intersection[x_,y_]]]],S] := True (* added 2003 June 18 based on CUT-CORE.NB *) subclass[composite[CORE[x_],inverse[S]],composite[inverse[S],CORE[x_]]] := True (* added 2003 June 18 based on CUT-CORE.NB *) subclass[composite[CORE[x_],S],composite[S,CORE[x_]]] := True (* added 2003 June 18 based on CUT-CORE.NB *) subclass[composite[CORE[x_],S,inverse[CORE[x_]]],S] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[CROSS,cross[S,S]],composite[S,CROSS]] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[CROSS,cross[S,S],inverse[CROSS]],S] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[CROSS,DUP,S,inverse[DUP],inverse[CROSS]],S] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[CUP,cross[S,S]],composite[S,CUP]] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[CUP,cross[S,S],inverse[CUP]],S] := True (* derived 2004 March 23 in ADJECT.NB *) subclass[composite[CUP,id[cart[V,x_]],inverse[FIRST]], composite[CUP,id[cart[V,y_]],inverse[FIRST]]] := subclass[x,y] (* derived 2005 January 6 in DJ-U-Q.NB *) subclass[composite[CUP,id[DISJOINT],cross[Q,Q],id[DISJOINT],inverse[CUP]],Q] := True (* derived 2004 July 15 in X2310-57.NB *) subclass[composite[CUP,id[x_],inverse[FIRST]],S] := True (* added 2003 October 15 based on ACYCLIC.NB *) subclass[composite[CUP,id[INVERSE],inverse[FIRST]],S] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[DIF,cross[S,inverse[S]]],composite[S,DIF]] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[DIF,cross[S,inverse[S]],inverse[DIF]],S] := True (* derived 2004 January 22 in INVAR.NB *) subclass[composite[DISJOINT,IMAGE[FIRST]],INVAR] := True (* derived 2008 November 24 in IN-ASSOC.NB *) subclass[composite[domain[assoc[x_]],assoc[x_]],composite[domain[assoc[x_]],SECOND]] := True (* derived 2008 November 24 in IN-ASSOC.NB *) subclass[composite[domain[assoc[x_]],assoc[x_],inverse[SECOND]],domain[assoc[x_]]] := True (* derived 2008 December 30 in CAT-WRAP.NB *) subclass[composite[domain[cat[x_]],SECOND,inverse[cat[x_]]],domain[cat[x_]]] := True (* derived 2004 June 18 in X1400.NB *) subclass[composite[DUP,Di],composite[Di,DUP]] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[DUP,S,inverse[DUP]],cross[S,S]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) subclass[composite[E,x_],composite[E,y_]] := subclass[composite[Id,x],y] (* derived 2004 June 28 in X2200.NB *) subclass[composite[E,x_],E] := subclass[composite[Id,x],Id] (* derived 2004 October 7 in HULL-I.NB *) subclass[composite[x_,E],E] := subclass[composite[Id,x],S] (* derived 2005 April 23 in FACT-S.NB *) subclass[composite[FACTORIAL,E],composite[S,FACTORIAL]] := True (* derived 2005 April 21 in FACT-DIV.NB *) subclass[composite[FACTORIAL,E],union[DIV,cart[set[0],omega]]] := True (* derived 2005 April 21 in FACT-DIV.NB *) subclass[composite[FACTORIAL,id[complement[set[0]]]],DIV] := True (* derived 2005 April 23 in FACT-S.NB *) subclass[composite[FACTORIAL,S,id[omega]],composite[S,FACTORIAL]] := True (* derived 2005 April 21 in FACT-DIV.NB *) subclass[composite[FACTORIAL,S,id[omega]],union[DIV,cart[set[0],omega]]] := True (* derived 2005 April 23 in FACT-S.NB *) subclass[composite[FACTORIAL,S,inverse[FACTORIAL]],S] := True (* derived 2009 January 7 in 1-2-CAT.NB *) subclass[composite[FIRST,id[dom[cat[x_]]]],cat[x_]] := True (* derived 2007 October 18 in ERASE.NB *) subclass[composite[FIRST,id[x_],inverse[CAP]],S] := True (* derived 2004 November 6 in IMIM-CAP.NB *) subclass[composite[FIRST,id[S]],CAP] := True (* derived 2008 October 9 in SU-ID.NB *) subclass[composite[FIRST,intersection[x_,composite[inverse[SECOND],SECOND]],inverse[FIRST]],Id] := equal[0,fix[composite[x,cross[Di,Id]]]] (* derived 2008 November 24 in IN-ASSOC.NB *) subclass[composite[FIRST,inverse[assoc[x_]],domain[assoc[x_]]],domain[assoc[x_]]] := True (* derived 2006 October 28 in MOD-1ST.NB *) subclass[composite[FIRST,inverse[NATMOD]],S] := True (* derived 2005 December 21 in SUBTWINE.NB *) subclass[composite[funpart[x_],y_],composite[z_,funpart[x_]]] := and[subclass[composite[funpart[x],y,inverse[funpart[x]]],z], subclass[image[inverse[y],domain[funpart[x]]],domain[funpart[x]]]] (* derived 2008 November 13 in FIX-FUN.NB *) subclass[composite[funpart[x_],id[fix[composite[inverse[funpart[x_]],y_]]]],y_] := True (* derived 2008 November 13 in FIX-FUN.NB *) subclass[composite[funpart[x_],id[fix[composite[inverse[y_],funpart[x_]]]]],y_] := True (* derived 2005 September 27 in LUB-FU.NB *) subclass[composite[GLB[x_],inverse[GLB[x_]]],x_] := True (* derived 2005 October 6 in GLB-I.NB *) subclass[composite[GLB[x_],inverse[LB[x_]],id[domain[x_]]],x_] := True (* derived 2004 February 12 in LEASTFUN.NB *) subclass[composite[GREATEST[x_],inverse[GREATEST[x_]]],x_] := True (* added 2002 February 16 based on THINRULE.NB *) subclass[composite[HC,inverse[S]], composite[inverse[S],HC]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[composite[HC,S],composite[S,HC]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[composite[HC,S,inverse[HC]],S] := True (* derived 2004 July 22 in X22--.NB *) subclass[composite[HULL[x_],E],E] := True (* derived 2006 March 7 in HULL-ON.NB *) subclass[composite[HULL[intersection[OMEGA,x_]],id[OMEGA],SUCC],E] := True (* derived 2007 May 15 in OL-U-RA.NB *) subclass[composite[HULL[intersection[OMEGA,x_]],SUCC,ordlist[x_]], composite[inverse[IMAGE[inverse[ordlist[x_]]]],E]] := True (* derived 2004 October 7 in BC-IM-PC.NB *) subclass[composite[HULL[x_],inverse[S]],composite[inverse[S],HULL[x_]]] := or[equal[0,x],equal[V,image[inverse[S],x]]] (* derived 2005 August 17 in PRIMESEQ.NB *) subclass[composite[HULL[PRIMES],SUCC],E] := True (* added 2002 February 7 based on MONOTONE.NB *) subclass[composite[HULL[x_],S],composite[S,HULL[x_]]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[composite[HULL[x_],S,inverse[HULL[x_]]],S] := True (* derived 2006 April 30 in OL-MONO.NB *) subclass[composite[HULL[x_],SUCC],E] := True (* derived 2006 April 30 in OL-MONO.NB *) subclass[composite[HULL[x_],SUCC],S] := True (* Theorem ID-CO1 in ID-CO *) subclass[composite[Id,z_],z_] := True (* added 2000 January 8 based on SU-RS.NB *) subclass[x_,composite[Id,y_]] := and[subclass[x,y],subclass[x,cart[V,V]]] (* Theorem IDX-2B in IDX1 *) subclass[composite[id[x_],y_],y_] := True (* Theorem IDX-2A in IDX1 *) subclass[composite[x_,id[y_]],x_] := True (* added 2000 January 8 based on SU-RS.NB *) subclass[x_,composite[y_,id[z_]]] := and[subclass[x,y],subclass[x,cart[z,V]]] (* added 2000 January 8 based on SU-RS.NB *) subclass[x_,composite[id[z_],y_]] := and[subclass[x,y],subclass[x,cart[V,z]]] (* derived 2007 April 26 in FUNS-1.NB *) subclass[composite[Id,x_],0] := equal[0,domain[x]] (* derived 2007 June 23 in ALLCLOSED.NB *) subclass[composite[id[allclosed[x_]],inverse[x_]],E] := True (* derived 2006 February 18 in DORA-DJ.NB *) subclass[composite[id[cart[complement[set[0]],complement[set[0]]]],inverse[CART]],DORA] := True (* added 2002 October 27 based on NATMUL.NB *) subclass[composite[Id,complement[x_]],y_] := subclass[cart[V,V],union[x,y]] (* added 2002 September 8 based on REPLACE.NB *) subclass[composite[id[w_],complement[x_],id[y_]],z_] := subclass[cart[y,w],union[x,z]] (* added 2002 November 30 based on SU-IMV.NB *) subclass[composite[w___,id[complement[image[V,x_]]],y___],z_] := or[not[equal[0,x]],subclass[composite[w,y],z]] (* derived 2008 February 26 in WF-TRICH.NB *) subclass[composite[id[x_],complement[inverse[E]],SUCC,id[x_]],E] := subclass[cart[x,x],union[E,composite[inverse[E],SUCC]]] (* derived 2006 September 8 in NEUTRAL.NB *) subclass[composite[id[complement[range[fix[composite[inverse[FIRST],Di,x_]]]]],domain[x_], id[complement[domain[fix[composite[inverse[SECOND],Di,x_]]]]]],Id] := True (* derived 2005 November 20 in ACDORAFU.NB *) subclass[composite[id[complement[set[0]]],image[DORA,FUNS],inverse[S]],image[DORA,FUNS]] := True (* derived 2005 February 3 in WF-DIV.NB *) subclass[composite[id[complement[set[0]]],intersection[Di,DIV]],E] := True (* added 2002 October 11 based on MUL-SU-S.NB *) subclass[composite[id[complement[set[0]]],NATMUL],composite[S,CUP]] := True (* derived 2005 November 20 in ACDORAFU.NB *) subclass[composite[id[complement[set[0]]],Q,inverse[S]],image[DORA,FUNS]] := True (* added 2000 December 20 based on BA-BC.NB *) subclass[composite[x___,id[w_],y___],composite[x___,y___]] := True (* derived 2004 March 9 in CO-S.NB *) subclass[composite[Id,x_],composite[inverse[S],x_]] := True (* derived 2004 March 9 in CO-S.NB *) subclass[composite[Id,x_],composite[x_,inverse[S]]] := True (* derived 2004 March 9 in CO-S.NB *) subclass[composite[Id,x_],composite[S,x_]] := True (* derived 2004 March 9 in CO-S.NB *) subclass[composite[Id,x_],composite[x_,S]] := True (* derived 2008 Jaanuary 17 in CLQ-U-ID.NB *) subclass[composite[id[x_],Di,id[x_]],y_] := subclass[cart[x,x],union[Id,y]] (* derived 2005 January 6 in DJ-U-Q.NB *) subclass[composite[id[DISJOINT],cross[Q,Q],id[DISJOINT]],composite[inverse[CUP],Q,CUP]] := True (* derived 2008 December 30 in CAT-DEFN.NB *) subclass[composite[y_,id[domain[funpart[x_]]]],composite[z_,funpart[x_]]] := subclass[composite[y,inverse[funpart[x]]],z] (* added 2003 June 23 based on T1.NB *) subclass[composite[id[t_],E,FIRST,id[cart[V,complement[U[t_]]]]], composite[complement[INVAR],SINGLETON]] := True (* derived 2008 August 20 in DJ-SYSTEM.NB *) subclass[composite[id[x_],E,inverse[E],id[x_]],Id] := subclass[cart[x,x],union[DISJOINT,Id]] (* derived 2007 May 23 in SU-ON.NB *) subclass[composite[id[x_],E],S] := subclass[x,FULL] (* derived 2008 November 11 in PS-SMALL.NB *) subclass[composite[id[FINITE],PS],SMALLER] := True (* added 2002 February 16 based on THINRULE.NB *) subclass[composite[id[FULL],inverse[S]],composite[inverse[S],HC]] := True (* added 2000 January 8 based on SU-RS.NB *) subclass[composite[id[FULL],S],composite[S,TC]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[composite[id[FULL],S,inverse[TC]],S] := True (* derived 2004 November 21 in FUNP-DO.NB *) subclass[composite[Id,x_],funpart[x_]] := FUNCTION[composite[Id,x]] (* derived 2004 November 21 in FUNP-DO.NB *) subclass[composite[x_,id[y_]],funpart[x_]] := FUNCTION[composite[x,id[y]]] subclass[composite[id[x_],z_,id[y_]],z_] := True (* derived 2008 February 2 in RELNS.NB *) subclass[composite[id[y_],x_,id[y_],x_,id[y_]],x_] := TRANSITIVE[composite[id[y],x,id[y]]] (* derived 2004 June 26 in X1509.NB *) subclass[composite[id[z_],x_,id[y_],inverse[x_],id[z_]],Id] := FUNCTION[composite[id[z],x,id[y]]] (* derived 2009 January 21 in INV.NB *) subclass[composite[id[ids[cat[x_]]],inverse[DUP]],cat[x_]] := True (* derived 2007 November 23 in ZORN-MAX.NB *) subclass[composite[id[image[inverse[PS],x_]],S],composite[inverse[PS],id[x_],S]] := True (* derived 2008 August 14 in ALL-ID.NB *) subclass[composite[id[image[S,set[x_]]],S,id[x_]],E] := True (* added 2002 November 30 based on SU-IMV.NB *) subclass[composite[w___,id[image[V,x_]],y___],z_] := or[equal[0,x],subclass[composite[w,y],z]] (* derived 2004 January 2 in BNCL-FIN.NB *) subclass[composite[id[intersection[binclosed[CUP],complement[P[complement[set[0]]]]]],S, IMAGE[SINGLETON]],composite[S,IMAGE[id[FINITE]],POWER]] := True (* derived 2008 February 10 in TRICH-I.NB *) subclass[composite[id[u_],intersection[complement[x_],complement[inverse[y_]]],id[v_]],Id] := subclass[cart[u,v],union[Id,y,inverse[x]]] (* added 2002 November 30 based on SU-IMV.NB *) subclass[composite[u___,id[intersection[v_,complement[image[V,w_]]]],x___],y_] := or[not[equal[0,w]],subclass[composite[u,id[v],x],y]] (* added 2002 November 30 based on SU-IMV.NB *) subclass[composite[u___,id[intersection[v_,image[V,w_]]],x___],y_] := or[equal[0,w],subclass[composite[u,id[v],x],y]] (* derived 2004 June 26 in X1457.NB *) subclass[composite[id[x_],inverse[FIRST],FIRST,id[x_]],Id] := FUNCTION[composite[Id,x]] (* derived 2008 April 17 in FP-DI.NB *) subclass[composite[id[x_],inverse[y_]],Id] := subclass[composite[y,id[x]],Id] (* derived 2004 June 26 in X1509.NB *) subclass[composite[x_,id[y_],inverse[x_]],Id] := FUNCTION[composite[x,id[y]]] (* derived 2008 February 2 in RELNS.NB *) subclass[composite[id[x_],inverse[y_],id[z_]],Id] := subclass[composite[id[z],y,id[x]],Id] (* derived 2004 December 18 in PO-BIJ.NB *) subclass[composite[id[y_],inverse[x_],x_,id[y_]],Id] := FUNCTION[composite[id[y],inverse[x]]] (* added 2002 February 16 based on THINRULE.NB *) subclass[composite[id[x_],inverse[S]],composite[inverse[S],CORE[x_]]] := True (* derived 2004 June 26 in X1457.NB *) subclass[composite[id[x_],inverse[SECOND],SECOND,id[x_]],Id] := FUNCTION[inverse[x]] (* derived 2006 April 24 in SUCC-S.NB *) subclass[composite[id[omega],E],composite[S,id[omega],SUCC]] := True (* added 2002 May 11 based on OM-1.NB *) subclass[composite[id[omega],E],S] := True (* added 2002 May 7 based on EXAMPLES.NB *) subclass[composite[id[OMEGA],E],S] := True (* added 2003 June 2 based on ON-CO.NB *) subclass[composite[id[OMEGA],inverse[BIGCUP],E],E] := True (* derived 2008 June 3 in CARD-ORD.NB *) subclass[composite[id[OMEGA],inverse[CARD]],S] := True (* derived 2008 August 5 in E-E-ON.NB *) subclass[composite[id[OMEGA],inverse[IMAGE[inverse[SUCC]]],E], composite[inverse[BIGCUP],E]] := True (* derived 2008 March 1 in STRUNG.NB *) subclass[composite[id[OMEGA],inverse[S],id[OMEGA]],composite[inverse[E],SUCC]] := True (* derived 2005 February 8 in X3595.NB *) subclass[composite[id[OMEGA],PS,id[FULL]],E] := True (* derived 2003 December 24 based on ON-SC.NB *) subclass[composite[id[OMEGA],S,id[OMEGA]],composite[inverse[SUCC],E]] := True (* derived 2005 January 7 in K-SUCC.NB *) subclass[composite[id[omega],SUCC],K] := True (* derived 2005 January 6 in K-ON-SUC.NB *) subclass[composite[id[OMEGA],SUCC],K] := True (* derived 2008 March 1 in STRUNG.NB *) subclass[composite[id[OMEGA],SUCC,S,id[OMEGA]],E] := True (* derived 2006 April 24 in SUCC-S.NB *) subclass[composite[id[omega],SUCC,S,inverse[SUCC],id[omega]],S] := True (* derived 2008 January 5 in SMALLER.NB *) subclass[composite[id[omega],SUCC],SMALLER] := True (* derived 2008 February 28 in MORSE100.NB *) subclass[composite[id[ord[x_]],inverse[IMAGE[id[ord[x_]]]],E],S] := True (* derived 2008 March 1 in STRUNG.NB *) subclass[composite[id[ord[x_]],inverse[S],id[ord[x_]]],composite[inverse[E],SUCC]] := True (* derived 2008 February 28 in MORSE100.NB *) subclass[composite[id[ord[x_]],PS,id[ord[x_]]],E] := True (* derived 2008 March 1 in STRUNG.NB *) subclass[composite[id[ord[x_]],S,id[ord[x_]]],composite[inverse[SUCC],E]] := True (* derived 2005 February 8 in X3608.NB *) subclass[composite[id[x_],PS,id[FULL]],E] := subclass[x,OMEGA] (* derived 2005 October 6 in GLB-I.NB *) subclass[composite[id[range[x_]],UB[x_],inverse[LUB[x_]]],x_] := True (* derived 2004 December 31 in IN-RK.NB *) subclass[composite[id[REGULAR],E],composite[inverse[RANK],inverse[IMAGE[inverse[RANK]]],E]] := True (* derived 2004 August 14 in RANK.NB *) subclass[composite[id[REGULAR],S],composite[inverse[RANK],S,RANK]] := True (* derived 2005 January 13 in REG-SUCC.NB *) subclass[composite[id[REGULAR],SUCC],K] := True (* derived 2005 February 8 in X3608.NB *) subclass[composite[id[x_],S,id[FULL]],composite[inverse[SUCC],E]] := subclass[x,OMEGA] (* added 2002 May 25 based on OM-INVAR.NB *) subclass[composite[id[x_],SUCC],E] := True (* added 2002 March 24 based on TRV-1.NB *) subclass[composite[Id,x_],trv[x_]] := True (* derived 2006 October 21 in INTDIV.NB *) subclass[composite[id[Z],INVERSE],INTDIV] := True (* derived 2005 January 18 in CP-Q.NB *) subclass[composite[IMAGE[ASSOC],id[P[cart[cart[V,V],V]]]],Q] := True (* derived 2004 June 18 in X1400.NB *) subclass[composite[IMAGE[DUP],Di],composite[Di,IMAGE[DUP]]] := True (* Theorem Q-FS1 in Q proved 2000 April 30 *) subclass[composite[IMAGE[FIRST],id[FUNS]],Q] := True (* derived 2005 November 22 in IMDORARS.NB *) subclass[composite[IMAGE[funpart[x_]],id[P[domain[funpart[x_]]]]],image[DORA,FUNS]] := True (* derived 2007 June 4 in IMG-SU.NB *) subclass[composite[IMAGE[x_],id[P[fix[x_]]]],S] := True (* derived 2007 June 6 in IDEMWRAP.NB *) subclass[composite[IMAGE[idem[x_]],id[y_],IMAGE[idem[x_]]],IMAGE[idem[x_]]] := True (* derived 2004 August 19 in X2901-93.NB *) subclass[composite[IMAGE[x_],IMAGE[y_]],IMAGE[composite[x_,y_]]] := True (* derived 2006 September 8 in NEUTRAL.NB *) subclass[composite[image[inverse[INTADD],set[x_]],INVERSE],Id] := or[equal[x,id[omega]],not[member[x,Z]]] (* derived 2005 August 17 in MONOPRSQ.NB *) subclass[composite[IMAGE[inverse[PRIMESEQ]],PRIMESEQ],S] := True (* derived 2004 December 31 in IN-RK.NB *) subclass[composite[IMAGE[inverse[RANK]],RANK],S] := True (* added 2001 May 11 based on MONO-3.NB *) subclass[composite[IMAGE[x_],inverse[S]],composite[inverse[S],IMAGE[x_]]] := equal[V,domain[VERTSECT[x]]] (* derived 2007 December 4 in HER-H.NB *) subclass[composite[IMAGE[inverse[S]],inverse[HC],inverse[BIGCUP]],S] := True (* derived 2007 December 4 in HER-H.NB *) subclass[composite[IMAGE[inverse[S]],inverse[HC]],S] := True (* derived 2007 November 15 in ZORN-LEM.NB *) subclass[composite[IMAGE[inverse[S]],inverse[IMAGE[inverse[PS]]]],S] := True (* derived 2005 January 18 in OO-Q.NB *) subclass[composite[IMAGE[oopart[x_]],id[P[domain[oopart[x_]]]]],Q] := True (* Theorem IMG-SR-1 in IMG3 proved 1997 September 16 *) subclass[composite[IMAGE[x_],S],composite[S,IMAGE[x_]]] := True (* added 2001 May 11 based on MONO-2.NB *) subclass[composite[IMAGE[x_],S,inverse[IMAGE[x_]]],S] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[IMG,cross[S,S]],composite[S,IMG]] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[composite[IMG,cross[S,S],inverse[IMG]],S] := True (* added 2003 August 9 based on INTADDXY.NB *) subclass[composite[x_,y_],intadd[x_,y_]] := True (* derived 2004 March 4 in RELATION.NB *) subclass[composite[intersection[x_,y_],z_],composite[x_,z_]] := True (* derived 2004 March 4 in RELATION.NB *) subclass[composite[x_,intersection[y_,z_]],composite[x_,y_]] := True (* derived 2004 March 21 in TRV-WRAP.NB *) subclass[composite[intersection[Di,x_],intersection[Di,x_]],x_] := TRANSITIVE[composite[Id,x]] (* added 1998 September 10 *) subclass[composite[x_,y_],inverse[z_]] := subclass[composite[inverse[y],inverse[x]],z] (* added 2001 December 17 based on Q-HAT.NB *) subclass[composite[inverse[CARD],CARD],Q] := True (* derived 2007 May 2 in CARDCARD.NB *) subclass[composite[inverse[CARD],E,CARD],composite[inverse[CARD],S,CARD]] := True (* derived 2007 May 2 in CARDCARD.NB *) subclass[composite[inverse[CARD],E,CARD],composite[Q,S]] := True (* derived 2007 May 2 in CARDCARD.NB *) subclass[composite[inverse[CARD],E,CARD],SMALLER] := True (* derived 2005 July 20 in CARD-Q.NB *) subclass[composite[inverse[CARD],id[x_],CARD],Q] := True (* derived 2007 May 2 in CARDCARD.NB *) subclass[composite[inverse[CARD],inverse[S],CARD],composite[Q,inverse[S]]] := True (* derived 2007 May 2 in CARDCARD.NB *) subclass[composite[inverse[CARD],S,CARD],composite[Q,S]] := True (* derived 2004 May 14 based on SPECIAL.NB *) subclass[composite[inverse[x_],complement[y_]],z_] := subclass[composite[x,complement[z]],y] (* derived 2004 July 22 in X22--.NB *) subclass[composite[inverse[CORE[x_]],E],E] := True (* derived 2008 November 24 in IN-ASSOC.NB *) subclass[composite[inverse[domain[assoc[x_]]],assoc[x_]], composite[inverse[domain[assoc[x_]]],FIRST]] := True (* derived 2008 December 23 in DOM-RAN.NB *) subclass[composite[inverse[DUP],DORA],IMAGE[FIRST]] := True (* derived 2008 December 23 in DOM-RAN.NB *) subclass[composite[inverse[DUP],DORA],IMAGE[SECOND]] := True (* derived 2006 July 11 in BINOP-RS.NB *) subclass[composite[inverse[DUP],inverse[CART]],IMAGE[inverse[DUP]]] := True (* introduced 2006 January 5 in MAPINVAR.NB *) subclass[composite[inverse[DUP],inverse[MAP],E],INVAR] := True (* added 2002 February 16 based on THINRULE.NB *) subclass[composite[inverse[E],ACLOSURE],composite[inverse[S],BIGCUP]] := True (* added 2003 June 6 based on ACL-UCL.NB *) subclass[composite[inverse[E],ACLOSURE],composite[S,BIGCAP]] := True (* added 2001 January 2 based on TC-SU.NB *) subclass[composite[inverse[E],BIGCUP,TC],composite[inverse[E],TC]] := True (* derived 2007 July 10 in SBV-CLQ.NB *) subclass[composite[inverse[E],CHAINS],composite[inverse[E],SUBVAR]] := True (* derived 2007 July 10 in SBV-CLQ.NB *) subclass[composite[inverse[E],CLIQUES],composite[inverse[E],CHAINS]] := True (* derived 2007 July 10 in SBV-CLQ.NB *) subclass[composite[inverse[E],CLIQUES],composite[inverse[E],SUBVAR]] := True (* derived 2008 August 28 in SUBVAR.NB *) subclass[composite[inverse[E],CLIQUES],composite[inverse[E],UBD]] := True (* derived 2004 March 30 in CO-ES-ID.NB *) subclass[composite[x_,inverse[E]],composite[y_,inverse[E]]] := subclass[composite[Id,x],y] (* derived 2007 August 2 in HULL-SG.NB *) subclass[composite[inverse[E],HULL[x_],SINGLETON],composite[inverse[E],id[fix[HULL[x_]]],E]] := True (* derived 2004 June 15 in X12--.NB *) subclass[composite[inverse[E],id[x_]],composite[inverse[E],IMAGE[id[y_]]]] := subclass[U[x],y] (* added 2003 June 23 based on T1.NB *) subclass[composite[inverse[E],id[t_],DISJOINT,id[t_],E],composite[complement[inverse[E]],id[t_],E]] := True (* derived 2007 November 23 in ZORN-MAX.NB *) subclass[composite[inverse[E],id[fix[composite[inverse[IMAGE[inverse[S]]],S,UCHAINS]]]], composite[inverse[S],MAXIMAL[S]]] := axch (* derved 2008 January 10 in MAX-KURA.NB *) subclass[composite[inverse[E],id[fix[UCHAINS]]],composite[inverse[S],MAXIMAL[S]]] := axch (* derived 2005 February 12 in IND.NB *) subclass[composite[inverse[E],id[image[IMAGE[id[omega]],invar[SUCC]]]],composite[S,RC[omega]]] := True (* derived 2005 February 12 in IND.NB *) subclass[composite[inverse[E],id[image[IMAGE[id[omega]],invar[SUCC]]],RC[omega]],S] := True (* derived 2007 November 25 in MAX-CLIQ.NB *) subclass[composite[inverse[E],id[range[CLIQUES]]],composite[inverse[S],MAXIMAL[S]]] := axch (* derived 2004 August 15 in SU-IMG-E.NB *) subclass[composite[inverse[E],IMAGE[x_]],composite[x_,inverse[E]]] := True (* derived 2005 November 13 in COVER.NB *) subclass[composite[inverse[E],IMAGE[inverse[S]]],composite[inverse[S],BIGCUP]] := True (* derived 2005 September 27 in LUB-SET.NB *) subclass[composite[inverse[E],inverse[GLB[x_]]],x_] := True (* derived 2006 June 10 in BINOPS.NB *) subclass[composite[inverse[E],MAP],composite[inverse[DORA],cross[Id,inverse[S]]]] := True (* added 2002 March 27 based on TRV.NB *) subclass[composite[inverse[E],TC],ZN] := True (* derived 2008 July 10 in UBD-VS.NB *) subclass[composite[inverse[E],UBD],composite[FIRST,inverse[CART],inverse[S]]] := True (* added 2002 February 16 based on THINRULE.NB *) subclass[composite[inverse[E],UCLOSURE],composite[inverse[S],BIGCUP]] := True (* derived 2006 August 27 in FU-1-2.NB *) subclass[x_,composite[inverse[FIRST],FIRST,y_]] := and[subclass[x,cart[V,cart[V,V]]],subclass[composite[FIRST,x],composite[FIRST,y]]] (* derived 2008 May 15 in H-PC.NB *) subclass[composite[inverse[HC],E],S] := True (* derived 2006 September 30 in HULL-INV.NB *) subclass[composite[INVERSE,HULL[x_],INVERSE],S] := True (* added 2000 October 5 based on SV.NB *) subclass[composite[x_,inverse[x_]],Id] := FUNCTION[composite[Id,x]] (* added 2002 April 27 based on FULSUC-D.NB *) subclass[composite[x_,inverse[x_]],id[y_]] := and[FUNCTION[composite[Id,x]],subclass[range[x],y]] (* added 2001 December 19 based on INV-IM.NB *) subclass[composite[inverse[x_],x_],Id] := FUNCTION[inverse[x]] (* derived 2004 June 26 in X1509.NB *) subclass[composite[inverse[x_],id[y_],x_],Id] := FUNCTION[composite[inverse[x],id[y]]] (* added 2001 February 27 based on STUDY.NB *) subclass[composite[inverse[IMAGE[id[x_]]],E],E] := True (* derived 2007 August 2 in HULL-SG.NB *) subclass[composite[inverse[IMAGE[SINGLETON]],E],S] := True (* derived 2005 January 5 in IMRK-S.NB *) subclass[composite[x_,inverse[IMAGE[thinpart[y_]]]],S] := subclass[composite[Id,x],composite[S,IMAGE[thinpart[y]]]] (* derived 2005 August 16 in TWINE.NB *) subclass[composite[inverse[w_],inverse[x_]],composite[inverse[y_],inverse[z_]]] := subclass[composite[x,w],composite[z,y]] (* derived 2004 June 16 in X1345.NB *) subclass[composite[inverse[x_],inverse[y_]],Id] := subclass[composite[y,x],Id] (* derived 2004 October 2 in FUNCTION.NB *) subclass[composite[x_,y_,inverse[y_],inverse[x_]],Id] := FUNCTION[composite[x,y]] (* derived 2006 December 3 in MIXDIV.NB *) subclass[composite[INVERSE,PLUS,DIV],MIXDIV] := True (* derived 2006 December 3 in MIXDIV.NB *) subclass[composite[INVERSE,PLUS],MIXDIV] := True (* added 2003 August 9 based on ASS-ADDZ.NB *) subclass[composite[inverse[plus[w_]],plus[x_],inverse[plus[y_]],plus[z_]], composite[inverse[plus[natadd[w_,y_]]],plus[natadd[x_,z_]]]] := True (* derived 2005 January 5 in RANK-S.NB *) subclass[composite[inverse[RANK],inverse[S]],ZN] := True (* derived 2004 March 9 in CO-S.NB *) subclass[x_,composite[x_,inverse[S]]] := subclass[x,cart[V,V]] (* derived 2004 March 9 in CO-S.NB *) subclass[x_,composite[inverse[S],x_]] := subclass[x,cart[V,V]] (* derived 2008 May 20 in OO-Q.NB *) subclass[composite[inverse[S],IMAGE[FIRST],id[BIJ]],fix[composite[inverse[SECOND],Q,IMG]]] := True (* derived 2006 May 11 in IVR-FUNP.NB *) subclass[composite[inverse[S],IMAGE[inverse[DUP]],id[FUNS]],INVAR] := True (* derived 2007 November 15 in ZORN-LEM.NB *) subclass[composite[inverse[S],IMAGE[inverse[PS]]],composite[inverse[S],IMAGE[inverse[S]]]] := True (* derived 2004 July 23 in X23--.NB *) subclass[x_,composite[inverse[S],VERTSECT[y_]]] := and[subclass[x,cart[V,V]],subclass[composite[inverse[E],x],y],subclass[domain[x],domain[VERTSECT[y]]]] (* derived 2006 August 27 in FU-1-2.NB *) subclass[x_,composite[inverse[SECOND],SECOND,y_]] := and[subclass[x,cart[V,cart[V,V]]],subclass[composite[SECOND,x],composite[SECOND,y]]] (* derived 2008 August 28 in SUBVAR.NB *) subclass[composite[inverse[E],SUBVAR],composite[inverse[S],IMAGE[SECOND]]] := True (* derived 2008 August 28 in SUBVAR.NB *) subclass[composite[inverse[S],IMAGE[inverse[DUP]]],composite[inverse[E],SUBVAR]] := True (* added 2002 May 28 based on IND-BC.NB *) subclass[composite[inverse[SUCC],id[OMEGA]],BIGCUP] := True (* derived 2008 August 19 in WF-DESC.NB *) subclass[composite[inverse[SUCC],id[omega]], composite[inverse[funpart[t_]],wf[x_],funpart[t_]]] := False (* derived 2004 December 18 in QO-FU.NB *) subclass[x_,composite[inverse[VERTSECT[x_]],inverse[S],VERTSECT[x_]]] := and[equal[V,domain[VERTSECT[x]]],TRANSITIVE[x]] (* derived 2007 December 26 in SCHRODER.NB *) subclass[composite[x_,inverse[VERTSECT[x_]],inverse[S],VERTSECT[y_]],y_] := True (* derived 2006 April 29 in ITERMONO.NB *) subclass[composite[iterate[funpart[intersection[S,x_]],set[y_]],S, inverse[iterate[funpart[intersection[S,x_]],set[y_]]]],S] := True (* derived 2008 October 23 in SUFFIX.NB *) subclass[composite[JOIN,inverse[FIRST]], composite[inverse[IMAGE[FIRST]],S,IMAGE[FIRST]]] := True (* derived 2008 October 23 in SUFFIX.NB *) subclass[composite[JOIN,inverse[FIRST],JOIN,inverse[SECOND]], composite[inverse[IMAGE[FIRST]],S,IMAGE[FIRST]]] := True (* derived 2008 October 23 in PREFIX.NB *) subclass[composite[JOIN,inverse[FIRST]],S] := True (* derived 2008 October 23 in SUFFIX.NB *) subclass[composite[JOIN,inverse[SECOND]], composite[inverse[IMAGE[FIRST]],S,IMAGE[FIRST]]] := True (* derived 2008 October 24 in JN-NEUT.NB *) subclass[composite[JOIN,LEFT[list[x_]]],Id] := equal[0,list[x]] (* derived 2008 October 24 in JN-NEUT.NB *) subclass[composite[JOIN,RIGHT[list[x_]]],Id] := equal[0,list[x]] (* Theorem Q-ADJ-K in Q proved 2000 May 20 *) subclass[composite[K,inverse[K]],Q] := True (* derived 2004 February 12 in LEASTFUN.NB *) subclass[composite[LEAST[x_],inverse[LEAST[x_]]],x_] := True (* derived 2006 September 8 in NEUTRAL.NB *) subclass[composite[LEFT[x_],inverse[LEFT[y_]]],Id] := or[equal[x,y],not[member[x,V]],not[member[y,V]]] (* derived 2006 September 8 in NEUTRAL.NB *) subclass[composite[LEFT[x_],inverse[RIGHT[y_]]],Id] := or[not[member[x,V]],not[member[y,V]]] (* derived 2005 September 27 in LUB-SET.NB *) subclass[composite[LUB[x_],E],x_] := True (* derived 2005 September 27 in LUB-FU.NB *) subclass[composite[LUB[x_],inverse[LUB[x_]]],x_] := True (* added 2003 May 7 based on MAP-MONO.NB *) subclass[composite[MAP,cross[Id,S]],composite[S,MAP]] := True (* derived 2007 October 14 in REIF-MAP.NB *) subclass[composite[MAP,cross[IMAGE[id[x_]],Id]], composite[S,IMAGE[IMAGE[id[cart[x_,V]]]],MAP]] := True (* derived 2006 July 4 in MAP-Q.NB *) subclass[composite[MAP,cross[Q,Q],inverse[MAP]],Q] := True (* added 2003 May 7 based on MAP-MONO.NB *) subclass[composite[MAP,LEFT[x_],S],composite[S,MAP,LEFT[x_]]] := True (* added 2007 February 20 in TWISTADD.NB *) subclass[composite[NATADD,cross[rotate[NATADD],rotate[NATADD]],TWIST], composite[rotate[NATADD],cross[NATADD,NATADD]]] := True (* derived 2007 January 14 in ADD-INEQ.NB *) subclass[composite[NATADD,cross[S,S],inverse[NATADD]],S] := True (* derived 2007 January 15 in FACT-UB.NB *) subclass[composite[NATEXP,DUP,inverse[FACTORIAL]],S] := True (* derived 2007 January 15 in FACT-UB.NB *) subclass[composite[NATEXP,DUP],composite[S,FACTORIAL]] := True (* derived 2007 January 14 in MUL-INEQ.NB *) subclass[composite[NATMUL,cross[S,S],inverse[NATMUL]],S] := True (* derived 2005 April 21 in FACT-DIV.NB *) subclass[composite[NATMUL,id[x_],inverse[FIRST]],DIV] := True (* derived 2005 April 23 in FACT-S.NB *) subclass[composite[NATMUL,intersection[composite[inverse[FIRST],x_],composite[inverse[SECOND],y_]]],composite[DIV,x_]] := True (* derived 2005 April 23 in FACT-S.NB *) subclass[composite[NATMUL,intersection[composite[inverse[FIRST],x_],composite[inverse[SECOND],y_]]],composite[DIV,y_]] := True (* derived 2004 June 19 in REPLACE.NB *) subclass[composite[oopart[x_],inverse[x_]],Id] := True (* derived 2006 April 30 in OL-MONO.NB *) subclass[composite[ordlist[x_],E],composite[inverse[IMAGE[inverse[ordlist[x_]]]],E]] := True (* derived 2006 April 30 in OL-MONO.NB *) subclass[composite[ordlist[x_],inverse[IMAGE[ordlist[x_]]]],S] := True (* derived 2006 April 30 in OL-MONO.NB *) subclass[composite[ordlist[x_],S,inverse[ordlist[x_]]],S] := True (* derived 2006 December 3 in MIXDIV.NB *) subclass[composite[PLUS,DIV],MIXDIV] := True (* added 2003 August 8 based on REPLACE.NB *) subclass[composite[plus[x_],inverse[plus[y_]]],composite[inverse[plus[y_]],plus[x_]]] := True (* derived 2008 January 4 in PO-RS.NB *) subclass[composite[po[x_],id[y_],po[x_]],po[x_]] := True (* added 2003 July 4 based on COARSER.NB *) subclass[composite[POWER,BIGCUP],COARSER] := True (* derived 2004 April 24 in BA-BC.NB *) subclass[composite[POWER,BIGCUP],composite[S,ACLOSURE]] := True (* derived 2005 November 13 in COVER.NB *) subclass[composite[POWER,BIGCUP],composite[S,IMAGE[inverse[S]]]] := True (* added 2001 August 30 based on BC-BA-RC.NB *) subclass[composite[POWER,BIGCUP],S] := True (* added 2003 June 29 based on POWER.NB *) subclass[composite[POWER,Di],composite[Di,POWER]] := True (* derived 2006 April 14 in PC-TOWER.NB *) subclass[composite[POWER,id[FULL]],S] := True (* derived 2008 August 28 in SUBVAR.NB *) subclass[composite[POWER,IMAGE[SECOND]],composite[S,SUBVAR]] := True (* derived 2008 August 28 in SUBVAR.NB *) subclass[composite[POWER,IMAGE[SECOND],inverse[SUBVAR]],S] := True (* added 2002 February 16 based on THINRULE.NB *) subclass[composite[POWER,inverse[S]],composite[inverse[S],POWER]] := True (* derived 2005 February 5 in X3222.NB *) subclass[composite[POWER,inverse[SINGLETON]],IMAGE[inverse[S]]] := True (* added 2003 May 11 based on Q-PC.NB *) subclass[composite[POWER,Q],composite[Q,POWER]] := True (* derived 2008 May 20 in POWER-Q.NB *) subclass[composite[POWER,Q,inverse[POWER]],Q] := True (* derived 2007 November 4 in FP-IM-PS.NB *) subclass[composite[POWER,TC],S] := True (* derived 2005 August 17 in MONOPRSQ.NB *) subclass[composite[PRIMESEQ,E],composite[inverse[IMAGE[inverse[PRIMESEQ]]],E]] := True (* derived 2008 April 18 in PRIMESEQ.NB *) subclass[composite[PRIMESEQ,inverse[IMAGE[PRIMESEQ]]],S] := True (* derived 2008 April 18 in PRIMESEQ.NB *) subclass[composite[PRIMESEQ,S,inverse[PRIMESEQ]],S] := True (* added 2002 March 28 based on TRV.NB *) subclass[composite[PS,PS],S] := True (* derived 2004 December 31 in IN-RK.NB *) subclass[composite[RANK,E],composite[inverse[IMAGE[inverse[RANK]]],E]] := True (* derived 2004 December 31 in IN-RK.NB *) subclass[composite[RANK,inverse[IMAGE[RANK]]],S] := True (* derived 2004 April 26 in RCCORERC.NB *) subclass[composite[RC[x_],CORE[y_],RC[x_]],S] := True (* derived 2004 June 18 in X1400.NB *) subclass[composite[RCF,Di],composite[Di,RCF]] := True (* derived 2006 September 8 in NEUTRAL.NB *) subclass[composite[RIGHT[x_],inverse[LEFT[y_]]],Id] := or[not[member[x,V]],not[member[y,V]]] (* derived 2006 September 8 in NEUTRAL.NB *) subclass[composite[RIGHT[x_],inverse[RIGHT[y_]]],Id] := or[equal[x,y],not[member[x,V]],not[member[y,V]]] (* added 2007 February 20 in TWISTADD.NB *) subclass[composite[rotate[NATADD],cross[rotate[NATADD],rotate[NATADD]]], composite[rotate[NATADD],cross[NATADD,NATADD],TWIST,cross[Id,SWAP]]] := True (* derived 2004 March 9 in CO-S.NB *) subclass[x_,composite[S,x_]] := subclass[x,cart[V,V]] (* derived 2008 May 21 in S-Q.NB *) subclass[composite[S,CARD],composite[Q,S]] := True (* derived 2004 March 9 in CO-S.NB *) subclass[x_,composite[x_,S]] := subclass[x,cart[V,V]] (* added 2002 September 15 based on NATADDEZ.NB *) subclass[composite[S,CUP],composite[S,FIRST]] := True (* added 2002 September 15 based on NATADDEZ.NB *) subclass[composite[S,CUP],composite[S,SECOND]] := True (* derived 2007 June 23 in ALLCLOSED.NB *) subclass[composite[S,x_],E] := subclass[composite[Id,x],E] (* added 2000 January 8 based on SU-SR.TXT *) subclass[composite[x_,S],S] := subclass[composite[Id,x],S] (* added 2000 January 8 based on SU-SR.TXT *) subclass[composite[S,x_],S] := subclass[composite[Id,x],S] (* added 2003 February 6 based on OM-SC-2B.NB *) subclass[composite[S,SUCC],E] := True (* derived 2004 July 16 in X1903-46.NB *) subclass[composite[S,x_],union[x_,composite[PS,x_]]] := True (* added 2001 October 7 based on 1ST-2ND.NB *) subclass[composite[SECOND,id[x_]],composite[y_,FIRST]] := subclass[composite[Id,x],y] (* derived 2009 January 7 in 1-2-CAT.NB *) subclass[composite[SECOND,id[inverse[cod[cat[x_]]]]],cat[x_]] := True (* derived 2004 November 6 in IMIM-CAP.NB *) subclass[composite[SECOND,id[inverse[S]]],CAP] := True (* derived 2008 December 30 in CAT-DEFN.NB *) subclass[composite[x_,SECOND,id[y_]],rotate[z_]] := subclass[composite[inverse[y],FIRST,id[x]],z] (* derived 2008 October 9 in SU-ID.NB *) subclass[composite[SECOND,intersection[x_,composite[inverse[FIRST],FIRST]],inverse[SECOND]],Id] := equal[0,fix[composite[x,cross[Id,Di]]]] (* derived 2008 December 30 in CAT-DEFN.NB *) subclass[composite[x_,SECOND],rotate[y_]] := subclass[cart[composite[Id,x],V],y] (* derived 2004 June 18 in X1400.NB *) subclass[composite[SINGLETON,Di],composite[Di,SINGLETON]] := True (* derived 2004 November 21 in FU-VS.NB *) subclass[composite[SINGLETON,x_],E] := subclass[composite[Id,x],Id] (* added 2002 February 16 based on THINRULE.NB *) subclass[composite[SINGLETON,inverse[S]],composite[inverse[S],POWER]] := True (* derived 2006 March 4 in KURA.NB *) subclass[composite[SINGLETON,SINGLETON],composite[inverse[IMAGE[inverse[SINGLETON]]],E]] := True (* derived 2004 November 21 in FU-VS.NB *) subclass[composite[SINGLETON,x_],VERTSECT[x_]] := FUNCTION[composite[Id,x]] (* derived 2007 July 10 in SBV-CLQ.NB *) subclass[composite[SUBVAR,inverse[CHAINS]],S] := True (* derived 2007 July 10 in SBV-CLQ.NB *) subclass[composite[SUBVAR,inverse[CLIQUES]],S] := True (* added 2000 December 9 based on SUBVAR.NB *) subclass[composite[SUBVAR,S,CART,DUP],E] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[composite[SUBVAR,S],composite[S,SUBVAR]] := True (* derived 2004 February 28 in IM-IN.NB *) subclass[composite[SUBVAR,S,IMAGE[DUP]],E] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[composite[SUBVAR,S,inverse[SUBVAR]],S] := True (* derived 2007 May 19 in OLDO-ORD.NB *) subclass[composite[SUCC,BIGCUP,id[OMEGA]],S] := True (* derived 2006 March 25 in PC-ON-SC.NB *) subclass[composite[SUCC,BIGCUP,id[P[OMEGA]]],S] := True (* derived 2008 February 26 in WF-TRICH.NB *) subclass[composite[SUCC,id[x_],complement[inverse[E]],id[x_]],E] := subclass[cart[x,x],union[E,composite[inverse[E],SUCC]]] (* derived 2008 March 1 in STRUNG.NB *) subclass[composite[SUCC,id[ord[x_]],S,id[ord[x_]]],E] := True (* derived 2006 April 24 in SUCC-S.NB *) subclass[composite[SUCC,S,inverse[SUCC]],S] := False (* derived 2008 October 9 in SU-FLIP.NB *) subclass[composite[x_,SWAP],composite[y_,SWAP]] := subclass[composite[x,id[cart[V,V]]],y] (* derived 2005 July 24 in TC-HULL.NB *) subclass[composite[TC,id[x_],S],composite[S,TC]] := True (* derived 2008 May 23 in H-TC.NB *) subclass[composite[TC,inverse[HC]],S] := True (* added 2002 February 16 based on THINRULE.NB *) subclass[composite[TC,inverse[S]],composite[inverse[S],TC]] := True (* derived 2007 December 23 in SUBCLASS.NB *) subclass[composite[TC,SINGLETON],S] := True (* derived 2005 December 30 in UB-THIN.NB *) subclass[composite[thinpart[UB[x_]],E],x_] := True (* derived 2005 July 17 in TIMES.NB *) subclass[composite[times[x_],S,id[omega]],composite[S,times[x_]]] := True (* added 2002 March 28 based on TRV.NB *) subclass[composite[x_,x_],trv[x_]] := True (* derived 2004 March 21 in TRV-WRAP.NB *) subclass[composite[trv[x_],y_],y_] := subclass[composite[x,y],y] (* derived 2006 June 27 in TRV-U.NB *) subclass[composite[x_,trv[y_]],x_] := subclass[composite[x,y],x] (* added 2002 March 27 based on TRV.NB *) subclass[composite[x_,trv[x_]],trv[x_]] := True (* added 2002 March 27 based on TRV.NB *) subclass[composite[trv[x_],x_],trv[x_]] := True (* derived 2006 June 27 in TRV-U.NB *) subclass[composite[trv[x_],trv[x_]],x_] := TRANSITIVE[composite[Id,x]] (* derived 2006 June 27 in TRV-U.NB *) subclass[composite[trv[x_],trv[x_],y_],composite[trv[x_],y_]] := True (* derived 2006 June 27 in TRV-U.NB *) subclass[composite[x_,trv[y_],trv[y_]],composite[x_,trv[y_]]] := True (* derived 2008 July 20 in TRV-SU.NB *) subclass[composite[trv[x_],trv[y_]],trv[union[x_,y_]]] := True (* derived 2006 November 25 in U-BINHOM.NB *) subclass[composite[U[binhom[y_,z_]],U[binhom[x_,y_]]],U[binhom[x_,z_]]] := True (* derived 2004 June 16 in TRANSVAR.NB *) subclass[composite[x_,U[subcommutant[x_]]],composite[U[subcommutant[x_]],x_]] := True (* derived 2005 February 5 in X2632.NB *) subclass[composite[U[transvar[cross[x_,Id],cross[Id,y_]]],inverse[x_]], composite[y_,U[transvar[cross[x_,Id],cross[Id,y_]]]]] := True (* derived 2008 August 14 in ALL-IND.NB *) subclass[composite[UB[union[E,complement[S]]],id[OMEGA]],S] := True (* derived 2008 July 6 in UBD-MONO.NB *) subclass[composite[UBD,S],composite[S,UBD]] := True (* derived 2008 July 6 in UBD-MONO.NB *) subclass[composite[UBD,S,inverse[UBD]],S] := True (* derived 2007 June 25 in UCH-HULL.NB *) subclass[composite[UCHAINS,S],composite[S,UCHAINS]] := True (* derived 2007 June 25 in UCH-HULL.NB *) subclass[composite[UCHAINS,S,inverse[UCHAINS]],S] := True (* derived 2003 December 31 in COARSER.NB *) subclass[composite[UCLOSURE,COARSER],composite[COARSER,UCLOSURE]] := True (* derived 2003 December 31 in COARSER.NB *) subclass[composite[UCLOSURE,COARSER,inverse[UCLOSURE]],COARSER] := True (* added 2002 February 16 based on THINRULE.NB *) subclass[composite[UCLOSURE,inverse[S]],composite[inverse[S],UCLOSURE]] := True (* derived 2008 August 28 in UCH-UCL.NB *) subclass[composite[UCLOSURE,inverse[UCHAINS]],S] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[composite[UCLOSURE,S],composite[S,UCLOSURE]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[composite[UCLOSURE,S,inverse[UCLOSURE]],S] := True (* derived 2007 September 4 in MONOCHNS.NB *) subclass[composite[u_,v_],union[x_,composite[Id,y_]]] := subclass[composite[u,v],union[x,y]] (* derived 2004 February 25 in HULLUBLB.NB *) subclass[composite[VERTSECT[complement[composite[complement[x_],LB[x_]]]],S], composite[S,VERTSECT[complement[composite[complement[x_],LB[x_]]]]]] := True (* derived 2004 February 25 in HULLUBLB.NB *) subclass[composite[VERTSECT[complement[composite[complement[x_],LB[x_]]]],S, inverse[VERTSECT[complement[composite[complement[x_],LB[x_]]]]]],S] := True (* derived 2006 October 16 in EQV-PROJ.NB *) subclass[composite[VERTSECT[eqv[x_]],id[fix[eqv[x_]]]],E] := True (* derived 2006 October 16 in EQV-PROJ.NB *) subclass[composite[VERTSECT[x_],id[domain[x_]]],E] := subclass[domain[thinpart[x]],fix[x]] (* derived 2007 June 4 in VS-SU.NB *) subclass[composite[VERTSECT[x_],id[fix[x_]]],E] := True (* derived 2006 January 24 in VS-MEMB.NB *) subclass[composite[VERTSECT[x_],inverse[x_]],E] := True (* derived 2008 March 9 in WO.NB *) subclass[composite[wo[x_],id[y_],wo[x_]],wo[x_]] := True (* derived 2004 Agust 13 in X4015-56.NB *) subclass[composite[ZN,inverse[E]],ZN] := True (* derived 2006 June 7 in CONST.NB *) subclass[CONST,FUNS] := True (* derived 2006 June 7 in CONST.NB *) subclass[CONST,range[CART]] := True (* derived 2006 August 4 in CONST.NB *) subclass[CONST,union[image[inverse[IMAGE[SECOND]],range[SINGLETON]],set[0]]] := True (* added 2004 April 17 based on CORE.NB *) subclass[core[x_,y_],y_] := True (* derived 2007 February 17 in RELNS.NB *) subclass[CORE[x_],cart[y_,z_]] := and[equal[V,y],subclass[Uclosure[x],z]] (* derived 2008 August 15 in CORE-I.NB *) subclass[CORE[x_],composite[S,CORE[intersection[x_,y_]]]] := True (* derived 2007 June 25 in HULL-TRV.NB *) subclass[core[x_,y_],core[x_,z_]] := subclass[core[x,y],z] (* derived 2007 May 31 in CORE-ID.NB *) subclass[CORE[x_],Id] := equal[V,Uclosure[x]] (* derived 2006 September 26 in CORECART.NB *) subclass[core[image[CART,x_],y_],cart[V,V]] := True (* derived 2008 August 15 in CORE-I.NB *) subclass[core[intersection[x_,y_],z_],core[x_,z_]] := True (* derived 2008 August 15 in CORE-I.NB *) subclass[core[intersection[FULL,x_],y_],H[y_]] := True (* added 2001 October 25 based on COREHULL.NB *) subclass[CORE[x_],inverse[S]] := True (* derived 2005 December 2 in NAT-CORE.NB *) subclass[core[omega,x_],omega] := True (* derived 2005 December 2 in ORD-CORE.NB *) subclass[core[OMEGA,x_],OMEGA] := True (* derived 2004 July 20 in X2081.NB *) subclass[CORE[RFX],composite[CAP,id[cart[V,image[CART,Id]]],inverse[FIRST]]] := True (* derived 2004 April 18 in CORE-IVR.NB *) subclass[core[x_,y_],U[x_]] := True (* derived 2008 January 22 in SU-IM-I.NB *) subclass[core[x_,y_],union[z_,core[intersection[x_,complement[P[z_]]],y_]]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[CROSS,cart[x_,y_]] := and[subclass[cart[V,V],x],subclass[range[CROSS],y]] subclass[cross[u_,v_],cart[x_,y_]] := and[subclass[cart[domain[u],domain[v]],x],subclass[cart[range[u],range[v]],y]] (* added 2001 December 26 based on CMT-X.NB *) subclass[cross[COMMUTE,COMMUTE],composite[inverse[CROSS],COMMUTE,CROSS]] := True subclass[cross[x_,y_],composite[inverse[FIRST],x_,FIRST]] := True subclass[cross[x_,y_],composite[inverse[SECOND],y_,SECOND]] := True (* derived 2008 April 18 in SU-X.NB *) subclass[cross[u_,v_],cross[x_,y_]] := or[equal[0,domain[u]],equal[0,domain[v]], and[subclass[composite[Id,u],x],subclass[composite[Id,v],y]]] (* derived 2004 June 4 in X-DUP-SU.NB *) subclass[cross[x_,x_],cross[y_,y_]] := subclass[composite[Id,x],y] (* derived 2005 July 30 in CATORELN.NB *) subclass[cross[x_,Id],cross[y_,Id]] := subclass[composite[Id,x],y] (* derived 2005 July 30 in CATORELN.NB *) subclass[cross[Id,x_],cross[Id,y_]] := subclass[composite[Id,x],y] (* derived 2005 August 5 in X-ID.NB *) subclass[cross[x_,Id],Id] := subclass[composite[Id,x],Id] (* derived 2005 August 5 in X-ID.NB *) subclass[cross[Id,x_],Id] := subclass[composite[Id,x],Id] (* derived 2005 July 20 in CARD-Q.NB *) subclass[cross[Q,Q],composite[inverse[CART],Q,CART]] := True (* derived 2006 July 4 in MAP-Q.NB *) subclass[cross[Q,Q],composite[inverse[MAP],Q,MAP]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[CUP,cart[x_,y_]] := and[equal[V,y],subclass[cart[V,V],x]] (* derived 2008 August 28 in CAP-DIF.NB *) subclass[CUP,composite[S,CAP]] := True (* added 1999 October 7 based on SC5-LOG.2 *) subclass[CUP,composite[S,FIRST]] := True (* added 1999 October 7 based on SC5-LOG.2 *) subclass[CUP,composite[S,SECOND]] := True (* derived 2007 April 26 in AXREG.NB *) subclass[DESCENDING,REGULAR] := AxReg (* derived 2004 December 30 in REPLACE.NB *) subclass[DESCENDING,set[0]] := AxReg (* derived 2005 February 8 in X1734.NB *) subclass[DESCENDING,union[image[inverse[ADJOIN[set[x_]]],DESCENDING],P[complement[x_]]]] := True (* added 2001 March 4 based on SU-PS.NB *) subclass[x_,Di] := and[equal[0,fix[x]],subclass[x,cart[V,V]]] (* added 1999 September 27 based on SU-CP.LOG *) subclass[Di,cart[x_,y_]] := and[equal[V,x],equal[V,y]] (* derived 2006 December 19 in SU-CP.NB *) subclass[DIF,cart[x_,y_]] := and[equal[V,y],subclass[cart[V,V],x]] (* added 2001 November 8 based on IMS.NB *) subclass[DIF,composite[inverse[S],FIRST]] := True subclass[DISJOINT,cart[x_,y_]] := and[equal[V,x],equal[V,y]] (* derived 2006 December 19 in SU-CP.NB *) subclass[DIV,cart[x_,y_]] := and[subclass[omega,x],subclass[omega,y]] (* derived 2008 July 27 in PRS-REG.NB *) subclass[DIV,REGULAR] := True (* derived 2005 January 29 in DIV.NB *) subclass[DIV,union[cart[omega,set[0]],composite[id[omega],S,id[omega]]]] := True (* added 2002 September 2 based on DIV-PO.NB *) subclass[DIV,union[S,cart[omega,set[0]]]] := True (* derived 2009 January 1 in COD-SU.NB *) subclass[dom[x_],composite[SECOND,inverse[x_]]] := True (* derived 2009 January 1 in COD-SU.NB *) subclass[dom[x_],domain[x_]] := True (* derived 2009 January 1 in COD-SU.NB *) subclass[dom[x_],fix[composite[inverse[FIRST],x_]]] := True (* derived 2008 October 20 in BO-SU-CP.NB *) subclass[domain[binop[x_]],cart[y_,z_]] := and[subclass[fix[domain[binop[x]]],y],subclass[fix[domain[binop[x]]],z]] (* derived 2009 January 12 in CAT-SU.NB *) subclass[domain[cat[x_]],cart[y_,z_]] := and[subclass[range[cat[x]],y],subclass[range[cat[x]],z]] (* derived 2008 December 30 in CAT-WRAP.NB *) subclass[domain[cod[x_]],range[domain[x_]]] := True (* derived 2008 December 30 in CAT-WRAP.NB *) subclass[domain[dom[x_]],domain[domain[x_]]] := True (* derived 2006 September 15 in ID-CHAR.NB *) subclass[domain[x_],domain[funpart[x_]]] := FUNCTION[composite[Id,x]] (* derived 2004 May 14 in THINPART.NB *) subclass[domain[x_],domain[VERTSECT[x_]]] := equal[V,domain[VERTSECT[x]]] (* derived 2006 September 15 in ID-CHAR.NB *) subclass[domain[x_],fix[funpart[x_]]] := subclass[composite[Id,x],Id] (* added 2000 December 15 based on DO-C-FNP.NB *) subclass[domain[funpart[x_]],domain[x_]] := True (* Theorem VS-FNP in VS1 proved 2000 February 12 *) subclass[domain[funpart[x_]],domain[VERTSECT[x_]]] := True (* derived 2004 October 26 in AXCH.NB *) subclass[domain[funpart[x_]],fix[composite[y_,funpart[x_]]]] := subclass[funpart[x],inverse[y]] (* derived 2008 August 20 in FU-EQ.NB *) subclass[domain[funpart[x_]],fix[composite[inverse[funpart[x_]],y_]]] := subclass[funpart[x],y] (* derived 2004 June 12 in X1228.NB *) subclass[domain[funpart[x_]],fix[composite[inverse[y_],funpart[x_]]]] := subclass[funpart[x],y] (* derived 2006 September 15 in ID-CHAR.NB *) subclass[domain[funpart[x_]],fix[funpart[x_]]] := subclass[funpart[x],Id] (* derived 2008 October 25 in IMIN-FUN.NB *) subclass[domain[funpart[x_]],image[inverse[funpart[x_]],y_]] := subclass[range[funpart[x]],y] (* derived 2009 January 21 in HOM.NB *) subclass[domain[hom[x_]],cart[y_,z_]] := and[subclass[ids[x],y],subclass[ids[x],z]] (* derived 2006 August 16 in EVOD-ADD.NB *) subclass[domain[image[inverse[NATADD],x_]],omega] := True (* derived 2008 November 29 in INT-WRAP.NB *) subclass[domain[int[x_]],omega] := True (* derived 2009 January 21 in INV.NB *) subclass[domain[inv[cat[x_]]],range[cat[x_]]] := True (* added 2002 April 15 based on ITERATE.NB *) subclass[domain[iterate[x_,y_]],omega] := True (* added 2003 June 9 based on BOUNDED.NB *) subclass[domain[LB[x_]],cliques[composite[x_,inverse[x_]]]] := True (* added 2003 June 5 based on FUNFAMILY.NB *) subclass[domain[LB[x_]],FUNS] := and[FUNCTION[rotate[inverse[x]]],subclass[range[x],cart[V,V]]] (* derived 2006 March 21 in SU-REG.NB *) subclass[domain[LB[x_]],REGULAR] := subclass[range[x],REGULAR] (* derived 2008 October 21 in LISTS.NB *) subclass[domain[list[x_]],omega] := True (* derived 2006 March 12 in OLIST-OO.NB *) subclass[domain[ordlist[x_]],omega] := True (* derived 2007 May 19 in OLDO-ORD.NB *) subclass[domain[ordlist[x_]],U[domain[ordlist[x_]]]] := or[equal[0,intersection[OMEGA,x]],not[member[intersection[OMEGA,x],FINITE]]] (* added 2002 June 8 based on POWER-SU..NB *) subclass[domain[power[x_]],omega] := True (* derived 2008 October 20 in BO-SU-CP.NB *) subclass[domain[quasigp[x_]],cart[y_,z_]] := and[subclass[range[quasigp[x]],y],subclass[range[quasigp[x]],z]] (* derived 2004 August 3 in WF-REC-1.NB *) subclass[domain[rec[x_,y_]],domain[domain[x_]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) subclass[domain[rec[x_,y_]],domain[VERTSECT[y_]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) subclass[domain[rec[x_,y_]],domain[VERTSECT[trv[y_]]]] := True (* derived 2008 October 20 in BO-SU-CP.NB *) subclass[domain[semigp[x_]],cart[y_,z_]] := and[subclass[fix[domain[semigp[x]]],y],subclass[fix[domain[semigp[x]]],z]] (* derived 2005 January 26 in REMOVED.NB *) subclass[domain[thinpart[x_]],domain[VERTSECT[x_]]] := True (* derived 2006 November 25 in U-BINHOM.NB *) subclass[domain[U[binhom[x_,y_]]],fix[domain[x_]]] := True (* added 2000 December 18 based on LB-LB.NB *) subclass[domain[UB[x_]],cliques[composite[inverse[x_],x_]]] := True (* added 2003 June 5 based on FUNFAMILY.NB *) subclass[domain[UB[x_]],FUNS] := and[FUNCTION[rotate[x]],subclass[domain[x],cart[V,V]]] (* derived 2006 March 21 in SU-REG.NB *) subclass[domain[UB[x_]],REGULAR] := subclass[domain[x],REGULAR] (* derived 2008 January 20 in DIF.NB *) subclass[domain[x_],union[domain[y_],fix[composite[inverse[x_],complement[y_]]]]] := True (* derived 2004 June 6 in REPLACE.NB *) subclass[domain[VERTSECT[trv[x_]]],domain[VERTSECT[x_]]] := True (* derived 2004 June 6 in REPLACE.NB *) subclass[domain[VERTSECT[trv[x_]]],domain[VERTSECT[eqv[x_]]]] := True (* derived 2005 December 31 in VS-UB.NB *) subclass[domain[VERTSECT[x_]],U[domain[VERTSECT[UB[x_]]]]] := True (* modified 1998 August 21 *) subclass[DUP,cart[x_,y_]] := and[equal[V,x],equal[V,fix[y]]] (* derived 2007 October 13 in MONOCART.NB *) subclass[DUP,inverse[CAP]] := True (* derived 2007 October 13 in MONOCART.NB *) subclass[DUP,inverse[CUP]] := True (* added 2001 December 29 based on X-FU-FP.NB *) subclass[DUP,inverse[FIRST]] := True (* added 2001 December 29 based on X-FU-FP.NB *) subclass[DUP,inverse[SECOND]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[E,cart[x_,y_]] := and[equal[V,x],equal[V,union[y,set[0]]]] (* derived 2004 June 28 in X2200.NB *) subclass[E,composite[E,x_]] := equal[V,fix[x]] (* derived 2004 June 17 in X1337-65.NB *) subclass[E,composite[inverse[IMAGE[inverse[S]]],E]] := True (* derived 2007 December 23 in SUBCLASS.NB *) subclass[E,composite[inverse[TC],E]] := True (* derived 2005 January 20 in X1928.NB *) subclass[E,composite[K,complement[E]]] := True (* derived 2004 April 8 in SU-ID.NB *) subclass[E,Id] := False (* derived 2008 August 13 in IVR-V.NB *) subclass[E,S] := False (* derived 2006 December 19 in SU-CP.NB *) subclass[EQUIDIFF,cart[x_,y_]] := and[subclass[cart[omega,omega],x],subclass[cart[omega,omega],y]] (* derived 2006 December 19 in SU-CP.NB *) subclass[EQUIV,cart[x_,y_]] := and[equal[V,x],subclass[EQV,y]] (* derived 2007 February 17 in RELNS.NB *) subclass[eqv[w_],cart[x_,y_]] := and[subclass[fix[eqv[w]],x],subclass[fix[eqv[w]],y]] (* derived 2004 March 20 in EQV-WRAP.NB *) subclass[EQV,fix[composite[inverse[CLIQUES],S,IMAGE[SECOND],VS]]] := True (* derived 2008 October 29 in PARTN.NB *) subclass[EQV,fix[composite[inverse[IMAGE[inverse[DUP]]], image[inverse[IMG],cliques[union[DISJOINT,Id]]],VS]]] := True (* derived 2004 December 14 in IDEMPROJ.NB *) subclass[EQV,IDEM] := True (* derived 2004 December 7 in ASV-DIV.NB *) subclass[EQV,image[IMAGE[cross[FIRST,Id]],ASSOCIATIVE]] := True (* added 2001 October 28 based on EQV.NB *) subclass[EQV,invar[composite[DUP,FIRST]]] := True (* added 2001 October 28 based on EQV.NB *) subclass[EQV,invar[composite[DUP,SECOND]]] := True (* added 2001 October 28 based on EQV.NB *) subclass[EQV,RFX] := True (* added 2001 October 28 based on EQV.NB *) subclass[EQV,SYM] := True (* added 2001 October 28 based on EQV.NB *) subclass[EQV,TRV] := True (* derived 2004 June 6 in EQV-TRV.NB *) subclass[eqv[x_],trv[x_]] := True (* derived 2006 October 24 in EVAL.NB *) subclass[eval[x_],composite[inverse[E],IMAGE[SECOND],IMAGE[id[cart[set[x_],V]]]]] := True (* derived 2006 August 15 in EVEN-ODD.NB *) subclass[even,omega] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[FACTORIAL,cart[x_,y_]] := and[subclass[omega,x],subclass[range[FACTORIAL],y]] (* derived 2007 January 15 in FACT-UB.NB *) subclass[FACTORIAL,composite[inverse[S],NATEXP,DUP]] := True (* derived 2005 April 23 in FACT-S.NB *) subclass[FACTORIAL,S] := True (* derived 2005 April 21 in FACT-DIV.NB *) subclass[FACTORIAL,union[DIV,cart[set[0],omega]]] := True (* derived 2005 October 17 in TO-FIN.NB *) subclass[fin[x_],x_] := True (* derived 2008 January 16 in UCHN-FIN.NB *) subclass[fin[x_],image[inverse[PS],fin[x_]]] := equal[0,fin[x]] (* derived 2008 June 12 in PS-FIN.NB *) subclass[fin[x_],image[PS,fin[x_]]] := equal[0,fin[x]] (* derived 2006 April 4 in SUB-FIN.NB *) subclass[fin[intersection[x_,y_]],x_] := True (* derived 2007 December 17 in DESC-REG.NB *) subclass[fin[x_],REGULAR] := member[fin[x],REGULAR] (* derived 2008 January 2 in FINCHR-1.NB *) subclass[FINCHAR,allclosed[composite[inverse[POWER],inverse[IMAGE[id[FINITE]]]]]] := True (* derived 2008 January 2 in FINCHR-1.NB *) subclass[FINCHAR,fix[IMAGE[inverse[S]]]] := True (* derived 2008 January 4 in FNCH-UCH.NB *) subclass[FINCHAR,fix[UCHAINS]] := False (* derived 2008 September 17 in TUKEY.NB *) subclass[FINCHAR,range[CLIQUES]] := False (* derived 2008 January 2 in FINCHR-1.NB *) subclass[FINCHAR,range[POWER]] := False (* derived 2008 January 4 in FNCH-UCH.NB *) subclass[FINCHAR,union[fix[UCHAINS],P[complement[set[0]]]]] := True (* derived 2004 February 7 in COMPACT.NB *) subclass[FINITE,COMPACT] := True (* Theorem DK-FIN in DK proved 2000 June 2 *) subclass[FINITE,DEDEKIND] := True (* derived 2008 January 22 in HART-FU.NB *) subclass[FINITE,domain[HARTOGS]] := True (* derived 2008 January 2 in FINCHR-1.NB *) subclass[FINITE,FINCHAR] := False (* derived 2007 July 11 in FP-UCH.NB *) subclass[FINITE,fix[UCHAINS]] := False (* derived 2007 December 4 in H-FIN.NB *) subclass[FINITE,H[x_]] := equal[V,x] (* added 2001 December 19 based on SETHOOD2.NB *) subclass[FINITE,image[Q,OMEGA]] := True (* derived 2006 March 12 in DENUM.NB *) subclass[FINITE,image[Q,succ[omega]]] := True (* derived 2007 June 26 in UCLOSURE.NB *) subclass[FINITE,invar[x_]] := subclass[composite[Id,x],Id] (* derived 2007 April 26 in AXREG.NB *) subclass[FINITE,REGULAR] := AxReg (* derived 2004 November 2 in SELECT.NB *) subclass[FINITE,SELECT] := True (* derived 2008 January 16 in UCHN-FIN.NB *) subclass[FINITE,union[fix[UCHAINS],P[complement[set[0]]]]] := True (* derived 2008 October 13 in SU-1-2.NB *) subclass[x_,FIRST] := and[subclass[x,cart[cart[V,V],V]],subclass[composite[FIRST,inverse[x]],Id]] subclass[FIRST,cart[x_,y_]] := and[subclass[cart[V,V],x],equal[V,y]] (* derived 2008 August 28 in CAP-DIF.NB *) subclass[FIRST,composite[S,CAP]] := True (* derived 2008 August 28 in CAP-DIF.NB *) subclass[FIRST,composite[S,DIF]] := True (* added 2003 May 23 based on CORE-BCL.NB *) subclass[fix[ACLOSURE],binclosed[CAP]] := True (* derived 2007 July 27 in ACL-UCL.NB *) subclass[fix[ACLOSURE],binclosed[CUP]] := False (* derived 2007 July 27 in ACL-UCL.NB *) subclass[fix[ACLOSURE],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := False (* derived 2007 June 26 in UCLOSURE.NB *) subclass[fix[ACLOSURE],fix[IMAGE[inverse[S]]]] := False (* derived 2007 July 18 in RA-CLIQ.NB *) subclass[fix[ACLOSURE],fix[UCHAINS]] := False (* derived 2007 July 27 in ACL-UCL.NB *) subclass[fix[ACLOSURE],fix[UCLOSURE]] := False (* derived 2007 July 11 in POW-UCL.NB *) subclass[fix[ACLOSURE],range[CLIQUES]] := False (* derived 2007 July 11 in POW-UCL.NB *) subclass[fix[ACLOSURE],range[POWER]] := False (* derived 2007 July 27 in ACL-UCL.NB *) subclass[fix[ACLOSURE],range[SUBVAR]] := False (* derived 2007 July 27 in TOPS.NB *) subclass[fix[ACLOSURE],TOPS] := False (* derived 2007 June 23 in ALLCLOSED.NB *) subclass[fix[ACLOSURE],union[fix[composite[E,BIGCAP]],set[0]]] := True (* added 1998 August 27 *) subclass[fix[BIGCUP],FULL] := True (* added 2002 May 25 based on INVAR.NB *) subclass[fix[BIGCUP],subvar[inverse[E]]] := True (* added 2001 December 17 based on Q-HAT.NB *) subclass[fix[CARD],image[Q,OMEGA]] := True (* added 2001 December 10 based on CARD-ALL.NB *) subclass[fix[CARD],OMEGA] := True (* derived 2006 January 14 in OM-LFP.NB *) subclass[fix[composite[ADJOIN[x_],IMAGE[y_]]],invar[y_]] := True (* added 2002 June 1 based on RCF.NB *) subclass[fix[composite[BIGCAP,RC[x_]]],Aclosure[x_]] := True (* derived 2006 February 5 in CORE-I.NB *) subclass[fix[composite[CORE[x_],y_]],Uclosure[x_]] := True (* derived 2008 November 18 in FIX-1-2.NB *) subclass[fix[composite[Di,x_,DUP]],domain[fix[composite[inverse[SECOND],Di,x_]]]] := True (* derived 2008 November 18 in FIX-1-2.NB *) subclass[fix[composite[Di,x_,DUP]],range[fix[composite[inverse[FIRST],Di,x_]]]] := True (* derived 2007 November 7 in CLQ-C.NB *) subclass[fix[composite[DISJOINT,IMAGE[inverse[PS]]]], fix[composite[DISJOINT,IMAGE[inverse[K]]]]] := True (* derived 2004 December 13 in ANTISYM.NB *) subclass[fix[composite[DISJOINT,INVERSE]],ANTISYM] := True (* derived 2005 February 1 in DIV-WF.NB *) subclass[fix[composite[DIV,x_]],omega] := True subclass[fix[composite[x_,y_]],domain[y_]] := True (* derived 2008 October 28 in FIX-DUP.NB *) subclass[fix[composite[DUP,x_]],cart[V,V]] := True (* derived 2008 November 17 in FIX-DUP.NB *) subclass[fix[composite[x_,DUP]],fix[domain[x_]]] := True (* derived 2008 October 28 in FIX-DUP.NB *) subclass[fix[composite[DUP,x_]],Id] := True (* derived 2007 July 26 in RA-POWER.NB *) subclass[fix[composite[E,BIGCAP]],range[POWER]] := False (* derived 2008 August 15 in HULL-I.NB *) subclass[fix[composite[x_,HULL[y_]]],image[inverse[S],y_]] := True (* added 1998 August 23 *) subclass[fix[composite[x_,id[z_],y_]],image[x_,z_]] := True (* added 1998 August 23 *) subclass[fix[composite[x_,id[z_],y_]],image[inverse[y_],z_]] := True (* added 1998 August 23 *) subclass[fix[composite[x_,id[z_],inverse[y_]]],image[y_,z_]] := True (* derived 2008 February 2 in RELNS.NB *) subclass[fix[composite[x_,intersection[y_,z_]]],domain[z_]] := True (* derived 2008 February 2 in RELNS.NB *) subclass[fix[composite[x_,intersection[y_,z_]]],fix[composite[inverse[y_],z_]]] := True (* derived 2008 February 2 in RELNS.NB *) subclass[fix[composite[x_,intersection[y_,inverse[z_]]]],fix[composite[z_,y_]]] := True (* derived 2008 February 2 in RELNS.NB *) subclass[fix[composite[x_,intersection[y_,inverse[z_]]]],range[z_]] := True (* added 2002 June 15 based on REPLACE.NB *) subclass[fix[composite[inverse[x_],Di,x_]],y_] := FUNCTION[composite[x,id[complement[y]]]] subclass[fix[composite[inverse[x_],y_]],domain[x_]] := True (* derived 2008 May 15 in FP-E-E.NB *) subclass[fix[composite[inverse[E],BIGCUP]],fix[composite[inverse[E],TC]]] := True (* added 2002 June 2 based on COREHULL.NB *) subclass[fix[composite[inverse[E],HULL[x_]]],image[inverse[S],x_]] := True (* derived 2007 July 27 in BINCL.NB *) subclass[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],binclosed[CAP]] := False (* derived 2007 July 27 in BINCL.NB *) subclass[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],binclosed[CUP]] := False (* derived 2007 July 27 in TOPS.NB *) subclass[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],fix[ACLOSURE]] := False (* derived 2007 November 23 in INDUCTIV.NB *) subclass[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]], fix[composite[inverse[IMAGE[inverse[S]]],S,UCHAINS]]] := True (* derived 2007 August 2 in FP-E-BC.NB *) subclass[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],fix[IMAGE[inverse[S]]]] := False (* derived 2007 July 25 in FIX-UCH.NB *) subclass[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],fix[UCHAINS]] := False (* derived 2007 July 27 in ACL-UCL.NB *) subclass[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],fix[UCLOSURE]] := False (* derived 2007 August 2 in FP-E-BC.NB *) subclass[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],range[CLIQUES]] := False (* derived 2007 July 26 in RA-POWER.NB *) subclass[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],range[POWER]] := False (* derived 2007 August 2 in FP-E-BC.NB *) subclass[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],range[SUBVAR]] := False (* derived 2007 July 27 in TOPS.NB *) subclass[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],TOPS] := False (* derived 2007 February 10 in COMPOS-2.NB *) subclass[fix[composite[inverse[E],IMAGE[NATMUL],x_]],omega] := True (* derived 2008 June 3 in CARD-ORD.NB *) subclass[fix[composite[inverse[E],IMAGE[x_]]],range[x_]] := True (* derived 2009 January 1 in COD-SU.NB *) subclass[fix[composite[inverse[FIRST],x_]],composite[SECOND,inverse[x_]]] := True (* derived 2008 February 14 in DICHOT.NB *) subclass[fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]], fix[composite[inverse[HULL[SYM]],CART,DUP,CUP,DORA]]] := True (* derived 2008 January 29 in TO.NB *) subclass[fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]],RFX] := True (* added 2003 October 15 based on ACYCLIC.NB *) subclass[fix[composite[INVERSE,image[inverse[CUP],ACYCLIC]]],ACYCLIC] := True (* derived 2007 November 15 in ZORN-LEM.NB *) subclass[fix[composite[inverse[IMAGE[inverse[PS]]],S,UCHAINS]],subvar[inverse[PS]]] := True (* rule added 1999 August 2 *) subclass[fix[composite[x_,inverse[y_]]],range[y_]] := True (* derived 2009 January 1 in COD-SU.NB *) subclass[fix[composite[inverse[SECOND],x_]],composite[x_,inverse[FIRST]]] := True (* derived 2008 September 4 in IN-2-SBV.NB *) subclass[fix[composite[inverse[SECOND],IMG]],composite[inverse[E],SUBVAR]] := True (* derived 2008 September 4 in IN-2-SBV.NB *) subclass[fix[composite[inverse[SECOND],IMG]],INVAR] := True (* derived 2007 July 8 in FP-Q-K.NB *) subclass[fix[composite[inverse[SUCC],S,POWER]],RUSSELL] := True (* added 2000 December 18 based on LB-LB.NB *) subclass[fix[composite[inverse[UB[x_]],UB[y_]]], cliques[composite[inverse[x_],y_]]] := True subclass[fix[composite[x_,y_]],range[x_]] := True (* derived 2006 September 26 in CORECART.NB *) subclass[fix[composite[rfx[x_],rfx[x_]]],fix[x_]] := True (* added 2002 May 12 based on OM-SC-2B.NB *) subclass[fix[composite[SUCC,BIGCUP]], fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := True (* derived 2005 October 22 in TO-C.NB *) subclass[fix[composite[x_,to[y_]]],fix[to[y_]]] := True (* derived 2005 October 22 in TO-C.NB *) subclass[fix[composite[to[x_],y_]],fix[to[x_]]] := True (* derived 2008 January 20 in DIF.NB *) subclass[fix[composite[x_,z_]], union[fix[composite[x_,complement[y_]]],fix[composite[inverse[y_],z_]]]] := True (* derived 2008 January 20 in DIF.NB *) subclass[fix[composite[x_,z_]], union[fix[composite[x_,inverse[y_]]],fix[composite[complement[y_],z_]]]] := True (* derived 2008 March 6 in WO-TO.NB *) subclass[fix[composite[wo[x_],y_]],fix[wo[x_]]] := True (* derived 2008 March 6 in WO-TO.NB *) subclass[fix[composite[x_,wo[y_]]],fix[wo[y_]]] := True (* added 2000 December 19 based on GT-S.NB *) subclass[fix[x_],domain[x_]] := True (* derived 2008 May 15 in FP-E-E.NB *) subclass[fix[E],fix[composite[inverse[E],BIGCUP]]] := True (* derived 2008 May 15 in FP-E-E.NB *) subclass[fix[E],fix[composite[inverse[E],TC]]] := True (* derived 2004 April 4 in IRR-TRV.NB *) subclass[fix[x_],fix[composite[x_,x_]]] := True (* derived 2008 June 21 in FP-FUNP.NB *) subclass[fix[x_],fix[composite[Di,x_]]] := equal[0,fix[funpart[x]]] (* added 2000 January 8 based on TC-TC.NB *) subclass[fix[x_],fix[composite[inverse[S],x_]]] := True (* derived 2004 June 16 in X1320.NB *) subclass[fix[x_],fix[composite[inverse[x_],S]]] := True (* added 2000 January 8 based on TC-TC.NB *) subclass[fix[x_],fix[composite[S,x_]]] := True (* derived 2004 June 16 in X1318.NB *) subclass[fix[x_],fix[composite[x_,S]]] := True (* derived 2004 June 16 in X1320.NB *) subclass[fix[x_],fix[composite[S,inverse[x_]]]] := True (* derived 2004 April 4 in IRR-TRV.NB *) subclass[fix[x_],fix[trv[x_]]] := True (* added 2002 December 23 based on REPLACE.NB *) subclass[fix[funpart[x_]],fix[x_]] := True (* added 2001 October 26 based on FIX-HULL.NB *) subclass[x_,fix[HULL[x_]]] := True (* derived 2004 January 23 in P-FINITE.NB *) subclass[fix[HULL[x_]],FINITE] := subclass[x,FINITE] (* derived 2007 June 26 in FIX-HULL.NB *) subclass[fix[HULL[x_]],fix[ACLOSURE]] := subclass[x,fix[ACLOSURE]] (* derived 2007 June 26 in FIX-HULL.NB *) subclass[fix[HULL[x_]],fix[HULL[y_]]] := subclass[x,fix[HULL[y]]] (* derived 2007 June 26 in FIX-HULL.NB *) subclass[fix[HULL[x_]],fix[UCLOSURE]] := subclass[x,fix[UCLOSURE]] (* derived 2007 June 26 in FIX-HULL.NB *) subclass[fix[HULL[x_]],FULL] := subclass[x,FULL] (* derived 2007 December 18 in SU-FUND.NB *) subclass[fix[HULL[x_]],FUND] := subclass[x,FUND] (* derived 2007 June 26 in FIX-HULL.NB *) subclass[fix[HULL[x_]],FUNS] := subclass[x,FUNS] (* added 2001 October 27 based on HULL-IMS.NB *) subclass[fix[HULL[x_]],image[inverse[S],x_]] := True (* derived 2004 October 7 in HULL-I.NB *) subclass[fix[HULL[intersection[x_,y_]]],fix[HULL[x_]]] := True (* derived 2007 June 26 in FIX-HULL.NB *) subclass[fix[HULL[x_]],range[CART]] := subclass[x,range[CART]] (* derived 2007 June 26 in FIX-HULL.NB *) subclass[fix[HULL[x_]],range[CLIQUES]] := subclass[x,range[CLIQUES]] (* derived 2007 June 26 in FIX-HULL.NB *) subclass[fix[HULL[x_]],range[POWER]] := subclass[x,range[POWER]] (* derived 2006 March 21 in SU-REG.NB *) subclass[fix[HULL[x_]],REGULAR] := subclass[x,REGULAR] (* added 2002 January 28 based on SUBVAR.NB *) subclass[fix[x_],image[x_,fix[x_]]] := True (* Theorem SBV-IVR4 in SUBVAR proved 1999 February 15 *) subclass[fix[IMAGE[x_]],invar[x_]] := True (* derived 2008 March 1 in WO-RS-S.NB *) subclass[fix[image[inverse[CART],image[inverse[IMAGE[id[S]]],WO]]],chains[S]] := True (* derived 2008 February 14 in WF-ASYM.NB *) subclass[fix[image[inverse[CART],image[inverse[IMAGE[id[x_]]],WF]]],chains[complement[x_]]] := True (* derived 2007 December 6 in IVR-HULL.NB *) subclass[fix[IMAGE[inverse[HULL[x_]]]],invar[HULL[x_]]] := True (* derived 2006 April 11 in IMINRANK.NB *) subclass[fix[IMAGE[inverse[RANK]]],REGULAR] := True (* derived 2007 November 4 in FP-IM-PS.NB *) subclass[fix[IMAGE[inverse[PS]]],fix[IMAGE[inverse[S]]]] := True (* revised 2003 May23 based on DEF-CLOS.NB *) subclass[fix[IMAGE[inverse[S]]],binclosed[CAP]] := True (* derived 2006 January 17 in IMS-INS.NB *) subclass[fix[IMAGE[inverse[S]]],binclosed[CUP]] := False (* revised 2003 May 24 based on IMS.NB *) subclass[fix[IMAGE[inverse[S]]],binclosed[DIF]] := True (* derived 2008 September 17 in TUKEY.NB *) subclass[fix[IMAGE[inverse[S]]],FINCHAR] := False (* added 2001 October 2 based on ACL-IMS.NB *) subclass[fix[IMAGE[inverse[S]]],fix[ACLOSURE]] := True (* derived 2007 August 2 in FP-E-BC.NB *) subclass[fix[IMAGE[inverse[S]]],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := False (* derived 2007 May 27 in COARSER.NB *) subclass[fix[IMAGE[inverse[S]]],fix[IMAGE[inverse[COARSER]]]] := True (* derived 2007 July 25 in FIX-UCH.NB *) subclass[fix[IMAGE[inverse[S]]],fix[UCHAINS]] := False (* derived 2007 July 27 in ACL-UCL.NB *) subclass[fix[IMAGE[inverse[S]]],fix[UCLOSURE]] := False (* derived 2008 January 2 in FINCHR-1.NB *) subclass[fix[IMAGE[inverse[S]]],invar[composite[id[x_],inverse[S]]]] := True (* derived 2007 May 29 in IVR-CORE.NB *) subclass[fix[IMAGE[inverse[S]]],invar[CORE[x_]]] := True (* derived 2007 December 6 in IVR-HULL.NB *) subclass[fix[IMAGE[inverse[S]]],invar[inverse[HULL[x_]]]] := True (* derived 2007 December 6 in IVR-HULL.NB *) subclass[fix[IMAGE[inverse[S]]],invar[inverse[TC]]] := True (* derived 2007 July 18 in RA-CLIQ.NB *) subclass[fix[IMAGE[inverse[S]]],range[CLIQUES]] := False (* derived 2007 July 26 in RA-POWER.NB *) subclass[fix[IMAGE[inverse[S]]],range[POWER]] := False (* derived 2007 July 17 in RA-SBV.NB *) subclass[fix[IMAGE[inverse[S]]],range[SUBVAR]] := False (* derived 2005 November 17 in RUSSELL.NB *) subclass[fix[IMAGE[inverse[S]]],RUSSELL] := True (* derived 2007 July 27 in TOPS.NB *) subclass[fix[IMAGE[inverse[S]]],TOPS] := False (* derived 2007 December 6 in IVR-HULL.NB *) subclass[fix[IMAGE[inverse[TC]]],invar[TC]] := True (* Theorem SBV-IVR4 in SUBVAR proved 1999 February 15 *) subclass[fix[IMAGE[x_]],subvar[x_]] := True (* derived 2004 August 15 in ZN-FACTS.NB *) subclass[fix[IMAGE[ZN]],domain[VERTSECT[ZN]]] := True (* added 2002 May 17 based on ZN.NB *) subclass[fix[IMAGE[ZN]],FULL] := True (* derived 2004 May 2 in ZN.NB *) subclass[fix[IMAGE[ZN]],fix[IMAGE[inverse[S]]]] := True\ (* derived 2004 May 2 in ZN.NB *) subclass[fix[IMAGE[ZN]],invar[IMAGE[ZN]]] := True (* derived 2008 November 29 in INT-WRAP.NB *) subclass[fix[int[x_]],omega] := True (* added 2000 September 9 based on SU-FP-RA.NB *) subclass[fix[x_],range[x_]] := True (* added 2000 October 13 based on TC-2.LOG *) subclass[fix[x_],U[subvar[x_]]] := True subclass[fix[SINGLETON],fix[E]] := True (* derived 2007 November 23 in FIX-SG.NB *) subclass[fix[SINGLETON],FULL] := True (* derived 2007 July 25 in FIX-UCH.NB *) subclass[fix[UCHAINS],binclosed[CAP]] := False (* derived 2007 July 25 in FIX-UCH.NB *) subclass[fix[UCHAINS],binclosed[CUP]] := False (* derived 2007 August 14 in FP-UCH.NB *) subclass[fix[UCHAINS],domain[GREATEST[union[S,inverse[S]]]]] := True (* derived 2007 July 25 in FIX-UCH.NB *) subclass[fix[UCHAINS],fix[ACLOSURE]] := False (* derived 2007 July 25 in FIX-UCH.NB *) subclass[fix[UCHAINS],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := False (* derived 2007 August 14 in UCH-SPIN.NB *) subclass[fix[UCHAINS],fix[composite[inverse[IMAGE[inverse[BIGCUP]]],E, VERTSECT[GREATEST[union[S,inverse[S]]]]]]] := True (* derived 2007 November 15 in ZORN-LEM.NB *) subclass[fix[UCHAINS],fix[composite[inverse[IMAGE[inverse[S]]],S,UCHAINS]]] := True (* derived 2007 July 25 in FIX-UCH.NB *) subclass[fix[UCHAINS],fix[IMAGE[inverse[S]]]] := False (* derived 2007 June 26 in UCHAINS.NB *) subclass[fix[UCHAINS],fix[UCLOSURE]] := False (* derived 2007 July 25 in FIX-UCH.NB *) subclass[fix[UCHAINS],range[CLIQUES]] := False (* derived 2007 July 25 in FIX-UCH.NB *) subclass[fix[UCHAINS],range[POWER]] := False (* derived 2007 July 25 in FIX-UCH.NB *) subclass[fix[UCHAINS],range[SUBVAR]] := False (* derived 2007 July 25 in FIX-UCH.NB *) subclass[fix[UCHAINS],TOPS] := False (* derived 2008 January 6 in ALLCL-BC.NB *) subclass[fix[UCLOSURE],allclosed[composite[BIGCUP,id[x_]]]] := True (* derived 2007 July 27 in ACL-UCL.NB *) subclass[fix[UCLOSURE],binclosed[CAP]] := False (* added 2003 May 23 based on CORE-BCL.NB *) subclass[fix[UCLOSURE],binclosed[CUP]] := True (* derived 2007 July 27 in ACL-UCL.NB *) subclass[fix[UCLOSURE],fix[ACLOSURE]] := False (* added 2003 May 18 based on TOPS.NB *) subclass[fix[UCLOSURE],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := True (* derived 2007 July 27 in ACL-UCL.NB *) subclass[fix[UCLOSURE],fix[IMAGE[inverse[S]]]] := False (* derived 2007 June 25 in UCH-HULL.NB *) subclass[fix[UCLOSURE],fix[UCHAINS]] := True (* derived 2007 June 27 in TOPS.NB *) subclass[fix[UCLOSURE],range[CLIQUES]] := False (* derived 2007 July 11 in POW-UCL.NB *) subclass[fix[UCLOSURE],range[POWER]] := False (* derived 2007 July 27 in TOPS.NB *) subclass[fix[UCLOSURE],TOPS] := False (* derived 2007 July 11 in FULL.NB *) subclass[FULL,fix[BIGCUP]] := False (* derived 2007 December 4 in HER-H.NB *) subclass[FULL,fix[composite[inverse[S],POWER,IMAGE[inverse[S]]]]] := True (* added 2002 April 16 based on INVAR.NB *) subclass[FULL,invar[inverse[SUCC]]] := True (* derived 2005 January 3 in FULL.NB *) subclass[FULL,OMEGA] := False (* derived 2007 July 11 in FULL.NB *) subclass[FULL,range[LAMBHULL]] := False (* derived 2008 July 15 in H-RUS.NB *) subclass[FULL,REGULAR] := AxReg (* derived 2007 July 11 in FULL.NB *) subclass[FULL,subvar[inverse[E]]] := False (* derived 2007 December 10 in FUND.NB *) subclass[FUND,RUSSELL] := True (* added 1999 November 23 based on FUNPART.NB *) subclass[funpart[x_],x_] := True (* derived 2004 June 18 in X13-FUNP.NB *) subclass[x_,funpart[x_]] := FUNCTION[x] (* derived 2006 December 19 in SU-CP.NB *) subclass[FUNPART,cart[x_,y_]] := and[equal[V,x],subclass[FUNS,y]] (* derived 2007 February 17 in RELNS.NB *) subclass[funpart[w_],cart[x_,y_]] := and[subclass[domain[funpart[w]],x],subclass[range[funpart[w]],y]] (* derived 2008 June 21 in FUNP-RFX.NB *) subclass[funpart[eqv[x_]],Id] := True (* derived 2004 June 14 in FU-F-O.NB *) subclass[funpart[intersection[x_,y_]],x_] := True (* added 2000 September 8 based on FUNPART.LOG *) subclass[FUNPART,inverse[S]] := True (* derived 2008 June 21 in FP-FUNP.NB *) subclass[funpart[po[x_]],Id] := True (* derived 2004 December 11 in RESTRICT.NB *) subclass[FUNPART,RESTRICT] := True (* derived 2008 June 21 in FUNP-RFX.NB *) subclass[funpart[rfx[x_]],Id] := True (* derived 2004 November 12 in SETPFUNP.NB *) subclass[funpart[setpart[x_]],setpart[funpart[x_]]] := True (* derived 2004 November 21 in FUNP-DO.NB *) subclass[funpart[x_],thinpart[x_]] := True (* Theorem Q-FS2 in Q proved 2000 May 2 *) subclass[FUNS,fix[composite[Q,IMAGE[FIRST]]]] := True (* derived 2007 July 7 in LAMBHULL.NB *) subclass[FUNS,range[LAMBHULL]] := False (* derived 2004 November 2 in SELECT.NB *) subclass[FUNS,SELECT] := True (* derived 2007 February 17 in RELNS.NB *) subclass[GLB[w_],cart[x_,y_]] := and[subclass[domain[GLB[w]],x],subclass[range[GLB[w]],y]] (* added 2000 November 21 based on SUBLEAST.NB *) subclass[x_,GREATEST[y_]] := and[subclass[x,inverse[E]],subclass[composite[x,E],y]] (* derived 2007 February 17 in RELNS.NB *) subclass[GREATEST[x_],cart[y_,z_]] := and[subclass[domain[GREATEST[x]],y],subclass[fix[x],z]] (* added 2000 December 17 based on CLIQUES.NB *) subclass[GREATEST[x_],composite[x_,inverse[E]]] := True (* added 2000 November 21 based on SUBLEAST.NB *) subclass[GREATEST[x_],inverse[E]] := True (* derived 2005 October 5 in LEASTGLB.NB *) subclass[GREATEST[x_],LUB[x_]] := True (* derived 2008 October 28 in ASSOCTIV.NB *) subclass[GROUPS,ASSOCIATIVE] := True (* derived 2008 October 18 in GROUPS.NB *) subclass[GROUPS,BINOPS] := True (* derived 2008 October 18 in GROUPS.NB *) subclass[GROUPS,FUNS] := True (* derived 2008 October 18 in GROUPS.NB *) subclass[GROUPS,QUASIGPS] := True (* derived 2008 October 18 in GROUPS.NB *) subclass[GROUPS,SEMIGPS] := True (* added 2001 March 15 based on H-1.NB *) subclass[H[x_],x_] := True (* derived 2005 January 30 in X3949.NB *) subclass[x_,H[x_]] := subclass[U[x],x] (* added 2001 March 17 based on SUB-H.NB unsafe flag added 2005 January 1 subclass[x_,H[y_]] := subclass[tc[x],y] /; unsafe *) (* derived 2007 December 4 in HER-H.NB *) subclass[H[x_],image[inverse[S],x_]] := True (* derived 2007 May 23 in SU-ON.NB *) subclass[H[x_],image[inverse[S],intersection[FULL,P[x_]]]] := True (* derived 2008 May 23 in H-TC.NB *) subclass[H[x_],tc[x_]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[HC,cart[x_,y_]] := and[equal[V,x],subclass[FULL,y]] (* derived 2008 May 23 in H-TC.NB *) subclass[HC,composite[inverse[S],TC]] := True (* derived 2008 August 15 in CORE-I.NB *) subclass[HC,composite[S,CORE[OMEGA]]] := True (* added 2001 April 1 based on HF-CONT.NB *) subclass[HC,inverse[S]] := True (* derived 2009 January 21 in HOM.NB *) subclass[hom[x_],cart[y_,z_]] := and[subclass[domain[hom[x]],y],subclass[range[hom[x]],z]] (* derived 2004 March 29 based on HULL.NB *) subclass[y_,hull[x_,y_]] := True (* derived 2007 February 17 in RELNS.NB *) subclass[HULL[x_],cart[y_,z_]] := and[subclass[fix[HULL[x]],z],subclass[image[inverse[S],x],y]] (* derived 2007 June 25 in HULL-TRV.NB *) subclass[hull[y_,x_],hull[y_,z_]] := subclass[x,hull[y,z]] (* derived 2004 October 7 in HULL-I.NB *) subclass[hull[x_,z_],hull[intersection[x_,y_],z_]] := True (* derived 2007 May 31 in HULL-ID.NB *) subclass[HULL[x_],Id] := subclass[image[inverse[S],x],fix[HULL[x]]] (* derived 2004 October 7 in HULL-I.NB *) subclass[HULL[intersection[x_,y_]],composite[S,HULL[x_]]] := True (* derived 2008 August 15 in HULL-I.NB *) subclass[HULL[intersection[FULL,x_]],composite[S,TC]] := True (* derived 2006 March 7 in HULL-ON.NB *) subclass[HULL[intersection[OMEGA,x_]],composite[S,TC]] := True (* derived 2007 May 30 in NEXT-LIM.NB *) subclass[hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x_]]],OMEGA] := True (* derived 2007 May 29 in NEXT-LIM.NB *) subclass[hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x_]]],ord[y_]] := not[member[ord[y],hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x]]]]] (* derived 2007 July 5 in PC-TOWER.NB *) subclass[hull[invar[POWER],set[x_]],U[hull[invar[POWER],set[x_]]]] := True (* derived 2007 July 3 in ITERSING.NB *) subclass[hull[invar[SINGLETON],set[0]],H[FINITE]] := True (* derived 2007 July 3 in ITERSING.NB *) subclass[hull[invar[SINGLETON],set[0]],REGULAR] := True (* derived 2007 July 3 in ITERSING.NB *) subclass[hull[invar[SINGLETON],set[0]],U[hull[invar[SINGLETON],set[0]]]] := True (* derived 2007 July 3 in ITERSING.NB *) subclass[hull[invar[SINGLETON],set[0]],union[range[SINGLETON],set[0]]] := True (* derived 2007 May 30 in NEXT-LIM.NB *) subclass[hull[invar[SUCC],set[ord[x_]]], hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x_]]]] := True (* derived 2007 May 30 in NEXT-LIM.NB *) subclass[hull[invar[SUCC],set[ord[x_]]], union[intersection[OMEGA,complement[fix[BIGCUP]]],set[ord[x_]]]] := True (* derived 2007 May 29 in ITERSUCC.NB *) subclass[hull[invar[SUCC],set[ord[x_]]],OMEGA] := True (* added 2001 October 25 based on COREHULL.NB *) subclass[HULL[x_],S] := True (* derived 2004 March 29 based on HULL.NB *) subclass[hull[TRV,x_],cart[V,V]] := and[member[x,V],subclass[x,cart[V,V]]] (* 1998 August 19 *) subclass[Id,x_] := equal[V,fix[x]] (* dangerous rule first proposed 1998 August 19 *) subclass[id[x_],y_] := subclass[x,fix[y]] (* derived 2004 April 20 in ID-REVU.NB *) subclass[x_,id[domain[x_]]] := subclass[x,Id] (* derived 2004 April 20 in ID-REVU.NB *) subclass[x_,id[fix[x_]]] := subclass[x,Id] (* derived 2004 April 20 in ID-REVU.NB *) subclass[x_,id[range[x_]]] := subclass[x,Id] (* derived 2007 June 6 in IDEMWRAP.NB *) subclass[idem[x_],cart[V,V]] := True (* derived 2007 June 7 in IDEM.NB *) subclass[IDEM,fix[composite[inverse[S],COMPOSE,DUP]]] := True (* derived 2007 June 26 in HULL.NB *) subclass[IDEM,image[IMAGE[cross[Id,inverse[S]]],range[LAMBHULL]]] := False (* derived 2004 December 14 in IDEMPROJ.NB *) subclass[IDEM,TRV] := True (* derived 2009 January 21 in INV.NB *) subclass[ids[cat[x_]],fix[inv[cat[x_]]]] := True (* derived 2008 December 16 in IDS.NB *) subclass[ids[x_],domain[domain[x_]]] := True (* derived 2009 January 21 in HOM.NB *) subclass[ids[x_],fix[composite[domain[x_],domain[x_]]]] := True (* derived 2008 December 16 in IDS.NB *) subclass[ids[x_],fix[composite[x_,DUP]]] := True (* derived 2008 December 16 in IDS.NB *) subclass[ids[x_],fix[domain[x_]]] := True (* derived 2008 December 16 in IDS.NB *) subclass[ids[x_],range[x_]] := True (* derived 2008 December 16 in IDS.NB *) subclass[ids[x_],range[domain[x_]]] := True (* derived 2007 October 4 in TOWERS.NB *) subclass[image[x_,A[intersection[fix[UCHAINS],invar[x_]]]], A[intersection[fix[UCHAINS],invar[x_]]]] := True (* added 2003 August 31 based on ACL-CUP.NB *) subclass[image[ACLOSURE,binclosed[CUP]],binclosed[CUP]] := True (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[ACLOSURE,x_],fix[ACLOSURE]] := True (* derived 2007 July 3 in ADJ-SS-0.NB *) subclass[image[ADJOIN[set[0]],fix[ACLOSURE]],fix[ACLOSURE]] := True (* derived 2004 January 1 in COFIN-T1.NB *) subclass[image[ADJOIN[set[0]],PointClosed],PointClosed] := True (* added 2003 May 24 based on CAPCLADJ.NB *) subclass[image[ADJOIN[set[0]],range[SINGLETON]],binclosed[CAP]] := True (* added 2003 September 13 based on UCL-TOPS.NB *) subclass[image[ADJOIN[set[0]],range[SINGLETON]],binclosed[DIF]] := True (* added 2001 October 23 based on CAPCLOS.NB *) subclass[image[ADJOIN[set[0]],range[SINGLETON]],fix[UCLOSURE]] := True (* added 2001 October 23 based on CAPCLOS.NB *) subclass[image[ADJOIN[set[0]],range[SINGLETON]],image[PAIRSET,S]] := True (* added 2001 October 23 based on CAPCLOS.NB *) subclass[image[ADJOIN[set[0]],range[SINGLETON]],TOPS] := True (* derived 2004 October 18 in XVR-V.NB *) subclass[image[BIGCAP,image[VERTSECT[x_],y_]],Aclosure[image[x,y_]]] := True (* derived 2008 August 13 in BCL-IMBC.NB *) subclass[image[BIGCUP,binclosed[composite[BIGCUP,CAP]]],FULL] := True (* derived 2008 August 13 in BCL-IMBC.NB *) subclass[image[BIGCUP,binclosed[composite[IMAGE[CUP],CART]]],binclosed[CUP]] := True (* derived 2008 August 13 in BCL-IMBC.NB *) subclass[image[BIGCUP,binclosed[composite[IMAGE[thinpart[x_]],CAP]]],invar[thinpart[x_]]] := True (* derived 2008 August 13 in BCL-IMBC.NB *) subclass[image[BIGCUP,binclosed[composite[IMAGE[thinpart[x_]],CART]]], binclosed[thinpart[x_]]] := True (* derived 2004 January 23 in P-FINITE.NB *) subclass[image[BIGCUP,x_],FINITE] := and[subclass[x,FINITE],subclass[U[x],FINITE]] (* derived 2008 January 6 in ALLCL-BC.NB *) subclass[x_,image[BIGCUP,intersection[FINITE,P[x_]]]] := True (* derived 2008 January 10 in FIN-U-CL.NB *) subclass[image[BIGCUP,intersection[FINITE,P[x_]]],x_] := and[member[0,x],subclass[image[CUP,cart[x,x]],x]] (* derived 2007 May 17 in CORE-ON.NB *) subclass[image[BIGCUP,intersection[x_,P[OMEGA]]],OMEGA] := True (* added 2002 April 27 based on FUL-BC.NB *) subclass[image[BIGCUP,invar[BIGCUP]],FULL] := True (* derived 2008 August 13 in IVR-IMBC.NB *) subclass[image[BIGCUP,invar[IMAGE[thinpart[x_]]]],invar[thinpart[x_]]] := True (* derived 2005 December 6 in ORDINAL.NB *) subclass[image[BIGCUP,ord[x_]],ord[x_]] := True (* derived 2006 March 21 in SU-REG.NB *) subclass[image[BIGCUP,x_],REGULAR] := subclass[x,REGULAR] (* added 2001 October 14 based on CAPCLOS.NB *) subclass[x_,image[CAP,cart[x_,x_]]] := True (* added 2001 November 11 based on PAIRSET.NB *) subclass[image[CAP,cart[x_,x_]],Aclosure[x_]] := True (* derived 2004 January 18 in ACLOSED.NB *) subclass[image[CAP,cart[fix[ACLOSURE],range[POWER]]],fix[ACLOSURE]] := True (* derived 2004 January 18 in UCLOS.NB *) subclass[image[CAP,cart[fix[UCLOSURE],range[POWER]]],fix[UCLOSURE]] := True (* added 2002 April 25 based on FULL.NB *) subclass[image[CAP,cart[FULL,FULL]],FULL] := True (* derived 2008 May 1 in SYM-RS.NB *) subclass[x_,image[CAP,cart[x_,image[CART,Id]]]] := subclass[U[x],cart[V,V]] (* derived 2005 October 15 in OO-FIN.NB *) subclass[image[CAP,cart[image[CART,Id],x_]],image[IMG,cart[image[CROSS,id[BIJ]],x_]]] := True (* derived 2005 October 11 in WF-XFORM.NB *) subclass[image[CAP,cart[x_,y_]],image[inverse[S],y_]] := True (* derived 2005 October 11 in WF-XFORM.NB *) subclass[image[CAP,cart[x_,y_]],image[inverse[S],x_]] := True (* derived 2004 October 12 in CMPCT-OM.NB *) subclass[image[CAP,cart[image[RC[omega],omega],image[RC[omega],omega]]],image[RC[omega],omega]] := True (* derived 2005 February 6 in IVR-SBV.NB *) subclass[image[CAP,cart[invar[inverse[x_]],subvar[x_]]],subvar[x_]] := True (* derived 2005 February 6 in IVR-SBV.NB *) subclass[x_,image[CAP,cart[x_,invar[thinpart[y_]]]]] := True (* derived 2007 December 17 in DESC-REG.NB *) subclass[image[CAP,cart[x_,x_]],REGULAR] := subclass[x,REGULAR] (* derived 2003 December 25 in TOPSDEFN.NB *) subclass[image[CAP,cart[set[x_,y_],set[x_,y_]]],set[x_,y_]] := or[not[member[x,V]],not[member[y,V]],subclass[x,y],subclass[y,x]] (* derived 2005 February 6 in IVR-SBV.NB *) subclass[image[CAP,cart[subvar[x_],invar[inverse[x_]]]],subvar[x_]] := True (* derived 2004 January 18 in SBV-PS1.NB *) subclass[image[CAP,cart[subvar[PS],range[POWER]]],subvar[PS]] := True (* added 2003 August 30 based on UCL-CAP.NB *) subclass[image[CAP,cart[Uclosure[x_],Uclosure[y_]]], Uclosure[image[CAP,cart[x_,y_]]]] := True (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[CARD,x_],fix[CARD]] := True (* derived 2008 June 3 in CARD-ORD.NB *) subclass[image[CARD,ord[x_]],ord[x_]] := True (* revised 1999 July 14 *) subclass[IMAGE[z_],cart[x_,y_]] := and[subclass[P[domain[VERTSECT[z]]],x],subclass[range[IMAGE[z]],y]] (* derived 2006 September 19 in IMG-X.NB *) subclass[image[CART,cart[fix[IMAGE[x_]],fix[IMAGE[y_]]]],fix[IMAGE[cross[x_,y_]]]] := True (* added 2003 July 2 based on ASS-SC.NB *) subclass[image[CART,cart[image[CART,Id],V]],ASSOCIATIVE] := True (* derived 2006 August 29 in CARTCTBL.NB *) subclass[image[CART,cart[image[Q,set[omega]],image[Q,set[omega]]]],image[Q,set[omega]]] := True (* derived 2006 September 19 in IMG-X.NB *) subclass[image[CART,cart[invar[x_],invar[y_]]],invar[cross[x_,y_]]] := True (* derived 2004 June 28 in X1773-1800.NB *) subclass[image[CART,cart[REGULAR,REGULAR]],REGULAR] := True (* derived 2006 November 4 in CONSTMAP.NB *) subclass[image[CART,cart[set[x_],image[SINGLETON,y_]]],map[x_,y_]] := True (* derived 2007 September 8 in UCH-SQ.NB *) subclass[image[CART,cart[spine[S,x_],spine[S,x_]]], image[inverse[S],image[CART,id[spine[S,x_]]]]] := True (* derived 2006 September 19 in IMG-X.NB *) subclass[image[CART,cart[subvar[x_],subvar[y_]]],subvar[cross[x_,y_]]] := True (* derived 2006 September 19 in IMG-X.NB *) subclass[image[CART,cart[subvar[x_],V]],subvar[cross[x_,Id]]] := True (* derived 2006 September 19 in COMMTIVE.NB *) subclass[image[CART,cart[SYM,V]],COMMUTATIVE] := True (* derived 2006 February 7 in CARTIDEM.NB *) subclass[image[CART,composite[E,inverse[E]]],IDEM] := True (* derived 2005 October 29 in CONSTANT.NB *) subclass[image[CART,x_],FUNS] := subclass[image[x,complement[set[0]]],union[range[SINGLETON],set[0]]] (* derived 2007 September 10 in SU-SQR.NB *) subclass[image[CART,Id],x_] := equal[V,fix[image[inverse[CART],x]]] (* derived 2007 September 10 in SU-SQR.NB *) subclass[image[CART,id[x_]],y_] := subclass[x,fix[image[inverse[CART],y]]] (* added 2003 September 6 based on CUP-HULL.NB *) subclass[image[w_,cart[intersection[u_,x_],intersection[v_,y_]]],image[w_,cart[x_,y_]]] := True (* derived 2004 August 18 in X2812-61.NB *) subclass[image[CART,REGULAR],REGULAR] := True (* derived 2008 November 5 in MAP-FIN.NB *) subclass[image[CART,cart[set[x_],image[SINGLETON,y_]]],CONST] := True (* derived 2008 November 5 in MAP-FIN.NB *) subclass[image[CART,cart[set[x_],range[SINGLETON]]],CONST] := True (* derived 2008 November 5 in MAP-FIN.NB *) subclass[image[CART,cart[set[x_],range[SINGLETON]]],map[x_,V]] := True (* derived 2009 January 21 in INV.NB *) subclass[image[cat[x_],inv[cat[x_]]],ids[cat[x_]]] := True (* derived 2005 July 30 in CATORELN.NB *) subclass[image[CATORELN,cart[cart[FUNS,V],cart[FUNS,V]]],cart[FUNS,V]] := True (* derived 2007 May 8 in FINITE.NB *) subclass[image[CHAINS,FINITE],FINITE] := True (* derived 2007 May 8 in POWER.TXT *) subclass[image[CHAINS,TO],range[POWER]] := True (* derived 2007 May 8 in FINITE.NB *) subclass[image[CLIQUES,FINITE],FINITE] := True (* derived 2003 December 30 in PTCLOSED.NB *) subclass[x_,image[COARSER,x_]] := True (* derived 2006 March 21 in SU-REG.NB *) subclass[image[COARSER,x_],REGULAR] := subclass[x,REGULAR] (* derived 2007 June 2 in COARSER.NB *) subclass[IMAGE[COARSER],S] := True (* derived 2007 June 2 in SUBVAR.NB *) subclass[x_,image[COMMUTE,x_]] := True (* derived 2008 October 1 in BIJ-CO.NB *) subclass[image[COMPOSE,cart[bij[y_,z_],bij[x_,y_]]],bij[x_,z_]] := True (* derived 2006 July 18 in BINHOM-1.NB *) subclass[image[COMPOSE,cart[binhom[y_,z_],binhom[x_,y_]]],binhom[x_,z_]] := True (* derived 2006 June 10 in CONST-CO.NB *) subclass[image[COMPOSE,cart[CONST,x_]],range[CART]] := True (* derived 2006 August 31 in BCL-CPS.NB *) subclass[image[COMPOSE,cart[image[inverse[S],x_],image[inverse[S],y_]]], image[inverse[S],image[COMPOSE,cart[x_,y_]]]] := True (* derived 2004 December 5 in MAP-CO.NB *) subclass[image[COMPOSE,cart[map[y_,z_],map[x_,y_]]],map[x_,z_]] := True (* derived 2004 December 12 in RESTRICT.NB *) subclass[image[COMPOSE,cart[x_,P[Id]]],image[inverse[S],x_]] := True (* derived 2006 June 10 in CONST-CO.NB *) subclass[image[COMPOSE,cart[range[CART],x_]],range[CART]] := True (* derived 2004 June 24 in SBCOMTNT.NB *) subclass[image[COMPOSE,cart[subcommutant[x_],subcommutant[x_]]],subcommutant[x_]] := True (* derived 2004 September 30 in EQV-THNP.NB *) subclass[image[COMPOSE,cart[TRV,P[Id]]],TRV] := True (* added 2003 July 25 based on CLIQEQDF.NB *) subclass[image[COMPOSE,cart[Z,Z]],cliques[EQUIDIFF]] := True (* derived 2008 October 1 in BIJ-CO.NB *) subclass[image[COMPOSE,composite[id[BIJ],inverse[IMAGE[SECOND]],IMAGE[FIRST],id[BIJ]]],BIJ] := True (* derived 2008 October 1 in BIJ-CO.NB *) subclass[image[COMPOSE,composite[id[FUNS],inverse[IMAGE[SECOND]], IMAGE[FIRST],id[FUNS]]],FUNS] := True (* derived 2005 July 30 in CATORELN.NB *) subclass[image[COMPOSE,composite[id[FUNS],inverse[IMAGE[SECOND]],inverse[S], IMAGE[FIRST],id[FUNS]]],FUNS] := True (* derived 2004 August 28 in TRV-CO.NB *) subclass[image[COMPOSE,composite[id[TRV],COMMUTE,id[TRV]]],TRV] := True (* derived 2006 June 27 in UOCPSDUP.NB *) subclass[image[COMPOSE,id[UNOPS]],UNOPS] := True (* derived 2007 June 4 in IMG-SU.NB *) subclass[IMAGE[x_],composite[S,IMAGE[id[fix[x_]]]]] := True (* derived 2007 June 4 in IMG-SU.NB *) subclass[IMAGE[x_],composite[S,IMAGE[thinpart[x_]]]] := True (* derived 2007 May 29 in IVR-CORE.NB *) subclass[image[CORE[x_],image[inverse[S],y_]],image[inverse[S],y_]] := True (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[CORE[x_],y_],Uclosure[x_]] := True (* derived 2004 April 18 in CORE-IVR.NB *) subclass[image[x_,core[invar[x_],y_]],core[invar[x_],y_]] := True subclass[image[CORE[subvar[x_]],P[y_]],set[0]] := WELLFOUNDED[composite[id[y],x]] (* derived 2008 August 8 in FIN-PP2.NB *) subclass[image[CORE[subvar[x_]],y_],set[0]] := subclass[intersection[image[inverse[S],y],subvar[x]],set[0]] (* derived 2005 October 6 in BINCL-X.NB *) subclass[image[CROSS,cart[ACYCLIC,ACYCLIC]],ACYCLIC] := True (* derived 2004 March 21 in PO-WRAP.NB *) subclass[image[CROSS,cart[ANTISYM,ANTISYM]],ANTISYM] := True (* added 2001 December 18 based on BIJ-X.NB *) subclass[image[CROSS,cart[BIJ,BIJ]],BIJ] := True (* derived 2006 January 4 in CL-X.NB *) subclass[image[CROSS,cart[CL,CL]],CL] := True (* derived 2005 October 6 in BINCL-X.NB *) subclass[image[CROSS,cart[EQV,EQV]],EQV] := True (* added 2001 November 23 based on FUN-X.NB *) subclass[image[CROSS,cart[FUNS,FUNS]],FUNS] := True (* derived 2005 October 6 in BINCL-X.NB *) subclass[image[CROSS,cart[IDEM,IDEM]],IDEM] := True (* derived 2006 September 10 in UNOPS-X.NB *) subclass[image[CROSS,cart[map[u_,v_],map[x_,y_]]],map[cart[u_,x_],cart[v_,y_]]] := True (* derived 2004 March 21 in PO-WRAP.NB *) subclass[image[CROSS,cart[PO,PO]],PO] := True (* derived 2005 October 6 in BINCL-X.NB *) subclass[image[CROSS,cart[PROJ,PROJ]],PROJ] := True (* derived 2004 March 18 in RFX-WRAP.NB *) subclass[image[CROSS,cart[RFX,RFX]],RFX] := True (* derived 2005 October 6 in BINCL-X.NB *) subclass[image[CROSS,cart[SYM,SYM]],SYM] := True (* derived 2004 March 21 in PO-WRAP.NB *) subclass[image[CROSS,cart[TRV,TRV]],TRV] := True (* derived 2006 September 10 in UNOPS-X.NB *) subclass[image[CROSS,cart[UNOPS,UNOPS]],UNOPS] := True (* derived 2004 September 21 in WF-X.NB *) subclass[image[CROSS,cart[V,WF]],WF] := True (* derived 2004 September 21 in WF-X.NB *) subclass[image[CROSS,cart[WF,V]],WF] := True (* derived 2005 August 5 in IMG-X.NB *) subclass[IMAGE[cross[x_,y_]],S] := False (* derived 2005 August 5 in IMG-X.NB *) subclass[IMAGE[cross[x_,y_]],Id] := False (* added 2001 October 15 based on CUPCLOS.NB *) subclass[x_,image[CUP,cart[x_,x_]]] := True (* added 2003 August 31 based on ACL-CUP.NB *) subclass[image[CUP,cart[Aclosure[x_],Aclosure[y_]]],Aclosure[image[CUP,cart[x_,y_]]]] := True (* derived 2005 February 4 in DK-K.NB *) subclass[image[CUP,cart[FINITE,x_]],x_] := subclass[image[K,x],x] (* derived 2005 February 4 in DK-K.NB *) subclass[x_,image[CUP,cart[FINITE,x_]]] := True (* added 2003 October 8 based on FS-CUP.NB *) subclass[image[CUP,cart[x_,x_]],FUNS] := FUNCTION[U[x]] (* derived 2008 January 6 in ALLCL-BC.NB *) subclass[image[CUP,cart[x_,x_]],image[BIGCUP,intersection[FINITE,P[x_]]]] := True (* derived 2004 October 12 in CMPCT-OM.NB *) subclass[image[CUP,cart[image[RC[omega],omega],image[RC[omega],omega]]],image[RC[omega],omega]] := True (* derived 2007 June 10 in ADD-ID.NB *) subclass[x_,image[CUP,cart[P[y_],x_]]] := True (* derived 2004 November 2 in SELECT.NB *) subclass[image[CUP,cart[SELECT,SELECT]],SELECT] := True (* added 2001 November 11 based on PAIRSET.NB *) subclass[image[CUP,cart[x_,x_]],Uclosure[x_]] := True (* derived 2004 August 31 in ADD-1-PT.NB *) subclass[image[CUP,composite[SINGLETON,inverse[FIRST],complement[inverse[E]],IMAGE[FIRST],id[FUNS]]],FUNS] := True (* added 2000 February 12 based on RA-SG.NB *) subclass[x_,image[Di,x_]] := not[member[x,range[SINGLETON]]] (* derived 2007 June 16 in SUBTWINE.NB *) subclass[image[Di,x_],x_] := or[equal[0,x],equal[V,x]] (* derived 2004 February 22 in ID-A-C.NB *) subclass[image[Di,A[complement[x_]]],U[x_]] := True (* derived 2006 August 17 in CTBL-FIN.NB *) subclass[x_,image[DIF,cart[x_,FINITE]]] := True (* derived 2008 March 20 in BNCL-DIF.NB *) subclass[image[DIF,cart[x_,y_]],image[inverse[S],x_]] := True (* derived 2007 July 8 in FP-Q-K.NB *) subclass[image[DIF,cart[invar[x_],invar[inverse[x_]]]],invar[x_]] := True (* derived 2007 July 8 in FP-Q-K.NB *) subclass[image[DIF,cart[succ[set[0]],succ[set[0]]]],succ[set[0]]] := True (* derived 2007 January 27 in DIV-SBV.NB *) subclass[x_,image[DIV,x_]] := subclass[x,omega] (* derived 2007 April 20 in GCD-UP.NB *) subclass[x_,image[DIV,set[APPLY[GLB[DIV],x_]]]] := subclass[x,omega] (* derived 2005 September 17 in SU-VSDIV.NB *) subclass[image[DIV,set[x_]],image[DIV,set[y_]]] := or[member[pair[y,x],DIV],not[member[x,omega]]] (* added 2003 May 7 based on UNOPS.NB *) subclass[image[DIV,x_],omega] := True (* derived 2004 August 3 in WF-REC-1.NB *) subclass[image[y_,domain[rec[x_,y_]]],domain[rec[x_,y_]]] := True (* derived 2004 June 6 in REPLACE.NB *) subclass[image[x_,domain[VERTSECT[trv[x_]]]],domain[VERTSECT[trv[x_]]]] := True (* derived 2009 January 2 in I-FUNS.NB *) subclass[image[DORA,bij[x_,y_]],cart[set[x_],set[y_]]] := True (* derived 2009 January 2 in I-FUNS.NB *) subclass[image[DORA,bij[x_,x_]],Id] := True (* derived 2006 June 10 in BINOPS.NB *) subclass[image[DORA,BINOPS],composite[inverse[S],inverse[DUP],inverse[CART]]] := True (* derived 2004 July 25 in CANTOR.NB *) subclass[image[DORA,FUNS],composite[complement[S],POWER]] := True (* derived 2004 April 7 in PCDORA-Q.NB *) subclass[image[DORA,FUNS],composite[inverse[POWER],Q,inverse[S],POWER]] := True (* derived 2008 November 3 in PIGEON.NB *) subclass[image[DORA,intersection[BIJ,FINITE,UNOPS]],Id] := True (* derived 2005 November 5 in FIN-FU.NB *) subclass[image[DORA,intersection[FINITE,FUNS]], composite[inverse[CARD],id[omega],inverse[S],id[omega],CARD]] := True (* derived 2005 November 20 in ACDORAFU.NB *) subclass[image[DORA,intersection[FUNS,image[inverse[IMAGE[SWAP]],SELECT]]],composite[Q,inverse[S]]] := True (* derived 2006 June 10 in REPLACE.NB *) subclass[image[DORA,intersection[UNOPS,x_]],inverse[S]] := True (* derived 2005 December 18 in U-MAP-ID.NB *) subclass[image[DORA,map[x_,x_]],inverse[S]] := True (* derived 2006 June 9 in UNARY.NB *) subclass[image[DORA,PROJ],inverse[S]] := True (* derived 2008 October 17 in QG-SU.NB *) subclass[image[DORA,QUASIGPS],composite[inverse[DUP],inverse[CART]]] := True (* derived 2006 June 10 in BINOPS.NB *) subclass[image[DORA,U[image[MAP,x_]]],composite[inverse[S],x_]] := True (* derived 2007 June 24 in UCL-UO.NB *) subclass[image[DORA,Uclosure[UNOPS]],inverse[S]] := True (* derived 2006 June 9 in UNARY.NB *) subclass[image[DORA,UNOPS],inverse[S]] := True (* derived 2008 September 4 in CLIQ-FIX.NB *) subclass[IMAGE[DUP],composite[inverse[S],CART,DUP]] := True (* derived 2008 October 4 in IDP.NB *) subclass[IMAGE[DUP],inverse[IMAGE[FIRST]]] := True (* added 2003 June 6 based on FUNCTION.NB *) subclass[IMAGE[DUP],inverse[IMAGE[inverse[DUP]]]] := True (* derived 2008 October 4 in IDP.NB *) subclass[IMAGE[DUP],inverse[IMAGE[SECOND]]] := True (* added 2001 December 20 based on Q-OO.NB *) subclass[IMAGE[DUP],Q] := True (* derived 2004 June 27 in X1693-97.NB *) subclass[image[EQUIV,x_],EQV] := True (* derived 2007 June 2 in SUBVAR.NB *) subclass[y_,image[eqv[x_],y_]] := subclass[y,fix[eqv[x]]] (* derived 2004 June 6 in EQV-TRV.NB *) subclass[image[eqv[x_],y_],fix[eqv[x_]]] := True (* derived 2004 June 6 in EQV-TRV.NB *) subclass[image[eqv[x_],y_],hull[invar[eqv[x_]],y_]] := True (* derived 2005 February 3 in IVR-FP.NB *) subclass[image[x_,fix[y_]],fix[composite[x_,y_,inverse[x_]]]] := True (* derived 2005 November 4 in FIN-FUNP.NB *) subclass[image[FUNPART,FINITE],FINITE] := True (* added 2003 June 15 based on RA-VS.NB *) subclass[image[FUNPART,x_],FUNS] := True (* added 2000 December 29 based on GT-RS.NB *) subclass[image[GREATEST[x_],y_],fix[x_]] := True (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[HC,x_],FULL] := True (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[HULL[x_],y_],fix[HULL[x_]]] := True (* derived 2007 June 9 in HULL-PO.NB *) subclass[image[HULL[intersection[RFX,TRV]],ACYCLIC],PO] := True (* derived 2004 May 5 in IVR-HULL.NB *) subclass[image[x_,hull[invar[x_],y_]],hull[invar[x_],y_]] := True (* derived 2007 September 16 in UCH-TO.NB *) subclass[image[HULL[invar[SWAP]],Uchains[x_]],Uchains[image[HULL[invar[SWAP]],x_]]] := True (* derived 2007 August 21 in IVR-UCH.NB *) subclass[image[HULL[invar[UCHAINS]],range[SINGLETON]],chains[S]] := True (* added 2003 September 24 based on PO-FACTS.NB *) subclass[image[HULL[RFX],intersection[TRV,P[Di]]],PO] := True (* derived 2004 June 14 in TP-SYM.NB *) subclass[image[HULL[SYM],x_],SYM] := True (* derived 2006 October 7 in TRV-RFX.NB *) subclass[image[HULL[TRV],RFX],RFX] := True (* added 2002 February 13 based on HULL-TRV.NB *) subclass[image[HULL[TRV],x_],TRV] := True (* added 2003 May 30 based on RESTRICT.NB *) subclass[IMAGE[id[cart[V,V]]],RESTRICT] := True (* derived 2004 October 10 in COMPACT0.NB *) subclass[IMAGE[id[complement[set[0]]]],inverse[COARSER]] := True (* derived 2006 September 8 in NEUTRAL.NB *) subclass[IMAGE[id[x_]],Id] := equal[V,x] subclass[IMAGE[id[x_]],inverse[S]] := True (* derived 2007 October 14 in RS-CUT.NB *) subclass[IMAGE[id[x_]],RESTRICT] := equal[x,cart[domain[x],V]] (* derived 2004 January 2 in CUT-EQNS.NB *) subclass[IMAGE[id[x_]],S] := equal[V,x] (* added 2003 September 4 based on IDEMCORE.NB *) subclass[IMAGE[id[U[x_]]],composite[S,CORE[x_]]] := True (* derived 2007 September 4 in MONOCHNS.NB *) subclass[image[IMAGE[BIGCUP],chains[S]],chains[S]] := True (* derived 2008 July 1 in CLIQ-TFM.NB *) subclass[image[IMAGE[x_],chains[y_]],chains[composite[x_,y_,inverse[x_]]]] := True (* derived 2008 July 1 in CLIQ-TFM.NB *) subclass[image[IMAGE[x_],cliques[y_]],cliques[composite[x_,y_,inverse[x_]]]] := True (* derived 2006 August 6 in ASSOC.NB *) subclass[image[IMAGE[composite[id[CUP],inverse[SECOND]]],range[POWER]],SEMIGPS] := True (* derived 2008 May 7 in FUND-SU.NB *) subclass[image[IMAGE[composite[id[E],inverse[SECOND]]],x_],WF] := subclass[x,FUND] (* derived 2004 December 6 in FIN-AXCH.NB *) subclass[image[IMAGE[composite[id[inverse[E]],inverse[FIRST]]],FINITE],SELECT] := True (* derived 2004 December 24 in SEL-ON.NB *) subclass[image[IMAGE[composite[id[inverse[E]],inverse[FIRST]]],P[P[OMEGA]]],SELECT] := True (* derived 2008 October 25 in AC-KUR.NB *) subclass[image[IMAGE[composite[id[inverse[E]],inverse[FIRST]]],range[POWER]],SELECT] := axch (* added 2003 April 26 based on ISO.NB *) subclass[image[IMAGE[composite[id[inverse[FIRST]],inverse[SECOND]]],FUNS],BIJ] := True (* derived 2008 May 6 in RS-DO.NB *) subclass[image[IMAGE[composite[id[inverse[IMAGE[FIRST]]],inverse[SECOND]]], range[VERTSECT[RESTRICT]]],FUNS] := True (* derived 2007 April 21 in CL-EG.NB *) subclass[image[IMAGE[composite[id[inverse[S]],inverse[FIRST]]],range[POWER]],CL] := True (* derived 2004 December 7 in ASV-DIV.NB *) subclass[image[IMAGE[composite[id[SECOND],inverse[FIRST]]],EQV],ASSOCIATIVE] := True (* derived 2004 December 7 in ASV-DIV.NB *) subclass[image[IMAGE[cross[FIRST,Id]],ASSOCIATIVE],TRV] := True (* derived 2008 October 28 in ASSOCTIV.NB *) subclass[image[IMAGE[cross[Id,FIRST]],image[IMAGE[DUP],image[CART,Id]]],SEMIGPS] := True (* derived 2007 June 26 in HULL.NB *) subclass[image[IMAGE[cross[Id,inverse[S]]],range[LAMBHULL]],IDEM] := True (* derived 2007 June 26 in HULL.NB *) subclass[image[IMAGE[cross[Id,inverse[S]]],range[LAMBHULL]],RFX] := True (* derived 2007 June 26 in HULL.NB *) subclass[image[IMAGE[cross[Id,inverse[S]]],range[LAMBHULL]],TRV] := True (* derived 2004 August 19 in X2896.NB *) subclass[image[IMAGE[cross[inverse[funpart[y_]],funpart[x_]]],FUNS],FUNS] := True (* derived 2006 June 17 in BIN-UNOP.NB *) subclass[image[IMAGE[cross[inverse[RIGHT[y_]],Id]],BINOPS],UNOPS] := True (* derived 2006 July 27 in IND-Z.NB *) subclass[image[IMAGE[cross[inverse[SUCC],Id]],Z],Z] := True (* derived 2005 October 15 in OO-FIN.NB *) subclass[image[IMAGE[cross[oopart[x_],oopart[x_]]],FINITE],FINITE] := True (* derived 2005 October 11 in TO-OO.NB *) subclass[image[IMAGE[cross[oopart[x_],oopart[x_]]],TO],TO] := True (* derived 2005 October 13 in WO-OO.NB *) subclass[image[IMAGE[cross[oopart[x_],oopart[x_]]],WO],WO] := True (* derived 2006 May 2 in RFX-XFM.NB *) subclass[image[IMAGE[cross[setpart[x_],setpart[x_]]],RFX],RFX] := True (* derived 2006 November 11 in FLIP-MAP.NB *) subclass[image[IMAGE[cross[SWAP,Id]],map[x_,y_]],map[inverse[x_],y_]] := True (* derived 2004 June 28 in X1773-1800.NB *) subclass[image[IMAGE[cross[SWAP,Id]],REGULAR],REGULAR] := True (* derived 2006 August 6 in ASSOC.NB *) subclass[image[IMAGE[cross[TWIST,Id]],image[CROSS,cart[ASSOCIATIVE,ASSOCIATIVE]]],ASSOCIATIVE] := True (* derived 2006 July 23 in SGP-PROD.NB *) subclass[image[IMAGE[cross[TWIST,Id]],image[CROSS,cart[BINOPS,BINOPS]]],BINOPS] := True (* derived 2008 December 28 in GP-DIR.NB *) subclass[image[IMAGE[cross[TWIST,Id]],image[CROSS,cart[GROUPS,GROUPS]]],GROUPS] := True (* derived 2008 December 29 in MONOIDS.NB *) subclass[image[IMAGE[cross[TWIST,Id]],image[CROSS,cart[MONOIDS,MONOIDS]]],MONOIDS] := True (* derived 2008 December 28 in GP-DIR.NB *) subclass[image[IMAGE[cross[TWIST,Id]],image[CROSS,cart[QUASIGPS,QUASIGPS]]],QUASIGPS] := True (* derived 2006 July 23 in SGP-PROD.NB *) subclass[image[IMAGE[cross[TWIST,Id]],image[CROSS,cart[SEMIGPS,SEMIGPS]]],SEMIGPS] := True (* derived 2004 January 4 in VS-IMIN.NB *) subclass[image[image[DORA,FUNS],FINITE],FINITE] := True (* derived 2004 August 11 in X1993.NB *) subclass[image[image[DORA,FUNS],range[SINGLETON]],range[SINGLETON]] := True (* added 2001 June 5 based on SUBCOM.NB *) subclass[image[IMAGE[DUP],FULL],subcommutant[inverse[E]]] := True (* derived 2006 May 2 in RFX-XFM.NB *) subclass[image[IMAGE[DUP],image[CART,Id]],image[CROSS,Id]] := True (* added 2003 May 14 based on LIST-DEF.NB *) subclass[image[IMAGE[DUP],omega],LISTS] := True (* derived 2008 September 29 in BIJ.NB *) subclass[image[IMAGE[FIRST],bij[x_,y_]],set[x_]] := True (* derived 2006 January 25 in PO-XFORM.NB *) subclass[image[IMAGE[FIRST],image[IMAGE[id[cart[V,po[x_]]]],image[CROSS,id[BIJ]]]],PO] := True (* derived 2005 November 5 in FIN-RELN.NB *) subclass[image[IMAGE[FIRST],intersection[FINITE,x_]],FINITE] := True (* derived 2008 September 29 in MAP.NB *) subclass[image[IMAGE[FIRST],intersection[w_,map[x_,y_]]],set[x_]] := True (* derived 2006 January 8 in ZER-CANT.NB *) subclass[image[IMAGE[FIRST],map[x_,y_]],set[x_]] := True (* derived 2004 August 3 in WF-REC-1.NB *) subclass[image[IMAGE[FIRST],partrec[x_,y_]],invar[y_]] := True (* derived 2004 June 28 in X1780.NB *) subclass[image[IMAGE[FIRST],REGULAR],REGULAR] := True (* derived 2004 September 21 in WF-X.NB *) subclass[image[IMAGE[FIRST],x_],set[0]] := equal[0,domain[U[x]]] (* derived 2004 September 21 in WF-X.NB *) subclass[image[IMAGE[FIRST],subvar[cross[x_,y_]]],subvar[x_]] := True (* derived 2007 June 16 in SUBTWINE.NB *) subclass[image[IMAGE[FIRST],transvar[cross[x_,Id],cross[Id,y_]]],invar[x_]] := True (* derived 2004 January 8 in FIN-FU.NB *) subclass[image[IMAGE[funpart[x_]],FINITE],FINITE] := True (* derived 2007 September 22 in UCH-ACY.NB *) subclass[image[IMAGE[HULL[x_]],chains[S]],chains[S]] := True (* derived 2005 January 17 in BIJ-PO.NB *) subclass[image[IMAGE[id[cart[x_,x_]]],ANTISYM],ANTISYM] := True (* derived 2004 June 27 in X1693-97.NB *) subclass[image[IMAGE[id[cart[x_,x_]]],EQV],EQV] := True (* derived 2004 March 21 in PO-WRAP.NB *) subclass[image[IMAGE[id[cart[x_,x_]]],PO],PO] := True (* derived 2005 January 16 in FUN-RFX.NB *) subclass[image[IMAGE[id[cart[x_,x_]]],RFX],RFX] := True (* derived 2008 October 28 in SYM.NB *) subclass[image[IMAGE[id[cart[x_,x_]]],SYM],SYM] := True (* derived 2004 June 27 in TO-RS.NB *) subclass[image[IMAGE[id[cart[x_,x_]]],TO],TO] := True (* derived 2005 January 16 in TRV-RS.NB *) subclass[image[IMAGE[id[cart[x_,x_]]],TRV],TRV] := True (* derived 2006 August 19 in MAP-DJU.NB *) subclass[image[IMAGE[id[cart[w_,V]]],map[x_,y_]],map[intersection[w_,x_],y_]] := True (* derived 2004 November 2 in SELECT.NB *) subclass[image[IMAGE[id[cart[x_,V]]],SELECT],SELECT] := True (* derived 2004 November 2 in SELECT.NB *) subclass[image[IMAGE[id[cart[x_,V]]],X[y_]],X[composite[y_,id[x_]]]] := True (* added 2003 June 5 based on FUNFAMILY.NB *) subclass[image[IMAGE[id[cart[V,V]]],domain[LB[x_]]],FUNS] := FUNCTION[rotate[inverse[x]]] (* added 2003 June 5 based on FUNFAMILY.NB *) subclass[image[IMAGE[id[cart[V,V]]],domain[UB[x_]]],FUNS] := FUNCTION[rotate[x]] (* derived 2005 November 29 in AC.NB *) subclass[image[IMAGE[id[cart[V,V]]],x_],SELECT] := subclass[x,SELECT] (* derived 2004 July 20 in X2081.NB *) subclass[image[IMAGE[id[cart[x_,x_]]],WO],WO] := True (* derived 2008 January 12 in HAUS-MAX.NB *) subclass[image[IMAGE[id[chains[x_]]],range[POWER]],fix[UCHAINS]] := True (* derived 2008 October 25 in AC-KUR.NB *) subclass[image[IMAGE[id[complement[set[0]]]],range[POWER]], image[IMAGE[FIRST],intersection[FUNS,P[inverse[E]]]]] := axch (* derived 2004 March 14 in WO-SU.NB *) subclass[image[IMAGE[id[Di]],TO],ACYCLIC] := True (* derived 2004 March 14 in WF-WO.NB *) subclass[image[IMAGE[id[Di]],TO],TRV] := True (* derived 2004 March 14 in WO-TRV.NB *) subclass[image[IMAGE[id[Di]],WO],ACYCLIC] := True (* derived 2004 March 14 in WF-WO.NB *) subclass[image[IMAGE[id[Di]],WO],TRV] := True (* derived 2004 March 14 in WF-WO.NB *) subclass[image[IMAGE[id[Di]],WO],WF] := True (* derived 2008 January 13 in MAX-FUNS.NB *) subclass[image[IMAGE[id[FUNS]],range[POWER]],fix[UCHAINS]] := True (* derived 2004 December 27 in TRV-RS.NB *) subclass[image[IMAGE[id[x_]],image[CART,Id]],EQV] := EQUIVALENCE[composite[Id,x]] (* derived 2005 October 1 in PO-RS.NB *) subclass[image[IMAGE[id[x_]],image[CART,Id]],PO] := PARTIALORDER[composite[Id,x]] (* derived 2005 October 1 in RFX-RS.NB *) subclass[image[IMAGE[id[x_]],image[CART,Id]],RFX] := REFLEXIVE[composite[Id,x]] (* derived 2005 October 11 in TO-RS.NB *) subclass[image[IMAGE[id[x_]],image[CART,Id]],TO] := TOTALORDER[composite[Id,x]] (* derived 2004 December 27 in TRV-RS.NB *) subclass[image[IMAGE[id[x_]],image[CART,Id]],TRV] := TRANSITIVE[composite[Id,x]] (* derived 2005 October 12 in WF-RS.NB *) subclass[image[IMAGE[id[x_]],image[CART,Id]],WF] := WELLFOUNDED[composite[Id,x]] (* derived 2005 October 12 in WF-RS.NB *) subclass[image[IMAGE[id[x_]],image[CART,Id]],WO] := WELLORDER[composite[Id,x]] (* derived 2007 September 19 in UCH-WF.NB *) subclass[image[IMAGE[id[inverse[E]]],image[CART,id[omega]]],WF] := True (* derived 2007 September 18 in UCH-WO.NB *) subclass[image[IMAGE[id[inverse[S]]],image[CART,id[omega]]],WO] := True (* derived 2005 December 6 in ISB5HER1.NB *) subclass[image[IMAGE[id[OMEGA]],fix[IMAGE[inverse[S]]]],OMEGA] := True (* derived 2008 September 17 in FNCH-CUT.NB *) subclass[image[IMAGE[id[P[x_]]],FINCHAR],FINCHAR] := True (* derived 2004 January 18 in ACLOSED.NB *) subclass[image[IMAGE[id[P[x_]]],fix[ACLOSURE]],fix[ACLOSURE]] := True (* added 2001 October 24 based on UCLOS.NB *) subclass[image[IMAGE[id[P[x_]]],fix[UCLOSURE]],fix[UCLOSURE]] := True (* derived 2004 January 18 in SBV-PS1.NB *) subclass[image[IMAGE[id[P[x_]]],subvar[PS]],subvar[PS]] := True (* derived 2004 December 28 in TRV-RS.NB *) subclass[image[IMAGE[id[x_]],range[CART]],TRV] := TRANSITIVE[composite[Id,x]] (* derived 2007 December 17 in DESC-REG.NB *) subclass[image[IMAGE[id[x_]],y_],REGULAR] := subclass[intersection[image[inverse[S],y],P[x]],REGULAR] (* derived 2005 January 15 in H-FIN.NB *) subclass[image[IMAGE[id[REGULAR]],invar[POWER]],invar[POWER]] := True (* derived 2005 October 1 in RFX-RS.NB *) subclass[image[IMAGE[id[rfx[x_]]],image[CART,Id]],RFX] := True (* derived 2007 September 25 in UCH-CL.NB *) subclass[image[IMAGE[id[S]],image[CART,id[intersection[omega,complement[set[0]]]]]],CL] := True (* derived 2008 May 17 in FIX-WO.NB *) subclass[image[IMAGE[id[S]],image[CART,id[OMEGA]]],WO] := True (* derived 2004 January 11 in PO-RS-S.NB *) subclass[image[IMAGE[id[S]],image[CART,Id]],PO] := True (* derived 2005 December 22 in UCL-CL.NB *) subclass[image[IMAGE[id[S]],image[CART,id[TOPS]]],CL] := True (* derived 2004 January 11 in PO-RS-S.NB *) subclass[image[IMAGE[id[S]],range[CART]],TRV] := True (* added 2003 May 24 based on CUPCLIMG.NB *) subclass[image[IMAGE[IMAGE[x_]],binclosed[CUP]],binclosed[CUP]] := True (* derived 2007 September 3 in CHN-SQR.NB *) subclass[image[IMAGE[IMAGE[x_]],chains[S]],chains[S]] := True (* derived 2004 May 4 in FIN-IMG.NB *) subclass[image[IMAGE[IMAGE[x_]],FINITE],FINITE] := True (* added 2003 March 16 based on IMG-UCL.NB *) subclass[image[IMAGE[IMAGE[x_]],fix[UCLOSURE]],fix[UCLOSURE]] := True (* derived 2007 August 21 in IVR-CHNS.NB *) subclass[image[IMAGE[IMAGE[thinpart[x_]]],chains[S]],chains[S]] := True (* derived 2004 November 19 in FU-RO-IN.NB *) subclass[image[IMAGE[inverse[ASSOC]],FUNS],FUNS] := True (* derived 2007 December 6 in IVR-HULL.NB *) subclass[image[IMAGE[inverse[HULL[x_]]],fix[IMAGE[inverse[S]]]],fix[IMAGE[inverse[S]]]] := True (* added 2007 February 20 in TWISTADD.NB *) subclass[image[image[inverse[NATADD],image[image[inverse[NATADD],w_],x_]], image[image[inverse[NATADD],y_],z_]],image[image[inverse[NATADD], image[NATADD,cart[w_,z_]]],image[NATADD,cart[x_,y_]]]] := True (* derived 2008 July 8 in CHN-TFM.NB *) subclass[image[IMAGE[inverse[POWER]],chains[S]],chains[S]] := True (* derived 2006 April 14 in PC-TOWER.NB *) subclass[image[IMAGE[inverse[RANK]],omega],FULL] := True (* derived 2007 July 5 in PC-TOWER.NB *) subclass[image[IMAGE[inverse[RANK]],omega],H[FINITE]] := True (* derived 2007 July 5 in PC-TOWER.NB *) subclass[image[IMAGE[inverse[RANK]],omega],union[range[POWER],set[0]]] := True (* derived 2006 January 17 in IMS-INS.NB *) subclass[image[IMAGE[inverse[S]],binclosed[CUP]],binclosed[CUP]] := True (* derived 2006 August 31 in BCL-CPS.NB *) subclass[image[IMAGE[inverse[S]],binclosed[COMPOSE]],binclosed[COMPOSE]] := True (* derived 2008 July 8 in CHN-TFM.NB *) subclass[image[IMAGE[inverse[S]],chains[S]],range[POWER]] := False (* derived 2007 December 6 in IVR-HULL.NB *) subclass[image[IMAGE[inverse[TC]],fix[IMAGE[inverse[S]]]],fix[IMAGE[inverse[S]]]] := True (* derived 2007 December 6 in FULL.NB *) subclass[image[IMAGE[inverse[TC]],fix[IMAGE[inverse[S]]]],FULL] := True (* derived 2008 May 17 in FIX-WO.NB *) subclass[image[IMAGE[oopart[x_]],image[IMAGE[inverse[DUP]],WO]], image[IMAGE[inverse[DUP]],WO]] := True (* added 2003 May 24 based on CAPCLPOW.NB *) subclass[image[IMAGE[POWER],binclosed[CAP]],binclosed[CAP]] := True (* derived 2007 June 14 in THIN-PO.NB *) subclass[image[IMAGE[POWER],chains[S]],chains[S]] := True (* derived 2007 June 14 in IMPOWACL.NB *) subclass[image[IMAGE[POWER],fix[ACLOSURE]],fix[ACLOSURE]] := True (* derived 2007 June 14 in THIN-PO.NB *) subclass[image[IMAGE[POWER],fix[composite[E,BIGCAP]]],fix[composite[E,BIGCAP]]] := True (* derived 2007 June 14 in THIN-PO.NB *) subclass[image[IMAGE[POWER],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]], fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := True (* derived 2003 January 13 in CAPCUPRC.NB *) subclass[image[IMAGE[RC[x_]],binclosed[CAP]],binclosed[CUP]] := True (* derived 2003 January 13 in CAPCUPRC.NB *) subclass[image[IMAGE[RC[x_]],binclosed[CUP]],binclosed[CAP]] := True (* derived 2007 May 5 in REPLACE.NB *) subclass[image[IMAGE[RC[x_]],chains[S]],chains[S]] := True (* added 2003 June 25 based on ACL-UCL.NB *) subclass[image[IMAGE[RC[x_]],fix[UCLOSURE]],fix[ACLOSURE]] := True (* derived 2004 June 28 in X1773-1800.NB *) subclass[image[IMAGE[ROT],REGULAR],REGULAR] := True (* derived 2008 September 29 in BIJ.NB *) subclass[image[IMAGE[SECOND],bij[x_,y_]],set[y_]] := True (* derived 2006 September 21 in BH-IMAGE.NB *) subclass[image[IMAGE[SECOND],binhom[x_,y_]],binclosed[y_]] := True (* derived 2006 January 25 in PO-XFORM.NB *) subclass[image[IMAGE[SECOND],image[IMAGE[id[cart[po[x_],V]]],image[CROSS,id[BIJ]]]],PO] := True (* derived 2007 August 1 in TO-CHN-S.NB *) subclass[image[IMAGE[SECOND],image[VS,TO]],chains[S]] := True (* derived 2005 November 5 in FIN-RELN.NB *) subclass[image[IMAGE[SECOND],intersection[FINITE,x_]],FINITE] := True (* derived 2004 June 28 in X1780.NB *) subclass[image[IMAGE[SECOND],REGULAR],REGULAR] := True (* derived 2004 September 21 in WF-X.NB *) subclass[image[IMAGE[SECOND],subvar[cross[x_,y_]]],subvar[y_]] := True (* derived 2006 April 12 in SBV-IMG5.NB *) subclass[image[IMAGE[x_],subvar[x_]],subvar[x_]] := True (* derived 2005 January 31 in X4210.NB *) subclass[image[IMAGE[SWAP],FINITE],FINITE] := True (* derived 2004 June 17 in X1366.NB *) subclass[image[IMAGE[SWAP],invar[cross[x_,y_]]],invar[cross[y_,x_]]] := True (* derived 2006 January 24 in RALAMHUL.NB *) subclass[image[IMAGE[SWAP],range[LAMBHULL]],subcommutant[inverse[S]]] := True (* derived 2004 June 28 in X1773-1800.NB *) subclass[image[IMAGE[SWAP],REGULAR],REGULAR] := True (* derived 2007 September 10 in UCH-BO.NB *) subclass[image[IMAGE[thinpart[x_]],Uchains[y_]],Uchains[image[IMAGE[thinpart[x_]],y_]]] := True (* derived 2003 December 18 in RA-ITER.NB *) subclass[image[x_,y_],image[trv[x_],y_]] := True (* derived 2003 December 18 in RA-ITER.NB *) subclass[image[x_,image[trv[x_],y_]],image[trv[x_],y_]] := True (* derived 2007 December 20 in UCL-DO.NB *) subclass[image[IMAGE[x_],Uclosure[y_]],Uclosure[image[IMAGE[x_],y_]]] := True (* derived 2007 June 13 in IMGVSDIV.NB *) subclass[image[IMAGE[VERTSECT[DIV]],chains[DIV]],chains[S]] := True (* derived 2007 June 13 in IMGVSDIV.NB *) subclass[image[IMAGE[VERTSECT[DIV]],domain[GREATEST[DIV]]],fix[composite[E,BIGCAP]]] := True (* derived 2008 July 1 in CLIQ-TFM.NB *) subclass[image[IMAGE[VERTSECT[inverse[po[x_]]]],chains[po[x_]]],chains[S]] := True (* derived 2008 July 1 in CLIQ-TFM.NB *) subclass[image[IMAGE[VERTSECT[po[x_]]],chains[po[x_]]],chains[S]] := True (* derived 2007 June 13 in THIN-PO.NB *) subclass[image[IMAGE[VERTSECT[po[thinpart[x_]]]],domain[GREATEST[po[thinpart[x_]]]]], fix[composite[E,BIGCAP]]] := True (* derived 2007 June 14 in THIN-PO.NB *) subclass[image[IMAGE[VERTSECT[po[thinpart[x_]]]],domain[LEAST[po[thinpart[x_]]]]], fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := True (* derived 2006 March 30 in ZN-SU.NB *) subclass[image[IMAGE[ZN],REGULAR],REGULAR] := True (* derived 2006 September 27 in BH-BCL.NB *) subclass[image[IMG,cart[binhom[x_,y_],binclosed[x_]]],binclosed[y_]] := True (* derived 2003 January 13 in CAPCUPRC.NB *) subclass[image[IMG,cart[range[RCF],binclosed[CAP]]],binclosed[CUP]] := True (* derived 2003 January 13 in CAPCUPRC.NB *) subclass[image[IMG,cart[range[RCF],binclosed[CUP]]],binclosed[CAP]] := True (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[INTADD,x_],Z] := True (* derived 2007 June 2 in SUBVAR.NB *) subclass[x_,image[INTDIV,x_]] := subclass[x,Z] subclass[image[z_,intersection[x_,y_]],image[z_,x_]]:= True (* derived 2007 June 2 in SUBVAR.NB *) subclass[x_,image[INTLEQ,x_]] := subclass[x,Z] (* derived 2004 January 17 in SBV-PS-K.NB *) subclass[image[inverse[ADJOIN[set[x_]]],subvar[PS]],subvar[PS]] := True (* derived 2006 March 21 in SU-REG.NB *) subclass[image[inverse[BIGCUP],x_],REGULAR] := subclass[x,REGULAR] (* derived 2005 November 29 in AC.NB *) subclass[image[inverse[CAP],range[SINGLETON]],composite[E,inverse[E]]] := True (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[inverse[CARD],x_],image[Q,OMEGA]] := True (* derived 2004 February 7 in COMPACT.NB *) subclass[x_,image[inverse[COARSER],x_]] := True (* derived 2007 June 2 in COARSER.NB *) subclass[IMAGE[inverse[COARSER]],composite[inverse[S],IMAGE[inverse[S]]]] := True (* derived 2007 June 2 in COARSER.NB *) subclass[IMAGE[inverse[COARSER]],S] := True (* derived 2004 October 17 in CMPCTCOA.NB *) subclass[image[inverse[COARSER],set[x_]],COMPACT] := or[member[x,COMPACT],not[member[x,V]]] (* derived 2004 February 7 in COMPACT.NB *) subclass[image[inverse[COARSER],set[x_]],image[COARSER,FINITE]] := or[member[x,COMPACT],not[member[x,V]]] (* added 2002 September 10 based on DJ-CP.NB *) subclass[image[inverse[x_],complement[y_]],z_] := subclass[image[x,complement[z]],y] (* derived 2007 January 27 in DIV-SBV.NB *) subclass[x_,image[inverse[DIV],x_]] := subclass[x,omega] (* added 2002 September 3 based on DIV-ZERO.NB *) subclass[image[inverse[DIV],x_],omega] := True (* derived 2005 February 22 in PRIMEDIV.NB *) subclass[image[inverse[DIV],set[x_]],set[x_,set[0]]] := or[equal[x,set[0]],member[x,PRIMES],not[member[x,omega]]] (* derived 2005 July 25 in 3-5-7.NB *) subclass[image[inverse[DIV],set[x_]],succ[x_]] := or[not[equal[0,x]],not[member[x,omega]]] subclass[image[inverse[x_],y_],domain[x_]] := True (* derived 2005 January 31 in X4210.NB *) subclass[image[INVERSE,FINITE],FINITE] := True (* derived 2004 November 9 in AC2-AC3.NB *) subclass[image[INVERSE,FUNS],SELECT] := axch (* added 2003 February 21 based on IDEMHULL.NB *) subclass[image[inverse[HULL[x_]],y_],image[inverse[S],x_]] := True (* derived 2007 December 6 in IVR-HULL.NB *) subclass[image[inverse[HULL[x_]],image[inverse[S],y_]],image[inverse[S],y_]] := True (* derived 2004 November 9 in AC2-AC3.NB *) subclass[image[inverse[IMAGE[composite[id[inverse[FIRST]],inverse[SECOND]]]],SELECT],SELECT] := True (* derived 2005 October 30 in X-FIN-DO.NB *) subclass[image[inverse[IMAGE[FIRST]],FINITE],SELECT] := True (* derived 2005 November 29 in AC.NB *) subclass[image[inverse[IMAGE[id[cart[V,V]]]],RFX],SELECT] := True (* derived 2008 February 23 in IM-TRV.NB *) subclass[image[inverse[x_],image[inverse[trv[x_]],y_]],image[inverse[trv[x_]],y_]] := True (* derived 2004 October 17 in CMPCTCOA.NB *) subclass[image[inverse[IMAGE[inverse[S]]],COMPACT],COMPACT] := True (* derived 2008 January 15 in X-WOB-RA.NB *) subclass[image[inverse[IMAGE[SECOND]],FINITE],SELECT] := True (* derived 2005 July 20 in WO-AC.NB *) subclass[image[inverse[IMAGE[SECOND]],image[Q,OMEGA]],SELECT] := True (* derived 2005 November 29 in AC.NB *) subclass[image[inverse[IMAGE[SWAP]],x_],SELECT] := subclass[image[INVERSE,x],SELECT] (* derived 2007 June 2 in SUBVAR.NB *) subclass[x_,image[inverse[INTDIV],x_]] := subclass[x,Z] (* derived 2004 January 17 in SBV-PS-K.NB *) subclass[image[inverse[K],subvar[PS]],subvar[PS]] := True (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[inverse[KURA],x_],cart[V,V]] := True (* added 2001 September 4 based on BIN-IMIN.NB *) subclass[image[inverse[MAP],x_],cart[V,V]] := True (* added 2000 December 3 based on DO-LT.NB *) subclass[image[inverse[PAIRSET],x_],cart[V,V]] := True (* derived 2007 November 10 in ALL-MAX.NB *) subclass[image[inverse[PAIRSET],intersection[chains[S],P[x_]]],Id] := equal[0,intersection[x,image[PS,x]]] (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[inverse[PLUS],x_],omega] := True (* derived 2006 May 25 in ITERSTOP.NB *) subclass[image[inverse[plus[x_]],y_],natsub[y_,x_]] := True (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[inverse[plus[x_]],y_],omega] := True (* derived 2007 June 2 in SUBVAR.NB *) subclass[y_,image[inverse[po[x_]],y_]] := subclass[y,fix[po[x]]] (* derived 2005 October 2 in POLUBGLB.NB *) subclass[y_,image[inverse[po[x_]],set[APPLY[LUB[po[x_]],y_]]]] := or[equal[0,y],member[y,domain[LUB[po[x]]]]] (* added 2002 November 29 based on PLUS.NB *) subclass[image[INVERSE,range[PLUS]],BIJ] := True (* derived 2006 November 3 in EVAL-IM.NB *) subclass[image[INVERSE,range[PLUS]],FUNS] := True (* derived 2006 August 17 in CTBL-U.NB *) subclass[image[INVERSE,range[PLUS]],image[Q,OMEGA]] := True (* added 2002 December 1 based on Z-PC-S.NB *) subclass[image[INVERSE,range[PLUS]],Z] := True (* derived 2006 March 14 in ZN-ON.NB *) subclass[x_,image[inverse[RANK],ord[y_]]] := subclass[rank[x],ord[y]] (* added 2002 March 5 based on HF.NB *) subclass[image[inverse[RANK],x_],REGULAR] := True (* derived 2008 May 7 in FUND-SU.NB *) subclass[image[INVERSE,RS[inverse[E]]],WF] := AxReg subclass[x_,image[inverse[S],x_]] := True (* derived 2005 August 5 in IMG-INS.NB *) subclass[IMAGE[x_],inverse[S]] := subclass[thinpart[x],Id] (* derived 2007 June 23 in ALLCLOSED.NB *) subclass[image[inverse[S],allclosed[x_]],domain[VERTSECT[x_]]] := True (* derived 2007 November 22 in SU-HERED.NB *) subclass[image[inverse[S],x_],BIJ] := subclass[x,BIJ] (* derived 2007 August 21 in IVR-UCH.NB *) subclass[image[inverse[S],x_],chains[y_]] := subclass[x,chains[y]] (* derived 2007 November 22 in SU-HERED.NB *) subclass[image[inverse[S],x_],cliques[y_]] := subclass[x,cliques[y]] (* derived 2003 December 31 in COARSER.NB *) subclass[IMAGE[inverse[S]],COARSER] := True (* derived 2007 June 2 in COARSER.NB *) subclass[IMAGE[inverse[S]],composite[S,IMAGE[inverse[COARSER]]]] := True (* derived 2007 November 23 in C-RA-SG.NB *) subclass[x_,image[inverse[S],complement[x_]]] := equal[V,image[inverse[S],complement[x]]] (* derived 2005 February 4 *) subclass[IMAGE[inverse[S]],composite[S,IMAGE[inverse[TC]]]] := True (* derived 2007 June 9 in DEDEKIND.NB *) subclass[image[inverse[S],x_],DEDEKIND] := subclass[x,DEDEKIND] (* derived 2008 January 6 in SUBVAR.NB *) subclass[image[inverse[S],x_],DESCENDING] := subclass[U[x],fix[E]] (* derived 2004 January 23 in P-FINITE.NB *) subclass[image[inverse[S],x_],FINITE] := subclass[x,FINITE] (* derived 2007 December 18 in SU-FUND.NB *) subclass[image[inverse[S],x_],FUND] := subclass[x,FUND] (* derived 2007 November 22 in SU-HERED.NB *) subclass[image[inverse[S],x_],FUNS] := subclass[x,FUNS] (* added 2002 June 2 based on HER-HULL.NB *) subclass[image[inverse[S],x_],image[inverse[S],y_]] := subclass[x,image[inverse[S],y]] (* derived 2008 January 20 in HART-NUM.NB *) subclass[image[inverse[S],intersection[OMEGA,image[Q,P[x_]]]],image[Q,P[x_]]] := True (* derived 2007 May 5 in REPLACE.NB *) subclass[image[inverse[S],omega],chains[S]] := True (* derived 2006 March 21 in SU-REG.NB *) subclass[image[inverse[S],x_],REGULAR] := subclass[x,REGULAR] (* added 2001 April 21 based on PT.NB *) subclass[IMAGE[inverse[S]],S] := True (* derived 2008 January 6 in SUBVAR.NB *) subclass[image[inverse[S],x_],subvar[y_]] := subclass[U[x],fix[y]] (* derived 2008 January 6 in SUBVAR.NB *) subclass[image[inverse[S],x_],SYM] := subclass[U[x],Id] (* added 2003 April 1 based on IM-IN-SG.NB *) subclass[image[inverse[SINGLETON],x_],U[x_]] := True (* derived 2007 June 2 in SUBVAR.NB *) subclass[x_,image[inverse[SUBCOMMUTE],x_]] := True (* derived 2006 April 13 in DBL-IND2.NB *) subclass[image[inverse[SUCC],domain[iterate[x_,y_]]],domain[iterate[x_,y_]]] := True (* added 2002 May 28 based on IND-SC-1.NB *) subclass[image[inverse[SUCC],x_],U[x_]] := True (* derived 2006 September 8 in NEUTRAL.NB *) subclass[image[inverse[SYMDIF],set[x_]],Id] := or[equal[0,x],not[member[x,V]]] (* derived 2007 December 4 in H-FIN.NB *) subclass[image[inverse[TC],FINITE],FINITE] := True (* derived 2007 December 4 in H-FIN.NB *) subclass[image[inverse[TC],H[FINITE]],H[FINITE]] := True (* derived 2007 December 29 in TRV-U-CP.NB *) subclass[image[inverse[trv[x_]],y_],y_] := subclass[image[inverse[x],y],y] (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[inverse[trv[x_]],y_],domain[x_]] := True (* derived 2008 February 23 in IM-TRV.NB *) subclass[image[inverse[trv[x_]],image[inverse[x_],y_]],image[inverse[trv[x_]],y_]] := True (* derived 2007 June 15 in TRANSVAR.NB *) subclass[image[inverse[U[subcommutant[x_]]],domain[x_]],domain[x_]] := True (* derived 2008 November 8 in UCL-CLIQ.NB *) subclass[image[inverse[UCLOSURE],chains[x_]],chains[x_]] := True (* derived 2008 November 8 in UCL-CLIQ.NB *) subclass[image[inverse[UCLOSURE],cliques[x_]],cliques[x_]] := True (* derived 2004 October 17 in CMPCTCOA.NB *) subclass[image[inverse[UCLOSURE],COMPACT],COMPACT] := True (* derived 2006 March 2 in WF-IN-PS.NB *) subclass[image[INVERSE,WF],WF] := False (* derived 2007 June 2 in SUBVAR.NB *) subclass[x_,image[inverse[ZN],x_]] := True (* derived 2007 June 4 in IMG-SU.NB *) subclass[IMAGE[inverse[ZN]],S] := True (* derived 2006 March 21 in SU-REG.NB *) subclass[image[KURA,x_],REGULAR] := and[subclass[domain[x],REGULAR],subclass[range[x],REGULAR]] (* added 2000 December 29 based on LT-IM-SU.NB *) subclass[image[LEAST[x_],y_],fix[x_]] := True (* added 2001 December 20 based on Q-OO.NB *) subclass[IMAGE[LEFT[x_]],Q] := member[x,V] (* derived 2008 November 3 in MAP-FIN.NB *) subclass[image[MAP,cart[FINITE,FINITE]],FINITE] := True (* derived 2006 June 17 in BIN-UNOP.NB *) subclass[image[MAP,composite[inverse[DUP],inverse[CART]]],invar[IMAGE[cross[SWAP,Id]]]] := True (* derived 2006 June 20 in UOBCLCPS.NB *) subclass[image[MAP,Id],binclosed[COMPOSE]] := True (* derived 2006 June 27 in UOCPSDUP.NB *) subclass[image[MAP,Id],invar[composite[COMPOSE,DUP]]] := True (* added 2007 February 20 in TWISTADD.NB *) subclass[image[NATADD,cart[image[image[inverse[NATADD],w_],x_], image[image[inverse[NATADD],y_],z_]]],image[image[inverse[NATADD], image[NATADD,cart[w_,y_]]],image[NATADD,cart[x_,z_]]]] := True (* added 2002 September 1 based on MONO-MUL.NB *) subclass[image[NATADD,x_],omega] := True (* derived 2006 August 16 in EVOD-MUL.NB *) subclass[image[NATMUL,cart[even,even]],even] := True (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[NATMUL,x_],omega] := True (* derived 2007 January 23 in BINOM.NB *) subclass[IMAGE[oopart[x_]],composite[Q,IMAGE[id[domain[oopart[x_]]]]]] := True (* derived 2007 January 23 in BINOM.NB *) subclass[IMAGE[oopart[x_]],composite[Q,inverse[S]]] := True (* derived 2006 April 30 in OL-MONO.NB *) subclass[image[ordlist[x_],y_],APPLY[ordlist[x_],y_]] := True (* derived 2007 May 15 in OL-U-RA.NB *) subclass[image[ordlist[x_],U[domain[ordlist[x_]]]],U[range[ordlist[x_]]]] := True (* derived 2008 January 2 in FINCHR-1.NB *) subclass[image[PAIRSET,cart[t_,t_]],cliques[x_]] := subclass[cart[t,t],x] (* derived 2005 February 20 in CARD-TWO.NB *) subclass[image[PAIRSET,x_],DEDEKIND] := True (* derived 2005 February 20 in CARD-TWO.NB *) subclass[image[PAIRSET,x_],image[Q,OMEGA]] := True (* added 2002 April 18 based on DESCEND.NB *) subclass[image[PAIRSET,intersection[E,inverse[E]]],DESCENDING] := True (* derived 2008 July 27 in PRS-REG.NB *) subclass[image[PAIRSET,x_],REGULAR] := and[subclass[domain[x],REGULAR],subclass[range[x],REGULAR]] (* added 2003 May 23 based on REPLACE.NB *) subclass[image[PAIRSET,S],binclosed[CAP]] := True (* added 2003 May 23 based on REPLACE.NB *) subclass[image[PAIRSET,S],binclosed[CUP]] := True (* derived 2007 May 5 in REPLACE.NB *) subclass[image[PAIRSET,S],chains[S]] := True (* derived 2004 June 14 in TP-SYM.NB *) subclass[image[PAIRSET,SWAP],FUNS] := True (* added 2001 October 30 based on SYM-CORE.NB *) subclass[image[PAIRSET,SWAP],SYM] := True (* derived 2006 June 22 in PLUSTIME.NB *) subclass[image[plus[x_],image[DIV,set[x_]]],image[DIV,set[x_]]] := True (* derived 2007 June 2 in SUBVAR.NB *) subclass[y_,image[po[x_],y_]] := subclass[y,fix[po[x]]] (* derived 2005 October 2 in POLUBGLB.NB *) subclass[y_,image[po[x_],set[APPLY[GLB[po[x_]],y_]]]] := or[equal[0,y],member[y,domain[GLB[po[x]]]]] (* derived 2007 April 23 in PO-SIMPL.NB *) subclass[image[po[x_],set[y_]],image[po[x_],set[z_]]] := or[member[pair[z,y],po[x]],not[member[y,fix[po[x]]]]] (* derived 2004 January 23 in P-FINITE.NB *) subclass[image[POWER,x_],FINITE] := subclass[x,FINITE] (* derived 2007 August 2 in HULL-SG.NB *) subclass[image[POWER,fix[HULL[x_]]],invar[HULL[x_]]] := True (* derived 2004 May 4 in BIN-CPS.NB *) subclass[image[POWER,P[Id]],binclosed[COMPOSE]] := True (* added 2001 December 20 based on Q-OO.NB *) subclass[IMAGE[POWER],Q] := True (* derived 2007 May 27 in COARSER.NB *) subclass[image[POWER,range[POWER]],fix[IMAGE[COARSER]]] := True (* derived 2006 March 21 in SU-REG.NB *) subclass[image[POWER,x_],REGULAR] := subclass[x,REGULAR] (* derived 2004 May 4 in BIN-CPS.NB *) subclass[image[POWER,TRV],binclosed[COMPOSE]] := True (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[power[x_],y_],union[Id,trv[x_]]] := True (* derived 2007 September 4 in U-CHAINS.NB *) subclass[image[POWER,OMEGA],image[IMAGE[inverse[S]],OMEGA]] := True (* Theorem Q-SBV in Q proved 2000 April 27 *) subclass[x_,image[Q,x_]] := True (* derived 2008 May 17 in FIX-WO.NB *) subclass[image[Q,x_],image[Q,y_]] := subclass[x,image[Q,y]] (* derived 2008 May 17 in FIX-WO.NB *) subclass[image[Q,OMEGA],image[IMAGE[inverse[DUP]],WO]] := True subclass[image[x_,y_],range[x_]] := True (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[RANK,x_],OMEGA] := True (* Theorem RK-IM-SU derived 2003 December 20 in RK-TC-3.NB *) subclass[image[RANK,x_],rank[x_]] := True (* derived 2008 March 20 in IVR-VSTO.NB *) subclass[image[RC[fix[to[setpart[x_]]]],range[VERTSECT[to[setpart[x_]]]]], fix[IMAGE[inverse[to[setpart[x_]]]]]] := True (* derived 2005 October 22 in TRANSFIN.NB *) subclass[image[RC[omega],omega],image[PS,image[RC[omega],omega]]] := True (* added 2003 February 4 based on PLUS-Q.NB *) subclass[image[RC[omega],omega],image[Q,set[omega]]] := True (* added 2003 May 9 based on IVR-SUCC.NB *) subclass[image[RC[omega],omega],invar[SUCC]] := True (* derived 2007 January 23 in BINOM.NB *) subclass[IMAGE[RCF],Q] := True (* added 2001 December 20 based on Q-OO.NB *) subclass[IMAGE[RIGHT[x_]],Q] := member[x,V] subclass[x_,image[S,x_]] := True (* derived 2007 July 8 in IMS-ENS.NB *) subclass[image[S,x_],image[S,y_]] := subclass[x,image[S,y]] (* Theorems RP-A-2 and RP-A-3 in RP1 added 1998 August 18 *) subclass[x_,image[S,set[y_]]] := subclass[y,A[x]] (* derived 2007 April 26 in THIN-Q.NB *) subclass[image[S,x_],set[y_]] := equal[0,x] (* derived 2008 August 14 in ALL-ID.NB *) subclass[image[S,set[x_]],allclosed[id[x_]]] := True (* derived 2006 August 1 in U-BCL.NB *) subclass[image[S,set[range[x_]]],binclosed[x_]] := True (* derived 2007 June 15 in TRANSVAR.NB *) subclass[image[S,set[range[x_]]],invar[x_]] := True (* added 2003 June 6 based on FUNCTION.NB *) subclass[image[SINGLETON,x_],BIJ] := subclass[x,cart[V,V]] (* added 2002 January 17 based on ANTISYM1.NB *) subclass[image[SINGLETON,cart[V,V]],ANTISYM] := True (* added 2001 October 16 based on IM-IN-SG.NB *) subclass[image[SINGLETON,cart[V,V]],BIJ] := True (* derived 2006 June 9 in CONST-SS.NB *) subclass[image[SINGLETON,cart[V,V]],CONST] := True (* added 2001 October 16 based on IM-IN-SG.NB *) subclass[image[SINGLETON,cart[V,V]],FUNS] := True (* derived 2005 November 2 in UCL.NB *) subclass[image[SINGLETON,cart[V,V]],range[CART]] := True (* added 2001 October 16 based on IM-IN-SG.NB *) subclass[image[SINGLETON,cart[V,V]],TRV] := True (* added 2003 October 15 based on ACYCLIC.NB *) subclass[image[SINGLETON,Di],ACYCLIC] := True (* added 2003 September 29 based on WF.NB *) subclass[image[SINGLETON,Di],WF] := True (* derived 2003 December 30 in T2.NB *) subclass[image[SINGLETON,x_],FINITE] := True (* derived 2006 October 20 in CLIQ-FIN.NB *) subclass[image[SINGLETON,fix[x_]],cliques[x_]] := True (* added 2003 June 6 based on FUNCTION.NB *) subclass[image[SINGLETON,x_],FUNS] := subclass[x,cart[V,V]] (* derived 2007 July 3 in ITERSING.NB *) subclass[image[SINGLETON,H[FINITE]],H[FINITE]] := True (* derived 2005 December 27 in IM-SG.NB *) subclass[image[SINGLETON,Id],CL] := True (* derived 2005 December 27 in IM-SG.NB *) subclass[image[SINGLETON,Id],EQV] := True (* derived 2005 December 27 in IM-SG.NB *) subclass[image[SINGLETON,Id],IDEM] := True (* derived 2006 June 11 in CART-PID.NB *) subclass[image[SINGLETON,Id],image[CART,Id]] := True (* derived 2005 December 27 in IM-SG.NB *) subclass[image[SINGLETON,Id],PO] := True (* derived 2005 December 27 in IM-SG.NB *) subclass[image[SINGLETON,Id],PROJ] := True (* added 2001 October 16 based on IM-IN-SG.NB *) subclass[image[SINGLETON,Id],RFX] := True (* added 2001 October 16 based on IM-IN-SG.NB *) subclass[image[SINGLETON,Id],SYM] := True (* derived 2005 December 27 in IM-SG.NB *) subclass[image[SINGLETON,Id],TO] := True (* derived 2008 August 17 in OPS-1.NB *) subclass[image[SINGLETON,Id],UNOPS] := True (* derived 2005 December 27 in IM-SG.NB *) subclass[image[SINGLETON,Id],WO] := True (* derived 2008 August 16 in SGPS-SS.NB *) subclass[image[SINGLETON,inverse[DUP]],BINOPS] := True (* derived 2008 December 10 in SS-GPS.NB *) subclass[image[SINGLETON,inverse[DUP]],GROUPS] := True (* derived 2009 January 15 in FIRST.NB *) subclass[image[SINGLETON,inverse[DUP]],MONOIDS] := True (* derived 2008 December 10 in SS-GPS.NB *) subclass[image[SINGLETON,inverse[DUP]],QUASIGPS] := True (* derived 2008 August 16 in SGPS-SS.NB *) subclass[image[SINGLETON,inverse[DUP]],SEMIGPS] := True (* derived 2008 September 18 in SU-PC-OM.NB *) subclass[image[SINGLETON,x_],omega] := subclass[x,set[0]] (* derived 2008 September 18 in SU-PC-OM.NB *) subclass[image[SINGLETON,x_],OMEGA] := subclass[x,set[0]] (* derived 2003 December 30 in T2.NB *) subclass[image[SINGLETON,omega],image[inverse[S],omega]] := True (* added 2001 December 20 based on Q-OO.NB *) subclass[IMAGE[SINGLETON],Q] := True (* derived 2006 March 21 in SU-REG.NB *) subclass[image[SINGLETON,x_],REGULAR] := subclass[x,REGULAR] (* added 2003 June 25 based on RUSSELL.NB *) subclass[image[SINGLETON,RUSSELL],RUSSELL] := True (* derived 2006 November 4 in CONSTMAP.NB *) subclass[image[SINGLETON,y_],set[0]] := equal[0,y] (* added 2001 October 16 based on RA-SG.NB *) subclass[image[SINGLETON,U[x_]],image[inverse[S],x_]] := True (* derived 2007 June 2 in SUBVAR.NB *) subclass[x_,image[SUBCOMMUTE,x_]] := True (* derived 2004 August 14 in X4205.NB *) subclass[image[SUBVAR,FINITE],FINITE] := True (* derived 2004 December 23 in RA-SBV.NB *) subclass[image[SUBVAR,image[inverse[S],x_]],image[inverse[S],image[SUBVAR,x_]]] := True (* derived 2006 March 18 based on ITER-IND.NB *) subclass[image[SUCC,domain[iterate[x_,y_]]],domain[iterate[x_,y_]]] := or[equal[0,y],equal[omega,domain[iterate[x,y]]]] (* added 2002 April 26 based on FULSUC-A.NB *) subclass[image[SUCC,FULL],fix[composite[SUCC,BIGCUP]]] := True (* added 2002 April 26 based on FULLSUCC.NB *) subclass[image[SUCC,FULL],FULL] := True (* derived 2005 February 6 in X3404.NB *) subclass[image[SUCC,image[S,x_]],image[S,x_]] := True (* derived 2006 February 21 in IM-SUCC.NB *) subclass[image[SUCC,x_],omega] := subclass[x,omega] (* derived 2006 February 21 in IM-SUCC.NB *) subclass[image[SUCC,x_],OMEGA] := subclass[x,OMEGA] (* derived 2006 March 7 in LIMITORD.NB *) subclass[image[SUCC,ord[x_]],ord[x_]] := equal[ord[x],U[ord[x]]] (* derived 2005 December 6 in ORDINAL.NB *) subclass[image[SUCC,ord[x_]],succ[ord[x_]]] := True (* derived 2006 May 16 in DO-ITER.NB *) subclass[image[SUCC,U[domain[iterate[x_,y_]]]],domain[iterate[x_,y_]]] := True (* derived 2005 April 26 in DICHOT.NB *) subclass[image[SUCC,U[nat[x_]]],nat[x_]] := True (* derived 2005 December 6 in ORDINAL.NB *) subclass[image[SUCC,U[ord[x_]]],ord[x_]] := True (* derived 2003 December 21 in DO-RA-IM.NB *) subclass[image[TC,x_],FULL] := True (* derived 2007 November 29 in REGULAR.NB *) subclass[image[TC,x_],REGULAR] := subclass[x,REGULAR] (* derived 2007 June 4 in IMG-SU.NB *) subclass[IMAGE[thinpart[x_]],composite[IMAGE[x_],inverse[S]]] := True (* derived 2005 January 22 in IMG-INS.TXT *) subclass[IMAGE[thinpart[x_]],Id] := equal[Id,thinpart[x]] (* derived 2005 January 22 in IMG-INS.TXT *) subclass[IMAGE[thinpart[x_]],S] := equal[V,fix[thinpart[x]]] (* derived 2003 December 18 in RA-ITER.NB *) subclass[image[trv[x_],y_],y_] := subclass[image[x,y],y] (* derived 2003 December 18 in RA-ITER.NB *) subclass[image[trv[composite[NATADD,x_]],y_],omega] := True (* derived 2004 March 29 based on HULL.NB *) subclass[image[trv[x_],y_],hull[invar[x_],y_]] := True (* derived 2008 February 23 in IM-TRV.NB *) subclass[image[trv[x_],image[x_,y_]],image[trv[x_],y_]] := True (* derived 2003 December 18 in RA-ITER.NB *) subclass[image[trv[plus[x_]],y_],omega] := True (* derived 2003 December 18 in RA-ITER.NB *) subclass[image[trv[x_],y_],range[x_]] := True (* derived 2004 August 27 in IVR-TRV.NB *) subclass[image[trv[x_],y_],range[iterate[x_,y_]]] := True (* derived 2006 November 27 in BH-IDEMP.NB *) subclass[image[U[binhom[x_,y_]],fix[composite[x_,DUP]]],fix[composite[y_,DUP]]] := True (* derived 2004 June 16 in TRANSVAR.NB *) subclass[image[x_,U[transvar[x_,y_]]],image[y_,U[transvar[x_,y_]]]] := True (* derived 2007 June 15 in TRANSVAR.NB *) subclass[image[x_,U[transvar[x_,y_]]],range[y_]] := True (* derived 2007 June 29 in ACL-FXHL.NB *) subclass[image[UCLOSURE,fix[ACLOSURE]],TOPS] := True (* derived 2003 December 24 in UCL-ON.NB *) subclass[image[UCLOSURE,x_],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := True (* added 2003 March 16 based on CORE-UCL.NB *) subclass[image[UCLOSURE,x_],fix[UCLOSURE]] := True (* derived 2003 December 28 in PTCLOSED.NB *) subclass[image[UCLOSURE,PointClosed],PointClosed] := True (* derived 2006 March 21 in SU-REG.NB *) subclass[image[UCLOSURE,x_],REGULAR] := subclass[x,REGULAR] (* derived 2008 January 22 in SU-IM-I.NB *) subclass[image[x_,y_],union[z_, image[x_,intersection[y_,image[inverse[x_],complement[z_]]]]]] := True (* added 1998 January 24 *) subclass[image[V,x_],y_] := or[equal[0,x],equal[V,y]] (* modified 1999 August 31 *) subclass[x_,image[V,y_]] := or[equal[0,x],not[equal[0,y]]] (* derived 2006 June 20 in MAP-RASG.NB *) subclass[image[VERTSECT[composite[id[cart[x_,V]],inverse[SECOND]]],y_],map[x_,y_]] := True (* derived 2008 July 3 in MAX-FUNP.NB *) subclass[image[VERTSECT[inverse[po[setpart[x_]]]],fix[po[setpart[x_]]]], image[inverse[PS],image[VERTSECT[inverse[po[setpart[x_]]]],fix[po[setpart[x_]]]]]] := equal[0,funpart[po[setpart[x]]]] (* derived 2004 November 21 in FU-VS.NB *) subclass[image[VERTSECT[x_],y_],range[SINGLETON]] := and[FUNCTION[composite[thinpart[x],id[y]]],subclass[y,domain[x]]] (* derived 2006 March 30 in ZN-SU.NB *) subclass[image[VERTSECT[ZN],REGULAR],REGULAR] := True (* derived 2006 October 19 in IMVS-EQV.NB *) subclass[image[VS,EQV],image[INVERSE,RS[inverse[E]]]] := True (* derived 2004 January 4 in VS-IMIN.NB *) subclass[image[VS,x_],FUNS] := True (* derived 2004 January 4 in VS-IMIN.NB *) subclass[image[VS,image[INVERSE,FUNS]],BIJ] := True (* derived 2004 December 18 in PO-BIJ.NB *) subclass[image[VS,PO],BIJ] := True (* derived 2008 March 9 in WO.NB *) subclass[image[wo[x_],set[y_]],image[wo[x_],set[z_]]] := or[member[pair[z,y],wo[x]],not[member[y,fix[wo[x]]]]] (* derived 2006 April 4 in REG-X.NB *) subclass[image[XS,REGULAR],REGULAR] := True (* added 2001 July 15 based on ZN-AGAIN.NB *) subclass[x_,image[ZN,x_]] := True (* derived 2005 January 5 in REG-ZN.NB *) subclass[image[ZN,intersection[REGULAR,x_]],REGULAR] := True (* derived 2004 Agust 13 in X4015-56.NB *) subclass[x_,image[ZN,rank[x_]]] := True (* derived 2004 August 15 in ZN-FACTS.NB *) subclass[IMAGE[ZN],S] := True (* added 2002 May 17 based on ZN.NB *) subclass[image[ZN,U[x_]],image[ZN,x_]] := True (* added 2002 May 9 based on WORK1330.NB *) subclass[IMAGE[ZN],ZN] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[IMG,cart[x_,y_]] := and[equal[V,y],subclass[cart[V,V],x]] (* derived 2006 December 19 in SU-CP.NB *) subclass[INTADD,cart[x_,y_]] := and[subclass[Z,y],subclass[cart[Z,Z],x]] (* derived 2008 September 14 in INTARITH.NB *) subclass[intadd[x_,y_],cart[omega,omega]] := and[member[x,Z],member[y,Z]] (* derived 2007 January 21 in IN-ZADD.NB *) subclass[intadd[x_,y_],cart[V,V]] := and[member[x,Z],member[y,Z]] (* derived 2006 December 19 in SU-CP.NB *) subclass[INTDIV,cart[x_,y_]] := and[subclass[Z,x],subclass[Z,y]] subclass[intersection[x_,y_],x_] := True subclass[x_,intersection[y_,z_]] := and[subclass[x,y],subclass[x,z]] (* derived 2006 February 16 in WFACYFIN.NB *) subclass[intersection[ACYCLIC,FINITE],WF] := True (* derived 2008 February 9 in ACY-TRV.NB *) subclass[intersection[ACYCLIC, fix[composite[inverse[HULL[invar[SWAP]]],S,IMAGE[id[Di]],CART,DUP,CUP,DORA]]],TRV] := True (* derived 2008 February 10 in TRICH-I.NB *) subclass[intersection[ACYCLIC, fix[composite[inverse[HULL[SYM]],IMAGE[id[Di]],CART,DUP,CUP,DORA]]],TRV] := True (* derived 2008 August 15 in IVR-CO.NB *) subclass[intersection[allclosed[x_],invar[y_]],allclosed[composite[y_,x_]]] := True (* derived 2008 November 3 in PIGEON.NB *) subclass[intersection[BIJ,FINITE,UNOPS],PERMS] := True (* derived 2008 November 10 in TRV-IVR.NB *) subclass[intersection[binclosed[COMPOSE],fix[UCLOSURE]],invar[HULL[TRV]]] := True (* derived 2008 August 15 in IVR-CO.NB *) subclass[intersection[binclosed[x_],invar[y_]],binclosed[composite[y_,x_]]] := True (* derived 2006 July 8 in SEMIGPS.NB *) subclass[intersection[BINOPS,CONST],ASSOCIATIVE] := True (* derived 2006 July 8 in SEMIGPS.NB *) subclass[intersection[BINOPS,CONST],SEMIGPS] := True (* derived 2008 February 28 in TRCHDICH.NB *) subclass[intersection[chains[composite[inverse[E],SUCC]],P[FULL]],chains[S]] := True (* derived 2008 February 15 in TRICH-RS.NB *) subclass[intersection[chains[union[Id,x_]], fix[image[inverse[CART],image[inverse[IMAGE[id[x_]]],WF]]]], fix[image[inverse[CART],image[inverse[IMAGE[id[x_]]],TRV]]]] := True (* derived 2005 October 19 in TO-CL-WO.NB *) subclass[intersection[CL,TO],WO] := False (* derived 2005 October 19 in ORD-WRAP.NB *) subclass[intersection[CL,WO],FINITE] := False (* derived 2007 June 16 in SUBTWINE.NB *) subclass[intersection[cliques[complement[cross[x_,complement[y_]]]], image[inverse[IMAGE[FIRST]],image[S,set[domain[x_]]]]], transvar[cross[inverse[x_],Id],cross[Id,y_]]] := True (* derived 2007 June 16 in SUBTWINE.NB *) subclass[intersection[cliques[complement[cross[x_,complement[y_]]]], map[domain[x_],z_]],transvar[cross[inverse[x_],Id],cross[Id,y_]]] := True (* derived 2004 November 13 in AC1-A8.NB *) subclass[intersection[cliques[union[DISJOINT,Id]], image[IMAGE[FIRST],intersection[FUNS,P[inverse[E]]]]], domain[UB[image[inverse[CAP],range[SINGLETON]]]]] := True (* derived 2004 November 23 in A8-AXCH.NB *) subclass[intersection[cliques[union[DISJOINT,Id]],P[complement[set[0]]]], domain[UB[image[inverse[CAP],range[SINGLETON]]]]] := axch (* added 1998 September 11 *) subclass[intersection[complement[x_],y_],z_] := subclass[y,union[x,z]] (* derived 2007 October 18 in ERASE.NB *) subclass[intersection[composite[CAP,id[x_],inverse[FIRST]], composite[FIRST,id[y_],inverse[CAP]]],Id] := True (* added 2001 December 26 based on CMT-CO.NB *) subclass[intersection[composite[COMMUTE,FIRST],composite[COMMUTE,SECOND]], composite[COMMUTE,COMPOSE]] := True (* added 2001 December 26 based on COMMUTE.NB *) subclass[intersection[composite[COMMUTE,FIRST],composite[COMMUTE,SECOND]], composite[COMMUTE,CUP]] := True (* derived 2004 October 14 in REFINE.NB *) subclass[intersection[composite[inverse[COARSER],IMAGE[inverse[S]]], composite[inverse[IMAGE[inverse[S]]],COARSER]],Id] := False (* derived 2008 October 9 in SU-ID.NB *) subclass[intersection[x_,composite[inverse[FIRST],FIRST]],Id] := equal[0,fix[composite[cross[Id,Di],x]]] (* derived 2008 April 17 in FP-DI.NB *) subclass[intersection[composite[x_,inverse[y_]],inverse[z_]],Id] := subclass[intersection[z,composite[y,inverse[x]]],Id] (* derived 2008 April 17 in FP-DI.NB *) subclass[intersection[composite[inverse[x_],y_],inverse[z_]],Id] := subclass[intersection[z,composite[inverse[y],x]],Id] (* derived 2008 October 9 in SU-ID.NB *) subclass[intersection[x_,composite[inverse[SECOND],SECOND]],Id] := equal[0,fix[composite[x,cross[Di,Id]]]] (* derived 2008 January 22 in SU-IM-I.NB *) subclass[intersection[x_,y_],core[complement[P[complement[x_]]],y_]] := True (* derived 2004 September 24 in COREDESC.NB *) subclass[intersection[DESCENDING,P[x_]],set[0]] := WELLFOUNDED[composite[id[x],E]] (* derived 2005 February 1 in DIV-WF.NB *) subclass[intersection[Di,DIV],union[cart[intersection[omega,complement[set[0]]],set[0]],composite[id[omega],E]]] := True (* derived 2007 October 25 in CONDUCT.NB *) subclass[intersection[y_,domain[funpart[x_]]],image[inverse[funpart[x_]],z_]] := subclass[image[funpart[x],y],z] (* derived 2007 October 25 in CONDUCT.NB *) subclass[intersection[w_,domain[funpart[x_]]],union[image[inverse[funpart[x_]],y_], image[inverse[funpart[x_]],z_]]] := subclass[image[funpart[x],w],union[y,z]] (* derived 2004 February 3 in FIN-RANK.NB *) subclass[intersection[y_,domain[x_]],image[inverse[x_],image[x_,y_]]] := True (* derived 2007 February 10 in EX-8.NB *) subclass[intersection[domain[UB[x_]],P[cart[V,V]]],FUNS] := FUNCTION[rotate[x]] (* derived 2007 February 10 in EX-8.NB *) subclass[intersection[domain[UB[x_]],P[cart[V,V]]],image[INVERSE,FUNS]] := FUNCTION[rotate[composite[x,SWAP]]] (* derived 2007 May 5 in REPLACE.NB *) subclass[intersection[FINITE,chains[S]],union[fix[composite[E,BIGCAP]],set[0]]] := True (* derived 2007 May 5 in REPLACE.NB *) subclass[intersection[FINITE,chains[S]], union[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],set[0]]] := True (* derived 2005 February 3 in X4224.NB *) subclass[intersection[FINITE,FULL],H[FINITE]] := True (* derived 2006 February 10 in PIGNHOLE.NB *) subclass[intersection[FINITE,FUNS,image[inverse[DORA],Id]],BIJ] := True (* derived 2006 March 2 in SBV-INPS.NB *) subclass[intersection[FINITE,P[x_]],image[inverse[PS],intersection[FINITE,P[x_]]]] := not[member[x,FINITE]] (* derived 2008 September 18 in FIN-P-OM.NB *) subclass[intersection[FINITE,P[x_]],omega] := subclass[x,set[0]] (* derived 2008 September 18 in FIN-P-OM.NB *) subclass[intersection[FINITE,P[x_]],OMEGA] := subclass[x,set[0]] (* derived 2006 March 23 in PCON-FIN.NB *) subclass[intersection[FINITE,P[OMEGA]], union[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],set[0]]] := True (* derived 2005 October 17 in CL-TOFIN.NB *) subclass[intersection[FINITE,TO],union[CL,set[0]]] := True (* derived 2005 October 17 in WO-FIN.NB *) subclass[intersection[FINITE,TO],WO] := True (* derived 2005 November 27 in FPBCPCOM.NB *) subclass[intersection[fix[BIGCUP],P[x_]],Uclosure[x_]] := True (* derived 2004 April 4 in IRR-TRV.NB *) subclass[intersection[fix[x_],fix[y_]],fix[composite[x_,y_]]] := True (* derived 2003 December 24 in UCL-ON.NB *) subclass[intersection[y_,fix[x_]],image[x_,y_]] := True (* derived 2007 December 14 in CANTOR.NB *) subclass[intersection[fix[IMAGE[inverse[S]]],fix[IMAGE[inverse[TC]]]],FULL] := True (* derived 2007 June 15 in TRANSVAR.NB *) subclass[intersection[fix[x_],U[transvar[x_,y_]]],range[y_]] := True (* derived 2007 November 15 in ZORN-LEM.NB *) subclass[intersection[fix[UCHAINS],subvar[inverse[PS]]], fix[composite[inverse[IMAGE[inverse[PS]]],S,UCHAINS]]] := True (* derived 2004 January 23 in P-FINITE.NB *) subclass[intersection[fix[UCLOSURE],P[FINITE]],FINITE] := True (* added 2002 May 28 based on IND-SC-1.NB *) subclass[intersection[FULL,invar[SUCC]],fix[BIGCUP]] := True (* derived 2004 December 30 in AXREG.NB *) subclass[intersection[FULL,P[complement[set[0]]]],DESCENDING] := True (* derived 2007 December 18 in FULLFUND.NB *) subclass[intersection[FULL,P[x_]],FUND] := subclass[H[x],REGULAR] (* derived 2007 July 3 in INVAR.NB *) subclass[intersection[FULL,range[POWER]],invar[BIGCAP]] := True (* derived 2007 July 3 in INVAR.NB *) subclass[intersection[FULL,range[POWER]],invar[BIGCUP]] := True (* derived 2008 July 13 in CHN-C-E.NB *) subclass[intersection[FUND,chains[composite[inverse[E],SUCC]]],chains[complement[E]]] := True (* derived 2007 November 13 in AC-IN-K.NB *) subclass[intersection[FUNS,P[x_]],image[inverse[K],intersection[FUNS,P[x_]]]] := equal[0,X[x]] (* derived 2007 November 25 in MAX-CLIQ.NB *) subclass[intersection[FUNS,P[x_]],image[inverse[PS],intersection[FUNS,P[x_]]]] := equal[0,X[x]] (* derived 2007 April 26 in FUNS-1.NB *) subclass[intersection[FUNS,P[x_]],set[0]] := equal[0,domain[x]] (* derived 2007 June 16 in SUBTWINE.NB *) subclass[intersection[FUNS,transvar[cross[inverse[x_],Id],cross[Id,y_]]], cliques[complement[cross[x_,complement[y_]]]]] := True (* derived 2006 February 1 in WO-I.NB *) subclass[intersection[IDEM,P[Di]],ACYCLIC] := True (* derived 2006 February 1 in WO-I.NB *) subclass[intersection[IDEM,P[Di]],ANTISYM] := True (* added 2001 October 14 based on CAPCLOS.NB *) subclass[intersection[x_,y_],image[CAP,cart[x_,y_]]] := True (* added 2001 October 15 based on CUPCLOS.NB *) subclass[intersection[x_,y_],image[CUP,cart[x_,y_]]] := True (* derived 2008 January 22 in SU-IM-I.NB *) subclass[intersection[x_,image[y_,z_]],image[y_,intersection[z_,image[inverse[y_],x_]]]] := True (* derived 2007 April 10 in DV9.NB *) subclass[intersection[image[inverse[DIV],set[x_]],image[inverse[DIV],set[y_]]], image[inverse[DIV],set[natadd[x_,y_]]]] := True (* derived 2007 April 10 in DV9.NB *) subclass[intersection[image[inverse[DIV],set[x_]],image[inverse[DIV],set[y_]]], image[inverse[DIV],set[natadd[natmul[x_,nat[u_]],natmul[y_,nat[v_]]]]]] := True (* derived 2005 April 21 in U-PRIMES.NB *) subclass[intersection[image[inverse[DIV],set[x_]],image[inverse[DIV],set[succ[x_]]]],set[set[0]]] := True (* added 2001 December 31 based on DORA-DJ.NB *) subclass[intersection[image[inverse[DORA],DISJOINT],P[cart[V,V]]],TRV] := True (* added 2002 January 17 based on ANTISYM2.NB *) subclass[intersection[image[inverse[IMAGE[id[Di]]],TRV],P[cart[V,V]]],ANTISYM] := True (* derived 2008 October 28 in RFX.NB *) subclass[intersection[image[inverse[IMAGE[inverse[DUP]]],image[S,set[x_]]], P[cart[x_,x_]]],RFX] := True (* derived 2005 January 25 *) subclass[intersection[image[inverse[IMAGE[SECOND]],range[SINGLETON]],P[cart[V,V]]],FUNS] := True (* derived 2008 September 29 in MAP.NB *) subclass[intersection[image[inverse[IMAGE[SECOND]],set[y_]],map[x_,V]],map[x_,y_]] := True (* derived 2004 January 18 in SBV-PS1.NB *) subclass[intersection[image[PS,x_],P[y_]],image[PS,intersection[x_,P[y_]]]] := True (* derived 2005 January 27 in DEDEKIND.NB *) subclass[intersection[image[Q,set[x_]],P[x_]],set[x_]] := or[member[x,DEDEKIND],not[member[x,V]]] (* derived 2007 November 23 in ZORN-MAX.NB *) subclass[intersection[image[S,set[y_]],image[inverse[PS],x_]], image[inverse[PS],intersection[x_,image[S,set[y_]]]]] := True (* derived 2007 October 30 in IMIN-PS.NB *) subclass[intersection[x_,image[S,set[y_]]],set[y_]] := not[member[y,image[inverse[PS],x]]] (* modified 1999 August 31 *) subclass[intersection[x_,image[V,y_]],z_] := or[subclass[x,z],equal[0,y]] (* derived 2004 January 22 in INVAR.NB *) subclass[intersection[INVAR,composite[DISJOINT,IMAGE[SECOND]]], composite[DISJOINT,IMAGE[FIRST]]] := True (* derived 2007 October 8 in UCL-DORA.NB *) subclass[intersection[invar[composite[DUP,SECOND]],P[cart[V,V]]], fix[composite[inverse[S],COMPOSE,DUP]]] := True (* derived 2008 August 15 in IVR-CO.NB *) subclass[intersection[invar[x_],invar[y_]],invar[composite[x_,y_]]] := True (* derived 2004 May 11 in EQV-GEN.NB *) subclass[intersection[x_,inverse[x_]],eqv[x_]] := True (* derived 2006 April 13 in DBL-IND2.NB *) subclass[intersection[x_,inverse[x_]],union[cart[V,complement[domain[funpart[y_]]]], composite[inverse[funpart[y_]],x_]]] := subclass[composite[funpart[y],intersection[x,inverse[x]]],x] (* derived 2006 October 20 in SETPART.NB *) subclass[intersection[inverse[setpart[x_]],setpart[x_]],Id] := or[not[member[x,V]],subclass[intersection[x,inverse[x]],Id]] (* derived 2004 March 6 in UB-LEAST.NB *) subclass[intersection[y_,lb[x_,y_]],fix[x_]] := True (* derived 2004 March 6 in UB-LEAST.NB *) subclass[intersection[y_,lb[x_,y_]],image[inverse[x_],y_]] := True (* derived 2007 June 16 in SUBTWINE.NB *) subclass[intersection[map[u_,v_],transvar[cross[inverse[x_],Id],cross[Id,y_]]], cliques[complement[cross[x_,complement[y_]]]]] := True (* derived 2005 April 28 in MAX-MIN.NB *) subclass[intersection[nat[x_],nat[y_]],nat[z_]] := or[not[member[nat[z],nat[x]]],not[member[nat[z],nat[y]]]] (* added 2002 May 24 based on OMEGA.NB *) subclass[intersection[OMEGA,fix[BIGCUP]],invar[SUCC]] := True (* added 2003 January 20 based on ON-SUC-7.NB *) (* a reformulation of Theorem ON-SUC-7 without variables *) subclass[intersection[OMEGA,fix[BIGCUP]],union[image[S,set[omega]],set[0]]] := True (* derived 2007 January 30 in FIN-DIV.NB *) subclass[intersection[omega,x_],image[inverse[DIV],x_]] := True (* derived 2006 March 25 in PC-ON-SC.NB *) subclass[intersection[OMEGA,x_],succ[U[intersection[OMEGA,x_]]]] := True (* derived 2006 May 31 in OL-NOGAP.NB *) subclass[intersection[OMEGA,x_,U[range[ordlist[x_]]]],range[ordlist[x_]]] := True (* derived 2005 October 15 in OO-FIN.NB *) subclass[intersection[x_,P[cart[V,V]]],image[CAP,cart[image[CART,Id],x_]]] := True (* derived 2004 December 12 in RESTRICT.NB *) subclass[intersection[x_,P[cart[V,V]]],image[COMPOSE,cart[x_,P[Id]]]] := True (* derived 2005 October 15 in OO-FIN.NB *) subclass[intersection[x_,P[cart[V,V]]],image[IMG,cart[image[CROSS,id[BIJ]],x_]]] := True (* derived 2006 March 2 in WFINPSPC.NB *) subclass[intersection[P[P[x_]],subvar[inverse[PS]]],set[0]] := subclass[P[x],FINITE] (* derived 2008 February 22 in WF-RS.NB *) subclass[intersection[P[x_],subvar[y_]],set[0]] := WELLFOUNDED[composite[id[x],y]] (* derived 2005 February 1 in DIV-WF.NB *) subclass[intersection[P[y_],subvar[x_]],subvar[composite[x_,id[y_]]]] := True (* derived 2008 July 8 in ZORN-UBD.NB *) subclass[intersection[PO,fix[composite[inverse[UBD],S,CHAINS]], image[inverse[FUNPART],set[0]]],set[0]] := axch (* derived 2004 February 7 in T1-FIN.NB *) subclass[intersection[PointClosed,P[FINITE]],FINITE] := True (* derived 2004 June 17 in X1337-65.NB *) subclass[intersection[y_,range[x_]],image[x_,image[inverse[x_],y_]]] := True (* derived 2004 December 31 in IN-RK.NB *) subclass[intersection[REGULAR,x_],image[inverse[RANK],rank[x_]]] := True (* derived 2004 December 19 in QO-IDEM.NB *) subclass[intersection[RFX,TRV],IDEM] := True (* derived 2007 July 8 in FP-Q-K.NB *) subclass[intersection[RUSSELL,fix[composite[Q,SUCC]]],fix[composite[Q,K]]] := True (* derived 2007 June 24 in UCL-UO.NB *) subclass[intersection[SELECT,image[inverse[DORA],inverse[S]],P[cart[V,V]]],Uclosure[UNOPS]] := True (* added 2002 October 18 based on SINGLTON.NB *) subclass[intersection[x_,set[y_]],z_] := or[member[y,z],not[member[y,x]]] (* added 2002 October 11 based on MUL-SU-S.NB *) subclass[intersection[x_,set[y_]],set[z_]] := or[equal[y,z],not[member[y,x]]] (* derived 2005 February 1 in DIV-WF.NB *) subclass[intersection[subvar[x_],subvar[y_]],subvar[composite[x_,y_]]] := True (* derived 2003 December 28 in PTCLOSED.NB *) subclass[intersection[T1,fix[UCLOSURE]],PointClosed] := True (* derived 2004 February 7 in T1-FIN.NB *) subclass[intersection[T1,TOPS,P[FINITE]],range[POWER]] := True (* derived 2003 December 30 in T2.NB *) subclass[intersection[T1,TOPS],T2] := False (* added 2003 October 15 based on ACYCLIC.NB *) subclass[intersection[TRV,P[Di]],ACYCLIC] := True (* derived 2006 February 1 in WO-I.NB *) subclass[intersection[TRV,P[Di]],ANTISYM] := True (* derived 2004 April 4 in IRR-TRV.NB *) subclass[intersection[TRV,P[Di]],fix[composite[DISJOINT,INVERSE]]] := True (* derived 2007 June 7 in PO-IRR.NB *) subclass[intersection[TRV,P[Di]],image[inverse[S],PO]] := True (* derived 2008 July 13 in FP-DJINV.NB *) subclass[intersection[TRV,WF],fix[composite[DISJOINT,INVERSE]]] := True (* derived 2008 January 22 in SU-IM-I.NB *) subclass[intersection[x_,U[y_]],U[intersection[y_,complement[P[complement[x_]]]]]] := True (* derived 2004 March 6 in UB-LEAST.NB *) subclass[intersection[y_,ub[x_,y_]],fix[x_]] := True (* derived 2004 March 6 in UB-LEAST.NB *) subclass[intersection[y_,ub[x_,y_]],image[x_,y_]] := True (* derived 2008 February 14 in WF-TRICH.NB *) subclass[intersection[WF, fix[composite[inverse[HULL[SYM]],IMAGE[id[Di]],CART,DUP,CUP,DORA]]],TRV] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[INTLEQ,cart[x_,y_]] := and[subclass[Z,x],subclass[Z,y]] (* derived 2008 December 23 in SU-CP.NB *) subclass[INTMUL,cart[x_,y_]] := and[subclass[Z,y],subclass[cart[Z,Z],x]] (* derived 2008 September 15 in INTARITH.NB *) subclass[intmul[x_,y_],cart[omega,omega]] := and[member[x,Z],member[y,Z]] (* derived 2008 September 15 in INTARITH.NB *) subclass[intmul[x_,y_],cart[V,V]] := and[member[x,Z],member[y,Z]] (* derived 2006 December 19 in ZTIMES-1.NB *) subclass[INTTIMES,cart[x_,y_]] := and[subclass[Z,x],subclass[binhom[INTADD,INTADD],y]] (* derived 2008 September 15 in INTTIMES.NB *) subclass[inttimes[x_],cart[V,V]] := True (* derived 2008 September 16 in INTM-ID.NB *) subclass[inttimes[x_],Id] := or[equal[x,composite[id[omega],SUCC]],not[member[x,Z]]] (* derived 2009 January 21 in INV.NB *) subclass[inv[x_],cart[y_,z_]] := and[subclass[domain[inv[x]],y],subclass[domain[inv[x]],z]] (* derived 2009 January 21 in INV.NB *) subclass[inv[x_],domain[x_]] := True (* derived 2009 January 21 in INV.NB *) subclass[inv[x_],image[inverse[x_],ids[x_]]] := True (* derived 2009 January 21 in INV.NB *) subclass[inv[x_],inverse[image[inverse[x_],ids[x_]]]] := True (* derived 2004 June 17 in X2124.NB *) subclass[invar[BIGCUP],fix[composite[inverse[S],POWER,IMAGE[inverse[S]]]]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[INVAR,cart[x_,y_]] := and[equal[V,x],equal[V,y]] (* derived 2004 November 11 in SEL-RFX.NB *) subclass[invar[composite[DUP,FIRST]],SELECT] := True (* derived 2005 February 10 in X3571.NB *) subclass[invar[composite[id[omega],SUCC]],union[image[S,set[omega]],P[complement[set[0]]]]] := True (* derived 2007 November 4 in FP-IM-PS.NB *) subclass[invar[composite[POWER,TC]],subvar[inverse[PS]]] := True (* derived 2008 August 17 in IVR-CUP.NB *) subclass[invar[x_],image[CUP,IMAGE[x_]]] := True (* derived 2005 February 6 in IVR-SBV.NB *) subclass[invar[x_],invar[composite[x_,id[y_]]]] := True (* derived 2005 January 25 in X2288.NB *) subclass[invar[POWER],fix[composite[inverse[BIGCUP],S,IMAGE[inverse[S]]]]] := True (* derived 2005 January 15 in IVR-POW.NB *) subclass[invar[POWER],subvar[inverse[E]]] := True (* derived 2007 July 3 in ITERSING.NB *) subclass[invar[SINGLETON],subvar[inverse[E]]] := True (* added 2002 May 28 based on IND-SC-1.NB *) subclass[invar[SUCC],subvar[inverse[E]]] := True (* added 2003 January 20 based on ONSUC7OT.NB *) (* variable-free formulation of induction *) subclass[invar[SUCC],union[image[S,set[omega]],P[complement[set[0]]]]] := True (* added 2001 December 17 based on Q-HAT.NB *) subclass[inverse[CARD],Q] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[INVERSE,cart[x_,y_]] := and[subclass[P[cart[V,V]],x],subclass[P[cart[V,V]],y]] subclass[inverse[z_],cart[x_,y_]] := and[subclass[range[z],x],subclass[domain[z],y]] (* derived 2003 December 31 in COARSER.NB *) subclass[inverse[COARSER],composite[inverse[BIGCUP],BIGCUP]] := True (* derived 2009 January 1 in COD-SU.NB *) subclass[inverse[cod[x_]],domain[x_]] := True (* derived 2007 January 30 in FIN-DIV.NB *) subclass[inverse[DIV],union[cart[set[0],omega],inverse[S]]] := True (* added 2001 October 14 based on CAPCLOS.NB *) subclass[inverse[DUP],CAP] := True (* added 1999 July 24 based on session CAP-CUP *) subclass[inverse[DUP],CUP] := True subclass[inverse[DUP],FIRST] := True subclass[inverse[DUP],SECOND] := True (* derived 2004 June 28 in X2200.NB *) subclass[inverse[E],composite[x_,BIGCAP]] := subclass[S,x] (* derived 2004 June 28 in X2200.NB *) subclass[inverse[E],composite[x_,BIGCUP]] := subclass[inverse[S],x] (* derived 2004 June 17 in X1337-65.NB *) subclass[inverse[E],composite[inverse[E],IMAGE[inverse[S]]]] := True (* added 2002 May 16 based on TC-IN-E.NB *) subclass[inverse[E],composite[inverse[E],SUCC]] := True (* added 2001 January 2 based on TC-SU.NB *) subclass[inverse[E],composite[inverse[E],TC]] := True (* added 2002 March 27 based on TRV.NB *) subclass[inverse[E],ZN] := True (* derived 2009 January 1 in COD-SU.NB *) subclass[inverse[fix[composite[inverse[FIRST],x_]]],composite[x_,inverse[SECOND]]] := True (* derived 2004 June 18 in X13-FUNP.NB *) subclass[inverse[funpart[inverse[x_]]],x_] := True (* derived 2008 April 17 in FP-DI.NB *) subclass[inverse[x_],Id] := subclass[composite[Id,x],Id] (* derived 2004 January 4 in VS-IMIN.NB *) subclass[inverse[image[DORA,FUNS]],composite[BIGCUP,Q]] := True (* derived 2005 July 30 in CATORELN.NB *) subclass[inverse[IMAGE[DUP]],composite[S,IMAGE[SECOND]]] := True (* derived 2004 January 10 in IN-IDP.NB *) subclass[inverse[IMAGE[DUP]],IMAGE[FIRST]] := True (* derived 2004 January 10 in IN-IDP.NB *) subclass[inverse[IMAGE[DUP]],IMAGE[SECOND]] := True (* derived 2004 January 10 in IN-IDP.NB *) subclass[inverse[IMAGE[DUP]],IMAGE[inverse[DUP]]] := True (* derived 2004 October 10 in COMPACT0.NB *) subclass[inverse[IMAGE[id[complement[set[0]]]]],COARSER] := True subclass[inverse[IMAGE[id[x_]]],S] := True (* derived 2004 August 19 in X2901-93.NB *) subclass[inverse[IMAGE[inverse[BIGCUP]]],IMAGE[BIGCUP]] := True (* derived 2004 August 19 in X2901-93.NB *) subclass[inverse[IMAGE[inverse[CUP]]],IMAGE[CUP]] := True (* derived 2004 August 19 in X2901-93.NB *) subclass[INVERSE,IMAGE[SWAP]] := True (* added 1998 September 10 *) subclass[inverse[x_],inverse[y_]] := subclass[composite[Id,x],y] (* derived 2006 September 30 in HULL-INV.NB *) subclass[INVERSE,inverse[IMAGE[SWAP]]] := True (* derived 2004 June 19 in REPLACE.NB *) subclass[inverse[oopart[x_]],funpart[inverse[x_]]] := True (* derived 2003 December 30 in PTCLOSED.NB *) subclass[inverse[POWER],BIGCUP] := True (* added 2001 March 4 based on SU-PS.NB *) subclass[x_,inverse[PS]] := and[equal[0,fix[x]],subclass[x,inverse[S]]] (* added 2001 December 20 based on Q-OO.NB *) subclass[INVERSE,Q] := True (* added 2002 March 5 based on HF.NB *) subclass[inverse[RANK],ZN] := True (* added 2003 May 31 based on RS-I.NB *) subclass[inverse[RESTRICT],S] := True (* added 2003 July 4 based on COARSER.NB *) subclass[inverse[S],composite[inverse[S],POWER,BIGCUP]] := True (* added 2001 July 14 based on ZN-IMG.NB *) subclass[inverse[S],ZN] := True (* added 2001 May 10 based on ACLOSED.NB *) subclass[inverse[SINGLETON],BIGCAP] := True subclass[inverse[SINGLETON],BIGCUP] := True (* derived 2007 April 26 in THIN-Q.NB *) subclass[inverse[SMALLER],composite[Q,inverse[S]]] := True (* derived 2005 December 1 in RANKUNIQ.NB *) subclass[inverse[thinpart[inverse[x_]]],x_] := True (* derived 2006 February 4 in INVOL.NB *) subclass[INVOL,BIJ] := True (* derived 2006 February 4 in INVOL.NB *) subclass[INVOL,FUNS] := True (* derived 2008 September 28 in PERMS.NB *) subclass[INVOL,PERMS] := True (* derived 2006 February 4 in INVOL.NB *) subclass[INVOL,SYM] := True (* derived 2006 June 9 in UNARY.NB *) subclass[INVOL,UNOPS] := True (* derived 2008 December 23 in SU-CP.NB *) subclass[JOIN,cart[x_,y_]] := and[subclass[LISTS,y],subclass[cart[LISTS,LISTS],x]] (* derived 2006 December 19 in SU-CP.NB *) subclass[K,cart[x_,y_]] := and[equal[V,x],equal[V,union[y,set[0]]]] (* derived 2005 January 9 *) subclass[K,inverse[image[inverse[DIF],range[SINGLETON]]]] := True (* added 2001 March 4 based on SU-PS.NB *) subclass[K,S] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[LAMBHULL,cart[x_,y_]] := and[equal[V,x],subclass[range[LAMBHULL],y]] (* added 2000 November 21 based on NORMAL.NB *) subclass[x_,LB[y_]] := and[subclass[x,cart[V,V]],subclass[composite[x,E],inverse[y]]] (* derived 2004 February 19 in REPLACE2.NB *) subclass[x_,lb[y_,z_]] := subclass[cart[x,z],y] (* derived 2007 February 17 in RELNS.NB *) subclass[LB[x_],cart[y_,z_]] := and[equal[V,z],subclass[domain[LB[x]],y]] (* derived 2004 December 22 in UCL-COMT.NB *) subclass[LB[x_],composite[BIGCUP,LB[UB[x_]]]] := True (* derived 2006 October 10 in REPLACE.NB *) subclass[LB[x_],composite[LB[x_],IMAGE[id[y_]]]] := True (* derived 2008 July 4 in UB-SU-RA.NB *) subclass[lb[x_,y_],domain[x_]] := or[equal[V,domain[x]],not[equal[0,y]]] (* derived 2004 February 21 in LB-UB-SU.NB *) subclass[lb[x_,y_],image[inverse[x_],y_]] := not[equal[0,y]] (* derived 2004 February 21 in LB-UB-SU.NB *) subclass[lb[x_,V],domain[x_]] := True (* derived 2008 March 4 in UBLB-FIX.NB *) subclass[lb[x_,V],fix[x_]] := True (* derived 2007 April 17 in LD9-19.NB *) subclass[ld[nat[x_],natmul[v_,nat[y_]]],ld[nat[x_],nat[y_]]] := True (* derived 2007 April 17 in LD9-19.NB *) subclass[ld[natmul[u_,nat[x_]],nat[y_]],ld[nat[x_],nat[y_]]] := True (* derived 2007 April 17 in LD9-19.NB *) subclass[ld[natmul[x_,nat[w_]],natmul[z_,nat[w_]]],ld[x_,natmul[z_,nat[w_]]]] := True (* derived 2007 April 12 in LD-4.NB *) subclass[ld[natmul[u_,x_],natmul[v_,y_]],ld[x_,y_]] := True (* derived 2007 March 2 in LD-1.NB *) subclass[ld[x_,y_],omega] := True (* added 2000 November 21 based on SUBLEAST.NB *) subclass[x_,LEAST[y_]] := and[subclass[x,inverse[E]],subclass[composite[x,E],inverse[y]]] (* derived 2007 February 17 in RELNS.NB *) subclass[LEAST[x_],cart[y_,z_]] := and[subclass[domain[LEAST[x]],y],subclass[fix[x],z]] (* derived 2005 October 5 in LEASTGLB.NB *) subclass[LEAST[x_],GLB[x_]] := True (* added 2000 November 21 based on SUBLEAST.NB *) subclass[LEAST[x_],inverse[E]] := True (* derived 2007 February 17 in RELNS.NB *) subclass[LEFT[x_],cart[y_,z_]] := or[and[equal[V,y],equal[V,image[z,set[x]]]],not[member[x,V]]] (* added 2002 June 29 based on LEFT-SU.NB *) subclass[LEFT[x_],inverse[SECOND]] := True (* rules added 1998 January 22 *) subclass[LeftPairV,cart[V,V]] := True (* derived 2008 October 20 in LIST.NB *) subclass[list[x_],cart[omega,V]] := True (* derived 2008 October 20 in LIST.NB *) subclass[LISTS,FINITE] := True (* added 2003 May 14 based on LIST-DEF.NB *) subclass[LISTS,FUNS] := True (* derived 2007 February 17 in RELNS.NB *) subclass[LUB[x_],cart[y_,z_]] := and[subclass[domain[LUB[x]],y],subclass[range[LUB[x]],z]] (* derived 2006 December 19 in SU-CP.NB *) subclass[MAP,cart[x_,y_]] := and[subclass[cart[V,V],x],subclass[range[MAP],y]] (* derived 2006 June 17 in BIN-UNOP.NB *) subclass[map[cart[x_,x_],x_],BINOPS] := True (* derived 2006 December 20 in DO-EVAL.NB *) subclass[map[x_,y_],domain[eval[z_]]] := or[and[equal[0,y],not[equal[0,x]]],member[z,x],not[member[x,V]]] (* derived 2008 November 3 in SUMAPFIN.NB *) subclass[map[x_,y_],FINITE] := or[equal[0,y],member[x,FINITE],not[member[x,V]]] (* added 2001 April 27 based on MAP2.NB *) subclass[map[x_,y_],FUNS] := True (* derived 2004 November 25 in MAP-SU.NB *) subclass[map[u_,v_],map[x_,y_]] := or[and[equal[0,u],equal[0,x]],and[equal[0,v],not[equal[0,u]]], and[equal[u,x],subclass[v,y]],not[member[u,V]]] (* derived 2006 November 21 in CUR-BO.NB *) subclass[map[x_,map[x_,x_]],image[CURRY,BINOPS]] := True (* derived 2004 November 25 in MAP-SS-0.NB *) subclass[map[x_,y_],set[0]] := or[equal[0,x],equal[0,y],not[member[x,V]]] (* derived 2006 August 19 in MAP-DJU.NB *) subclass[map[union[x_,y_],z_],image[CUP,cart[map[x_,z_],map[y_,z_]]]] := True (* derived 2006 June 17 in BIN-UNOP.NB *) subclass[map[x_,x_],UNOPS] := True (* derived 2004 November 26 in XS-CP.NB *) subclass[map[x_,y_],X[cart[x_,y_]]] := True (* added 2000 November 21 based on SUBLEAST.NB *) subclass[x_,MAXIMAL[y_]] := and[subclass[x,inverse[E]],subclass[intersection[composite[x,E],inverse[y]],Id]] (* added 2000 November 21 based on SUBLEAST.NB *) subclass[MAXIMAL[x_],inverse[E]] := True (* added 2000 November 21 based on SUBLEAST.NB *) subclass[x_,MINIMAL[y_]] := and[subclass[x,inverse[E]],subclass[intersection[y,composite[x,E]],Id]] (* added 2000 November 21 based on SUBLEAST.NB *) subclass[MINIMAL[x_],inverse[E]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[MIXDIV,cart[x_,y_]] := and[subclass[omega,x],subclass[Z,y]] (* derived 2006 December 19 in SU-CP.NB *) subclass[MIXMUL,cart[x_,y_]] := and[subclass[Z,y],subclass[cart[Z,omega],x]] (* derived 2006 December 19 in SU-CP.NB *) subclass[MIXTIMES,cart[x_,y_]] := and[subclass[Z,x],subclass[binhom[NATADD,INTADD],y]] (* derived 2008 December 29 in MONOIDS.NB *) subclass[MONOIDS,BINOPS] := True (* derived 2008 December 29 in MONOIDS.NB *) subclass[MONOIDS,SEMIGPS] := True (* derived 2006 July 11 in SGP-MOD.NB *) subclass[nat[x_],x_] := True (* derived 2007 November 22 in SU-HERED.NB *) subclass[nat[x_],chains[S]] := True (* derived 2005 February 13 in NAT.NB *) subclass[nat[x_],nat[y_]] := not[member[nat[y],nat[x]]] (* derived 2005 June 17 in DF.NB *) subclass[nat[x_],natadd[nat[y_],nat[z_]]] := not[member[natadd[nat[y],nat[z]],nat[x]]] (* derived 2005 May 25 in MOD-CHAR.NB *) subclass[nat[z_],natmod[nat[x_],nat[y_]]] := not[member[natmod[nat[x],nat[y]],nat[z]]] (* derived 2005 August 5 in Q9.NB *) subclass[nat[z_],natmul[nat[x_],nat[y_]]] := not[member[natmul[nat[x],nat[y]],nat[z]]] (* derived 2005 June 17 in DF.NB *) subclass[nat[x_],natsub[nat[y_],nat[z_]]] := or[member[nat[y],nat[z]],not[member[nat[y],natadd[nat[x],nat[z]]]]] (* derived 2005 February 13 in NAT.NB *) subclass[nat[x_],omega] := True (* derived 2007 December 17 in DESC-REG.NB *) subclass[nat[x_],REGULAR] := True (* derived 2005 July 10 in O25.NB *) subclass[nat[x_],set[0]] := not[member[set[0],nat[x]]] (* derived 2005 July 4 in SUCC-NAT.NB *) subclass[nat[y_],succ[nat[x_]]] := not[member[succ[nat[x]],nat[y]]] (* derived 2005 July 12 in O25REVIS.NB *) subclass[nat[x_],U[nat[y_]]] := not[member[U[nat[y]],nat[x]]] (* derived 2005 April 28 in MAX-MIN.NB *) subclass[nat[x_],union[nat[y_],nat[z_]]] := not[member[union[nat[y],nat[z]],nat[x]]] (* added 2002 September 1 based on MONO-ADD.NB *) subclass[x_,natadd[x_,y_]] := True (* added 2002 October 12 based on O-17.NB *) subclass[natadd[x_,y_],x_] := or[and[equal[0,y],member[x,omega]],equal[V,x]] (* derived 2006 December 19 in SU-CP.NB *) subclass[NATADD,cart[x_,y_]] := and[subclass[omega,y],subclass[cart[omega,omega],x]] (* derived 2005 May 27 in ADD-SU.NB *) subclass[NATADD,composite[complement[inverse[E]],FIRST]] := True (* derived 2005 May 27 in ADD-SU.NB *) subclass[NATADD,composite[complement[inverse[E]],SECOND]] := True (* added 2002 June 22 based on ADD-CUP.NB *) subclass[NATADD,composite[S,CUP]] := True (* added 2002 September 15 based on NATADDEZ.NB *) subclass[NATADD,composite[S,FIRST]] := True (* added 2002 September 15 based on NATADDEZ.NB *) subclass[NATADD,composite[S,SECOND]] := True (* derived 2005 June 17 in DF.NB *) subclass[natadd[nat[x_],nat[y_]],nat[z_]] := not[member[nat[z],natadd[nat[x],nat[y]]]] (* derived 2005 July 16 in DBLCOUNT.NB *) subclass[natadd[nat[x_],nat[y_]],omega] := True (* added 2002 September 29 based on SUB-ADD.NB *) subclass[natadd[x_,y_],natadd[x_,z_]] := or[and[member[y,omega],subclass[y,z]],not[member[x,omega]],not[member[z,omega]]] (* derived 2006 December 19 in SU-CP.NB *) subclass[NATEXP,cart[x_,y_]] := and[subclass[omega,y],subclass[cart[omega,omega],x]] (* derived 2005 May 27 in MOD-SU-1.NB *) subclass[natmod[x_,y_],x_] := or[and[member[x,omega],member[y,omega]],equal[V,x]] (* derived 2007 March 18 in MOD-SU.NB *) subclass[natmod[x_,y_],y_] := or[and[equal[0,x],member[y,omega]], and[member[x,omega],member[y,omega],not[equal[0,y]]],equal[V,y]] (* derived 2007 March 18 in MOD-SU.NB *) subclass[x_,natmod[x_,y_]] := or[equal[0,y],member[x,y],not[member[x,omega]],not[member[y,omega]]] (* derived 2005 May 27 in MOD-SU-2.NB *) subclass[y_,natmod[x_,y_]] := or[equal[0,y],not[member[x,omega]],not[member[y,omega]]] (* derived 2006 December 19 in SU-CP.NB *) subclass[NATMOD,cart[x_,y_]] := and[subclass[omega,y],subclass[cart[omega,omega],x]] (* derived 2005 July 18 in MODULO.NB *) subclass[natmod[nat[x_],nat[y_]],nat[z_]] := not[member[nat[z],natmod[nat[x],nat[y]]]] (* derived 2005 May 21 in MOD-SU.NB *) subclass[natmod[x_,y_],natsub[x_,y_]] := True (* added 2002 October 11 based on MUL-SU-S.NB *) subclass[y_,natmul[x_,y_]] := or[equal[0,y],not[equal[0,x]],not[member[y,omega]]] (* derived 2007 March 10 in MUL-SU.NB *) subclass[natmul[x_,y_],x_] := or[and[equal[0,x],member[y,omega]], and[member[x,omega],member[y,omega],not[member[set[0],y]]],equal[V,x]] (* derived 2006 December 19 in SU-CP.NB *) subclass[NATMUL,cart[x_,y_]] := and[subclass[omega,y],subclass[cart[omega,omega],x]] (* derived 2007 May 12 in MUL-DIV.NB *) subclass[NATMUL,composite[DIV,FIRST]] := True (* derived 2007 May 12 in MUL-DIV.NB *) subclass[NATMUL,composite[DIV,SECOND]] := True (* derived 2005 August 5 in Q9.NB *) subclass[natmul[nat[x_],nat[y_]],nat[z_]] := not[member[nat[z],natmul[nat[x],nat[y]]]] (* added 2002 October 14 based on MUL-MONO.NB *) subclass[natmul[x_,y_],natmul[x_,z_]] := or[and[equal[0,x],member[y,omega]], and[member[y,omega],subclass[y,z]],not[member[x,omega]],not[member[z,omega]]] (* derived 2007 March 11 in SQRTINEQ.NB *) subclass[natmul[x_,x_],natmul[y_,y_]] := or[and[member[x,omega],subclass[x,y]],not[member[y,omega]]] (* added 2002 September 21 based on SUB-LESS.NB *) subclass[natsub[x_,y_],x_] := or[and[member[x,omega],member[y,omega],subclass[y,x]],equal[V,x]] (* derived 2005 June 17 in DF.NB *) subclass[natsub[nat[x_],nat[y_]],nat[z_]] := and[not[member[nat[x],nat[y]]],not[member[nat[z],natsub[nat[x],nat[y]]]]] (* added 2002 October 3 based on MONOSUB1.NB *) subclass[natsub[x_,y_],natsub[x_,z_]] := or[and[member[y,omega],subclass[y,x],subclass[z,y]], not[member[x,omega]],not[member[z,omega]],not[subclass[z,x]]] (* added 2002 October 3 based on MONOSUB2.NB *) subclass[natsub[x_,z_],natsub[y_,z_]] := or[and[member[x,omega],subclass[x,y],subclass[z,x]], not[member[y,omega]],not[member[z,omega]],not[subclass[z,y]]] (* derived 2006 August 15 in EVEN-ODD.NB *) subclass[odd,omega] := True (* derived 2008 September 19 in HULL.NB *) subclass[x_,OMEGA] := True /; subclass[x,omega] (* derived 2005 September 16 in HULL-DIV.NB *) subclass[omega,0] := False (* added 2003 May 23 based on BCL-SU.NB *) subclass[OMEGA,binclosed[CAP]] := True (* added 2003 May 23 based on BCL-SU.NB *) subclass[OMEGA,binclosed[CUP]] := True (* derived 2008 May 20 in CARD-FIN.NB *) subclass[omega,card[x_]] := not[member[x,FINITE]] (* derived 2008 July 13 in CHN-C-E.NB *) subclass[OMEGA,chains[complement[E]]] := True (* derived 2007 August 3 in TRICHOT.NB *) subclass[OMEGA,chains[composite[inverse[E],SUCC]]] := True (* derived 2008 January 26 in CHN-Q-S.NB *) subclass[OMEGA,chains[composite[Q,S]]] := True (* derived 2007 November 22 in SU-HERED.NB *) subclass[omega,chains[S]] := True (* derived 2007 May 5 in REPLACE.NB *) subclass[OMEGA,chains[S]] := True (* added 2002 April 23 based on TRICHOT.NB *) subclass[OMEGA,cliques[union[E,composite[inverse[E],SUCC]]]] := True (* added 2002 April 23 based on TRICHOT.NB *) subclass[OMEGA,cliques[union[S,inverse[E]]]] := True (* derived 2004 October 12 in CMPCT-OM.NB *) subclass[omega,COMPACT] := True (* derived 2007 September 26 in UCH-TOPS.NB *) subclass[omega,DEDEKIND] := True (* derived 2005 January 4 in IMINRANK.NB *) subclass[OMEGA,domain[VERTSECT[ZN]]] := True (* derived 2007 July 11 in FULL.NB *) subclass[omega,even] := False (* Theorem FIN-OM2 in FINITE proved 2000 March 19 *) subclass[omega,FINITE] := True (* derived 2005 July 24 in ACL-P-OM.NB *) subclass[omega,fix[ACLOSURE]] := True (* added 2001 October 2 based on REPLACE.NB *) subclass[OMEGA,fix[ACLOSURE]] := True (* added 2002 May 28 based on CARD-OM.NB *) subclass[omega,fix[CARD]] := True (* derived 2005 January 7 in CARD-OM.NB *) subclass[OMEGA,fix[CARD]] := False (* added 2002 June 1 based on RCF.NB *) subclass[OMEGA,fix[composite[IMAGE[SECOND],IMAGE[id[BIGCAP]],RCF]]] := True (* derived 2006 March 7 in PC-ON-SC.NB *) subclass[OMEGA,fix[composite[inverse[S],SUCC,BIGCUP]]] := True (* added 2002 May 24 based on ADJOIN.NB *) subclass[omega,fix[composite[inverse[SUCC],ADJOIN[set[0]],IMAGE[SUCC]]]] := True (* added 2003 June 2 based on ON-SUC-1.NB *) subclass[OMEGA,fix[composite[inverse[SUCC],S,IMAGE[SUCC]]]] := True (* added 2001 December 5 based on CARD-ON.NB *) subclass[OMEGA,fix[composite[S,CARD]]] := True (* derived 2005 April 26 in DICHOT.NB *) subclass[omega,fix[composite[S,IMAGE[SUCC],BIGCUP]]] := True (* derived 2008 March 1 in WO-RS-S.NB *) subclass[OMEGA,fix[image[inverse[CART],image[inverse[IMAGE[id[PS]]],WF]]]] := True (* derived 2008 March 1 in WO-RS-S.NB *) subclass[OMEGA,fix[image[inverse[CART],image[inverse[IMAGE[id[S]]],WO]]]] := True (* added 2001 September 30 based on ACL-2.NB *) subclass[omega,FULL] := True (* added 2001 March 17 based on H-FULL.NB *) subclass[OMEGA,FULL] := True (* derived 2008 February 23 in ON-FUND.NB *) subclass[OMEGA,FUND] := True (* derived 2005 January 5 in SU-HC.NB *) subclass[omega,H[FINITE]] := True (* derived 2005 January 5 in SU-HC.NB *) subclass[OMEGA,H[FULL]] := True (* derived 2007 January 27 in IM-DIV.NB *) subclass[omega,image[DIV,x_]] := member[set[0],x] (* derived 2008 May 17 in FIX-WO.NB *) subclass[OMEGA,image[IMAGE[inverse[DUP]],WO]] := True (* derived 2007 November 6 in WF-IN-K.NB *) subclass[omega,image[inverse[K],omega]] := True (* derived 2007 February 22 in SUOM-HER.NB *) subclass[omega,image[inverse[S],image[DIV,set[nat[x_]]]]] := not[equal[0,nat[x]]] (* derived 2005 January 30 in X3837.NB *) subclass[OMEGA,invar[BIGCUP]] := True (* derived 2008 June 3 in CARD-ORD.NB *) subclass[OMEGA,invar[CARD]] := True (* derived 2005 December 5 in ISB5HER2.NB *) subclass[OMEGA,invar[composite[id[FULL],inverse[S]]]] := True (* derived 2007 July 4 in IMS-OM.NB *) subclass[omega,invar[composite[id[omega],inverse[S]]]] := True (* derived 2008 March 9 in INIT-OM.NB *) subclass[OMEGA,invar[composite[id[OMEGA],inverse[S]]]] := True (* derived 2008 February 26 in ON-INVAR.NB *) subclass[OMEGA,invar[composite[inverse[E],IMAGE[id[OMEGA]]]]] := True (* derived 2005 February 10 in X3557.NB *) subclass[omega,invar[composite[inverse[SUCC],id[omega]]]] := True (* added 2002 May 11 based on OM-2.NB *) subclass[omega,invar[inverse[SUCC]]] := True (* added 2002 May 26 based on ON-SUC-1.NB *) subclass[OMEGA,invar[inverse[SUCC]]] := True (* derived 2005 November 25 in ORD-ON.NB *) subclass[omega,nat[x_]] := False (* added 2001 November 11 based on CHAINS.NB *) subclass[omega,OMEGA] := True (* derived 2005 October 19 in TO-CL-WO.NB *) subclass[omega,ord[x_]] := not[member[ord[x],omega]] (* derived 2005 November 25 in ORD-ON.NB *) subclass[OMEGA,ord[x_]] := False (* added 2000 February 12 based on ON-SUC16.NB *) subclass[omega,REGULAR] := True (* Theorem ON-REG in ON5 *) subclass[OMEGA,REGULAR] := True (* added 2002 October 6 based on OMEGA-2.NB *) subclass[omega,RUSSELL] := True (* added 2002 May 15 based on TRICHOT.NB *) subclass[OMEGA,RUSSELL] := True (* added 2002 June 8 based on OM-SS-SU.NB *) subclass[omega,set[x_]] := False (* added 2003 January 9 based on OM-SUC.NB *) subclass[omega,succ[x_]] := subclass[omega,x] (* derived 2003 December 24 based on ON-SC.NB *) subclass[OMEGA,union[fix[BIGCUP],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]]] := True (* derived 2003 December 24 based on ON-SC.NB *) subclass[OMEGA,union[fix[BIGCUP],fix[composite[SUCC,BIGCUP]]]] := True (* derived 2003 December 24 in UCL-ON.NB *) subclass[OMEGA,union[fix[BIGCUP],fix[UCLOSURE]]] := True (* added 2002 May 24 based on OMEGA.NB *) subclass[OMEGA,union[fix[BIGCUP],range[SUCC]]] := True (* derived 2008 June 3 in CARD-ORD.NB *) subclass[OMEGA,union[fix[CARD],fix[composite[E,Q]]]] := True (* added 2003 February 6 based on OM-SC-2B.NB *) subclass[omega,union[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],set[0]]] := True (* added 2002 April 17 based on BC-SUCC.NB *) subclass[omega,union[fix[composite[SUCC,BIGCUP]],set[0]]] := True (* derived 2007 August 2 in FP-E-BC.NB *) subclass[omega,union[fix[UCHAINS],set[0]]] := True (* derived 2005 February 23 in X3729.NB *) subclass[omega,union[fix[UCLOSURE],set[0]]] := True (* derived 2005 January 27 in BA-OM.NB *) subclass[omega,union[image[inverse[BIGCAP],set[0]],set[0]]] := True (* derived 2005 January 27 in BA-ON.NB *) subclass[OMEGA,union[image[inverse[BIGCAP],set[0]],set[0]]] := True (* derived 2007 February 17 in PLUS.NB *) subclass[omega,union[image[S,set[nat[x_]]],nat[x_]]] := True (* derived 2005 December 6 in ORDINAL.NB *) subclass[OMEGA,union[image[S,set[ord[x_]]],ord[x_]]] := True (* added 2002 May 11 based on OM-1.NB *) subclass[omega,union[image[S,set[x_]],P[complement[set[x_]]]]] := True (* revised 2003 June 1 based on REPLACE.NB *) subclass[OMEGA,union[intersection[OMEGA,complement[fix[BIGCUP]]],invar[SUCC]]] := True (* added 2002 May 25 based on OM-INVAR.NB *) subclass[omega,union[invar[SUCC],range[SUCC]]] := True (* added 2002 May 24 based on OMEGA.NB *) subclass[OMEGA,union[invar[SUCC],range[SUCC]]] := True (* derived 2007 July 20 in OMRA-SBV.NB *) subclass[omega,union[range[SUBVAR],set[0]]] := True (* added 2002 May 13 based on OM-SUC.NB *) subclass[omega,union[range[SUCC],set[0]]] := True (* derived 2003 December 25 in TOPSDEFN.NB *) subclass[OMEGA,union[TOPS,fix[BIGCUP]]] := True (* derived 2005 February 23 in X3729.NB *) subclass[omega,union[TOPS,set[0]]] := True (* derived 2004 May 9 in OOPART.NB *) subclass[oopart[x_],x_] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[OOPART,cart[x_,y_]] := and[equal[V,x],subclass[BIJ,y]] (* derived 2007 February 17 in RELNS.NB *) subclass[oopart[w_],cart[x_,y_]] := and[subclass[domain[oopart[w]],x],subclass[range[oopart[w]],y]] (* derived 2004 May 9 in OOPART.NB *) subclass[oopart[x_],funpart[x_]] := True (* derived 2004 May 9 in OOPART.NB *) subclass[OOPART,inverse[S]] := True (* derived 2004 December 11 in RESTRICT.NB *) subclass[OOPART,RESTRICT] := True (* derived 2007 April 29 in ORD-CARD.NB *) subclass[ord[x_],card[y_]] := not[member[card[y],ord[x]]] (* derived 2007 November 22 in SU-HERED.NB *) subclass[ord[x_],chains[S]] := True (* derived 2008 February 8 in ONSUFULL.NB *) subclass[ord[x_],FULL] := True (* derived 2007 May 30 in NEXT-LIM.NB *) subclass[ord[x_],hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x_]]]] := True (* derived 2007 November 1 in MAX-ON.NB *) subclass[ord[x_],image[inverse[PS],ord[x_]]] := equal[ord[x],U[ord[x]]] (* derived 2008 March 1 in WO-RS-S.NB *) subclass[ord[x_],image[PS,ord[x_]]] := equal[0,ord[x]] (* derived 2008 February 28 in MORSE100.NB *) subclass[ord[x_],invar[composite[inverse[E],id[ord[x_]]]]] := True (* derived 2006 March 14 in ORDRULES.NB *) subclass[ord[x_],omega] := not[member[omega,ord[x]]] (* derived 2005 October 19 in ORD-WRAP.NB *) subclass[ord[x_],OMEGA] := True (* derived 2005 October 19 in ORD-WRAP.NB *) subclass[ord[x_],ord[y_]] := not[member[ord[y],ord[x]]] (* derived 2005 December 6 in ORDINAL.NB *) subclass[ord[x_],REGULAR] := True (* derived 2006 March 14 in ORDRULES.NB *) subclass[ord[x_],RUSSELL] := True (* derived 2005 December 6 in ORDINAL.NB *) subclass[ord[x_],succ[ord[y_]]] := not[member[succ[ord[y]],ord[x]]] (* derived 2005 December 7 in SUCC-ORD.NB *) subclass[ord[x_],succ[U[ord[x_]]]] := True (* derived 2005 December 7 in SUCC-ORD.NB *) subclass[ord[x_],U[ord[y_]]] := not[member[U[ord[y]],ord[x]]] (* derived 2007 February 17 in RELNS.NB *) subclass[ordlist[x_],cart[y_,z_]] := and[subclass[domain[ordlist[x]],y],subclass[range[ordlist[x]],z]] (* derived 2006 April 30 in OL-MONO.NB *) subclass[ordlist[x_],composite[S,IMAGE[ordlist[x_]]]] := True (* derived 2007 May 12 in OL-SU-S.NB *) subclass[ordlist[x_],S] := True (* Theorems PC-SC-1 and PC-SC-2 in PC2 *) subclass[x_,P[y_]] := subclass[U[x],y] (* added 2002 May 10 based on P-A.NB *) subclass[P[A[x_]],x_] := member[0,x] (* added 2003 October 15 based on ACYCLIC.NB *) subclass[P[x_],ACYCLIC] := and[equal[0,fix[trv[x]]],subclass[x,cart[V,V]]] (* derived 2004 January 11 in PSU-ASYM.TXT *) subclass[P[x_],ANTISYM] := and[subclass[x,cart[V,V]],subclass[intersection[x,inverse[x]],Id]] (* Theorems BIJ-OO1 and BIJ-OO2 in BIJ proved 2000 May 1 *) subclass[P[x_],BIJ] := ONEONE[x] (* derived 2006 February 10 in FIN-MAP.NB *) subclass[P[cart[fin[x_],fin[y_]]],FINITE] := True (* derived 2006 August 5 in CONST.NB *) subclass[P[cart[x_,set[y_]]],CONST] := True (* derived 2004 August 6 in CONSTANT.NB *) subclass[P[cart[x_,set[y_]]],invar[composite[RIGHT[y_],FIRST]]] := True (* derived 2004 December 24 in SEL-ON.NB *) subclass[P[cart[V,OMEGA]],SELECT] := True (* derived 2008 May 22 in IN-Q.NB *) subclass[P[cart[V,V]],fix[composite[Q,IMAGE[SWAP]]]] := True (* derived 2004 November 7 in AXCH-RE.NB *) subclass[P[cart[V,V]],SELECT] := axch (* derived 2007 May 7 in SUBCLASS.NB *) subclass[P[x_],chains[y_]] := subclass[cart[x,x],union[y,inverse[y]]] (* added 2001 December 24 based on CLIQUES.NB *) subclass[P[x_],cliques[y_]] := subclass[cart[x,x],y] (* derived 2004 December 21 in COMUTANT.NB *) subclass[P[complement[cart[V,V]]],commutant[x_]] := True (* derived 2004 November 18 in XS-IN-AC.NB *) subclass[P[complement[cart[V,V]]],SELECT] := True (* added 2001 July 12 based on ZN-2.NB *) subclass[P[complement[cart[V,V]]],subcommutant[x_]] := True (* added 2002 April 10 based on INVAR.NB *) subclass[P[complement[domain[x_]]],invar[x_]] := True (* derived 2007 June 15 in TRANSVAR.NB *) subclass[P[complement[domain[x_]]],transvar[x_,y_]] := True (* derived 2007 Jnauary 6 in BCL-ZADD.NB *) subclass[P[complement[omega]],binclosed[NATADD]] := True (* derived 2004 October 26 in AXCH-AC1.NB *) subclass[P[complement[set[0]]],image[IMAGE[FIRST],intersection[FUNS,P[inverse[E]]]]] := axch (* derived 2007 Jnauary 6 in BCL-ZADD.NB *) subclass[P[complement[Z]],binclosed[INTADD]] := True (* derived 2007 May 11 in CONSTCLQ.NB *) subclass[P[x_],CONST] := or[and[member[range[x],range[SINGLETON]],subclass[x,cart[V,V]]],equal[0,x]] (* derived 2008 January 6 in SUBVAR.NB *) subclass[P[x_],DESCENDING] := subclass[x,fix[E]] (* derived 2008 May 20 in OO-Q.NB *) subclass[P[domain[oopart[x_]]],fix[composite[Q,IMAGE[oopart[x_]]]]] := True (* derived 2004 June 15 in HULIVRSW.NB *) subclass[P[domain[VERTSECT[x_]]],subvar[x_]] := subclass[IMAGE[x],S] (* derived 2005 December 30 in UB-THIN.NB *) subclass[P[domain[VERTSECT[x_]]],union[domain[VERTSECT[UB[x_]]],set[0]]] := True (* derived 2005 November 2 in FIN.NB *) subclass[P[fin[x_]],FINITE] := True (* derived 2008 January 5 in COARSER.NB *) subclass[P[fin[x_]],image[COARSER,FINITE]] := True (* derived 2007 January 23 in BINOM.NB *) subclass[P[fin[x_]],image[Q,OMEGA]] := True (* derived 2004 January 13 based on FIN-SUPC.NB *) subclass[P[FINITE],FINITE] := False (* derived 2007 May 29 in IVR-HULL.NB *) subclass[P[fix[ACLOSURE]],invar[ACLOSURE]] := True (* derived 2007 November 22 in SU-HERED.NB *) subclass[P[x_],fix[composite[DISJOINT,BIGCUP]]] := equal[0,intersection[x,U[x]]] (* derived 2007 November 7 in CLQ-C.NB *) subclass[P[x_],fix[composite[DISJOINT,IMAGE[y_]]]] := and[equal[0,intersection[x,image[y,x]]],subclass[x,domain[VERTSECT[y]]]] (* derived 2008 February 9 in ASYM.NB *) subclass[P[x_],fix[composite[DISJOINT,INVERSE]]] := and[equal[0,fix[composite[x,x]]],subclass[x,cart[V,V]]] (* derived 2004 May 9 in IMGFU-FP.NB *) subclass[P[fix[funpart[x_]]],fix[IMAGE[funpart[x_]]]] := True (* derived 2006 May 11 in IVR-FUNP.NB *) subclass[P[fix[funpart[x_]]],invar[funpart[x_]]] := True (* derived 2007 May 29 in IVR-HULL.NB *) subclass[P[fix[HULL[x_]]],invar[HULL[x_]]] := True (* derived 2007 December 6 in IDEMFUNP.NB *) subclass[P[fix[idem[funpart[x_]]]],invar[idem[funpart[x_]]]] := True (* derived 2007 June 6 in IDEMWRAP.NB *) subclass[P[fix[IMAGE[idem[x_]]]],invar[IMAGE[idem[x_]]]] := True (* derived 2008 February 22 in WF-RS.NB *) subclass[P[y_],fix[image[inverse[CART],image[inverse[IMAGE[id[x_]]],WF]]]] := WELLFOUNDED[composite[id[y],x]] (* derived 2007 May 29 in IVR-HULL.NB *) subclass[P[fix[IMAGE[inverse[S]]]],invar[IMAGE[inverse[S]]]] := True (* derived 2007 May 29 in ZN.NB *) subclass[P[fix[IMAGE[ZN]]],invar[IMAGE[ZN]]] := True (* derived 2008 March 2 in WO-LEAST.NB *) subclass[P[fix[po[x_]]],union[domain[LEAST[po[x_]]],set[0]]] := WELLORDER[po[x]] (* Theorem SBV-SU3 in SUBVAR *) subclass[P[fix[x_]],subvar[x_]] := True (* derived 2008 March 2 in WO-LEAST.NB *) subclass[P[fix[to[x_]]],union[domain[LEAST[to[x_]]],set[0]]] := WELLORDER[to[x]] (* derived 2007 May 29 in IVR-HULL.NB *) subclass[P[fix[UCLOSURE]],invar[UCLOSURE]] := True (* derived 2006 January 8 in PC-FULL.NB *) subclass[P[FULL],FULL] := False (* derived 2007 December 10 in FUND.NB *) subclass[P[x_],FUND] := WELLFOUNDED[composite[id[x],E]] (* derived 2007 December 10 in FUND.NB *) subclass[P[FUND],RUSSELL] := True (* Theorems FS-PC-1 and FS-PC-2 in FS *) subclass[P[x_],FUNS] := FUNCTION[x] (* derived 2009 May 10 in WO-PS.NB *) subclass[P[hull[invar[funpart[intersection[PS,x_]]],set[y_]]],union[fix[composite[E,BIGCAP]],set[0]]] := True (* added 2002 January 17 based on ANTISYM1.NB *) subclass[P[Id],ANTISYM] := True (* added 2001 December 23 based on DORA-3.NB *) subclass[P[Id],EQV] := True (* derived 2004 December 14 in IDEMPROJ.NB *) subclass[P[Id],IDEM] := True (* added 2002 February 9 based on RFX-FUNS.NB *) subclass[P[Id],invar[composite[DUP,SECOND]]] := True (* added 2002 February 9 based on RFX-FUNS.NB *) subclass[P[Id],invar[composite[DUP,FIRST]]] := True (* derived 2006 February 4 in INVOL.NB *) subclass[P[Id],INVOL] := True (* derived 2008 September 28 in PERMS.NB *) subclass[P[Id],PERMS] := True (* added 2002 January 19 based on PO.NB *) subclass[P[Id],PO] := True (* added 2002 February 9 based on IDEM.NB *) subclass[P[Id],PROJ] := True (* derived 2007 July 7 in LAMBHULL.NB *) subclass[P[Id],range[LAMBHULL]] := False (* added 2001 October 8 based on RFX-ID.NB *) subclass[P[Id],RFX] := True (* derived 2008 January 15 in CO-SEL.NB *) subclass[P[Id],SELECT] := True (* added 2001 October 9 based on TRV-1.NB *) subclass[P[Id],TRV] := True (* derived 2006 June 9 in UNARY.NB *) subclass[P[Id],UNOPS] := True (* derived 2006 May 11 in WO-PS.NB *) subclass[P[image[IMAGE[inverse[RANK]],omega]],union[fix[composite[E,BIGCAP]],set[0]]] := True (* derived 2005 December 22 in UCL-CL.NB *) subclass[P[x_],image[inverse[BIGCAP],y_]] := False (* added 2001 September 7 based on BIJ-NORM.NB *) subclass[P[x_],image[INVERSE,FUNS]] := and[FUNCTION[inverse[x]],subclass[x,cart[V,V]]] (* derived 2005 February 4 in X3943.NB *) subclass[P[x_],image[inverse[S],intersection[FULL,P[complement[set[y_]]]]]] := not[member[y,tc[x]]] (* derived 2004 June 12 in X855.NB *) subclass[P[image[inverse[x_],set[y_]]],domain[UB[x_]]] := True (* derived 2004 June 12 in X855.NB *) subclass[P[image[x_,set[y_]]],domain[LB[x_]]] := True (* derived 2004 February 28 in IM-IN.NB *) subclass[P[image[x_,y_]],subvar[composite[x_,id[y_],inverse[x_]]]] := True (* derived 2008 November 20 in P-REG-SU.NB *) subclass[P[intersection[REGULAR,x_]],x_] := subclass[REGULAR,x] (* derived 2006 August 6 in ASSOC.NB *) subclass[P[inverse[DUP]],ASSOCIATIVE] := True (* derived 2004 November 9 in AC2-AC3.NB *) subclass[P[inverse[FIRST]],SELECT] := axch (* derived 2005 November 2 in FIN.NB *) subclass[P[nat[x_]],FINITE] := True (* derived 2007 January 23 in BINOM.NB *) subclass[P[nat[x_]],image[Q,OMEGA]] := True (* derived 2008 September 18 in SU-PC-OM.NB *) subclass[P[x_],omega] := subclass[x,set[0]] (* derived 2008 September 18 in SU-PC-OM.NB *) subclass[P[x_],OMEGA] := subclass[x,set[0]] (* added 2003 May 23 based on BCL-SU.NB *) subclass[P[OMEGA],binclosed[CAP]] := True (* added 2003 May 23 based on BCL-SU.NB *) subclass[P[OMEGA],binclosed[CUP]] := True (* derived 2005 July 24 in ACL-P-OM.NB *) subclass[P[omega],fix[ACLOSURE]] := True (* derived 2004 October 16 in ON-ACL.NB *) subclass[P[OMEGA],fix[ACLOSURE]] := True (* derived 2006 March 11 in PC-ON-SC.NB *) subclass[P[OMEGA],fix[composite[inverse[S],SUCC,BIGCUP]]] := True (* derived 2008 May 17 in FIX-WO.NB *) subclass[P[OMEGA],image[IMAGE[inverse[DUP]],WO]] := True (* derived 2007 May 23 in SU-ON.NB *) subclass[P[OMEGA],image[inverse[S],x_]] := subclass[OMEGA,image[inverse[S],x]] (* derived 2007 January 23 in BINOM.NB *) subclass[P[omega],image[Q,OMEGA]] := True (* derived 2006 August 16 in OL-SU-OM.NB *) subclass[P[omega],image[Q,succ[omega]]] := True (* derived 2007 July 4 in IMAGRANK.NB *) subclass[P[OMEGA],invar[RANK]] := True (* derived 2005 February 11 in X3567.NB *) subclass[P[omega],transvar[inverse[SUCC],BIGCUP]] := True (* derived 2005 December 3 in X3567.NB *) subclass[P[OMEGA],transvar[inverse[SUCC],BIGCUP]] := True (* derived 2007 March 6 in LCM.NB *) subclass[P[omega],union[FINITE,image[inverse[LUB[DIV]],set[0]]]] := True (* derived 2007 July 3 in ITERSING.NB *) subclass[P[omega],union[FINITE,subvar[inverse[E]]]] := True (* added 2002 May 25 based on WELLORD.NB *) subclass[P[omega],union[fix[composite[E,BIGCAP]],set[0]]] := True (* derived 2006 March 7 in PC-ON-SC.NB *) subclass[P[OMEGA],union[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]],subvar[inverse[E]]]] := True (* Theorem ON-WO-BA in ON5 proved 2000 November 3 *) subclass[P[OMEGA],union[set[0],fix[composite[E,BIGCAP]]]] := True (* derived 2005 October 19 in ORD-WRAP.NB *) subclass[P[ord[x_]],union[fix[composite[E,BIGCAP]],set[0]]] := True (* derived 2006 March 2 in PCPC-FIN.NB *) subclass[P[P[x_]],FINITE] := subclass[P[x],FINITE] (* derived 2004 February 28 in IM-IN.NB *) subclass[P[range[x_]],subvar[composite[x_,inverse[x_]]]] := True (* Theorems REG2-SU3 and REG3-SU in REG2 proved 1999 June 12 *) subclass[P[x_],REGULAR] := subclass[x,REGULAR] (* derived 2008 August 15 in PC-RUS.NB *) subclass[P[x_],RUSSELL] := True /; subclass[x,RUSSELL] (* added 2002 March 4 based on RUS.NB *) subclass[P[RUSSELL],RUSSELL] := True (* derived 2005 February 15 in RUS-A-DJ.NB *) subclass[P[RUSSELL],union[fix[composite[DISJOINT,BIGCAP]],set[0]]] := True (* Theorem PC-SU-SS in RP/2/CURIOUS proved 1998 October 8 *) subclass[P[x_],set[y_]] := and[equal[0,x],equal[0,y]] (* derived 2005 August 1 in SS-RULES.NB *) subclass[P[x_],set[0,set[y_]]] := subclass[x,set[y]] (* derived 2005 February 20 in CARD-TWO.NB *) subclass[P[set[x_,y_]],union[range[PAIRSET],set[0]]] := True (* derived 2006 March 2 in PCPC-FIN.NB *) subclass[P[setpart[x_]],FINITE] := member[setpart[x],FINITE] (* derived 2007 July 10 in PC-SU.NB *) subclass[P[setpart[x_]],setpart[x_]] := False (* derived 2007 September 4 in SBV-PC.NB *) subclass[P[x_],subvar[y_]] := subclass[x,fix[y]] (* derived 2008 January 6 in SUBVAR.NB *) subclass[P[x_],SYM] := subclass[x,Id] (* derived 2005 October 19 in ORD-WRAP.NB *) subclass[P[succ[omega]],union[fix[composite[E,BIGCAP]],set[0]]] := True (* derived 2005 December 22 in UCL-CL.NB *) subclass[P[Uclosure[x_]],domain[GLB[composite[id[Uclosure[x_]],S,id[Uclosure[x_]]]]]] := member[x,V] (* derived 2007 May 29 in IVR-CORE.NB *) subclass[P[Uclosure[x_]],invar[CORE[x_]]] := True (* derived 2006 January 17 in IMIN-ACL.NB *) subclass[P[x_],union[image[inverse[BIGCAP],Aclosure[x_]],set[0]]] := True (* derived 2005 January 5 in WO-ID.NB *) subclass[P[x_],union[image[SINGLETON,x_],set[0]]] := or[equal[0,x],member[x,range[SINGLETON]]] (* derived 2005 January 5 in WO-ID.NB *) subclass[P[x_],union[range[SINGLETON],set[0]]] := or[equal[0,x],member[x,range[SINGLETON]]] (* derived 2004 June 27 in X1712-20.NB *) subclass[P[x_],union[RUSSELL,x_]] := True (* added 2003 September 29 based on WF.NB *) subclass[P[x_],WF] := WELLFOUNDED[x] (* added 2003 February 26 based on ACL-Z.NB *) subclass[P[Z],union[image[SINGLETON,Z], image[inverse[BIGCAP],set[0]],set[0]]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[PAIRSET,cart[x_,y_]] := and[subclass[cart[V,V],x],subclass[range[PAIRSET],y]] (* derived 2008 May 3 in FU-REC.NB *) subclass[partrec[funpart[x_],y_],FUNS] := True (* derived 2004 August 3 in WF-REC-1.NB *) subclass[partrec[x_,y_],fix[composite[inverse[IMAGE[composite[id[inverse[FIRST]],inverse[SECOND]]]], UB[composite[FIRST,intersection[composite[inverse[IMG],SECOND],composite[inverse[SECOND],VERTSECT[y_],FIRST]], intersection[composite[inverse[FIRST],FIRST],composite[inverse[x_],SECOND]]]]]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) subclass[partrec[x_,y_],image[inverse[UB[composite[FIRST, intersection[composite[inverse[IMG],SECOND],composite[inverse[SECOND],VERTSECT[y_],FIRST]], intersection[composite[inverse[FIRST],FIRST],composite[inverse[x_],SECOND]]]]],P[inverse[FIRST]]]] := True (* derived 2008 September 28 in PERMS.NB *) subclass[PERMS,BIJ] := True (* derived 2008 September 28 in PERMS.NB *) subclass[PERMS,FUNS] := True (* derived 2008 September 28 in PERMS.NB *) subclass[PERMS,image[INVERSE,FUNS]] := True (* derived 2008 September 28 in PERMS.NB *) subclass[PERMS,UNOPS] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[PLUS,cart[x_,y_]] := and[subclass[omega,x],subclass[range[PLUS],y]] (* derived 2007 February 17 in RELNS.NB *) subclass[plus[x_],cart[y_,z_]] := or[and[subclass[omega,y],subclass[omega,union[x,z]]],not[member[x,omega]]] (* derived 2006 January 29 in WF-Z.NB *) subclass[plus[x_],E] := not[equal[0,x]] (* derived 2006 September 8 in NEUTRAL.NB *) subclass[plus[x_],Id] := or[equal[0,x],not[member[x,omega]]] (* derived 2006 December 3 in MIXDIV.NB *) subclass[PLUS,MIXDIV] := True (* derived 2006 January 26 in Z-TRV.NB *) subclass[plus[nat[x_]],plus[nat[y_]]] := equal[nat[x],nat[y]] (* added 2003 August 8 based on REPLACE.NB *) subclass[plus[natsub[x_,y_]],composite[inverse[plus[y_]],plus[x_]]] := True (* added 2003 August 8 based on REPLACE.NB *) subclass[plus[x_],S] := True (* derived 2005 October 1 in PO-WRAP.NB *) subclass[po[x_],x_] := True (* added 2003 September 24 based on PO-FACTS.NB *) subclass[PO,ANTISYM] := True (* derived 2007 February 17 in RELNS.NB *) subclass[po[x_],cart[y_,z_]] := and[subclass[fix[po[x]],y],subclass[fix[po[x]],z]] (* derived 2006 January 25 in PO-XFORM.NB *) subclass[PO,fix[composite[IMAGE[FIRST],IMAGE[id[cart[V,inverse[S]]]],CROSS,DUP,VS]]] := True (* derived 2006 January 26 in PO-I-XFM.NB *) subclass[PO,fix[composite[IMAGE[FIRST],IMAGE[id[cart[V,S]]],CROSS,DUP,VS,IMAGE[SWAP]]]] := True (* derived 2004 December 14 in IDEMPROJ.NB *) subclass[PO,IDEM] := True (* derived 2007 November 3 in IMIN-PS.NB *) subclass[PO,image[inverse[PS],PO]] := True (* derived 2008 May 29 in COREPROJ.NB *) subclass[PO,invar[composite[DUP,SECOND]]] := True (* added 2003 September 24 based on PO-FACTS.NB *) subclass[PO,RFX] := True (* added 2003 September 24 based on PO-FACTS.NB *) subclass[PO,TRV] := True (* derived 2003 December 28 in PTCLOSED.NB *) subclass[PointClosed,fix[UCLOSURE]] := False (* derived 2003 December 28 in PTCLOSED.NB *) subclass[PointClosed,T1] := True (* added 1998 August 7 *) subclass[POWER,cart[x_,y_]] := and[equal[V,x],subclass[range[POWER],y]] (* added 2003 May 11 based on Q-PC.NB *) subclass[POWER,composite[Q,S]] := True (* added 1998 August 7 *) subclass[POWER,E] := True (* added 2002 January 20 based on UU.NB *) subclass[POWER,inverse[BIGCUP]] := True (* added 2003 May 5 based on POWER-SU.NB *) subclass[power[x_],power[y_]] := subclass[composite[Id,x],y] (* derived 2004 April 6 in SMALLER.NB *) subclass[POWER,SMALLER] := True (* derived 2005 April 21 in U-PRIMES.NB *) subclass[PRIMES,FINITE] := True (* derived 2007 November 3 in IMIN-PS.NB *) subclass[PRIMES,image[inverse[S],omega]] := True (* derived 2008 May 9 in PRIMESEQ.NB *) subclass[PRIMES,image[PRIMESEQ,nat[x_]]] := False (* derived 2005 February 22 in PRIMES.NB *) subclass[PRIMES,omega] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[PRIMESEQ,cart[x_,y_]] := and[subclass[omega,x],subclass[PRIMES,y]] (* derived 2005 August 17 in PRIMESEQ.NB *) subclass[PRIMESEQ,S] := True (* derived 2005 August 17 in PRIMESEQ.NB *) subclass[PRIMESEQ,composite[S,IMAGE[PRIMESEQ]]] := True (* derived 2006 January 28 in PROJ.NB *) subclass[PROJ,ANTISYM] := True (* derived 2007 October 30 in PROJ-SBV.NB *) subclass[PROJ,fix[composite[inverse[SUBVAR],POWER,IMAGE[inverse[DUP]]]]] := True (* added 2002 February 9 based on IDEM.NB *) subclass[PROJ,FUNS] := True (* derived 2004 December 14 in IDEMPROJ.NB *) subclass[PROJ,IDEM] := True (* added 2002 February 9 based on MOREIDEM.NB *) subclass[PROJ,invar[composite[DUP,SECOND]]] := True (* derived 2007 July 7 in LAMBHULL.NB *) subclass[PROJ,range[LAMBHULL]] := False (* added 2002 February 9 based on IDEM.NB *) subclass[PROJ,TRV] := True (* derived 2006 June 9 in UNARY.NB *) subclass[PROJ,UNOPS] := True (* added 2001 March 4 based on SU-PS.NB *) subclass[x_,PS] := and[equal[0,fix[x]],subclass[x,S]] (* derived 2006 December 19 in SU-CP.NB *) subclass[PS,cart[x_,y_]] := and[equal[V,x],equal[V,union[y,set[0]]]] (* added 2000 October 3 based on KMINIMAL.NB *) subclass[PS,Di] := True (* added 2000 May 14 based on K-2.NB *) subclass[PS,S] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[Q,cart[x_,y_]] := and[equal[V,x],equal[V,y]] (* Corollary of Theorem Q-SR-POW in Q proved 2000 October 1 *) subclass[Q,composite[complement[S],POWER]] := True (* added 2001 December 20 based on Q-POW.NB *) subclass[Q,composite[inverse[POWER],Q,POWER]] := True (* derived 2004 July 26 in DORAFUNS.NB *) subclass[Q,image[DORA,FUNS]] := True (* derived 2008 October 20 in BO-SU-CP.NB *) subclass[quasigp[x_],cart[y_,z_]] := and[subclass[domain[quasigp[x]],y],subclass[range[quasigp[x]],z]] (* derived 2008 October 17 in QG-SU.NB *) subclass[QUASIGPS,BINOPS] := True (* derived 2008 October 17 in QG-SU.NB *) subclass[QUASIGPS,FUNS] := True (* derived 2008 December 4 in UNCURRY.NB *) subclass[range[APPLY[CURRY,binop[x_]]],FUNS] := True (* derived 2008 October 7 in BNP-WRAP.NB *) subclass[range[binop[x_]],fix[domain[binop[x_]]]] := True (* derived 2004 November 2 in SELECT.NB *) subclass[range[CART],SELECT] := True (* added 2001 October 9 based on TRV-1.NB *) subclass[range[CART],TRV] := True (* derived 2007 July 23 in RA-CLQ.NB *) subclass[range[CLIQUES],binclosed[CAP]] := True (* derived 2007 July 23 in RA-CLQ.NB *) subclass[range[CLIQUES],binclosed[CUP]] := False (* derived 2008 January 2 in FINCHR-1.NB *) subclass[range[CLIQUES],FINCHAR] := True (* derived 2007 July 23 in RA-CLQ.NB *) subclass[range[CLIQUES],fix[ACLOSURE]] := True (* derived 2007 July 23 in RA-CLQ.NB *) subclass[range[CLIQUES],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := False (* derived 2007 November 23 in INDUCTIV.NB *) subclass[range[CLIQUES],fix[composite[inverse[IMAGE[inverse[S]]],S,UCHAINS]]] := True (* derived 2006 October 11 in RA-CLIQ.NB *) subclass[range[CLIQUES],fix[IMAGE[inverse[S]]]] := True (* derived 2007 June 26 in UCHAINS.NB *) subclass[range[CLIQUES],fix[UCHAINS]] := True (* derived 2007 June 26 in UCHAINS.NB *) subclass[range[CLIQUES],fix[UCLOSURE]] := False (* derived 2007 July 18 in RA-CLIQ.NB *) subclass[range[CLIQUES],range[POWER]] := False (* derived 2007 July 23 in RA-CLQ.NB *) subclass[range[CLIQUES],range[SUBVAR]] := False (* derived 2007 July 23 in RA-CLQ.NB *) subclass[range[CLIQUES],TOPS] := False (* added 1999 October 9 based on CROSS.4 *) subclass[range[CROSS],P[cart[cart[V,V],cart[V,V]]]] := True (* derived 2005 April 16 in FACTRL.NB *) subclass[range[FACTORIAL],omega] := True (* derived 2005 September 27 in LUB-SET.NB *) subclass[range[GLB[x_]],domain[x_]] := True (* derived 2008 June 5 in CARDHART.NB *) subclass[range[HARTOGS],fix[CARD]] := True (* derived 2008 January 22 in HART-FU.NB *) subclass[range[HARTOGS],OMEGA] := True (* derived 2008 June 5 in CARDHART.NB *) subclass[range[HARTOGS],RUSSELL] := True (* derived 2004 September 12 in WF-REC-5.NB *) subclass[range[history[x_,y_]],cart[V,V]] := True (* added 2002 June 24 based on THIN-TRV.NB *) subclass[range[IMAGE[composite[inverse[power[x_]],inverse[FIRST]]]],succ[omega]] := True (* derived 2005 November 8 in RA-IMG.NB *) subclass[range[IMAGE[x_]],image[IMAGE[SECOND],P[x_]]] := True (* derived 2006 August 16 in EVOD-ADD.NB *) subclass[range[image[inverse[NATADD],x_]],omega] := True (* derived 2004 December 31 in IN-RK.NB *) subclass[range[IMAGE[inverse[RANK]]],REGULAR] := True (* Theorem IMG-PC2 in IMG2 *) subclass[range[IMAGE[x_]],P[range[x_]]] := True (* derived 2005 September 15 in UCL-RAVS.NB *) subclass[range[IMAGE[x_]],Uclosure[range[VERTSECT[x_]]]] := True (* derived 2008 November 29 in INT-WRAP.NB *) subclass[range[int[x_]],omega] := True (* derived 2005 July 24 in RA-ITER.NB *) subclass[y_,range[iterate[x_,y_]]] := True (* derived 2004 August 27 in IVR-TRV.NB *) subclass[range[iterate[x_,z_]],z_] := subclass[image[x,z],z] (* derived 2005 July 24 in RA-ITER.NB *) subclass[range[iterate[x_,y_]],hull[invar[x_],y_]] := True (* derived 2005 July 24 in RA-ITER.NB *) subclass[range[iterate[x_,y_]],union[y_,range[x_]]] := True (* derived 2007 July 7 in LAMBHULL.NB *) subclass[range[LAMBHULL],BIJ] := False (* added 2003 October 21 based on LAMHUL-2.NB *) subclass[range[LAMBHULL],cliques[complement[cross[S,complement[S]]]]] := True (* added 2003 October 21 based on LAMHUL-2.NB *) subclass[range[LAMBHULL],FUNS] := True (* derived 2007 July 7 in LAMBHULL.NB *) subclass[range[LAMBHULL],IDEM] := True (* derived 2007 July 7 in LAMBHULL.NB *) subclass[range[LAMBHULL],invar[composite[DUP,SECOND]]] := True (* derived 2006 January 24 in RALAMHUL.NB *) subclass[range[LAMBHULL],PROJ] := True (* derived 2007 July 7 in LAMBHULL.NB *) subclass[range[LAMBHULL],TRV] := True (* derived 2007 June 26 in HULL.NB *) subclass[range[LAMBHULL],UNOPS] := True (* derived 2005 September 27 in LUB-SET.NB *) subclass[range[LUB[x_]],range[x_]] := True (* derived 2007 November 10 in ALL-MAX.NB *) subclass[range[MAP],fix[composite[DISJOINT,IMAGE[inverse[PS]]]]] := True (* derived 2007 November 15 in XS-CART.NB *) subclass[range[MAP],range[XS]] := not[axch] (* derived 2007 November 15 in XS-CART.NB *) subclass[range[MAP],union[range[XS],set[0]]] := True (* derived 2006 March 12 in OLIST-OO.NB *) subclass[range[ordlist[x_]],x_] := True (* derived 2006 March 12 in OLIST-OO.NB *) subclass[range[ordlist[x_]],OMEGA] := True (* derived 2007 May 15 in OL-U-RA.NB *) subclass[range[ordlist[x_]],U[range[ordlist[x_]]]] := or[equal[0,intersection[OMEGA,x]],not[member[intersection[OMEGA,x],FINITE]]] (* added 2001 August 23 based on FINITE.NB *) subclass[range[PAIRSET],FINITE] := True (* added 2002 November 29 based on PLUS.NB *) subclass[range[PLUS],BIJ] := True (* derived 2006 September 7 in CO-IMS-Z.NB *) subclass[range[PLUS],cliques[EQUIDIFF]] := True (* derived 2006 September 5 in RA-PLUS.NB *) subclass[range[PLUS],FUNS] := True (* derived 2006 August 17 in CTBL-U.NB *) subclass[range[PLUS],image[Q,OMEGA]] := True (* derived 2006 July 1 in PLUS-MAP.NB *) subclass[range[PLUS],map[omega,omega]] := True (* derived 2006 June 10 in REPLACE.NB *) subclass[range[PLUS],UNOPS] := True (* added 2002 November 29 based on PLUS.NB *) subclass[range[PLUS],Z] := True (* revised 2003 May23 based on DEF-CLOS.NB *) subclass[range[POWER],binclosed[CAP]] := True (* added 2003 May 23 based on REPLACE.NB *) subclass[range[POWER],binclosed[CUP]] := True (* revised 2003 May23 based on DEF-CLOS.NB *) subclass[range[POWER],binclosed[DIF]] := True (* derived 2006 August 1 in U-BCL.NB *) subclass[range[POWER],binclosed[SYMDIF]] := True (* derived 2008 January 2 in FINCHR-1.NB *) subclass[range[POWER],FINCHAR] := True (* added 2001 May 10 based on UCLOS-4.NB *) subclass[range[POWER],fix[ACLOSURE]] := True (* added 2002 January 21 based on RA-POW.NB *) subclass[range[POWER],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := True (* derived 2007 November 23 in INDUCTIV.NB *) subclass[range[POWER],fix[composite[inverse[IMAGE[inverse[S]]],S,UCHAINS]]] := True (* derived 2007 May 27 in COARSER.NB *) subclass[range[POWER],fix[IMAGE[inverse[COARSER]]]] := True (* added 2001 September 23 based on RA-POW.NB *) subclass[range[POWER],fix[IMAGE[inverse[S]]]] := True (* derived 2007 June 26 in UCHAINS.NB *) subclass[range[POWER],fix[UCHAINS]] := True (* added 2001 May 10 based on UCLOS-4.NB *) subclass[range[POWER],fix[UCLOSURE]] := True (* derived 2008 October 18 in GROUPS.NB *) subclass[range[POWER],image[IMAGE[SECOND],GROUPS]] := True (* derived 2007 May 29 in IVR-CORE.NB *) subclass[range[POWER],invar[CORE[x_]]] := True (* added 2000 September 4 based on NEW.M *) subclass[range[POWER],invar[IMAGE[id[x_]]]] := True (* added 2003 July 3 based on T1T2PTCL.NB *) subclass[range[POWER],PointClosed] := True (* derived 2006 October 11 in RA-CLIQ.NB *) subclass[range[POWER],range[CLIQUES]] := True (* derived 2007 June 27 in RA-POW.NB *) subclass[range[POWER],range[SINGLETON]] := False (* derived 2004 December 23 in RA-SBV.NB *) subclass[range[POWER],range[SUBVAR]] := True (* added 2003 June 6 based on RUSSELL.NB *) subclass[range[POWER],RUSSELL] := True (* added 2003 June 23 based on T1.NB *) subclass[range[POWER],T1] := True (* added 2003 June 23 based on T2.NB *) subclass[range[POWER],T2] := True (* added 2001 October 23 based on TOPS.NB *) subclass[range[POWER],TOPS] := True (* added 2002 February 4 based on RCF-NORM.NB *) subclass[range[RCF],BIJ] := True (* derived 2004 January 13 in RA-RCF.NB *) subclass[range[RCF],cliques[complement[cross[inverse[S],complement[S]]]]] := True (* derived 2004 January 13 in RA-RCF.NB *) subclass[range[RCF],FUNS] := True (* derived 2006 February 4 in INVOL.NB *) subclass[range[RCF],INVOL] := True (* derived 2008 September 28 in PERMS.NB *) subclass[range[RCF],PERMS] := True (* derived 2004 January 13 in RA-RCF.NB *) subclass[range[RCF],SYM] := True (* derived 2006 June 9 in UNARY.NB *) subclass[range[RCF],UNOPS] := True (* derived 2004 August 3 in WF-REC-1.NB *) subclass[range[rec[x_,y_]],range[x_]] := True (* derived 2008 November 26 in SEMIGP.NB *) subclass[range[semigp[x_]],fix[domain[semigp[x_]]]] := True (* revised 2003 May23 based on DEF-CLOS.NB *) subclass[range[SINGLETON],binclosed[CAP]] := True (* revised 2003 May23 based on DEF-CLOS.NB *) subclass[range[SINGLETON],binclosed[CUP]] := True (* revised 2003 May23 based on DEF-CLOS.NB *) subclass[range[SINGLETON],binclosed[DIF]] := False (* derived 2007 May 5 in REPLACE.NB *) subclass[range[SINGLETON],chains[S]] := True (* derived 2008 August 17 in CLQ-CMT.NB *) subclass[range[SINGLETON],cliques[COMMUTE]] := True (* added 2001 October 16 based on IM-IN-SG.NB *) subclass[range[SINGLETON],DEDEKIND] := True (* derived 2008 January 2 in FINCHR-1.NB *) subclass[range[SINGLETON],FINCHAR] := False (* added 2001 October 16 based on IM-IN-SG.NB *) subclass[range[SINGLETON],FINITE] := True (* added 2001 October 15 based on ACL-UCL.NB *) subclass[range[SINGLETON],fix[ACLOSURE]] := True (* derived 2007 November 10 in ALL-MAX.NB *) subclass[range[SINGLETON],fix[composite[DISJOINT,IMAGE[inverse[PS]]]]] := True (* added 2000 September 28 based on APPLY.NB *) subclass[range[SINGLETON],fix[composite[E,BIGCAP]]] := True (* added 2002 January 21 based on VS-IN-BC.TXT *) subclass[range[SINGLETON],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := True (* derived 2007 November 23 in INDUCTIV.NB *) subclass[range[SINGLETON],fix[composite[inverse[IMAGE[inverse[S]]],S,UCHAINS]]] := True (* derived 2007 July 25 in FIX-UCH.NB *) subclass[range[SINGLETON],fix[UCHAINS]] := False (* derived 2007 June 26 in FIX-HULL.NB *) subclass[range[SINGLETON],fix[UCLOSURE]] := False (* derived 2005 February 20 in CARD-TWO.NB *) subclass[range[SINGLETON],image[Q,OMEGA]] := True (* derived 2007 June 26 in UCLOSURE.NB *) subclass[range[SINGLETON],invar[x_]] := subclass[composite[Id,x],Id] (* derived 2007 June 26 in FIX-HULL.NB *) subclass[range[SINGLETON],range[CLIQUES]] := False (* added 2001 October 11 based on VARIOUS.NB *) subclass[range[SINGLETON],range[PAIRSET]] := True (* derived 2007 June 27 in RA-POW.NB *) subclass[range[SINGLETON],range[POWER]] := False (* derived 2007 August 2 in FP-E-BC.NB *) subclass[range[SINGLETON],range[SUBVAR]] := False (* derived 2004 November 2 in SELECT.NB *) subclass[range[SINGLETON],SELECT] := True (* derived 2007 July 27 in TOPS.NB *) subclass[range[SINGLETON],TOPS] := False (* derived 2004 June 19 based on X1421-45.NB *) subclass[range[SINGLETON],union[P[complement[x_]],P[x_]]] := True (* derived 2007 July 5 in SBV-ENS.NB *) subclass[range[SUBVAR],binclosed[CAP]] := False (* derived 2007 July 27 in BINCL.NB *) subclass[range[SUBVAR],binclosed[CUP]] := True (* derived 2007 July 5 in SBV-ENS.NB *) subclass[range[SUBVAR],fix[ACLOSURE]] := False (* derived 2007 July 6 in U-SBV.NB *) subclass[range[SUBVAR],fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := True (* derived 2007 November 23 in INDUCTIV.NB *) subclass[range[SUBVAR],fix[composite[inverse[IMAGE[inverse[S]]],S,UCHAINS]]] := True (* derived 2007 July 17 in RA-SBV.NB *) subclass[range[SUBVAR],fix[IMAGE[inverse[S]]]] := False (* derived 2007 June 26 in UCHAINS.NB *) subclass[range[SUBVAR],fix[UCHAINS]] := True (* derived 2004 December 23 in RA-SBV.NB *) subclass[range[SUBVAR],fix[UCLOSURE]] := True (* derived 2007 July 18 in SBV-DI.NB *) subclass[range[SUBVAR],range[CLIQUES]] := False (* derived 2007 July 18 in SBV-DI.NB *) subclass[range[SUBVAR],range[POWER]] := False (* derived 2007 July 5 in SBV-ENS.NB *) subclass[range[SUBVAR],TOPS] := False (* derived 2005 January 26 in REMOVED.NB *) subclass[range[thinpart[composite[id[x_],S]]],x_] := True (* derived 2005 January 26 in REMOVED.NB *) subclass[range[thinpart[eqv[x_]]],domain[VERTSECT[eqv[x_]]]] := True (* derived 2005 January 26 in REMOVED.NB *) subclass[range[thinpart[trv[x_]]],domain[VERTSECT[trv[x_]]]] := True (* derived 2005 January 26 in REMOVED.NB *) subclass[range[thinpart[trv[x_]]],range[x_]] := True (* derived 2005 January 26 in REMOVED.NB *) subclass[range[thinpart[ZN]],domain[VERTSECT[ZN]]] := True (* derived 2006 November 25 in U-BINHOM.NB *) subclass[range[U[binhom[x_,y_]]],fix[domain[y_]]] := True (* derived 2005 October 15 in OO-FIN.NB *) subclass[range[U[image[CROSS,id[x_]]]],cart[V,V]] := True (* derived 2008 January 20 in DIF.NB *) subclass[range[x_],union[fix[composite[complement[y_],inverse[x_]]],range[y_]]] := True (* derived 2004 December 6 in FIN-AXCH.NB *) subclass[range[VERTSECT[composite[id[inverse[E]],inverse[FIRST]]]],SELECT] := True (* derived 2005 September 8 in RAVS-DIV.NB *) subclass[range[VERTSECT[DIV]],binclosed[NATADD]] := True (* derived 2007 April 12 in LD-4.NB *) subclass[range[VERTSECT[DIV]],binclosed[NATMOD]] := True (* derived 2005 September 8 in RAVS-DIV.NB *) subclass[range[VERTSECT[DIV]],binclosed[rotate[NATADD]]] := True (* derived 2007 April 12 in LD-4.NB *) subclass[range[VERTSECT[DIV]],fix[composite[IMAGE[NATADD],CART,DUP]]] := True (* derived 2007 April 12 in LD-4.NB *) subclass[range[VERTSECT[DIV]],fix[composite[IMAGE[NATMOD],CART,DUP]]] := True (* derived 2007 April 12 in LD-4.NB *) subclass[range[VERTSECT[DIV]], fix[composite[IMG,id[inverse[IMAGE[inverse[NATADD]]]],inverse[SECOND]]]] := True (* derived 2007 April 12 in LD-4.NB *) subclass[range[VERTSECT[DIV]],fix[IMAGE[DIV]]] := True (* derived 2004 May 12 in EQV-GEN.NB *) subclass[range[VERTSECT[eqv[x_]]],cliques[eqv[x_]]] := True (* derived 2005 January 25 *) subclass[range[VERTSECT[x_]],FUNS] := and[FUNCTION[rotate[inverse[thinpart[x]]]],subclass[range[thinpart[x]],cart[V,V]]] (* derived 2007 January 6 in IVR-INV.NB *) subclass[range[VERTSECT[INTDIV]],binclosed[composite[INTADD,cross[Id,INVERSE]]]] := True (* derived 2007 January 6 in IVR-INV.NB *) subclass[range[VERTSECT[INTDIV]],binclosed[INTADD]] := True (* derived 2007 January 6 in IVR-INV.NB *) subclass[range[VERTSECT[INTDIV]],fix[IMAGE[INVERSE]]] := True (* derived 2007 January 6 in IVR-INV.NB *) subclass[range[VERTSECT[INTDIV]],invar[INVERSE]] := True (* derived 2008 March 20 in IVR-VSTO.NB *) subclass[range[VERTSECT[intersection[Di,to[setpart[x_]]]]],fix[IMAGE[to[setpart[x_]]]]] := True (* derived 2008 March 18 in RA-VS-PO.NB *) subclass[range[VERTSECT[inverse[po[x_]]]],fix[IMAGE[inverse[po[x_]]]]] := True (* derived 2008 March 18 in RA-VS-PO.NB *) subclass[range[VERTSECT[inverse[po[x_]]]],invar[inverse[po[x_]]]] := True (* derived 2008 March 18 in RA-VS-TO.NB *) subclass[range[VERTSECT[inverse[to[x_]]]],fix[IMAGE[inverse[to[x_]]]]] := True (* derived 2008 March 18 in RA-VS-TO.NB *) subclass[range[VERTSECT[inverse[to[x_]]]],invar[inverse[to[x_]]]] := True (* derived 2008 March 18 in RA-VS-PO.NB *) subclass[range[VERTSECT[po[x_]]],fix[IMAGE[po[x_]]]] := True (* derived 2008 March 18 in RA-VS-PO.NB *) subclass[range[VERTSECT[po[x_]]],invar[po[x_]]] := True (* added 2002 November 19 based on FP-EQDF.NB *) subclass[range[VERTSECT[x_]],range[IMAGE[x_]]] := True (* derived 2005 December 31 in VS-UB.NB *) subclass[range[VERTSECT[x_]],range[VERTSECT[UB[x_]]]] := True (* derived 2008 March 18 in RA-VS-TO.NB *) subclass[range[VERTSECT[to[x_]]],fix[IMAGE[to[x_]]]] := True (* derived 2008 March 18 in RA-VS-TO.NB *) subclass[range[VERTSECT[to[x_]]],invar[to[x_]]] := True (* derived 2005 December 31 in VS-UB.NB *) subclass[range[VERTSECT[UB[x_]]],union[image[VERTSECT[UB[x_]],P[domain[x_]]],set[0]]] := True (* derived 2004 August 15 in ZN-FACTS.NB *) subclass[range[VERTSECT[ZN]],domain[VERTSECT[ZN]]] := True (* derived 2004 August 15 in ZN-FACTS.NB *) subclass[range[VERTSECT[ZN]],fix[IMAGE[ZN]]] := True (* derived 2004 August 15 in ZN-FACTS.NB *) subclass[range[VERTSECT[ZN]],FULL] := True (* derived 2004 August 15 in ZN-FACTS.NB *) subclass[range[VERTSECT[ZN]],range[POWER]] := True (* derived 2007 November 10 in ALL-MAX.NB *) subclass[range[XS],fix[composite[DISJOINT,IMAGE[inverse[PS]]]]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[RANK,cart[x_,y_]] := and[subclass[OMEGA,y],subclass[REGULAR,x]] (* derived 2005 January 5 in IMRK-S.NB *) subclass[RANK,composite[S,IMAGE[RANK]]] := True (* added 2002 March 5 based on HF.NB *) subclass[RANK,inverse[ZN]] := True (* derived 2007 September 6 in SU-A-ON.NB *) subclass[rank[x_],OMEGA] := member[x,REGULAR] (* derived 2005 October 31 in RANK-SU.NB *) subclass[rank[x_],rank[y_]] := not[member[rank[y],rank[x]]] (* derived 2006 May 21 in RK-SC.NB *) subclass[rank[x_],succ[U[rank[x_]]]] := True (* derived 2007 February 17 in RELNS.NB *) subclass[RC[x_],cart[y_,z_]] := or[and[subclass[P[x],y],subclass[P[x],z]],not[member[x,V]]] (* added 1999 October 29 based on 1999 October 28 session RC-LOG.1 *) subclass[RC[x_],DISJOINT] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[RCF,cart[x_,y_]] := and[equal[V,x],subclass[range[RCF],y]] (* derived 2004 August 3 in WF-REC-1.NB *) subclass[rec[x_,y_],cart[V,V]] := True (* derived 2004 August 3 in WF-REC-1.NB *) subclass[rec[x_,y_],composite[x_,id[composite[IMG,id[cart[P[inverse[FIRST]],V]],inverse[SECOND],VERTSECT[y_]]],inverse[FIRST]]] := True (* derived 2004 August 3 in WF-REC-1.NB *) subclass[rec[x_,y_],composite[x_,inverse[FIRST]]] := True (* derived 2006 March 30 in REG-FIN.NB *) subclass[reg[x_],x_] := True (* derived 2008 May 4 in APORDREC.NB *) subclass[rec[funpart[x_],composite[inverse[E],id[OMEGA]]], composite[funpart[x_],history[rec[funpart[x_],composite[inverse[E],id[OMEGA]]], composite[inverse[E],id[OMEGA]]]]] := True (* derived 2006 April 4 in SUB-REG.NB *) subclass[reg[intersection[x_,y_]],x_] := True (* derived 2006 March 30 in REG-SU.NB *) subclass[reg[x_],REGULAR] := True (* derived 2008 March 4 in REG-SU.NB *) subclass[reg[x_],RUSSELL] := True (* derived 2008 July 13 in CHN-C-E.NB *) subclass[REGULAR,chains[complement[E]]] := True (* added 2002 March 4 based on ZN-1.NB *) subclass[REGULAR,domain[VERTSECT[ZN]]] := True (* derived 2007 December 10 in FUND.NB *) subclass[REGULAR,FUND] := True (* derived 2006 March 30 in ZN-SU.NB *) subclass[REGULAR,image[inverse[IMAGE[ZN]],REGULAR]] := True (* derived 2006 March 30 in ZN-SU.NB *) subclass[REGULAR,image[inverse[VERTSECT[ZN]],REGULAR]] := True (* derived 2008 November 20 in P-REG-SU.NB *) subclass[REGULAR,OMEGA] := False (* derived 2006 March 30 in ZN-SU.NB *) subclass[REGULAR,range[thinpart[ZN]]] := True (* Theorem REG-35 in REG2 proved 1998 March 1 *) subclass[REGULAR,RUSSELL] := True (* derived 2005 February 15 in RUS-A-DJ.NB *) subclass[REGULAR,union[fix[composite[DISJOINT,BIGCAP]],set[0]]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[RESTRICT,cart[x_,y_]] := and[equal[V,x],subclass[P[cart[V,V]],y]] (* added 2003 May 30 based on RESTRICT.NB *) subclass[RESTRICT,inverse[S]] := True (* derived 2004 December 17 in RFX.NB *) subclass[rfx[x_],x_] := True (* derived 2008 October 31 in RFX.NB *) subclass[x_,rfx[x_]] := REFLEXIVE[x] (* derived 2007 February 17 in RELNS.NB *) subclass[rfx[x_],cart[y_,z_]] := and[subclass[fix[x],y],subclass[fix[x],z]] (* derived 2005 January 16 in RFX-CO.NB *) subclass[rfx[x_],composite[rfx[x_],rfx[x_]]] := True (* derived 2005 January 16 in RFX-CO.NB *) subclass[RFX,fix[composite[inverse[S],COMPOSE,DUP]]] := True (* added 2002 February 9 based on RFX-FUNS.NB *) subclass[RFX,invar[composite[DUP,FIRST]]] := True (* added 2002 February 9 based on RFX-FUNS.NB *) subclass[RFX,invar[composite[DUP,SECOND]]] := True (* derived 2004 November 11 in SEL-RFX.NB *) subclass[RFX,SELECT] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[RIF,cart[x_,y_]] := and[subclass[cart[V,V],y],subclass[composite[inverse[SECOND],FIRST],x]] (* derived 2007 February 17 in RELNS.NB *) subclass[RIGHT[x_],cart[y_,z_]] := or[and[equal[V,y],equal[V,image[inverse[z],set[x]]]],not[member[x,V]]] (* added 2002 June 29 based on LEFT-SU.NB *) subclass[RIGHT[x_],inverse[FIRST]] := True subclass[RightPairV,cart[V,V]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[ROT,cart[x_,y_]] := and[subclass[cart[cart[V,V],V],x],subclass[cart[cart[V,V],V],y]] (* derived 2004 June 25 in X2500-19.NB *) subclass[ROT,composite[SWAP,cross[SECOND,inverse[FIRST]]]] := True (* derived 2007 February 17 in RELNS.NB *) subclass[rotate[x_],cart[y_,z_]] := and[subclass[composite[FIRST,inverse[x]],y],subclass[range[domain[x]],z]] (* derived 2007 January 3 in FUNPRZML.NB *) subclass[rotate[x_],cart[cart[V,V],V]] := True (* derived 2008 December 20 in SU-RO.NB *) subclass[rotate[composite[x_,y_]],composite[domain[y_],SECOND]] := True (* introduced 2006 January 5 in MAPINVAR.NB *) subclass[rotate[composite[inverse[E],MAP]],composite[S,IMG]] := True (* derived 2004 June 25 in X2500-19.NB *) subclass[rotate[x_],composite[SECOND,inverse[x_],FIRST]] := True (* derived 2007 January 13 in NAT-INEQ.NB *) subclass[rotate[NATADD],cart[cart[omega,omega],omega]] := True (* derived 2007 January 13 in NAT-INEQ.NB *) subclass[rotate[NATADD],cart[inverse[S],omega]] := True (* derived 2007 January 13 in NAT-INEQ.NB *) subclass[rotate[NATMUL],cart[cart[omega,omega],omega]] := True (* derived 2007 January 13 in NAT-INEQ.NB *) subclass[rotate[NATMUL],cart[inverse[DIV],omega]] := True (* added 2002 October 27 based on NATMUL.NB *) subclass[rotate[x_],rotate[y_]] := subclass[composite[x,id[cart[V,V]]],y] (* derived 2004 August 9 in RS-2.NB *) subclass[RS[composite[x_,id[y_]]],RS[x_]] := True (* derived 2004 December 12 in RESTRICT.NB *) subclass[RS[x_],FUNS] := FUNCTION[thinpart[x]] (* derived 2004 August 9 in RS-2.NB *) subclass[RS[x_],invar[composite[id[x_],inverse[FIRST],FIRST]]] := True (* derived 2008 May 7 in FUND-SU.NB *) subclass[RS[inverse[E]],image[INVERSE,WF]] := AxReg (* derived 2004 November 2 in SELECT.NB *) subclass[RS[inverse[E]],SELECT] := axch (* derived 2004 December 12 in RESTRICT.NB *) subclass[RS[x_],REGULAR] := subclass[thinpart[x],REGULAR] (* derived 2004 August 7 in RS-1.NB *) subclass[RS[x_],set[0]] := equal[0,domain[thinpart[x]]] (* derived 2004 September 30 in EQV-THNP.NB *) subclass[RS[trv[x_]],TRV] := True (* derived 2007 December 10 in FUND.NB *) subclass[RUSSELL,FUND] := AxReg (* derived 2007 April 26 in AXREG.NB *) subclass[RUSSELL,REGULAR] := AxReg subclass[S,cart[x_,y_]] := and[equal[V,x],equal[V,y]] (* added 2003 October 20 based on MONOPLUS.NB *) subclass[S,composite[inverse[ACLOSURE],S,ACLOSURE]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[S,composite[inverse[BIGCUP],inverse[POWER],S]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[S,composite[inverse[CLIQUES],S,CLIQUES]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[S,composite[inverse[CORE[x_]],S,CORE[x_]]] := True (* added 2001 May 11 based on MONO-2.NB *) subclass[S,composite[inverse[IMAGE[x_]],S,IMAGE[x_]]] := equal[V,domain[VERTSECT[x]]] (* added 2003 October 20 based on MONOPLUS.NB *) subclass[S,composite[inverse[SUBVAR],S,SUBVAR]] := True (* revised 2000 October 24 *) subclass[S,composite[inverse[TC],S,TC]] := True (* derived 2008 July 6 in UBD-MONO.NB *) subclass[S,composite[inverse[UBD],S,UBD]] := True (* derived 2007 June 25 in UCH-HULL.NB *) subclass[S,composite[inverse[UCHAINS],S,UCHAINS]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[S,composite[inverse[UCLOSURE],S,UCLOSURE]] := True (* derived 2004 April 6 in SMALLER.NB *) subclass[S,composite[Q,S]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[S,composite[S,HC]] := True (* added 2003 October 20 based on MONOPLUS.NB *) subclass[S,composite[S,IMAGE[id[x_]]]] := True (* derived 2008 August 13 in IVR-V.NB *) subclass[S,E] := False (* derived 2007 July 7 in LAMBHULL.NB *) subclass[S,Id] := False (* derived 2005 January 5 in RANK-S.NB *) subclass[S,inverse[ZN]] := True (* derived 2008 October 13 in SU-1-2.NB *) subclass[x_,SECOND] := and[subclass[x,cart[cart[V,V],V]],subclass[composite[SECOND,inverse[x]],Id]] subclass[SECOND,cart[x_,y_]] := and[subclass[cart[V,V],x],equal[V,y]] (* derived 2008 August 28 in CAP-DIF.NB *) subclass[SECOND,composite[S,CAP]] := True (* derived 2008 May 22 in X-Q.NB *) subclass[SELECT,fix[composite[Q,S,IMAGE[FIRST]]]] := True (* derived 2008 October 20 in BO-SU-CP.NB *) subclass[semigp[x_],cart[y_,z_]] := and[subclass[domain[semigp[x]],y],subclass[range[semigp[x]],z]] (* derived 2006 July 8 in SEMIGPS.NB *) subclass[SEMIGPS,ASSOCIATIVE] := True (* derived 2006 July 8 in SEMIGPS.NB *) subclass[SEMIGPS,BINOPS] := True (* Theorems SS-11 in SS3 and SS-SU in SS4 *) subclass[set[x_],y_] := or[not[member[x,V]],member[x,y]] (* derived 2004 March 4 in PAIRSET.NB *) subclass[set[x_,y_],image[z_,set[y_]]] := or[and[member[y,fix[z]],member[pair[y,x],z]], and[member[y,fix[z]],not[member[x,V]]],and[not[member[x,V]],not[member[y,V]]]] (* derived 2005 January 18 in SET-SU.NB *) subclass[set[x__,y___],set[x__,z___]] := subclass[set[y],set[x,z]] (* derived 2005 January 21 in SS-A.NB *) subclass[x_,set[U[x_]]] := or[equal[0,x],member[x,range[SINGLETON]]] (* derived 2004 November 12 in SETPFUNP.NB *) subclass[setpart[x_],x_] := True (* derived 2006 September 13 in UN-PAIR.NB *) subclass[x_,setpart[x_]] := member[x,V] subclass[SINGLETON,cart[x_,y_]] := and[equal[V,x],subclass[range[SINGLETON],y]] subclass[SINGLETON,E] := True (* added 2003 June 6 based on FUNCTION.NB *) subclass[SINGLETON,inverse[BIGCAP]] := True subclass[SINGLETON,inverse[BIGCUP]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[SMALLER,cart[x_,y_]] := and[equal[V,x],equal[V,union[y,set[0]]]] (* derived 2004 April 6 in SMALLER.NB *) subclass[SMALLER,composite[Q,S]] := True (* derived 2007 June 10 in SPINE.NB *) subclass[spine[x_,y_],y_] := True (* derived 2007 August 11 in SU-SPINE.NB *) subclass[x_,spine[y_,z_]] := and[subclass[x,z],subclass[cart[x,z],union[y,inverse[y]]]] (* derived 2007 August 11 in SU-SPINE.NB *) subclass[spine[x_,y_],fix[x_]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[SUBCOMMUTE,cart[x_,y_]] := and[equal[V,x],equal[V,y]] (* derived 2006 December 19 in SU-CP.NB *) subclass[SUBVAR,cart[x_,y_]] := and[equal[V,x],subclass[range[SUBVAR],y]] (* added 2002 January 28 based on SUBVAR.NB *) subclass[SUBVAR,composite[E,IMAGE[inverse[DUP]]]] := True (* derived 2007 July 10 in SBV-CLQ.NB *) subclass[SUBVAR,composite[S,CHAINS]] := True (* derived 2007 July 10 in SBV-CLQ.NB *) subclass[SUBVAR,composite[S,CLIQUES]] := True (* derived 2008 August 28 in SUBVAR.NB *) subclass[SUBVAR,composite[S,POWER,IMAGE[inverse[DUP]]]] := True (* derived 2007 May 7 in FINITE.NB *) subclass[subvar[fin[x_]],FINITE] := True (* derived 2004 January 19 in SBV-SU-I.NB *) subclass[subvar[intersection[x_,y_]],subvar[x_]] := True (* derived 2007 July 11 in FULL.NB *) subclass[subvar[inverse[E]],FULL] := False (* derived 2007 November 15 in ZORN-LEM.NB *) subclass[subvar[inverse[K]],subvar[inverse[PS]]] := True (* derved 2008 January 10 in MAXPRINC.NB *) subclass[subvar[inverse[PS]], union[fix[composite[E,complement[composite[inverse[S],MAXIMAL[S]]]]],set[0]]] := True (* added 2003 October 7 based on WF-IND.NB *) subclass[subvar[x_],set[0]] := WELLFOUNDED[composite[Id,x]] (* derived 2005 February 1 in DIV-WF.NB *) subclass[subvar[x_],subvar[composite[x_,x_]]] := True (* derived 2005 April 19 in XVR-TRV.NB *) subclass[subvar[x_],subvar[trv[x_]]] := True (* added 2002 October 27 based on SUBVAR.NB *) subclass[subvar[x_],subvar[union[x_,y_]]] := True (* derived 2005 January 30 in X3914.NB *) subclass[subvar[SUCC],DESCENDING] := True (* added 2002 April 26 based on FULLSUCC.NB *) subclass[x_,succ[x_]] := True subclass[SUCC,cart[x_,y_]] := and[equal[V,x],subclass[range[SUCC],y]] (* Theorem SUC-ES1 in SUC-REL *) subclass[SUCC,E] := True (* derived 2005 January 7 in K-SUCC.NB *) subclass[SUCC,K] := equal[0,fix[E]] (* derived 2005 June 27 in NAT-SUCC.NB *) subclass[succ[x_],nat[y_]] := member[x,nat[y]] (* added 2002 June 8 based on OM-SS-SU.NB *) subclass[succ[x_],omega] := member[x,omega] (* derived 2008 August 4 in SUC-ON-1.NB *) subclass[succ[x_],ord[y_]] := member[x,ord[y]] (* derived 2007 December 17 in DESC-REG.NB *) subclass[succ[x_],REGULAR] := subclass[x,REGULAR] (* Theorem SUC-ES1 in SUC-REL *) subclass[SUCC,S] := True (* derived 2005 January 3 in SUCC-UP.NB *) subclass[succ[setpart[x_]],y_] := and[member[setpart[x],y],subclass[setpart[x],y]] (* derived 2005 January 7 in K-SUCC.NB *) subclass[SUCC,union[Id,K]] := True (* derived 2005 January 7 in K-SUCC.NB *) subclass[SUCC,union[K,id[fix[E]]]] := True subclass[SWAP,cart[x_,y_]] := and[subclass[cart[V,V],x],subclass[cart[V,V],y]] (* added 2001 October 10 based on SYM-1.NB *) subclass[SYM,invar[SWAP]] := True (* derived 2007 June 24 in UCL-UO.NB *) subclass[SYM,Uclosure[UNOPS]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[SYMDIF,cart[x_,y_]] := and[equal[V,y],subclass[cart[V,V],x]] (* derived 2003 December 27 in T1.NB *) subclass[T1,binclosed[CAP]] := False (* derived 2003 December 27 in T1.NB *) subclass[T1,fix[UCLOSURE]] := False (* derived 2003 December 28 in PTCLOSED.NB *) subclass[T1,PointClosed] := False (* derived 2003 December 30 in T2.NB *) subclass[T1,T2] := False (* derived 2003 December 30 in T2.NB *) subclass[T2,binclosed[CAP]] := False (* derived 2003 December 30 in T2.NB *) subclass[T2,fix[UCLOSURE]] := False (* added 2003 June 23 based on T1.NB *) subclass[T2,T1] := True (* added 2001 March 15 based on H-1.NB *) subclass[x_,tc[x_]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[TC,cart[x_,y_]] := and[equal[V,x],subclass[FULL,y]] (* derived 2008 May 23 in H-TC.NB *) subclass[TC,composite[S,HC]] := True (* derived 2008 August 15 in HULL-I.NB *) subclass[tc[x_],hull[intersection[FULL,y_],x_]] := True (* derived 2005 February 3 in X4224.NB *) subclass[tc[intersection[FINITE,FULL]],FINITE] := True (* derived 2007 November 29 in REGULAR.NB *) subclass[tc[x_],REGULAR] := subclass[x,REGULAR] (* added 2000 January 8 based on SU-RS.NB *) subclass[TC,S] := True (* derived 2007 December 4 in H-FIN.NB *) subclass[tc[x_],tc[y_]] := subclass[x,tc[y]] (* derived 2004 May 14 in THINPART.NB *) subclass[thinpart[x_],x_] := True (* derived 2007 February 17 in RELNS.NB *) subclass[thinpart[x_],cart[y_,z_]] := and[subclass[domain[thinpart[x]],y],subclass[range[thinpart[x]],z]] (* derived 2004 November 21 in FUNP-DO.NB *) subclass[thinpart[x_],funpart[x_]] := FUNCTION[thinpart[x]] (* derived 2006 December 19 in SU-CP.NB *) subclass[TIMES,cart[x_,y_]] := and[subclass[omega,x],subclass[binhom[NATADD,NATADD],y]] (* derived 2005 July 17 in TIMES.NB *) subclass[times[x_],DIV] := True (* derived 2006 September 8 in NEUTRAL.NB *) subclass[times[x_],Id] := or[equal[x,set[0]],not[member[x,omega]]] (* derived 2005 July 17 in TIMES.NB *) subclass[times[x_],S] := not[equal[0,x]] (* derived 2005 October 8 in TO-WRAP.NB *) subclass[to[x_],x_] := True (* derived 2004 February 10 in TO.NB *) subclass[TO,ANTISYM] := True (* derived 2007 February 17 in RELNS.NB *) subclass[to[x_],cart[y_,z_]] := and[subclass[fix[to[x]],y],subclass[fix[to[x]],z]] (* derived 2008 February 14 in DICHOT.NB *) subclass[TO,fix[composite[inverse[HULL[SYM]],CART,DUP,CUP,DORA]]] := True (* derived 2008 February 14 in DICHOT.NB *) subclass[TO,fix[composite[inverse[HULL[SYM]],CART,DUP,IMAGE[inverse[DUP]]]]] := True (* derived 2004 December 14 in IDEMPROJ.NB *) subclass[TO,IDEM] := True (* derived 2008 May 29 in COREPROJ.NB *) subclass[TO,invar[composite[DUP,SECOND]]] := True (* derived 2004 February 10 in TO.NB *) subclass[TO,PO] := True (* derived 2004 February 10 in TO.NB *) subclass[TO,RFX] := True (* derived 2004 February 10 in TO.NB *) subclass[TO,TRV] := True (* revised 2003 May23 based on DEF-CLOS.NB *) subclass[TOPS,binclosed[CAP]] := True (* derived 2007 July 27 in TOPS.NB *) subclass[TOPS,binclosed[CUP]] := True (* derived 2007 July 27 in TOPS.NB *) subclass[TOPS,fix[ACLOSURE]] := False (* added 2003 May 18 based on TOPS.NB *) subclass[TOPS,fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := True (* derived 2007 July 27 in TOPS.NB *) subclass[TOPS,fix[IMAGE[inverse[S]]]] := False (* derived 2007 June 26 in UCHAINS.NB *) subclass[TOPS,fix[UCHAINS]] := True (* added 2001 October 23 based on TOPS.NB *) subclass[TOPS,fix[UCLOSURE]] := True (* derived 2007 July 27 in TOPS.NB *) subclass[TOPS,range[CLIQUES]] := False (* derived 2007 June 27 in TOPS.NB *) subclass[TOPS,range[POWER]] := False (* derived 2003 December 27 in T1.NB *) subclass[TOPS,T1] := False (* derived 2003 December 30 in T2.NB *) subclass[TOPS,T2] := False (* derived 2004 June 24 in XVR-SU.NB *) subclass[transvar[x_,y_],transvar[composite[w_,x_],composite[w_,y_]]] := True (* added 2003 March 29 based on TRV-EQ.NB *) subclass[x_,trv[x_]] := subclass[x,cart[V,V]] (* derived 2004 March 21 in TRV-WRAP.NB *) subclass[trv[x_],x_] := TRANSITIVE[composite[Id,x]] (* derived 2007 February 17 in RELNS.NB *) subclass[trv[x_],cart[y_,z_]] := and[subclass[domain[x],y],subclass[range[x],z]] (* derived 2006 April 29 in ITERMONO.NB *) subclass[trv[funpart[intersection[S,x_]]],S] := True (* derived 2004 March 29 based on HULL.NB *) subclass[trv[x_],hull[TRV,x_]] := True (* added 2003 July 1 based on TRANSTIV.NB *) subclass[trv[intersection[x_,y_]],trv[x_]] := True (* derived 2004 March 23 in TRV-K.NB *) subclass[trv[K],S] := True (* derived 2008 April 30 in ACYCLIC.NB *) subclass[trv[x_],SMALLER] := subclass[composite[Id,x],SMALLER] (* derived 2008 July 20 in TRV-SU.NB *) subclass[trv[x_],trv[union[x_,y_]]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[TWIST,cart[x_,y_]] := and[subclass[cart[cart[V,V],cart[V,V]],x], subclass[cart[cart[V,V],cart[V,V]],y]] (* derived 2007 February 17 in RELNS.NB *) subclass[twist[x_],cart[y_,z_]] := and[subclass[composite[FIRST,x,inverse[FIRST]],y], subclass[composite[SECOND,x,inverse[SECOND]],z]] (* added 2002 May 10 based on U-A.NB *) subclass[U[x_],A[x_]] := or[equal[0,x],member[x,range[SINGLETON]]] (* derived 2008 September 29 in BIJ.NB *) subclass[U[bij[x_,y_]],cart[x_,y_]] := True (* derived 2008 September 29 in BIJ.NB *) subclass[U[bij[x_,y_]],cart[V,V]] := True (* derived 2006 November 25 in U-BINHOM.NB *) subclass[U[binhom[x_,y_]],cart[fix[domain[x_]],fix[domain[y_]]]] := True (* derived 2006 November 25 in U-BINHOM.NB *) subclass[U[binhom[x_,y_]],cart[V,V]] := True (* added 2002 May 28 based on CARD-OM.NB *) subclass[U[card[x_]],card[x_]] := True (* derived 2008 August 15 in CORE-I.NB *) subclass[U[core[x_,y_]],H[y_]] := subclass[core[x,y],H[y]] (* derived 2005 December 2 in NAT-CORE.NB *) subclass[U[core[omega,x_]],core[omega,x_]] := True (* derived 2005 December 2 in ORD-CORE.NB *) subclass[U[core[OMEGA,x_]],core[OMEGA,x_]] := True (* derived 2007 May 17 in CORE-ON.NB *) subclass[U[core[x_,OMEGA]],OMEGA] := True (* derived 2005 October 2 in POLUBGLB.NB *) subclass[U[domain[GLB[po[x_]]]],fix[po[x_]]] := True (* derived 2005 September 27 in LUB-SET.NB *) subclass[U[domain[GLB[x_]]],range[x_]] := True (* Theorem DO-GT in GREATEST proved 2000 November 18 *) subclass[U[domain[GREATEST[x_]]],domain[x_]] := True (* derived 2006 May 16 in DO-ITER.NB *) subclass[U[domain[iterate[x_,y_]]],domain[iterate[x_,y_]]] := True (* derived 2006 May 16 in DO-ITER.NB *) subclass[U[domain[iterate[x_,y_]]],omega] := True (* Theorem DO-LT in LEAST proved 2000 December 5 *) subclass[U[domain[LEAST[x_]]],range[x_]] := True (* derived 2005 September 27 in LUB-SET.NB *) subclass[U[domain[LUB[x_]]],domain[x_]] := True (* derived 2005 October 2 in POLUBGLB.NB *) subclass[U[domain[LUB[po[x_]]]],fix[po[x_]]] := True (* derived 2006 May 29 in OL-DO.NB *) subclass[U[domain[ordlist[x_]]],domain[ordlist[x_]]] := True (* derived 2008 February 14 in DICHOT.NB *) subclass[U[fix[composite[inverse[HULL[SYM]],x_]]],cart[V,V]] := True (* derived 2006 September 19 in IMG-X.NB *) subclass[U[fix[IMAGE[cross[x_,y_]]]],cart[V,V]] := True (* derived 2004 August 19 in X2901-93.NB *) subclass[U[fix[IMAGE[x_]]],domain[VERTSECT[x_]]] := True (* derived 2004 August 19 in X2901-93.NB *) subclass[U[fix[IMAGE[x_]]],range[x_]] := True (* derived 2007 June 6 in HLTRVRFX.NB *) subclass[U[fix[IMAGE[trv[rfx[x_]]]]],fix[x_]] := True (* derived 2008 December 5 in GROUPS.NB *) subclass[U[GROUPS],cart[cart[V,V],V]] := True (* derived 2005 January 30 in X3949.NB *) subclass[U[x_],H[x_]] := subclass[U[x],x] (* added 2001 March 17 based on TC-I-FUL.NB *) subclass[U[H[x_]],x_] := True (* Theorem H-1 in H proved 2001 March 15 *) subclass[U[H[x_]],H[x_]] := True (* derived 2007 December 4 in HER-H.NB *) subclass[U[H[x_]],image[inverse[S],x_]] := True (* derived 2007 December 4 in HER-H.NB *) subclass[U[H[x_]],image[inverse[S],H[x_]]] := True (* derived 2004 December 25 in SELCO-LT.NB *) subclass[U[image[COMPOSE,x_]],cart[V,V]] := True (* added 2002 May 4 based on CORE.NB *) subclass[U[image[CORE[x_],P[y_]]],y_] := True (* derived 2007 May 25 in U-IM-HULL.NB *) subclass[U[image[HULL[EQV],x_]],cart[V,V]] := True (* derived 2007 May 26 in HULL-SC.NB *) subclass[U[image[HULL[x_],y_]],hull[x_,U[y_]]] := True (* derived 2007 May 25 in U-IM-HULL.NB *) subclass[U[image[HULL[invar[x_]],y_]],domain[VERTSECT[trv[x_]]]] := True (* derived 2007 May 25 in U-IM-HULL.NB *) subclass[U[image[HULL[RFX],x_]],cart[V,V]] := True (* derived 2007 May 25 in U-IM-HULL.NB *) subclass[U[image[HULL[SYM],x_]],cart[V,V]] := True (* derived 2007 September 22 in UCH-ACY.NB *) subclass[U[image[HULL[TRV],x_]],trv[U[x_]]] := True (* derived 2007 May 25 in U-IM-HULL.NB *) subclass[U[image[HULL[x_],y_]],U[x_]] := True (* derived 2007 May 25 in U-IM-HULL.NB *) subclass[U[image[HULL[Uclosure[x_]],y_]],U[x_]] := True (* derived 2007 May 25 in U-IM-HULL.NB *) subclass[U[image[HULL[Z],x_]],cart[omega,omega]] := True (* derived 2006 December 18 in Z-IND.NB *) subclass[U[image[INTADD,x_]],cart[V,V]] := True (* added 2002 December 16 based on REPLACE.NB *) subclass[U[image[inverse[IMAGE[x_]],y_]],domain[VERTSECT[x_]]] := True (* derived 2008 January 10 in FIN-U-CL.NB *) subclass[U[image[inverse[K],P[x_]]],x_] := True (* derived 2006 February 10 in FIN-MAP.NB *) subclass[U[image[MAP,cart[FINITE,FINITE]]],FINITE] := True (* added 2003 June 6 based on FUNCTION.NB *) subclass[U[image[MAP,x_]],FUNS] := True (* derived 2006 February 9 in FIN-SBV.NB *) subclass[U[image[SUBVAR,FINITE]],FINITE] := True (* derived 2004 January 22 in U-SBV-PC.NB *) subclass[U[image[SUBVAR,x_]],subvar[U[x_]]] := True (* derived 2008 November 7 in DO-UIMVS.NB *) subclass[U[image[VS,x_]],cart[V,V]] := True (* derived 2007 May 25 in U-IM-HULL.NB *) subclass[U[intersection[x_,chains[y_]]],fix[y_]] := True (* derived 2007 May 25 in U-IM-HULL.NB *) subclass[U[intersection[x_,cliques[y_]]],fix[y_]] := True (* derived 2005 February 3 in X4224.NB *) subclass[U[intersection[FINITE,FULL]],FINITE] := True (* derived 2007 December 4 in H-FIN.NB *) subclass[U[intersection[FINITE,FULL]],H[FINITE]] := True (* derived 2007 August 3 in FULL-IMS.NB *) subclass[U[intersection[FULL,chains[x_]]],chains[x_]] := True (* derived 2007 August 3 in FULL-IMS.NB *) subclass[U[intersection[FULL,cliques[x_]]],cliques[x_]] := True (* derived 2007 August 3 in FULL-IMS.NB *) subclass[U[intersection[FULL,image[inverse[S],x_]]],image[inverse[S],x_]] := True (* derived 2007 May 23 in SU-ON.NB *) subclass[U[intersection[FULL,x_]],image[inverse[S],intersection[FULL,x_]]] := True (* derived 2006 May 8 in TO-RS.NB *) subclass[U[intersection[x_,image[IMAGE[id[y_]],z_]]],y_] := True (* derived 2005 December 6 in ISB5HER1.NB *) subclass[U[intersection[OMEGA,x_]],x_] := or[member[intersection[OMEGA,x],OMEGA],subclass[OMEGA,x]] (* derived 2007 May 17 in CORE-ON.NB *) subclass[U[intersection[OMEGA,x_]],core[x_,OMEGA]] := True (* derived 2007 May 22 in SU-OM.NB *) subclass[U[intersection[omega,x_]],image[inverse[S],intersection[omega,x_]]] := True (* derived 2007 May 23 in SU-ON.NB *) subclass[U[intersection[OMEGA,x_]],image[inverse[S],intersection[OMEGA,x_]]] := True (* derived 2007 May 22 in SU-OM.NB *) subclass[U[intersection[omega,x_]],omega] := True (* added 2003 June 4 based on LIMITORD.NB *) subclass[U[intersection[OMEGA,x_]],OMEGA] := True (* added 2000 December 3 based on SUBVAR.NB *) subclass[U[intersection[x_,y_]],U[y_]] := True (* derived 2008 December 31 in CAT-MON.NB *) subclass[U[MONOIDS],cart[cart[V,V],V]] := True (* derived 2005 July 12 in O25REVIS.NB *) subclass[U[nat[x_]],nat[y_]] := not[member[succ[nat[y]],nat[x]]] (* derived 2005 April 26 in DICHOT.NB *) subclass[U[nat[x_]],omega] := True (* derived 2005 October 19 in ORD-WRAP.NB *) subclass[U[ord[x_]],ord[y_]] := not[member[ord[y],U[ord[x]]]] (* derived 2008 October 7 in QUASIGPS.NB *) subclass[U[QUASIGPS],cart[cart[V,V],V]] := True (* derived 2006 November 18 in CURMAP-3.NB *) subclass[U[range[U[image[CURRY,x_]]]],cart[V,V]] := True (* derived 2004 August 14 in X4052-57.NB *) subclass[U[rank[x_]],rank[x_]] := True (* Theorems REG2-SU1 and REG2-SU2 in REG2 proved 1999 June 12 *) subclass[U[x_],REGULAR] := subclass[x,REGULAR] (* derived 2004 September 21 in WF-X.NB *) subclass[U[subvar[cross[x_,y_]]],cart[range[x_],range[y_]]] := True (* derived 2004 September 21 in WF-X.NB *) subclass[U[subvar[cross[x_,y_]]],cart[V,V]] := True (* added 2000 December 3 based on SUBVAR.NB *) subclass[U[subvar[inverse[x_]]],domain[x_]] := True (* added 2000 October 12 based on TC-2.NB *) subclass[U[subvar[x_]],range[x_]] := True (* derived 2004 April 18 in TC-FIN.NB *) subclass[U[x_],tc[x_]] := True (* derived 2007 November 29 in REGULAR.NB *) subclass[U[tc[x_]],x_] := subclass[U[x],x] (* derived 2007 December 4 in HER-H.NB *) subclass[U[tc[x_]],image[inverse[S],tc[x_]]] := True (* derived 2007 December 4 in H-FIN.NB *) subclass[U[tc[x_]],tc[y_]] := subclass[U[x],tc[y]] (* derived 2004 August 21 in SUBCLASS.NB simplify flag added 2007 December 4 *) subclass[U[x_],U[y_]] := True /; simplify && subclass[x,y] (* derived 2008 January 22 in SU-IM-I.NB *) subclass[U[x_],union[y_,U[intersection[x_,complement[P[y_]]]]]] := True (* added 2000 November 21 based on NORMAL.NB *) subclass[x_,UB[y_]] := and[subclass[x,cart[V,V]],subclass[composite[x,E],y]] (* derived 2004 February 19 in REPLACE2.NB *) subclass[x_,ub[y_,z_]] := subclass[cart[z,x],y] (* derived 2007 February 17 in RELNS.NB *) subclass[UB[x_],cart[y_,z_]] := and[equal[V,z],subclass[domain[UB[x]],y]] (* derived 2004 December 22 in UCL-COMT.NB *) subclass[UB[x_],composite[BIGCUP,LB[LB[x_]]]] := True (* derived 2006 October 10 in REPLACE.NB *) subclass[UB[x_],composite[UB[x_],IMAGE[id[y_]]]] := True (* derived 2004 February 21 in LB-UB-SU.NB *) subclass[ub[x_,y_],image[x_,y_]] := not[equal[0,y]] (* derived 2008 July 4 in UB-SU-RA.NB *) subclass[ub[x_,y_],range[x_]] := or[equal[V,range[x]],not[equal[0,y]]] (* derived 2008 March 4 in UBLB-FIX.NB *) subclass[ub[x_,V],fix[x_]] := True (* derived 2004 February 21 in LB-UB-SU.NB *) subclass[ub[x_,V],range[x_]] := True (* derived 2008 August 27 in SU-CO-FU.NB *) subclass[UBD,composite[S,CLIQUES]] := True (* derived 2007 June 23 in UCHAINS.NB *) subclass[x_,Uchains[x_]] := True (* derived 2008 December 23 in SU-CP.NB *) subclass[UCHAINS,cart[x_,y_]] := and[equal[V,x],subclass[range[UCHAINS],y]] (* derived 2007 June 25 in UCH-HULL.NB *) subclass[UCHAINS,composite[inverse[S],HULL[fix[UCHAINS]]]] := True (* derived 2008 August 28 in UCH-UCL.NB *) subclass[UCHAINS,composite[inverse[S],UCLOSURE]] := True (* derived 2007 September 10 in UCH-ASS.NB *) subclass[Uchains[fix[image[inverse[CART],x_]]],fix[image[inverse[CART],Uchains[x_]]]] := True (* derived 2007 September 10 in UCH-BO.NB *) subclass[Uchains[intersection[x_,y_]],Uchains[x_]] := True (* derived 2007 December 17 in DESC-REG.NB *) subclass[Uchains[x_],REGULAR] := subclass[x,REGULAR] (* derived 2007 June 25 in UCH-HULL.NB *) subclass[UCHAINS,S] := True (* derived 2007 June 23 in UCHAINS.NB *) subclass[Uchains[x_],Uclosure[x_]] := True (* added 2001 September 22 based on UCL.NB *) subclass[x_,Uclosure[x_]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[UCLOSURE,cart[x_,y_]] := and[equal[V,x],subclass[fix[UCLOSURE],y]] (* derived 2003 December 30 in PTCLOSED.NB *) subclass[UCLOSURE,COARSER] := True (* added 2003 June 6 based on ACL-UCL.NB *) subclass[UCLOSURE,composite[inverse[S],POWER,BIGCUP]] := True (* derived 2008 August 28 in UCH-UCL.NB *) subclass[UCLOSURE,composite[S,UCHAINS]] := True (* derived 2004 January 23 in P-FINITE.NB *) subclass[Uclosure[x_],FINITE] := and[subclass[x,FINITE],subclass[P[x],FINITE]] (* derived 2007 June 26 in UCLOSURE.NB *) subclass[Uclosure[x_],fix[IMAGE[inverse[S]]]] := subclass[x,fix[IMAGE[inverse[S]]]] (* derived 2007 June 26 in UCLOSURE.NB *) subclass[Uclosure[x_],FULL] := subclass[x,FULL] (* derived 2008 August 23 in IMBCFUNS.NB *) subclass[Uclosure[x_],FUNS] := FUNCTION[U[x]] (* derived 2007 June 9 in CONST.NB *) subclass[Uclosure[intersection[x_,y_]],Uclosure[x_]] := True (* derived 2007 June 26 in UCLOSURE.NB *) subclass[Uclosure[x_],invar[y_]] := subclass[x,invar[y]] (* derived 2007 June 26 in UCLOSURE.NB *) subclass[Uclosure[x_],OMEGA] := subclass[x,OMEGA] (* derived 2006 March 21 in SU-REG.NB *) subclass[Uclosure[x_],REGULAR] := subclass[x,REGULAR] (* derived 2007 June 26 in UCLOSURE.NB *) subclass[Uclosure[x_],RFX] := subclass[x,RFX] (* added 2001 May 10 based on UCLOS-1.NB *) subclass[UCLOSURE,S] := True (* derived 2007 August 11 in UCH-UIMS.NB *) subclass[Uclosure[spine[S,x_]],Uchains[x_]] := True (* derived 2007 June 26 in UCLOSURE.NB *) subclass[Uclosure[x_],subvar[y_]] := subclass[x,subvar[y]] (* derived 2007 June 26 in UCLOSURE.NB *) subclass[Uclosure[x_],SYM] := subclass[x,SYM] (* derived 2007 June 26 in UCLOSURE.NB *) subclass[Uclosure[x_],top[y_]] := subclass[x,top[y]] (* derived 2007 June 26 in UCLOSURE.NB *) subclass[Uclosure[x_],transvar[y_,z_]] := subclass[x,transvar[y,z]] (* derived 2007 June 26 in UCLOSURE.NB *) subclass[Uclosure[x_],Uclosure[y_]] := subclass[x,Uclosure[y]] (* derived 2004 April 25 in IMS-UCL.NB *) subclass[Uclosure[x_],union[image[S,x_],set[0]]] := True (* added 2002 December 21 based on IVR-EQDF.NB *) subclass[Uclosure[Z],invar[EQUIDIFF]] := True subclass[x_,union[x_,y_]] := True subclass[union[x_,y_],z_] := and[subclass[x,z],subclass[y,z]] (* added 1998 September 11 *) subclass[x_,union[complement[y_],z_]] := subclass[intersection[x,y],z] (* added 2002 September 8 based on REPLACE.NB *) subclass[x_,union[y_,composite[Id,complement[z_]]]] := and[subclass[x,union[y,cart[V,V]]],subclass[intersection[x,z],y]] (* derived 2005 January 21 in SS-U.NB *) subclass[x_,union[y_,image[Di,x_]]] := or[not[member[x,range[SINGLETON]]],subclass[x,y]] (* derived 2008 June 19 in IM-IN-BA.NB *) subclass[x_,union[image[inverse[BIGCAP],y_],set[0]]] := subclass[image[BIGCAP,x],y] (* derived 2007 August 14 in UCH-SPIN.NB *) subclass[x_,union[image[S,set[U[spine[S,x_]]]],P[U[spine[S,x_]]]]] := True (* added 2002 January 30 based on ACL-TRV.NB *) subclass[x_,union[y_,image[V,z_]]] := or[not[equal[0,z]],subclass[x,y]] (* derived 2007 October 9 in SU-U-I.NB *) subclass[w_,union[x_,intersection[y_,z_]]] := and[subclass[w,union[x,y]],subclass[w,union[x,z]]] (* added 2003 June 6 based on RUSSELL.NB *) subclass[x_,union[RUSSELL,U[x_]]] := True (* derived 2006 June 27 in UOCPSDUP.NB *) subclass[UNOPS,fix[image[inverse[COMPOSE],UNOPS]]] := True (* derived 2006 June 9 in UNARY.NB *) subclass[UNOPS,FUNS] := True (* derived 2007 June 26 in HULL.NB *) subclass[UNOPS,PROJ] := False (* derived 2007 June 26 in HULL.NB *) subclass[UNOPS,range[LAMBHULL]] := False (* Axiom AX-V in AX-A *) subclass[x_,V] := True (* added 1998 September 17 *) subclass[V,0] := False (* added 1999 September 27 based on SP-V-CP.LOG *) subclass[V,cart[x_,y_]] := False (* derived 2006 September 16 in SU-ID.NB *) subclass[V,id[x_]] := False (* derived 2006 September 16 in SU-ID.NB *) subclass[V,Id] := False (* derived 2007 September 6 in SU-A-ON.NB *) subclass[V,OMEGA] := False (* derived 2007 April 26 in AXREG.NB *) subclass[V,REGULAR] := AxReg (* derived 2007 February 17 in RELNS.NB *) subclass[VERTSECT[w_],cart[x_,y_]] := and[subclass[domain[VERTSECT[w]],x],subclass[range[VERTSECT[w]],y]] (* derived 2007 June 4 in VS-SU.NB *) subclass[VERTSECT[COARSER],E] := True (* derived 2004 February 25 in HULLUBLB.NB *) subclass[VERTSECT[complement[composite[complement[x_],LB[x_]]]],S] := True (* derived 2007 June 4 in VS-SU.NB *) subclass[VERTSECT[x_],composite[inverse[S],POWER]] := subclass[thinpart[x],inverse[S]] (* derived 2007 June 4 in VS-SU.NB *) subclass[VERTSECT[inverse[COARSER]],E] := True (* added 2002 May 9 based on WORK1330.NB *) subclass[VERTSECT[x_],inverse[LB[x_]]] := True (* derived 2007 June 4 in VS-SU.NB *) subclass[VERTSECT[x_],inverse[S]] := subclass[thinpart[x],inverse[E]] (* derived 2007 June 4 in VS-SU.NB *) subclass[VERTSECT[inverse[ZN]],E] := True (* derived 2007 June 4 in VS-SU.NB *) subclass[VERTSECT[thinpart[x_]],E] := equal[V,fix[thinpart[x]]] (* derived 2007 June 4 in VS-SU.NB *) subclass[VERTSECT[thinpart[x_]],SINGLETON] := equal[Id,thinpart[x]] (* derived 2004 August 15 in ZN-FACTS.NB *) subclass[VERTSECT[ZN],composite[S,POWER]] := True (* added 2002 May 9 based on WORK1330.NB *) subclass[VERTSECT[ZN],composite[ZN,POWER]] := True (* derived 2004 August 15 in ZN-FACTS.NB *) subclass[VERTSECT[ZN],E] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[VS,cart[x_,y_]] := and[equal[V,x], subclass[intersection[FUNS,P[cart[V,complement[set[0]]]]],y]] (* derived 2004 September 18 in WF-WRAP.NB *) subclass[wf[x_],x_] := True (* derived 2004 September 18 in WF-WRAP.NB *) subclass[x_,wf[x_]] := WELLFOUNDED[x] (* added 2003 October 15 based on ACYCLIC.NB *) subclass[WF,ACYCLIC] := True (* derived 2007 February 17 in RELNS.NB *) subclass[wf[x_],cart[y_,z_]] := and[subclass[domain[wf[x]],y],subclass[range[wf[x]],z]] (* derived 2005 October 19 in ORD-WRAP.NB *) subclass[WF,FINITE] := False (* derived 2008 August 1 in WF-DJINV.NB *) subclass[WF,fix[composite[DISJOINT,INVERSE]]] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[WFPART,cart[x_,y_]] := and[equal[V,x],subclass[WF,y]] (* derived 2004 December 11 in RESTRICT.NB *) subclass[WFPART,composite[inverse[IMAGE[SWAP]],RESTRICT,IMAGE[SWAP]]] := True (* derived 2004 September 25 in LAMB-WF.NB *) subclass[WFPART,inverse[S]] := True (* derived 2005 October 16 in WO-WRAP.NB *) subclass[wo[x_],x_] := True (* derived 2004 March 14 in WO-SU.NB *) subclass[WO,ANTISYM] := True (* derived 2007 February 17 in RELNS.NB *) subclass[wo[x_],cart[y_,z_]] := and[subclass[fix[wo[x]],y],subclass[fix[wo[x]],z]] (* derived 2005 October 19 in ORD-WRAP.NB *) subclass[WO,FINITE] := False (* derived 2004 December 14 in IDEMPROJ.NB *) subclass[WO,IDEM] := True (* derived 2008 May 29 in COREPROJ.NB *) subclass[WO,invar[composite[DUP,SECOND]]] := True (* derived 2004 March 14 in WO-TRV.NB *) subclass[WO,PO] := True (* derived 2004 March 14 in WO-SU.NB *) subclass[WO,RFX] := True (* derived 2004 March 14 in WO-TRV.NB *) subclass[WO,TO] := True (* derived 2004 March 14 in WO-TRV.NB *) subclass[WO,TRV] := True (* derived 2004 November 26 in XS-CP.NB *) subclass[X[cart[x_,y_]],map[x_,y_]] := or[equal[0,x],not[equal[0,y]]] (* derived 2004 October 31 in U-X.NB *) subclass[X[x_],FUNS] := True (* derived 2004 November 26 in XS-CP.NB *) subclass[X[x_],map[domain[x_],range[x_]]] := True (* derived 2004 October 28 in X.NB *) subclass[X[x_],map[domain[x_],V]] := True (* derived 2007 November 13 in AC-IN-K.NB *) subclass[X[x_],UNOPS] := or[equal[0,X[x]],not[member[domain[x],V]],subclass[range[x],domain[x]]] (* derived 2004 November 2 in SELECT.NB *) subclass[X[x_],X[y_]] := or[and[equal[domain[x],domain[y]],subclass[composite[Id,x],y]],equal[0,X[x]]] (* derived 2006 December 19 in SU-CP.NB *) subclass[XS,cart[x_,y_]] := and[equal[V,x],subclass[range[XS],y]] (* derived 2006 January 30 in I-Z.NB *) subclass[Z,ANTISYM] := True (* added 2002 November 29 based on PLUS.NB *) subclass[Z,BIJ] := True (* added 2003 October 21 based on MONOPLUS.NB *) subclass[Z,cliques[complement[cross[S,complement[S]]]]] := True (* added 2002 November 17 based on HER-Z.NB *) subclass[Z,cliques[EQUIDIFF]] := True (* derived 2005 August 6 in CARD-NAT.NB *) subclass[Z,fix[IMAGE[cross[Id,CARD]]]] := True (* added 2002 November 19 based on FP-EQDF.NB *) subclass[Z,fix[IMAGE[EQUIDIFF]]] := True (* added 2003 August 12 based on RO-ZADD.NB *) subclass[Z,FUNS] := True (* added 2003 July 25 based on CPS-ZXZ.NB *) subclass[Z,image[COMPOSE,cart[Z,Z]]] := True (* derived 2006 August 17 in CTBL-U.NB *) subclass[Z,image[Q,OMEGA]] := True (* added 2002 December 19 based on SUC-Z.NB *) subclass[Z,invar[cross[SUCC,SUCC]]] := True (* derived 2008 July 27 in PRS-REG.NB *) subclass[Z,REGULAR] := True (* derived 2006 December 19 in SU-CP.NB *) subclass[ZN,cart[x_,y_]] := and[equal[V,x],equal[V,y]] (* added 2001 June 5 based on SUBCOM.NB *) subcommutant[0] := V (* added 2001 June 5 based on SUBCOM.NB *) subcommutant[cart[x_,V]] := P[complement[cart[V,x]]] (* added 2001 June 5 based on SUBCOM.NB *) subcommutant[composite[Id,x_]] := subcommutant[x] (* derived 2007 June 16 in SUBTWINE.NB *) subcommutant[Di] := P[complement[cart[V,V]]] (* derived 2004 June 24 in SP-E-CO.NB *) subcommutant[E] := P[complement[cart[V,V]]] (* derived 2004 June 17 in X1366.NB *) subcommutant[funpart[x_]] := intersection[invar[cross[funpart[x],funpart[x]]], P[complement[cart[complement[domain[funpart[x]]],domain[funpart[x]]]]]] (* added 2001 June 5 based on SUBCOM.NB *) subcommutant[Id] := V (* added 2001 June 5 based on SUBCOM.NB *) subcommutant[id[x_]] := P[complement[cart[complement[x],x]]] (* derived 2004 December 21 in SBCOMMUT.NB *) subcommutant[POWER] := invar[cross[POWER,POWER]] (* derived 2004 May 2 in REGULAR.NB *) subcommutant[REGULAR] := P[complement[cart[V,REGULAR]]] (* derived 2004 December 21 in SBCOMMUT.NB *) subcommutant[S] := P[complement[cart[V,V]]] (* derived 2004 December 21 in SBCOMMUT.NB *) subcommutant[SINGLETON] := invar[cross[SINGLETON,SINGLETON]] (* added 2001 June 5 based on SUBCOM.NB *) subcommutant[V] := P[complement[cart[V,V]]] subcommute[x_,y_] := subclass[composite[x,y],composite[y,x]] (* introduced 2008 May 17 *) subset[x_,y_] := and[member[x,V],subclass[x,y]] (* introduced 2005 December 21 in SUBTWINE.NB *) subtwine[x_,y_,z_] := subclass[composite[x,y],composite[z,x]] (* Theorem SBV-0 in SUBVAR proved 1999 February 14 *) subvar[0] := set[0] (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[ACLOSURE] := P[fix[ACLOSURE]] (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[ADJOIN[x_]] := P[image[S,set[x]]] (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[CARD] := P[fix[CARD]] subvar[cart[x_,y_]] := union[intersection[complement[P[complement[x]]],P[y]], set[0]] (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[COARSER] := V (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[COMMUTE] := V (* added 2000 December 5 based on DO-GT.NB *) subvar[complement[x_]] := complement[domain[GREATEST[x]]] (* Theorem SBV-IDCO in SUBVAR proved 1999 February 14 *) subvar[composite[Id,x_]] := subvar[x] (* Theorem SBV-RS in SUBVAR proved 1999 February 16 *) subvar[composite[id[x_],y_]] := intersection[P[x],subvar[y]] (* derived 2007 November 1 in MAX-ON.NB *) subvar[composite[inverse[E],id[OMEGA]]] := intersection[P[OMEGA],subvar[inverse[E]]] (* derived 2008 February 26 in IVR-INE.NB *) subvar[composite[inverse[E],IMAGE[id[x_]]]] := intersection[P[x],subvar[inverse[E]]] (* derived 2008 February 26 in IVR-INE.NB *) subvar[composite[inverse[E],IMAGE[id[x_]],y_]] := intersection[P[x],subvar[composite[inverse[E],y]]] (* added 2001 December 23 based on DORA-3.NB *) subvar[composite[inverse[FIRST],SECOND]] := intersection[image[inverse[DORA],S],P[cart[V,V]]] (* added 2001 December 23 based on DORA-3.NB *) subvar[composite[inverse[SECOND],FIRST]] := intersection[image[inverse[DORA],inverse[S]],P[cart[V,V]]] (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[CORE[x_]] := P[Uclosure[x]] (* added 2001 November 27 based on FUNPART2.NB *) subvar[cross[Id,Di]] := intersection[image[inverse[FUNPART],set[0]],P[cart[V,V]]] (* Theorem SBV-DI in SUBVAR proved 1999 February 16 *) subvar[Di] := complement[range[SINGLETON]] (* derived 2004 March 18 in RFX-TRV.NB *) subvar[DIV] := P[omega] (* related to Theorem SBV-E in SUBVAR proved 1999 February 13 *) subvar[E] := DESCENDING (* added 2003 January 9 based on SBV-EQDF.NB *) subvar[EQUIDIFF] := P[cart[omega,omega]] (* derived 2005 October 22 in SBV-RFX.NB *) subvar[eqv[x_]] := P[fix[eqv[x]]] (* added 2000 April 23 based on FINITE.NB *) subvar[FINITE] := V (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[FUNPART] := P[FUNS] (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[HC] := P[FULL] (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[HULL[x_]] := P[fix[HULL[x]]] (* Theorem SBV-IDX in SUBVAR proved 1999 February 14 *) subvar[id[x_]] := P[x] (* Theorem SBV-ID in SUBVAR proved 1999 February 13 *) subvar[Id] := V (* derived 2007 June 2 in COARSER.NB *) subvar[IMAGE[COARSER]] := P[fix[IMAGE[COARSER]]] (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[IMAGE[id[x_]]] := P[P[x]] (* derived 2007 June 6 in IDEMWRAP.NB *) subvar[IMAGE[idem[x_]]] := P[fix[IMAGE[idem[x]]]] (* derived 2007 June 2 in COARSER.NB *) subvar[IMAGE[inverse[COARSER]]] := P[fix[IMAGE[inverse[COARSER]]]] (* derived 2007 December 6 in IVR-HULL.NB *) subvar[IMAGE[inverse[HULL[x_]]]] := P[fix[IMAGE[inverse[HULL[x]]]]] (* derived 2007 June 2 in IMS.NB *) subvar[IMAGE[inverse[S]]] := P[fix[IMAGE[inverse[S]]]] (* derived 2007 December 6 in IVR-HULL.NB *) subvar[IMAGE[inverse[TC]]] := P[fix[IMAGE[inverse[TC]]]] (* derived 2007 May 29 in ZN.NB *) subvar[IMAGE[ZN]] := P[fix[IMAGE[ZN]]] (* derived 2007 June 2 in SUBVAR.NB *) subvar[INTDIV] := P[Z] (* derived 2005 October 16 in WO-WRAP.NB *) subvar[intersection[Di,wo[x_]]] := set[0] (* derived 2007 June 2 in SUBVAR.NB *) subvar[INTLEQ] := P[Z] (* Theorem SBV-BC in SUBVAR proved 1999 February 14 *) subvar[inverse[BIGCUP]] := invar[BIGCUP] (* derived 2007 January 27 in DIV-SBV.NB *) subvar[inverse[DIV]] := P[omega] (* Theorem SBV-SR2 in SUBVAR proved 1999 February 16 *) subvar[inverse[S]] := V (* derived 2007 June 2 in SUBVAR.NB *) subvar[OOPART] := P[BIJ] (* derived 2007 May 7 in SBV-PO.NB *) subvar[po[x_]] := P[fix[po[x]]] (* Theorem SBV-Q in SUBVAR2 proved 2000 April 27 *) subvar[Q] := V (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[RANK] := P[OMEGA] (* derived 2004 May 2 in REGULAR.NB *) subvar[REGULAR] := REGULAR (* derived 2007 June 2 in SUBVAR.NB *) subvar[RESTRICT] := P[P[cart[V,V]]] (* derived 2005 October 22 in SBV-RFX.NB *) subvar[rfx[x_]] := P[fix[x]] (* Theorem SBV-SR1 in SUBVAR proved 1999 February 16 *) subvar[S] := V (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[SUBCOMMUTE] := V (* Theorem SBV-SW in SUBVAR proved 1999 February 15 *) subvar[SWAP] := fix[IMAGE[SWAP]] (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[TC] := P[FULL] (* derived 2005 October 22 in SBV-RFX.NB *) subvar[to[x_]] := P[fix[to[x]]] (* added 2003 November 4 based on SBVIDEMP.NB *) subvar[UCLOSURE] := P[fix[UCLOSURE]] (* derived 2007 June 15 in TRANSVAR.NB *) subvar[union[cart[x_,y_],id[z_]]] := union[intersection[complement[P[complement[x]]],P[union[y,z]]],P[z]] (* added 2000 November 21 based on MAX-DO.NB *) subvar[union[x_,complement[cart[y_,V]]]] := union[complement[P[y]],subvar[x]] (* added 2001 May 31 based on SUBVAR.NB *) subvar[union[complement[x_],id[y_]]] := complement[image[inverse[GREATEST[x]],complement[y]]] (* added 2001 November 17 based on SUBVAR.NB *) subvar[union[x_,complement[image[V,set[y_]]]]] := union[complement[image[V,set[y]]],subvar[x]] (* added 2000 November 30 based on INVAR-U.NB *) subvar[union[Id,x_]] := V (* Theorem SBV-V in SUBVAR proved 1999 February 13 *) subvar[V] := V (* derived 2004 September 18 in WF-WRAP.NB *) subvar[wf[x_]] := set[0] (* added 2001 July 15 based on ZN-AGAIN.NB *) subvar[ZN] := V (* definition added 2002 October 17 *) subvariant[x_,y_] := subclass[y,image[x,y]] (* added 2001 August 23 based on OM.NB *) succ[0] := set[0] (* derived 2005 June 17 in DF.NB *) succ[nat[natsub[nat[x_],set[0]]]] := union[intersection[image[V,intersection[nat[x],set[set[0]]]],nat[x]],set[0]] (* derived 2005 February 16 in BC-OM.NB *) succ[U[nat[x_]]] := union[nat[x],set[0]] (* derived 2006 November 30 in EXP-INEQ.NB *) succ[U[natexp[succ[nat[x_]],nat[y_]]]] := natexp[succ[nat[x]],nat[y]] (* added 2002 July 28 based on ADDRULES.NB *) succ[union[x_,complement[image[V,y_]]]] := union[complement[image[V,y]],succ[x]] (* introduced 2006 October 10 in SYM.NB *) sym[x_] := intersection[x,inverse[x]] symdif[x_,y_] := union[dif[x,y],dif[y,x]] (* added 2000 September 19 *) SYMMETRIC[x_] := equal[inverse[x],x] (* derived 2004 April 18 in TC-FIN.NB *) tc[FINITE] := V (* added 2001 August 16 based on TC-REG.NB *) tc[FULL] := V (* derived 2007 December 10 in FUND.NB *) tc[FUND] := V (* added 2001 March 17 based on MUSTKEEP.NB *) tc[H[x_]] := H[x] (* derived 2006 March 30 in REG-RANK.NB *) tc[image[RANK,reg[x_]]] := rank[reg[x]] (* derived 2004 December 29 in I-FUL-REG.NB *) tc[image[SINGLETON,x_]] := union[image[SINGLETON,x],tc[x]] (* derived 2004 December 29 in I-FUL-REG.NB *) tc[intersection[FULL,REGULAR]] := REGULAR (* derived 2007 August 6 in RK-RA-OL.NB *) tc[intersection[omega,complement[nat[x_]]]] := omega (* Theorem TC-PC-1A in TC2 proved 2000 October 26 *) tc[P[x_]] := union[P[x],tc[x]] (* derived 2007 August 6 in RK-RA-OL.NB *) tc[PRIMES] := omega (* Theorem RK-1-TC in RANK1 proved 2001 August 11 *) tc[rank[x_]] := rank[x] (* added 2002 March 4 based on RUS.NB *) tc[RUSSELL] := V (* added 2001 March 15 based on H-1.NB *) tc[set[x_]] := union[intersection[image[V,set[x]],tc[x]],set[x]] (* derived 2005 January 3 in SUCC-UP.NB *) tc[succ[x_]] := union[set[x],tc[x]] (* Theorem TC-TC in TC2 proved 2000 October 23 *) tc[tc[x_]] := tc[x] (* Theorem TC-SC in TC2 proved 2000 October 23 *) tc[U[x_]] := U[tc[x]] (* Theorem TC-U in TC2 proved 2000 October 23 *) tc[union[x_,y_]] := union[tc[x],tc[y]] (* definition of thin *) thin[x_] := equal[V,domain[VERTSECT[x]]] (* added 2002 November 24 based on THIN.NB *) thin[cart[x_,y_]] := or[equal[0,x],member[y,V]] (* added 2002 November 24 based on THIN.NB *) thin[composite[x_,FIRST]] := thin[x] (* added 2002 November 24 based on THIN.NB *) thin[composite[inverse[FIRST],x_]] := equal[0,domain[x]] (* added 2002 November 24 based on THIN.NB *) thin[composite[inverse[SECOND],x_]] := equal[0,domain[x]] (* added 2002 November 24 based on THIN.NB *) thin[composite[x_,SECOND]] := thin[x] (* added 2002 November 24 based on THIN.NB *) thin[id[x_]] := True (* derived 2004 May 14 in THINPART.NB *) thinpart[0] := 0 (* derived 2004 May 14 in THINPART.NB *) thinpart[cart[x_,y_]] := cart[x,setpart[y]] (* derived 2004 May 14 based on SPECIAL.NB *) thinpart[complement[composite[complement[inverse[E]],x_]]] := composite[complement[composite[complement[inverse[E]],x]],id[domain[x]]] (* derived 2004 May 14 based on SPECIAL.NB *) thinpart[complement[composite[complement[inverse[S]],x_]]] := composite[complement[composite[complement[inverse[S]],x]],id[domain[x]]] (* derived 2004 May 14 in THINPART.NB *) thinpart[complement[S]] := 0 (* derived 2004 May 14 in THINPART.NB *) thinpart[complement[thinpart[x_]]] := 0 (* derived 2004 December 24 in THINPART.NB *) thinpart[composite[BIGCAP,inverse[LB[x_]]]] := composite[inverse[E],ACLOSURE,VERTSECT[x]] (* derived 2004 December 24 in THINPART.NB *) thinpart[composite[BIGCAP,inverse[UB[x_]]]] := composite[inverse[E],ACLOSURE,VERTSECT[inverse[x]]] (* derived 2004 December 24 in THINPART.NB *) thinpart[composite[BIGCUP,inverse[LB[x_]]]] := composite[inverse[E],UCLOSURE,VERTSECT[x]] (* derived 2004 December 24 in THINPART.NB *) thinpart[composite[BIGCUP,inverse[UB[x_]]]] := composite[inverse[E],UCLOSURE,VERTSECT[inverse[x]]] (* derived 2004 May 14 in THINPART.NB *) thinpart[composite[Id,x_]] := thinpart[x] (* derived 2004 May 14 in THINPART.NB *) thinpart[composite[x_,id[y_]]] := composite[thinpart[x],id[y]] (* derived 2004 May 14 based on SPECIAL.NB *) thinpart[composite[id[x_],inverse[FIRST]]] := composite[id[thinpart[x]],inverse[FIRST]] (* derived 2004 May 14 based on SPECIAL.NB *) thinpart[composite[id[x_],inverse[SECOND]]] := composite[id[inverse[thinpart[inverse[x]]]],inverse[SECOND]] (* derived 2004 December 24 in THINPART.NB *) thinpart[composite[inverse[E],x_]] := composite[inverse[E],thinpart[x]] (* derived 2004 August 4 in THIN-RA.NB *) thinpart[composite[x_,inverse[E]]] := composite[inverse[E],IMAGE[x]] (* derived 2004 December 24 in THINPART.NB *) thinpart[composite[inverse[S],x_]] := composite[inverse[S],thinpart[x]] (* derived 2007 April 26 in THIN-Q.NB *) thinpart[composite[Q,inverse[S]]] := cart[set[0],set[0]] (* derived 2004 May 14 based on SPECIAL.NB *) thinpart[composite[x_,SWAP]] := composite[thinpart[x],SWAP] (* derived 2004 May 14 based on SPECIAL.NB *) thinpart[cross[x_,y_]] := cross[thinpart[x],thinpart[y]] (* derived 2004 May 14 in THINPART.NB *) thinpart[Di] := 0 (* derived 2004 May 14 in THINPART.NB *) thinpart[DISJOINT] := 0 (* derived 2004 May 14 in THINPART.NB *) thinpart[funpart[x_]] := funpart[x] (* derived 2005 April 16 in VS-I-DI.NB *) thinpart[intersection[Di,x_]] := intersection[Di,thinpart[x]] (* derived 2004 May 14 in THINPART.NB *) thinpart[intersection[x_,thinpart[y_]]] := intersection[x,thinpart[y]] (* derived 2004 May 14 in THINPART.NB *) thinpart[inverse[BIGCUP]] := inverse[BIGCUP] (* derived 2004 May 14 in THINPART.NB *) thinpart[inverse[E]] := inverse[E] (* derived 2004 December 24 in UCL-LBUB.NB *) thinpart[inverse[LB[x_]]] := composite[inverse[S],VERTSECT[x]] (* derived 2004 May 14 in THINPART.NB *) thinpart[inverse[S]] := inverse[S] (* derived 2004 May 14 in THINPART.NB *) thinpart[inverse[SUCC]] := inverse[SUCC] (* derived 2007 April 26 in THIN-Q.NB *) thinpart[Q] := cart[set[0],set[0]] (* derived 2005 January 29 in RFXTRVTH.NB *) thinpart[rfx[trv[thinpart[x_]]]] := rfx[trv[thinpart[x]]] (* derived 2004 May 14 in THINPART.NB *) thinpart[setpart[x_]] := composite[Id,setpart[x]] (* derived 2004 May 14 in THINPART.NB *) thinpart[thinpart[x_]] := thinpart[x] (* derived 2007 September 3 in U-SS.NB *) thinpart[union[x_,cart[y_,V]]] := composite[thinpart[x],id[complement[y]]] (* derived 2004 May 14 in THINPART.NB *) thinpart[V] := 0 (* derived 2005 July 17 in TIMES.NB *) times[0] := cart[omega,set[0]] (* derived 2006 June 22 in PLUSTIME.NB *) times[complement[image[V,x_]]] := cart[omega,intersection[image[V,x],set[0]]] (* derived 2005 July 17 in TIMES.NB *) times[set[0]] := id[omega] (* derived 2005 July 17 in TIMES.NB *) times[succ[x_]] := composite[NATADD,id[times[x]],inverse[FIRST]] (* derived 2006 June 22 in PLUSTIME.NB *) times[union[x_,complement[image[V,y_]]]] := composite[id[intersection[image[V,y],image[V,set[x]]]],times[x]] (* derived 2005 October 8 in TO-WRAP.NB *) to[composite[Id,x_]] := to[x] (* derived 2005 October 8 in TO-WRAP.NB *) to[inverse[x_]] := inverse[to[x]] (* derived 2005 November 5 in TOP-MEMB.NB *) top[setpart[x_]] := top[x] (* derived 2004 February 11 in TOTORDER.NB *) TOTALORDER[0] := True (* derived 2004 February 10 in TOTORDER.NB *) TOTALORDER[cart[x_,x_]] := or[equal[0,x],member[x,range[SINGLETON]]] (* derived 2006 January 17 in PO-RS.NB *) TOTALORDER[composite[id[image[inverse[to[x_]],y_]],to[x_]]] := True (* derived 2005 October 19 in IN-RS.NB *) TOTALORDER[composite[id[x_],inverse[y_],id[z_]]] := TOTALORDER[composite[id[z],y,id[x]]] (* derived 2004 February 10 in TOTORDER.NB *) TOTALORDER[composite[id[omega],S,id[omega]]] := True (* derived 2004 February 10 in TOTORDER.NB *) TOTALORDER[composite[id[OMEGA],S,id[OMEGA]]] := True (* derived 2004 March 21 in PO-WRAP.NB *) TOTALORDER[composite[id[x_],S,id[x_]]] := subclass[cart[x,x],union[S,inverse[S]]] (* derived 2005 December 28 in IMIN-DUP.NB *) TOTALORDER[composite[id[succ[set[0]]],S]] := True (* derived 2005 October 11 in TO-RS.NB *) TOTALORDER[composite[id[x_],to[y_],id[x_]]] := True (* derived 2006 April 29 in PO-TO-XF.NB *) TOTALORDER[composite[inverse[funpart[x_]],to[y_],funpart[x_]]] := FUNCTION[composite[inverse[funpart[x]],id[fix[to[y]]]]] (* derived 2007 June 19 in OO-XFM.NB *) TOTALORDER[composite[inverse[oopart[x_]],to[y_],oopart[x_]]] := True (* derived 2007 May 9 in INTLEQ.NB *) TOTALORDER[composite[INVERSE,INTLEQ,INVERSE]] := True (* derived 2005 December 28 in IMIN-DUP.NB *) TOTALORDER[composite[inverse[S],id[succ[set[0]]]]] := True (* derived 2005 October 11 in TO-OO.NB *) TOTALORDER[composite[oopart[x_],to[y_],inverse[oopart[x_]]]] := True (* derived 2006 January 17 in PO-RS.NB *) TOTALORDER[composite[to[x_],id[image[to[x_],y_]]]] := True (* derived 2005 December 28 in FIN-TO.NB *) TOTALORDER[fin[to[x_]]] := True (* derived 2004 February 10 in TOTORDER.NB *) TOTALORDER[Id] := False (* derived 2004 February 10 in TOTORDER.NB *) TOTALORDER[id[x_]] := or[equal[0,x],member[x,range[SINGLETON]]] (* derived 2005 December 28 in FIN-TO.NB *) TOTALORDER[intersection[image[V,x_],to[y_]]] := True (* derived 2006 September 24 in INTLEQ.NB *) TOTALORDER[INTLEQ] := True (* derived 2005 October 8 in TO-WRAP.NB *) TOTALORDER[inverse[x_]] := TOTALORDER[composite[Id,x]] (* derived 2004 February 10 in TOTORDER.NB *) TOTALORDER[S] := False (* derived 2005 October 15 in TO-SETPT.NB *) TOTALORDER[setpart[x_]] := or[not[member[x,V]],TOTALORDER[x]] (* derived 2005 October 15 in TO-THIN.NB *) TOTALORDER[thinpart[to[x_]]] := True (* derived 2005 October 8 in TO-WRAP.NB *) TOTALORDER[to[x_]] := True (* derived 2004 February 10 in TOTORDER.NB *) TOTALORDER[union[cart[set[x_],set[y_]],id[set[x_,y_]]]] := True (* derived 2005 October 16 in WO-WRAP.NB *) TOTALORDER[wo[x_]] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[0] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[ACLOSURE] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[ADJOIN[x_]] := True (* added 2003 July 1 based on ASS-TRV.NB *) TRANSITIVE[BIGCAP] := False (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[CARD] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[cart[x_,y_]] := True (* added 2003 July 4 based on COARSER.NB *) TRANSITIVE[COARSER] := True (* derived 2008 November 17 in ASS-WRAP.NB *) TRANSITIVE[composite[assoc[x_],inverse[FIRST]]] := True (* derived 2008 November 17 in ASS-WRAP.NB *) TRANSITIVE[composite[assoc[x_],inverse[SECOND]]] := True (* derived 2007 October 18 in ERASE.NB *) TRANSITIVE[composite[CAP,id[cart[x_,image[CART,Id]]],inverse[FIRST]]] := True (* derived 2007 October 18 in ERASE.NB *) TRANSITIVE[composite[CAP,id[cart[x_,range[CART]]],inverse[FIRST]]] := True (* derived 2009 January 7 in CAT-DIV.NB *) TRANSITIVE[composite[cat[x_],inverse[FIRST]]] := True (* derived 2009 January 7 in CAT-DIV.NB *) TRANSITIVE[composite[cat[x_],inverse[SECOND]]] := True (* derived 2008 November 12 in CATOFUNS.NB *) TRANSITIVE[composite[CATOFUNS,inverse[FIRST]]] := True (* derived 2008 November 12 in CATOFUNS.NB *) TRANSITIVE[composite[CATOFUNS,inverse[SECOND]]] := True (* derived 2008 November 12 in CATOFUNS.NB *) TRANSITIVE[composite[CATORELN,inverse[FIRST]]] := True (* derived 2008 November 12 in CATOFUNS.NB *) TRANSITIVE[composite[CATORELN,inverse[SECOND]]] := True (* derived 2004 December 10 in DIV-TRV.NB *) TRANSITIVE[composite[COMPOSE,id[cart[BIJ,V]],inverse[SECOND]]] := True (* derived 2004 December 10 in DIV-TRV.NB *) TRANSITIVE[composite[COMPOSE,id[cart[FUNS,V]],inverse[SECOND]]] := True (* derived 2004 December 10 in DIV-TRV.NB *) TRANSITIVE[composite[COMPOSE,id[cart[V,BIJ]],inverse[FIRST]]] := True (* derived 2004 December 10 in DIV-TRV.NB *) TRANSITIVE[composite[COMPOSE,id[cart[V,FUNS]],inverse[FIRST]]] := True (* derived 2004 December 2 in PRECISE.NB *) TRANSITIVE[composite[COMPOSE,id[composite[inverse[IMAGE[SECOND]],IMAGE[FIRST]]],inverse[FIRST]]] := True (* derived 2004 December 2 in PRECISE.NB *) TRANSITIVE[composite[COMPOSE,id[composite[inverse[IMAGE[SECOND]],IMAGE[FIRST]]],inverse[SECOND]]] := True (* added 2003 July 1 based on ASS-TRV.NB *) TRANSITIVE[composite[COMPOSE,inverse[FIRST]]] := True (* added 2003 July 1 based on ASS-TRV.NB *) TRANSITIVE[composite[COMPOSE,inverse[SECOND]]] := True (* derived 2004 March 23 in ADJECT.NB *) TRANSITIVE[composite[CUP,id[cart[V,x_]],inverse[FIRST]]] := subclass[image[CUP,cart[x,x]],x] (* derived 2007 December 26 in TRV.NB *) TRANSITIVE[composite[Id,complement[composite[complement[inverse[x_]],x_]]]] := True (* derived 2007 December 26 in TRV.NB *) TRANSITIVE[composite[id[x_],complement[composite[complement[inverse[y_]],y_]]]] := True (* derived 2007 December 26 in TRV.NB *) TRANSITIVE[composite[Id,complement[composite[complement[x_],inverse[x_]]]]] := True (* derived 2007 December 26 in TRV.NB *) TRANSITIVE[composite[Id,complement[composite[x_,complement[inverse[x_]]]]]] := True (* derived 2007 December 26 in TRV.NB *) TRANSITIVE[composite[Id,complement[composite[inverse[x_],complement[x_]]]]] := True (* derived 2007 December 23 in TRV.NB *) TRANSITIVE[composite[id[FULL],E]] := True (* derived 2004 March 29 based on HULL.NB *) TRANSITIVE[composite[Id,hull[TRV,x_]]] := True (* derived 2004 August 7 in RS-1.NB *) TRANSITIVE[composite[id[x_],inverse[FIRST],FIRST]] := True (* derived 2005 October 19 in IN-RS.NB *) TRANSITIVE[composite[id[x_],inverse[y_],id[z_]]] := TRANSITIVE[composite[id[z],y,id[x]]] (* derived 2007 November 27 in TRVIDX-E.NB *) TRANSITIVE[composite[id[x_],inverse[TC],E]] := True (* derived 2004 August 28 in TRV-E-OM.NB *) TRANSITIVE[composite[id[omega],E]] := True (* derived 2006 March 12 in OLIST-OO.NB *) TRANSITIVE[composite[id[OMEGA],E]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[id[x_],S]] := True (* derived 2004 January 11 in PO-RS-S.NB *) TRANSITIVE[composite[id[x_],S,id[y_]]] := True (* derived 2004 September 30 in EQV-THNP.NB *) TRANSITIVE[composite[id[x_],trv[y_]]] := True (* derived 2004 December 16 in RFX-CORE.NB *) TRANSITIVE[composite[id[x_],trv[y_],id[z_]]] := True (* derived 2004 June 24 in SBCOMTNT.NB *) TRANSITIVE[composite[Id,U[subcommutant[x_]]]] := True (* derived 2007 August 2 in HULL-SG.NB *) TRANSITIVE[composite[inverse[E],HULL[x_],SINGLETON]] := True (* derived 2007 December 23 in TRV.NB *) TRANSITIVE[composite[inverse[E],id[FULL]]] := True (* derived 2004 August 28 in TRV-E-OM.NB *) TRANSITIVE[composite[inverse[E],id[omega]]] := True (* derived 2008 January 17 in TRV-RS.NB *) TRANSITIVE[composite[inverse[E],id[OMEGA]]] := True (* derived 2004 August 28 in TRV-TC.NB *) TRANSITIVE[composite[inverse[E],TC]] := True (* derived 2007 November 29 in FP-TRV-E.NB *) TRANSITIVE[composite[inverse[E],TC,id[x_]]] := True (* derived 2004 August 27 in TRV-COND.NB *) TRANSITIVE[composite[inverse[funpart[x_]],funpart[x_]]] := True (* derived 2004 December 17 in RFXTRV-C.NB *) TRANSITIVE[composite[inverse[funpart[x_]],inverse[S],funpart[x_]]] := True (* derived 2007 December 26 in TRV.NB *) TRANSITIVE[composite[inverse[funpart[x_]],S,funpart[x_]]] := True (* derived 2004 December 27 in FUN-TRV.NB *) TRANSITIVE[composite[inverse[funpart[x_]],trv[y_],funpart[x_]]] := True (* derived 2004 October 14 in REFINE.NB *) TRANSITIVE[composite[inverse[IMAGE[inverse[S]]],COARSER]] := True (* derived 2004 October 14 in REFINE.NB *) TRANSITIVE[composite[inverse[IMAGE[inverse[S]]],S]] := True (* derived 2007 June 19 in OO-XFM.NB *) TRANSITIVE[composite[inverse[oopart[x_]],trv[y_],oopart[x_]]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[inverse[S],ACLOSURE]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[inverse[S],CORE[x_]]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[inverse[S],HC]] := True (* derived 2007 June 25 in HULL-TRV.NB *) TRANSITIVE[composite[inverse[S],HULL[x_]]] := True (* derived 2007 December 23 in TRV.NB *) TRANSITIVE[composite[inverse[S],id[fix[IMAGE[inverse[S]]]]]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[inverse[S],IMAGE[id[x_]]]] := True (* derived 2004 October 14 in REFINE.NB *) TRANSITIVE[composite[inverse[S],IMAGE[inverse[S]]]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[inverse[S],TC]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[inverse[S],UCLOSURE]] := True (* derived 2005 February 4 in X3943.NB *) TRANSITIVE[composite[inverse[TC],E]] := True (* derived 2007 December 26 in TRV.NB *) TRANSITIVE[composite[inverse[VERTSECT[x_]],inverse[S],VERTSECT[x_]]] := True (* derived 2007 December 26 in TRV.NB *) TRANSITIVE[composite[inverse[VERTSECT[x_]],S,VERTSECT[x_]]] := True (* derived 2008 October 23 in PREFIX.NB *) TRANSITIVE[composite[JOIN,inverse[FIRST]]] := True (* derived 2008 October 23 in PREFIX.NB *) TRANSITIVE[composite[JOIN,inverse[FIRST],JOIN,inverse[SECOND]]] := True (* derived 2008 October 23 in PREFIX.NB *) TRANSITIVE[composite[JOIN,inverse[SECOND]]] := True (* derived 2005 October 8 in OO-TRFM.NB *) TRANSITIVE[composite[oopart[x_],trv[y_],inverse[oopart[x_]]]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[POWER,BIGCUP]] := True (* derived 2008 January 17 in TRV-RS.NB *) TRANSITIVE[composite[PS,id[x_]]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[Q,inverse[S]]] := True (* derived 2004 April 4 in IRR-TRV.NB *) TRANSITIVE[composite[Q,S]] := True (* derived 2004 August 10 in RS-3.NB *) TRANSITIVE[composite[RESTRICT,id[P[cart[V,V]]]]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[S,ACLOSURE]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[S,CORE[x_]]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[S,HC]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[S,HULL[x_]]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[S,id[x_]]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[S,IMAGE[id[x_]]]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[S,RANK]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[S,TC]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[composite[S,UCLOSURE]] := True (* derived 2008 October 19 in SEMIGP.NB *) TRANSITIVE[composite[semigp[x_],inverse[FIRST]]] := True (* derived 2008 October 22 in ASS-TRV.NB *) TRANSITIVE[composite[semigp[x_],inverse[FIRST],semigp[x_],inverse[SECOND]]] := True (* derived 2008 October 19 in SEMIGP.NB *) TRANSITIVE[composite[semigp[x_],inverse[SECOND]]] := True (* derived 2004 September 30 in EQV-THNP.NB *) TRANSITIVE[composite[trv[x_],id[y_]]] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[CORE[x_]] := True (* derived 2004 December 3 in TRVASSOC.NB *) TRANSITIVE[cross[trv[x_],trv[y_]]] := True (* added 2003 July 1 based on ASS-TRV.NB *) TRANSITIVE[Di] := False (* added 2003 July 1 based on ASS-TRV.NB *) TRANSITIVE[DISJOINT] := False (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[DIV] := True (* derived 2008 November 26 in SEMIGP.NB *) TRANSITIVE[domain[binop[x_]]] := True (* derived 2008 November 26 in QUASIGP.NB *) TRANSITIVE[domain[quasigp[x_]]] := True (* derived 2008 November 26 in SEMIGP.NB *) TRANSITIVE[domain[semigp[x_]]] := True (* derived 2006 January 3 in E.NB *) TRANSITIVE[E] := False (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[EQUIDIFF] := True (* derived 2004 August 28 in TRV-TC.NB *) TRANSITIVE[EQUIV] := True (* derived 2004 May 11 in EQV-GEN.NB *) TRANSITIVE[eqv[x_]] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[FUNPART] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[HC] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[HULL[x_]] := True (* derived 2004 March 29 based on HULL.NB *) TRANSITIVE[hull[TRV,x_]] := and[member[x,V],subclass[x,cart[V,V]]] (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[Id] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[id[x_]] := True (* derived 2007 June 6 in IDEMWRAP.NB *) TRANSITIVE[idem[x_]] := True (* derived 2004 July 26 in DORAFUNS.NB *) TRANSITIVE[image[DORA,FUNS]] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[IMAGE[id[x_]]] := True (* derived 2007 June 6 in IDEMWRAP.NB *) TRANSITIVE[IMAGE[idem[x_]]] := True (* derived 2007 May 29 in IVR-HULL.NB *) TRANSITIVE[IMAGE[IMAGE[id[x_]]]] := True (* derived 2004 August 28 in TRV-CO.NB *) TRANSITIVE[IMAGE[inverse[S]]] := True (* derived 2006 October 21 in INTDIV.NB *) TRANSITIVE[INTDIV] := True (* derived 2004 April 4 in IRR-TRV.NB *) TRANSITIVE[intersection[complement[composite[Q,inverse[S]]],composite[Q,S]]] := True (* added 2003 July 4 based on TRANSTIV.NB *) TRANSITIVE[intersection[Di,x_]] := and[subclass[intersection[x,inverse[x]],Id],TRANSITIVE[composite[Id,x]]] (* derived 2004 March 21 in TRV-WRAP.NB *) TRANSITIVE[intersection[trv[x_],trv[y_]]] := True (* derived 2006 September 24 in INTLEQ.NB *) TRANSITIVE[INTLEQ] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[inverse[x_]] := TRANSITIVE[composite[Id,x]] (* derived 2004 August 28 in TRV-TC.NB *) TRANSITIVE[OOPART] := True (* derived 2006 January 26 in Z-TRV.NB *) TRANSITIVE[plus[x_]] := or[equal[0,x],not[member[x,omega]]] (* derived 2005 October 1 in PO-WRAP.NB *) TRANSITIVE[po[x_]] := True (* added 2003 July 1 based on ASS-TRV.NB *) TRANSITIVE[POWER] := False (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[PS] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[Q] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[RANK] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[RESTRICT] := True (* derived 2004 December 17 in RFXTRV-C.NB *) TRANSITIVE[rfx[thinpart[trv[x_]]]] := True (* derived 2004 December 16 in RFX-CORE.NB *) TRANSITIVE[rfx[trv[x_]]] := True (* added 2003 July 1 based on ASS-TRV.NB *) TRANSITIVE[ROT] := False (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[S] := True (* derived 2005 August 1 in SS-RULES.NB *) TRANSITIVE[set[x_]] := or[member[first[x],V],not[member[x,V]]] (* derived 2006 October 20 in SETPART.NB *) TRANSITIVE[setpart[x_]] := or[not[member[x,V]],TRANSITIVE[x]] (* derived 2004 April 6 in SMALLER.NB *) TRANSITIVE[SMALLER] := True (* added 2003 July 1 based on ASS-TRV.NB *) TRANSITIVE[SWAP] := False (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[TC] := True (* derived 2004 June 6 in EQV-TRV.NB *) TRANSITIVE[thinpart[eqv[x_]]] := True (* derived 2005 October 1 in PO-THIN.NB *) TRANSITIVE[thinpart[po[x_]]] := True (* derived 2004 December 17 in RFXTRV-C.NB *) TRANSITIVE[thinpart[rfx[trv[x_]]]] := True (* derived 2005 October 15 in TO-THIN.NB *) TRANSITIVE[thinpart[to[x_]]] := True (* derived 2004 June 5 in THPT-TRV.NB *) TRANSITIVE[thinpart[trv[x_]]] := True (* derived 2005 October 8 in TO-WRAP.NB *) TRANSITIVE[to[x_]] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[trv[x_]] := True (* added 2003 July 1 based on ASS-TRV.NB *) TRANSITIVE[TWIST] := False (* derived 2006 November 25 in U-BINHOM.NB *) TRANSITIVE[U[binhom[x_,x_]]] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[UCLOSURE] := True (* derived 2008 September 10 in TRVUIDCP.NB *) TRANSITIVE[union[cart[x_,y_],id[z_]]] := True (* derived 2007 December 29 in TRV-U-CP.NB *) TRANSITIVE[union[cart[image[inverse[trv[x_]],y_],image[trv[x_],z_]],trv[x_]]] := True (* derived 2004 June 6 in EQV-TRV.NB *) TRANSITIVE[union[eqv[x_],id[y_]]] := True (* derived 2007 December 23 in TRV.NB *) TRANSITIVE[union[Id,composite[inverse[E],TC]]] := True (* derived 2007 December 23 in TRV.NB *) TRANSITIVE[union[Id,composite[inverse[TC],E]]] := True (* derived 2004 June 6 in EQV-TRV.NB *) TRANSITIVE[union[Id,eqv[x_]]] := True (* derived 2007 December 23 in HULL-IVR.NB *) TRANSITIVE[union[Id,thinpart[trv[x_]]]] := True (* derived 2007 December 23 in HULL-IVR.NB *) TRANSITIVE[union[id[x_],thinpart[trv[y_]]]] := True (* derived 2004 March 23 in TRV-K.NB *) TRANSITIVE[union[Id,trv[x_]]] := True (* derived 2004 June 6 in EQV-TRV.NB *) TRANSITIVE[union[id[x_],trv[y_]]] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[V] := False (* derived 2006 May 8 in WO-WRAP.NB *) TRANSITIVE[wo[x_]] := True (* derived 2004 December 11 in RESTRICT.NB *) subclass[WFPART,composite[inverse[IMAGE[SWAP]],RESTRICT,IMAGE[SWAP]]] := True (* added 2003 July 1 based on TRANSTIV.NB *) TRANSITIVE[ZN] := True (* derived 2004 June 16 in TRANSVAR.NB *) transvar[0,x_] := V (* derived 2004 June 16 in TRANSVAR.NB *) transvar[x_,0] := P[complement[domain[x]]] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[complement[S],complement[E]] := FULL (* derived 2007 June 16 in TRANSVAR.NB *) transvar[composite[E,x_],composite[E,y_]] := transvar[x,y] (* derived 2007 June 16 in TRANSVAR.NB *) transvar[composite[E,x_],E] := invar[x] (* derived 2007 June 16 in SUBTWINE.NB *) transvar[composite[x_,FIRST],FIRST] := image[inverse[IMAGE[FIRST]],invar[x]] (* derived 2006 June 15 in XVR.NB *) transvar[composite[FIRST,id[x_]],inverse[DUP]] := invar[composite[DUP,FIRST,id[x]]] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[composite[Id,x_],y_] := transvar[x,y] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[x_,composite[Id,y_]] := transvar[x,y] (* derived 2007 June 15 in TRANSVAR.NB *) transvar[x_,composite[id[y_],z_]] := intersection[P[complement[image[inverse[x],complement[y]]]],transvar[x,z]] (* derived 2007 December 20 in TRANSVAR.NB *) transvar[x_,composite[inverse[BIGCUP],y_]] := transvar[composite[BIGCUP,x],y] (* derived 2007 June 16 in TRANSVAR.NB *) transvar[composite[x_,inverse[E]],composite[y_,inverse[E]]] := image[inverse[BIGCUP],transvar[x,y]] (* derived 2007 June 16 in TRANSVAR.NB *) transvar[composite[x_,inverse[E]],inverse[E]] := image[inverse[BIGCUP],invar[x]] (* derived 2007 December 20 in TRANSVAR.NB *) transvar[x_,composite[inverse[POWER],y_]] := transvar[composite[POWER,x],y] (* derived 2007 June 16 in TRANSVAR.NB *) transvar[composite[inverse[S],x_],composite[inverse[S],y_]] := transvar[x,composite[inverse[S],y]] (* derived 2007 December 20 in TRANSVAR.NB *) transvar[x_,composite[inverse[SINGLETON],y_]] := transvar[composite[SINGLETON,x],y] (* derived 2007 December 20 in TRANSVAR.NB *) transvar[composite[S,x_],composite[S,y_]] := transvar[x,composite[S,y]] (* derived 2006 June 15 in XVR.NB *) transvar[composite[SECOND,id[x_]],inverse[DUP]] := invar[composite[DUP,SECOND,id[x]]] (* derived 2007 June 16 in SUBTWINE.NB *) transvar[composite[x_,SECOND],SECOND] := image[inverse[IMAGE[SECOND]],invar[x]] (* derived 2006 October 18 in RS-IN.NB *) transvar[composite[x_,SWAP],composite[y_,SWAP]] := image[inverse[IMAGE[SWAP]],transvar[x,y]] (* derived 2006 October 18 in RS-IN.NB *) transvar[composite[SWAP,x_],composite[SWAP,y_]] := transvar[composite[id[cart[V,V]],x],y] (* derived 2006 April 16 in XVR-IMIN.NB *) transvar[composite[x_,thinpart[z_]],composite[y_,thinpart[z_]]] := image[inverse[IMAGE[thinpart[z]]],transvar[x,y]] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[cross[Id,x_],cross[inverse[x_],Id]] := subcommutant[x] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[cross[x_,Id],cross[Id,inverse[x_]]] := image[inverse[IMAGE[SWAP]],subcommutant[x]] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[cross[Id,inverse[x_]],cross[x_,Id]] := subcommutant[inverse[x]] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[cross[inverse[x_],Id],cross[Id,x_]] := image[inverse[IMAGE[SWAP]],subcommutant[inverse[x]]] (* derived 2007 June 16 in TRANSVAR.NB *) transvar[E,composite[E,x_]] := subvar[x] (* derived 2006 June 15 in XVR.NB *) transvar[FIRST,inverse[DUP]] := invar[composite[DUP,FIRST]] (* derived 2005 July 30 in XVR-1-2.NB *) transvar[FIRST,SECOND] := image[inverse[DORA],S] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[Id,x_] := subvar[x] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[x_,Id] := invar[x] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[id[x_],y_] := subvar[union[y,id[complement[x]]]] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[x_,id[y_]] := intersection[invar[x],P[complement[image[inverse[x],complement[y]]]]] (* derived 2007 June 16 in TRANSVAR.NB *) transvar[inverse[E],composite[x_,inverse[E]]] := image[inverse[BIGCUP],subvar[x]] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[inverse[S],complement[S]] := complement[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] (* derived 2007 November 4 in FP-IM-PS.NB *) transvar[inverse[S],inverse[PS]] := subvar[inverse[PS]] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[S,complement[composite[x_,S]]] := complement[domain[GREATEST[composite[x,S]]]] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[S,complement[inverse[S]]] := complement[fix[composite[E,BIGCAP]]] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[S,E] := DESCENDING (* derived 2005 April 19 in XVR-TRV.NB *) transvar[S,inverse[E]] := subvar[inverse[E]] (* derived 2007 September 10 in UCH-BO.NB *) transvar[SECOND,composite[inverse[DUP],FIRST]] := image[inverse[DORA],composite[inverse[S],IMAGE[inverse[DUP]]]] (* derived 2005 July 30 in XVR-1-2.NB *) transvar[SECOND,FIRST] := image[inverse[DORA],inverse[S]] (* derived 2006 June 15 in XVR.NB *) transvar[SECOND,inverse[DUP]] := invar[composite[DUP,SECOND]] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[union[x_,y_],z_] := intersection[transvar[x,z],transvar[y,z]] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[x_,union[y_,complement[cart[V,V]]]] := transvar[x,y] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[x_,V] := V (* derived 2004 June 16 in TRANSVAR.NB *) transvariant[x_,y_,z_] := subclass[image[x,z],image[y,z]] (* added 2002 March 27 based on TRV.NB *) trv[0] := 0 (* added 2002 March 27 based on TRV.NB *) trv[ACLOSURE] := ACLOSURE (* added 2003 April 4 based on TRV.NB *) trv[ADJOIN[x_]] := ADJOIN[x] (* added 2002 March 27 based on TRV.NB *) trv[CARD] := CARD (* added 2002 March 24 based on TRV-1.NB *) trv[cart[x_,y_]] := cart[x,y] (* added 2002 March 28 based on COMMUTE.NB *) trv[COMMUTE] := cart[V,V] (* derived 2005 April 19 in XVR-TRV.NB *) trv[complement[E]] := cart[V,V] (* added 2002 March 24 based on TRV-1.NB *) trv[composite[Id,x_]] := trv[x] (* derived 2007 November 27 in TRVIDX-E.NB *) trv[composite[id[nat[x_]],E]] := composite[id[nat[x]],E] (* derived 2004 August 28 in TRV-E-OM.NB *) trv[composite[id[omega],E]] := composite[id[omega],E] (* added 2002 December 31 based on TRV-SUCC.NB *) trv[composite[id[omega],SUCC]] := composite[id[omega],E] (* derived 2007 November 27 in TRVIDX-E.NB *) trv[composite[id[ord[x_]],E]] := composite[id[ord[x]],E] (* derived 2007 November 27 in TRVIDX-E.NB *) trv[composite[id[REGULAR],E]] := composite[id[REGULAR],inverse[TC],E] (* added 2002 March 28 based on TRV.NB *) trv[composite[inverse[E],SUCC]] := union[Id,composite[inverse[E],TC]] (* derived 2004 August 28 in TRV-TC.NB *) trv[composite[inverse[SUCC],E]] := union[Id,composite[inverse[TC],E]] (* derived 2007 May 22 in SU-OM.NB *) trv[composite[inverse[SUCC],id[omega]]] := composite[inverse[E],id[omega]] (* added 2003 April 4 based on TRV.NB *) trv[CORE[x_]] := CORE[x] (* derived 2005 April 19 in XVR-TRV.NB *) trv[Di] := cart[V,V] (* added 2002 March 28 based on TRV.NB *) trv[DISJOINT] := cart[V,V] (* added 2002 March 24 based on TRV-2.NB *) trv[E] := composite[inverse[TC],E] (* derived 2004 June 6 in EQV-TRV.NB *) trv[eqv[x_]] := eqv[x] (* added 2002 March 27 based on TRV.NB *) trv[FUNPART] := FUNPART (* added 2002 March 27 based on TRV.NB *) trv[HC] := HC (* added 2003 April 4 based on TRV.NB *) trv[HULL[x_]] := HULL[x] (* added 2002 March 27 based on TRV.NB *) trv[Id] := Id (* added 2002 March 28 based on TRV.NB *) trv[id[x_]] := id[x] (* added 2002 March 28 based on TRV.NB *) trv[IMAGE[id[x_]]] := IMAGE[id[x]] (* added 2002 March 28 based on TRV.NB *) trv[IMAGE[inverse[S]]] := IMAGE[inverse[S]] (* added 2002 March 24 based on TRV-1.NB *) trv[inverse[x_]] := inverse[trv[x]] (* added 2002 March 28 based on TRV.NB *) trv[PS] := PS (* added 2002 March 27 based on TRV.NB *) trv[Q] := Q (* added 2002 March 27 based on TRV.NB *) trv[RANK] := RANK (* derived 2004 June 6 in EQV-TRV.NB *) trv[thinpart[eqv[x_]]] := thinpart[eqv[x]] (* derived 2004 May 2 in REGULAR.NB *) subvar[REGULAR] := REGULAR (* added 2002 March 24 based on TRV-1.NB *) trv[S] := S (* derived 2005 April 19 in XVR-TRV.NB *) trv[SUBCOMMUTE] := cart[V,V] (* added 2002 March 27 based on TRV.NB *) trv[TC] := TC (* derived 2004 June 5 in THPT-TRV.NB *) trv[thinpart[trv[x_]]] := thinpart[trv[x]] (* added 2002 March 24 based on TRV-1.NB *) trv[trv[x_]] := trv[x] (* added 2002 March 27 based on TRV.NB *) trv[UCLOSURE] := UCLOSURE (* derived 2004 May 12 in EQUIV.NB *) trv[union[x_,complement[image[V,y_]]]] := union[cart[V,complement[image[V,y]]],trv[x]] (* derived 2007 March 1 in TRV-RFX.NB *) trv[union[composite[Id,x_],id[union[domain[x_],range[x_]]]]] := union[id[union[domain[x],range[x]]],trv[x]] (* added 2002 March 28 based on TRV.NB *) trv[union[Id,x_]] := union[Id,trv[x]] (* added 2002 March 28 based on TRV.NB *) trv[V] := cart[V,V] (* added 2002 March 27 based on TRV.NB *) trv[ZN] := ZN (* added 2001 January 20 based on TW-0.NB *) twist[0] := 0 (* added 2001 January 18 based on TWIST-2.NB *) twist[cart[x_,y_]] := cross[x,y] (* added 2001 January 20 based on TWIST-2.NB *) twist[complement[x_]] := composite[id[cart[V,V]],complement[twist[x]],id[cart[V,V]]] (* added 2003 July 2 based on TWIST.NB *) twist[composite[ASSOC,SWAP]] := composite[cross[SWAP,SWAP],inverse[RIF],SWAP] (* added 2003 May 30 based on TWIST.NB *) twist[composite[x_,cross[y_,z_]]] := composite[cross[inverse[z],Id],twist[x],cross[y,Id]] (* added 2003 May 30 based on TWIST.NB *) twist[composite[cross[x_,y_],z_]] := composite[cross[Id,y],twist[z],cross[Id,inverse[x]]] (* added 2001 February 8 based on TWIST-4.NB *) twist[composite[DUP,x_,inverse[DUP]]] := id[composite[Id,x]] (* added 2001 February 8 based on TWIST-2.NB *) twist[composite[x_,FIRST]] := composite[inverse[SECOND],rotate[inverse[x]]] (* added 2001 January 18 based on TWIST-1.NB *) twist[composite[Id,x_]] := twist[x] (* added 2001 January 20 based on TWIST-2.NB *) twist[composite[x_,id[y_]]] := intersection[composite[inverse[FIRST],y,FIRST],twist[x]] (* added 2001 January 20 based on TWIST-2.NB *) twist[composite[id[x_],y_]] := intersection[composite[inverse[SECOND],x,SECOND],twist[y]] (* added 2001 February 27 based on TWIST.NB *) twist[composite[intersection[composite[inverse[FIRST],u_],composite[inverse[SECOND],v_]], w_,intersection[composite[x_,FIRST],composite[y_,SECOND]]]] := composite[cross[inverse[y],v],id[w],cross[x,inverse[u]]] (* added 2001 February 27 based on TW-CPS.NB *) twist[composite[inverse[E],COMPOSE]] := composite[SWAP,cross[SECOND,E], id[composite[inverse[SECOND],FIRST]],cross[inverse[E],inverse[FIRST]]] (* added 2001 February 8 based on TWIST-2.NB *) twist[composite[inverse[FIRST],x_]] := composite[inverse[FIRST],rotate[x],SWAP] (* added 2002 November 3 based on EQUIDIFF.NB *) twist[composite[inverse[NATADD],NATADD]] := composite[SWAP,EQUIDIFF] (* added 2002 December 23 based on RIF-TW.NB *) twist[composite[inverse[NATADD],rotate[NATADD]]] := composite[inverse[NATADD],rotate[NATADD]] (* added 2003 July 2 based on TWIST.NB *) twist[composite[inverse[RIF],SWAP]] := composite[SWAP,inverse[ASSOC]] (* added 2002 December 23 based on RIF-TW.NB *) twist[composite[inverse[rotate[NATADD]],NATADD]] := composite[inverse[NATADD],rotate[NATADD],SWAP] (* added 2001 February 1 based on TWISTROT.NB *) twist[composite[inverse[rotate[x_]],rotate[y_]]] := composite[RIF,cross[composite[SWAP,inverse[y]],inverse[x]]] (* added 2001 February 8 based on TWIST-2.NB *) twist[composite[inverse[SECOND],x_]] := composite[SWAP,inverse[rotate[composite[x,SWAP]]],FIRST] (* added 2001 February 8 based on TWIST-2.NB *) twist[composite[x_,SECOND]] := composite[inverse[rotate[composite[inverse[x],SWAP]]],SECOND] (* added 2002 December 1 based on TW-RIF.NB *) twist[composite[SWAP,cross[x_,y_],inverse[RIF]]] := composite[cross[Id,x],ASSOC,SWAP,cross[Id,inverse[y]]] (* added 2002 November 3 based on EQUIDIFF.NB *) twist[composite[SWAP,EQUIDIFF]] := composite[inverse[NATADD],NATADD] (* added 2002 November 9 based on TW-I-FL.NB *) twist[composite[SWAP,inverse[x_]]] := composite[SWAP,twist[composite[x,SWAP]],SWAP] (* added 2002 December 23 based on RIF-TW.NB *) twist[composite[SWAP,inverse[rotate[NATADD]],NATADD]] := composite[SWAP,inverse[rotate[NATADD]],NATADD] (* added 2002 June 7 based on RIF.NB *) twist[composite[SWAP,RIF]] := ROT (* added 2001 January 20 based on TWIST-2.NB *) twist[composite[SWAP,x_,SWAP]] := inverse[twist[x]] (* added 2002 November 9 based on TW-I-FL.NB *) twist[composite[SWAP,twist[x_]]] := composite[SWAP,twist[composite[SWAP,x]]] (* added 2001 January 18 based on TWIST-2.NB *) twist[cross[x_,y_]] := cart[composite[Id,x],composite[Id,y]] (* added 2001 January 20 based on TW-0.NB *) twist[Di] := union[cart[Di,cart[V,V]],cart[cart[V,V],Di]] (* added 2001 January 21 based on TWIST-1.NB *) twist[DUP] := composite[id[inverse[SECOND]],inverse[SECOND],SECOND, id[inverse[FIRST]]] (* added 2002 November 3 based on EQUIDIFF.NB *) twist[EQUIDIFF] := EQUIDIFF (* added 2001 January 18 based on TWIST-2.NB *) twist[Id] := cart[Id,Id] (* added 2001 January 18 based on TWIST-2.NB *) twist[id[x_]] := composite[DUP,x,inverse[DUP]] (* added 2001 January 20 based on TW-I.NB *) twist[intersection[x_,y_]] := intersection[twist[x],twist[y]] (* added 2001 January 18 based on TWIST-2.NB *) twist[inverse[x_]] := composite[SWAP,twist[x],SWAP] (* added 2001 February 15 based on RO-REG.NB *) twist[REGULAR] := cart[cart[REGULAR,REGULAR],cart[REGULAR,REGULAR]] (* added 2001 February 1 based on RIF-2.NB *) twist[RIF] := composite[id[FIRST],inverse[FIRST],inverse[SECOND], FIRST,FIRST,id[SECOND]] (* added 2001 January 20 based on RIF-2.NB *) twist[ROT] := composite[SWAP,RIF] (* added 2002 December 30 based on 9-TWIST.NB *) twist[set[x_]] := cart[cart[set[first[first[x]]],set[first[second[x]]]], cart[set[second[first[x]]],set[second[second[x]]]]] (* added 2001 January 18 based on TWIST-2.NB *) twist[SWAP] := SWAP (* added 2001 January 18 based on TWIST-1.NB *) twist[twist[x_]] := composite[id[cart[V,V]],x,id[cart[V,V]]] (* added 2001 January 18 based on TWIST-2.NB *) twist[union[x_,y_]] := union[twist[x],twist[y]] (* added 2001 January 20 based on TW-0.NB *) twist[V] := cart[cart[V,V],cart[V,V]] (* Theorem SC-3A in SC1 *) U[0] := 0 (* restored 2001 October 14 based on ACL-3.NB *) U[Aclosure[x_]] := U[x] (* added 2003 October 15 based on ACYCLIC.NB *) U[ACYCLIC] := Di (* derived 2008 January 6 in ALLCL-BC.NB *) U[allclosed[composite[BIGCUP,id[x_]]]] := V (* added 2002 January 17 based on ANTISYM1.NB *) U[ANTISYM] := cart[V,V] (* added 2003 July 2 based on ASS-SC.NB *) U[ASSOCIATIVE] := cart[cart[V,V],V] (* Theorem BIJ-SC in BIJ proved 2000 April 27 *) U[BIJ] := cart[V,V] (* added 2003 May 23 based on REPLACE.NB *) U[binclosed[CAP]] := V (* derived 2004 May 4 in BIN-CPS.NB *) U[binclosed[COMPOSE]] := V (* revised 2003 May23 based on DEF-CLOS.NB *) U[binclosed[CUP]] := V (* revised 2003 May23 based on DEF-CLOS.NB *) U[binclosed[DIF]] := V (* derived 2006 August 1 in U-BCL.NB *) U[binclosed[INTADD]] := V (* derived 2006 August 1 in U-BCL.NB *) U[binclosed[NATADD]] := V (* derived 2006 August 1 in U-BCL.NB *) U[binclosed[NATMUL]] := V (* derived 2006 August 1 in U-BCL.NB *) U[binclosed[setpart[x_]]] := V (* derived 2006 August 1 in U-BCL.NB *) U[binclosed[SYMDIF]] := V (* derived 2006 October 21 in INTDIV.NB *) U[binhom[INTADD,INTADD]] := INTDIV (* derived 2006 December 3 in MIXDIV.NB *) U[binhom[NATADD,INTADD]] := MIXDIV (* derived 2006 October 21 in INTDIV.NB *) U[binhom[NATADD,NATADD]] := DIV (* derived 2006 June 10 in BINOPS.NB *) U[BINOPS] := cart[cart[V,V],V] (* derived 2007 February 7 in PAIR.NB *) U[cart[set[x_],set[y_]]] := intersection[image[V,set[x]],image[V,set[y]],PAIR[x,y]] (* derived 2007 May 6 in CHNBASIC.NB *) U[chains[x_]] := fix[x] (* derived 2005 October 8 in U-CL.NB *) U[CL] := cart[V,V] (* added 2000 December 9 based on CLIQUES.NB *) U[cliques[x_]] := fix[x] (* derived 2006 September 19 in COMMTIVE.NB *) U[COMMUTATIVE] := cart[cart[V,V],V] (* derived 2005 March 26 in U-CMPCT.NB *) U[COMPACT] := V (* Corollary SP-SC-A in SP3 proved 1999 January 19 *) U[complement[A[x_]]] := image[V,x] (* added 2000 December 14 based on U-DO.NB *) U[complement[DESCENDING]] := V (* Theorem FINC-SC in FINITE proved 2000 March *) U[complement[FINITE]] := V (* derived 2004 September 18 in SSIM-PRS.NB *) U[complement[image[PAIRSET,Di]]] := V (* 1998 August 25 *) U[complement[image[S,set[x_]]]] := image[Di,x] (* Theorem SC-IMV-B in SC1 proved 1998 August 16 *) U[complement[image[V,x_]]] := complement[image[V,x]] (* added 2000 December 14 based on U-DO.NB *) U[complement[invar[POWER]]] := V (* added 2000 December 14 based on U-DO.NB *) U[complement[invar[SUCC]]] := V (* Theorem E-IM-PC in E2 proved 1998 August 17 *) U[complement[P[x_]]] := image[V,complement[x]] (* derived 2006 January 17 in POW-SG.NB *) U[complement[range[POWER]]] := V (* derived 2004 September 18 in WF-WRAP.NB *) U[complement[range[SINGLETON]]] := V (* Theorem REG-C-SC in REG2 proved 1999 March 17 *) U[complement[REGULAR]] := image[V,complement[REGULAR]] (* Theorem SP-SC-C1 in SP3 proved 1998 July 14 *) U[complement[set[x_]]] := V (* derived 2004 February 19 in REPLACE2.NB *) U[complement[subvar[x_]]] := complement[lb[x,complement[fix[x]]]] (* derived 2006 June 7 in CONST.NB *) U[CONST] := cart[V,V] (* added 2004 April 17 based on CORE.NB *) U[core[image[inverse[BIGCUP],x_],y_]] := U[intersection[x,Uclosure[y]]] (* added 2003 April 1 based on IM-IN-SG.NB *) U[DEDEKIND] := V (* Theorem REG-C in REG2 *) U[DESCENDING] := complement[REGULAR] (* added 2000 December 14 based on U-DO.NB *) U[domain[GREATEST[x_]]] := image[inverse[x],fix[x]] (* added 2000 November 10 based on UB-LB-2.LOG *) U[domain[LB[x_]]] := range[x] (* added 2000 December 14 based on OFFICE2.NB *) U[domain[LEAST[x_]]] := image[x,fix[x]] (* added 2000 November 5 based on UB-2.NB *) U[domain[UB[x_]]] := domain[x] (* added 2001 July 17 based on ZN-IMG3.NB *) U[domain[VERTSECT[ZN]]] := domain[VERTSECT[ZN]] (* added 2001 October 28 based on EQV-I.NB *) U[EQV] := cart[V,V] (* derived 2006 August 16 in OL-SU-OM.NB *) U[even] := omega (* derived 2008 January 2 in FINCHR-1.NB *) U[FINCHAR] := V (* Theorem FIN-SC1 in FINITE proved 2000 March 15 *) U[FINITE] := V (* added 2001 July 17 based on U-FIX.NB *) U[fix[ACLOSURE]] := V (* derived 2004 April 4 in IRR-TRV.NB *) U[fix[composite[DISJOINT,INVERSE]]] := Di (* added 2000 December 14 based on U-DO.NB *) U[fix[composite[E,BIGCAP]]] := V (* added 2002 January 21 based on VS-IN-BC.TXT *) U[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := V (* derived 2007 October 7 in FPCO-DUP.NB *) U[fix[composite[inverse[S],COMPOSE,DUP]]] := cart[V,V] (* added 2003 September 7 based on FIX-HULL.NB *) U[fix[HULL[x_]]] := U[x] (* derived 2007 May 27 in COARSER.NB *) U[fix[IMAGE[COARSER]]] := V (* derived 2007 December 17 in FPIMGDIV.NB *) U[fix[IMAGE[DIV]]] := omega (* added 2002 November 19 based on FP-EQDF.NB *) U[fix[IMAGE[EQUIDIFF]]] := cart[omega,omega] (* derived 2007 May 27 in COARSER.NB *) U[fix[IMAGE[inverse[COARSER]]]] := V (* derived 2007 December 17 in FPIMGDIV.NB *) U[fix[IMAGE[inverse[DIV]]]] := omega (* derived 2006 April 11 in IMINRANK.NB *) U[fix[IMAGE[inverse[RANK]]]] := REGULAR (* derived 2007 November 4 in FP-IM-PS.NB *) U[fix[IMAGE[inverse[PS]]]] := V (* added 2000 December 16 based on Q-CA.NB *) U[fix[IMAGE[inverse[S]]]] := V (* derived 2007 May 7 in SBV-PO.NB *) U[fix[IMAGE[po[x_]]]] := fix[thinpart[po[x]]] (* derived 2008 March 18 in RA-VS-PO.NB *) U[fix[IMAGE[to[x_]]]] := fix[thinpart[to[x]]] (* derived 2005 January 26 in REMOVED.NB *) U[fix[IMAGE[ZN]]] := range[thinpart[ZN]] (* derived 2007 July 25 in FIX-UCH.NB *) U[fix[UCHAINS]] := V (* added 2001 July 17 based on U-FIX.NB *) U[fix[UCLOSURE]] := V (* Theorem TC-FUL-2 proved 2000 October 16 *) U[FULL] := V (* derived 2007 December 10 in FUND.NB *) U[FUND] := RUSSELL (* Theorem FS-SC in FS added 1998 August 17 *) U[FUNS] := cart[V,V] (* Theorem HF-FUL-2 in HF proved 2001 March 25 *) U[H[FINITE]] := H[FINITE] (* Theorem H-FULL-2 in H proved 2001 March 22 *) U[H[FULL]] := H[FULL] (* derived 2004 April 18 in H-RUS.NB *) U[H[RUSSELL]] := H[RUSSELL] (* derived 2007 May 29 in NEXT-LIM.NB *) U[hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x_]]]] := hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x]]] (* derived 2007 May 30 in NEXT-LIM.NB *) U[hull[invar[SUCC],set[ord[x_]]]] := hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x]]] (* derived 2007 May 30 in NEXT-LIM.NB *) U[hull[invar[SUCC],set[succ[ord[x_]]]]] := hull[intersection[OMEGA,fix[BIGCUP]],set[succ[ord[x]]]] (* derived 2004 December 14 in IDEMPROJ.NB *) U[IDEM] := cart[V,V] (* added 2001 September 30 based on ACL-2.NB *) U[image[ACLOSURE,x_]] := image[BIGCAP,image[inverse[S],x]] (* added 2001 March 28 based on ADJOIN.NB *) U[image[ADJOIN[x_],y_]] := union[intersection[image[V,set[x]],U[y]],intersection[x,image[V,y],image[V,set[x]]]] (* Theorem BC-IM-4 in BIGCUP/BC *) U[image[BIGCUP,x_]] := U[U[x]] (* added 1999 October 5 based on CAP-CUP.2 *) U[image[CAP,x_]] := fix[composite[inverse[E],x,E]] (* added 1999 October 5 based on CAP-CUP.2 *) U[image[CAP,cart[x_,y_]]] := intersection[U[x],U[y]] (* added 1999 October 5 based on CART.1 *) U[image[CART,x_]] := composite[inverse[E],x,E] (* derived 2008 July 17 in UIM-CLIQ.NB *) U[image[CLIQUES,x_]] := fix[image[inverse[CART],image[inverse[S],x]]] (* added 2001 May 4 based on CLIQUES.NB subsumed by the a more general rule *) U[image[CLIQUES,P[x_]]] := cliques[x] (* derived 2004 December 23 in COARSER.NB *) U[image[COARSER,x_]] := image[inverse[S],image[BIGCUP,x]] (* added 2001 March 9 based on IM-CPS.NB *) U[image[COMPOSE,cart[x_,y_]]] := composite[U[x],U[y]] (* derived 2004 January 11 in SCIMCORE.NB *) U[image[CORE[x_],y_]] := U[intersection[x,image[inverse[S],y]]] (* added 1999 October 5 based on CAP-CUP.1 *) U[image[CUP,x_]] := union[U[domain[x]],U[range[x]]] (* added 1999 December 21 based on U-IMAGE.NB *) U[image[CROSS,cart[x_,y_]]] := cross[U[x],U[y]] (* derived 2006 November 21 in CUR-BO.NB *) U[image[CURRY,BINOPS]] := composite[id[UNOPS],inverse[IMAGE[FIRST]],E] (* Theorem SP-SC-DI in SP3 proved 1999 April 13 *) U[image[Di,x_]] := image[V,x] (* added 1999 October 30 based on IMAGEINT.2 *) U[image[DIF,x_]] := fix[composite[complement[inverse[E]],x,E]] (* Theorem DJT-SC-A in DJT proved 1999 March 25 *) U[image[DISJOINT,x_]] := complement[A[x]] (* derived 2005 May 3 in IN-E-DIV.NB *) U[image[DIV,x_]] := intersection[omega,image[V,intersection[omega,x,complement[set[0]]]]] (* added 2001 March 31 based on HF-IM.NB *) U[image[HC,P[x_]]] := H[x] (* derived 2007 September 16 in TO.NB *) U[image[HULL[invar[SWAP]],x_]] := union[inverse[U[x]],U[x]] (* added 2002 March 24 based on TRV-1.NB *) U[image[HULL[TRV],P[x_]]] := trv[x] (* derived 2004 April 18 in REPLACE.NB *) U[image[IMAGE[x_],y_]] := image[x,core[y,domain[VERTSECT[x]]]] (* added 1999 November 26 based on IM-IMG.NB *) U[image[IMG,x_]] := range[fix[composite[inverse[FIRST],inverse[E],x,E]]] (* added 1999 November 26 based on IM-IMG.NB *) U[image[IMG,cart[x_,y_]]] := image[U[x],U[y]] (* derived 2004 April 18 in REPLACE.NB *) U[image[INVERSE,x_]] := inverse[core[x,cart[V,V]]] (* 1998 August 25 *) U[image[inverse[BIGCAP],x_]] := image[S,x] (* added 1998 August 10 *) U[image[inverse[BIGCUP],x_]] := image[inverse[S],x] (* derived 2008 January 5 in COARSER.NB *) U[image[inverse[COARSER],x_]] := U[x] (* derived 2005 May 3 in DIV-E.NB *) U[image[inverse[DIV],x_]] := union[intersection[omega,image[V,intersection[x,set[0]]]],U[intersection[omega,x]]] (* added 2001 October 20 based on UB-LB.NB *) U[image[inverse[LB[x_]],y_]] := image[x,y] (* SR-IM-2B in SR3 *) U[image[inverse[S],x_]] := U[x] (* Theorem TC-IMIN4 in TC3 proved 2001 March 15 *) U[image[inverse[TC],x_]] := U[intersection[FULL,x]] (* added 2001 October 20 based on UB-LB.NB *) U[image[inverse[UB[x_]],y_]] := image[inverse[x],y] (* Theorem K-IM-SC in K proved 2000 May 25 *) U[image[K,x_]] := image[V,x] (* derived 2006 March 4 in KURA.NB *) U[image[KURA,x_]] := union[image[PAIRSET,x],image[SINGLETON,domain[x]]] (* derived 2008 December 9 in BINOPS.NB *) U[image[MAP,cart[FINITE,V]]] := intersection[FINITE,FUNS] (* derived 2007 October 14 in U-IM-MAP.NB *) U[image[MAP,cart[x_,image[inverse[S],y_]]]] := U[image[MAP,cart[x,y]]] (* derived 2008 October 22 in WORDS.NB *) U[image[MAP,cart[omega,P[x_]]]] := intersection[LISTS,P[cart[omega,x]]] (* derived 2008 October 20 in LIST.NB *) U[image[MAP,cart[omega,V]]] := LISTS (* derived 2007 October 14 in U-IM-MAP.NB *) U[image[MAP,cart[P[x_],P[y_]]]] := intersection[FUNS,P[cart[x,y]]] (* derived 2007 October 14 in U-IM-MAP.NB *) U[image[MAP,cart[P[x_],set[y_]]]] := intersection[FUNS,image[V,set[y]],P[cart[x,y]]] (* derived 2007 October 14 in U-IM-MAP.NB *) U[image[MAP,cart[set[x_],P[y_]]]] := map[x,y] (* derived 2006 June 7 in CONST.NB *) U[image[MAP,cart[V,range[SINGLETON]]]] := CONST (* derived 2006 June 10 in BINOPS.NB *) U[image[MAP,composite[inverse[DUP],inverse[CART]]]] := BINOPS (* derived 2006 June 10 in BINOPS.NB *) U[image[MAP,composite[inverse[S],x_]]] := U[image[MAP,x]] (* derived 2006 November 21 in CUR-BO.NB *) U[image[MAP,composite[MAP,DUP]]] := image[CURRY,BINOPS] (* derived 2006 June 9 in UNARY.NB *) U[image[MAP,Id]] := UNOPS (* derived 2006 June 10 in REPLACE.NB *) U[image[MAP,id[x_]]] := intersection[UNOPS,image[inverse[IMAGE[FIRST]],x]] (* derived 2007 June 30 in UNOPS.NB *) U[image[MAP,inverse[S]]] := UNOPS (* derived 2006 August 24 in NAT-SQR.NB *) U[image[NATMUL,Id]] := omega (* added 1999 October 5 based on PAIRSET.3 *) U[image[PAIRSET,x_]] := union[domain[x],range[x]] (* Theorem POW-IM2 in POW3 *) U[image[POWER,x_]] := image[inverse[S],x] (* added 1998 August 10 *) U[image[PS,x_]] := image[V,x] (* derived 2007 May 2 in U-IM-Q.NB *) U[image[Q,x_]] := image[V,intersection[x,complement[set[0]]]] (* added 2001 February 27 based on DMORG.NB *) U[image[RC[x_],y_]] := intersection[x,complement[A[intersection[y,P[x]]]],image[V,set[x]]] (* added 2002 February 4 based on RCF-NORM.NB *) U[image[RCF,x_]] := intersection[DISJOINT,image[inverse[CUP],x]] (* Theorem SR-IM-2A in SR3 *) U[image[S,x_]] := image[V,x] (* modified 1998 August 11 *) U[image[SINGLETON,x_]] := x (* derived 2004 December 23 in RA-SBV.NB *) U[image[SUBVAR,image[inverse[S],x_]]] := U[image[SUBVAR,x]] (* derived 2004 January 22 in U-SBV-PC.NB *) U[image[SUBVAR,P[x_]]] := subvar[x] (* Theorem SUC-U-SC added 1998 March 24 *) U[image[SUCC,x_]] := union[x,U[x]] (* Theorem TC-IM-2A in TC3 proved 2000 October 26 *) U[image[TC,x_]] := U[tc[x]] (* derived 2007 November 16 in UCH-I-PC.NB *) U[image[UCHAINS,P[x_]]] := Uchains[x] (* added 2001 September 30 based on ACL-2.NB *) U[image[UCLOSURE,x_]] := image[BIGCUP,image[inverse[S],x]] (* Theorem SC-IMV-A in SC1 *) U[image[V,x_]] := image[V,x] (* added 1999 November 2 based on 1999 November 1 notebook EQUIV.NB *) U[image[VERTSECT[x_],y_]] := image[x,intersection[y,domain[VERTSECT[x]]]] (* derived 2008 November 7 in UIMVSEQV.NB *) U[image[VS,EQV]] := E (* added 2001 July 15 based on ZN-AGAIN.NB *) U[image[ZN,x_]] := image[ZN,U[x]] (* derived 2006 June 11 in CONSTOPS.NB *) U[intersection[BINOPS,CONST]] := cart[cart[V,V],V] (* derived 2005 May 3 in DIV-E.NB *) U[intersection[x_,complement[image[V,y_]]]] := intersection[complement[image[V,y]],U[x]] (* added 2002 November 19 based on CORE.NB *) U[intersection[x_,complement[set[0]]]] := U[x] (* derived 2006 June 11 in CONSTOPS.NB *) U[intersection[CONST,UNOPS]] := cart[V,V] (* derived 2008 January 6 in REGULAR.NB *) U[intersection[FINITE,REGULAR]] := REGULAR (* derived 2004 December 29 in I-FUL-REG.NB *) U[intersection[FULL,REGULAR]] := REGULAR (* added 2001 October 10 based on REPLACE.NB *) U[intersection[x_,image[SINGLETON,y_]]] := intersection[y,image[inverse[SINGLETON],x]] (* added 1998 January 24 *) U[intersection[x_,image[V,y_]]] := intersection[U[x],image[V,y]] (* added 2003 June 3 based on ON-SC-4B.NB *) U[intersection[OMEGA,complement[fix[BIGCUP]]]] := OMEGA (* derived 2007 May 22 in SU-OM.NB *) U[intersection[omega,complement[nat[x_]]]] := omega (* derived 2007 May 23 in SU-ON.NB *) U[intersection[OMEGA,complement[ord[x_]]]] := OMEGA (* added 2003 June 4 based on LIMITORD.NB *) U[intersection[OMEGA,fix[BIGCUP]]] := OMEGA (* derived 2004 April 17 in REPLACE.NB *) U[intersection[x_,P[y_]]] := core[x,y] (* added 2001 October 10 based IM-IN-SG.NB *) U[intersection[x_,range[SINGLETON]]] := image[inverse[SINGLETON],x] (* derived 2006 April 11 in ZN-OM.NB *) U[intersection[REGULAR,H[FINITE]]] := intersection[REGULAR,H[FINITE]] (* derived 2007 July 17 in U-EQV.NB *) U[intersection[RFX,SYM]] := cart[V,V] (* derived 2007 November 3 in RFX-TRV.NB *) U[intersection[RFX,TRV]] := cart[V,V] (* added 1998 September 24 *) U[intersection[x_,set[y_]]] := intersection[y,image[V,intersection[x,set[y]]]] (* derived 2006 February 18 in DORA-DJ.NB *) U[intersection[TRV,WF]] := Di (* derived 2004 June 6 in EQV-TRV.NB *) U[invar[x_]] := domain[VERTSECT[trv[x]]] (* derived 2006 February 4 in INVOL.NB *) U[INVOL] := cart[V,V] (* derived 2008 October 20 in LIST.NB *) U[LISTS] := cart[omega,V] (* Theorem MAP-SC3 in MAP\1 proved 2001 April 27 *) U[map[x_,y_]] := intersection[image[V,set[x]],cart[x,y]] (* derived 2006 August 16 in OL-SU-OM.NB *) U[odd] := omega (* Theorem OM-PC-5' in OM2 *) U[omega] := omega (* added 1998 February 7 Theorem ON-5B in ON6 *) U[OMEGA] := OMEGA (* Theorem PC-7-COR in PC1 *) U[P[x_]] := x (* derived 2004 August 3 in WF-REC-1.NB *) U[partrec[x_,y_]] := rec[x,y] (* derived 2008 September 28 in PERMS.NB *) U[PERMS] := cart[V,V] (* added 2003 September 24 based on PO-FACTS.NB *) U[PO] := cart[V,V] (* added 2003 July 3 based on T1T2PTCL.NB *) U[PointClosed] := V (* derived 2005 April 21 in U-PRIMES.NB *) U[PRIMES] := omega (* derived 2004 December 14 in IDEMPROJ.NB *) U[PROJ] := cart[V,V] (* derived 2008 December 4 in UNCURRY.NB *) U[range[APPLY[CURRY,binop[x_]]]] := composite[binop[x],inverse[SECOND]] (* Theorem CART-RA5 in CART proved 1999 July 26 *) U[range[CART]] := cart[V,V] (* derived 2006 October 14 in HULLCLIQ.NB *) U[range[CLIQUES]] := V (* added 1999 October 11 based on CROSS.1 *) U[range[CROSS]] := cart[cart[V,V],cart[V,V]] (* derived 2005 January 25 *) U[range[IMAGE[x_]]] := range[thinpart[x]] (* added 2003 October 21 based on LAMHUL-2.NB *) U[range[LAMBHULL]] := S (* added 2001 December 22 based on DORA-2.NB *) U[range[MAP]] := FUNS (* added 1999 October 6 based on PAIRSET.2 *) U[range[PAIRSET]] := V (* added 2002 November 29 based on PLUS.NB *) U[range[PLUS]] := composite[id[omega],S,id[omega]] (* Theorem POW-RA-1 *) U[range[POWER]] := V (* derived 2004 January 22 in U-SBV-PC.NB *) U[range[SUBVAR]] := V (* added 2002 February 3 based on RCF.NB *) U[range[RCF]] := DISJOINT (* Theorem SG-RA-SC in SG2 proved 1998 February 3 *) U[range[SINGLETON]] := V (* Theorem SUC-RA-3 in SUC-RELATION *) U[range[SUCC]] := V (* derived 2007 May 29 in ZN.NB *) U[range[thinpart[ZN]]] := range[thinpart[ZN]] (* derived 2008 November 7 in DO-UIMVS.NB *) U[range[U[image[VS,x_]]]] := range[U[x]] (* derived 2007 July 25 in FIX-UCH.NB *) U[range[UCHAINS]] := V (* derived 2005 January 25 *) U[range[VERTSECT[x_]]] := range[thinpart[x]] (* derived 2004 November 16 in XS.NB *) U[range[XS]] := FUNS (* Theorem REG-3 in REG2 *) U[REGULAR] := REGULAR (* added 2001 October 8 based on RFX.NB *) U[RFX] := cart[V,V] (* derived 2004 August 7 in RS-1.NB *) U[RS[x_]] := thinpart[x] (* Theorem RUS-PC-5 in RUS2 added 1998 February 7 *) U[RUSSELL] := V (* derived 2004 November 2 in SELECT.NB *) U[SELECT] := V (* derived 2006 July 8 in SEMIGPS.NB *) U[SEMIGPS] := cart[cart[V,V],V] (* derived 2007 September 3 in U-SS.NB *) U[set[x_,y___]] := union[setpart[x],U[set[y]]] (* added 2001 July 12 based on ZN-2.NB *) U[subcommutant[inverse[E]]] := union[ZN,complement[cart[V,V]]] (* added 2003 January 17 based on SBV-IN-E.NB *) U[subvar[inverse[E]]] := V (* derived 2007 November 4 in FP-IM-PS.NB *) U[subvar[inverse[PS]]] := V (* Normalization rule for FINITE *) U[subvar[PS]] := complement[FINITE] (* added 2002 April 15 based on ITERATE.NB *) U[subvar[union[cross[composite[id[omega],SUCC],x_], id[cart[set[0],y_]]]]] := iterate[x,y] (* added 2002 March 4 based on ZN-1.NB *) U[succ[x_]] := union[intersection[x,image[V,set[x]]],U[x]] (* added 2001 October 10 based on SYM-1.NB *) U[SYM] := cart[V,V] (* added 2003 July 3 based on T1T2PTCL.NB *) U[T1] := V (* added 2003 July 3 based on T1T2PTCL.NB *) U[T2] := V (* derived 2007 December 4 in HER-H.NB *) U[tc[image[inverse[S],x_]]] := U[tc[x]] (* added 2001 March 17 based on TC-H.NB *) U[tc[intersection[FULL,P[x_]]]] := H[x] (* derived 2004 February 10 in TO.NB *) U[TO] := cart[V,V] (* added 2001 October 25 based on TOPOLOGY.NB *) U[TOPS] := V (* added 2001 October 9 based on TRV-1.NB *) U[TRV] := cart[V,V] (* derived 2006 June 9 in UNARY.NB *) U[U[image[MAP,x_]]] := composite[inverse[E],x,E] (* derived 2007 June 23 in UCHAINS.NB *) U[Uchains[x_]] := U[x] (* added 2001 September 22 based on UCL.NB *) U[Uclosure[x_]] := U[x] (* Theorem SC-9 in SC2 *) U[union[x_,y_]] := union[U[x],U[y]] (* derived 2006 June 9 in UNARY.NB *) U[UNOPS] := cart[V,V] (* Theorem SC-3B in SC1 *) U[V] := V (* added 2003 September 29 based on WF.NB *) U[WF] := Di (* derived 2005 October 6 in U-WO.NB *) U[WO] := cart[V,V] (* derived 2004 October 31 in U-X.NB *) U[X[x_]] := composite[x,id[image[V,X[x]]]] (* added 2002 November 16 based on INTEGER.NB *) U[Z] := cart[omega,omega] (* added 2000 November 5 based on UB-2.NB *) UB[0] := cart[set[0],V] (* derived 2004 February 19 in REPLACE.NB *) ub[0,x_] := complement[image[V,x]] (* derived 2004 February 19 in REPLACE3.NB *) ub[x_,0] := V (* added 2000 November 13 based on MAX.NB *) UB[cart[x_,y_]] := union[cart[P[x],y],cart[set[0],V]] (* derived 2004 February 19 in REPLACE.NB *) ub[cart[x_,y_],z_] := union[complement[image[V,z]], intersection[y,complement[image[V,intersection[z,complement[x]]]]]] (* derived 2004 February 19 in REPLACE.NB *) ub[x_,cart[set[y_],set[z_]]] := union[complement[image[V,set[y]]],complement[image[V,set[z]]], image[x,cart[set[y],set[z]]]] (* derived 2007 April 24 in LB-UB-V.NB *) ub[COARSER,V] := 0 (* derived 2004 December 21 in COMUTANT.NB *) UB[COMMUTE] := LB[COMMUTE] (* derived 2004 December 21 in COMUTANT.NB *) ub[COMMUTE,x_] := lb[COMMUTE,x] (* derived 2004 February 19 in REPLACE.NB *) ub[complement[x_],y_] := complement[image[x,y]] (* added 2001 July 12 based on UB-LB-2.NB *) UB[complement[cart[x_,y_]]] := union[cart[V,complement[y]],cart[P[complement[x]],V]] (* added 2001 July 4 based on VS-1.NB *) UB[complement[composite[x_,complement[E]]]] := composite[Id,complement[composite[x,complement[S]]]] (* added 2000 December 18 based on LB-LB-C.NB *) UB[complement[composite[E,x_]]] := LB[LB[complement[x]]] (* derived 2004 May 11 in IMG-IMAG.NB *) UB[complement[cross[E,x_]]] := union[cart[V,complement[cart[V,V]]], composite[SWAP,inverse[rotate[composite[UB[complement[x]],IMG,SWAP]]]]] (* added 2000 November 5 based on UB-2.NB *) UB[complement[E]] := DISJOINT (* added 2000 November 7 based on LB-1.NB *) UB[complement[inverse[x_]]] := LB[complement[x]] (* added 2000 December 3 based on DO-LT.NB *) UB[complement[S]] := composite[inverse[POWER],DISJOINT] (* derived 2004 July 23 in X23--.NB *) ub[composite[x_,complement[inverse[E]]],y_] := complement[image[inverse[VERTSECT[inverse[x]]],image[inverse[S],y]]] (* derived 2008 June 7 in LB-UB-E.NB *) UB[composite[E,x_]] := composite[S,image[DORA,P[x]]] (* derived 2004 February 20 in REPLACE1.NB *) ub[composite[E,x_],V] := complement[domain[LB[complement[x]]]] (* added 2000 November 6 based on UB-ID.LOG *) UB[composite[Id,x_]] := UB[x] (* derived 2004 February 19 in REPLACE3.NB *) ub[composite[Id,x_],y_] := ub[x,y] (* derived 2004 December 15 in LB-UB-RS.NB *) ub[composite[id[x_],y_],z_] := union[complement[image[V,z]],intersection[x,ub[y,z]]] (* derived 2004 December 15 in LB-UB-RS.NB *) ub[composite[x_,id[y_]],z_] := intersection[complement[image[V,intersection[z,complement[y]]]],ub[x,z]] (* derived 2004 February 20 in REPLACE1.NB *) ub[composite[x_,inverse[E]],V] := 0 (* derived 2005 January 5 in TC-HC.NB *) ub[composite[inverse[TC],x_],y_] := image[inverse[TC],ub[x,y]] (* derived 2004 December 10 in AP-IMG.NB *) ub[composite[x_,SWAP],y_] := intersection[complement[image[V,intersection[y,complement[cart[V,V]]]]],ub[x,inverse[y]]] (* derived 2005 October 6 in BINCL-X.NB *) UB[cross[x_,y_]] := union[cart[set[0],V],composite[cross[UB[x],UB[y]],DORA,id[P[cart[V,V]]]]] (* added 2000 November 14 based on MAX.NB *) UB[Di] := composite[Id,complement[inverse[E]]] (* derived 2004 February 20 in LB-UB-ID.NB *) ub[Di,x_] := complement[x] (* added 2000 December 3 based on DO-LT.NB *) UB[DISJOINT] := composite[DISJOINT,BIGCUP] (* derived 2007 April 24 in LB-UB-V.NB *) ub[DISJOINT,V] := set[0] (* derived 2005 April 19 in LBUB-DIV.NB *) ub[DIV,omega] := set[0] (* derived 2005 April 21 in U-PRIMES.NB *) ub[DIV,PRIMES] := set[0] (* derived 2005 October 5 in GLB-DIV.NB *) ub[DIV,V] := 0 (* added 2000 November 5 based on UB-2.NB *) UB[E] := S (* derived 2004 February 19 in REPLACE.NB *) ub[E,x_] := image[S,set[x]] (* derived 2007 January 23 in EQUIDIFF.NB *) ub[EQUIDIFF,id[omega]] := id[omega] (* derived 2004 February 20 in REPLACE1.NB *) ub[FINITE,V] := V (* added 2002 October 20 based on UB-2ND.NB *) UB[FIRST] := union[cart[set[0],V], composite[inverse[SINGLETON],IMAGE[FIRST],id[P[cart[V,V]]]]] (* added 2000 November 14 based on MAX.NB *) UB[Id] := union[cart[set[0],V],inverse[SINGLETON]] (* derived 2004 February 20 in LB-UB-ID.NB *) ub[Id,x_] := complement[image[Di,x]] (* added 2000 December 26 based on UB-ID.NB *) UB[id[x_]] := union[cart[set[0],V],composite[id[x],inverse[SINGLETON]]] (* derived 2006 June 16 in UB-I-CAP.NB *) ub[image[inverse[CAP],EQV],image[CART,Id]] := image[inverse[IMAGE[id[cart[V,V]]]],EQV] (* derived 2006 June 16 in UB-I-CAP.NB *) ub[image[inverse[CAP],PO],image[CART,Id]] := image[inverse[IMAGE[id[cart[V,V]]]],PO] (* derived 2006 June 16 in UB-I-CAP.NB *) ub[image[inverse[CAP],RFX],image[CART,Id]] := image[inverse[IMAGE[id[cart[V,V]]]],RFX] (* derived 2006 June 16 in UB-I-CAP.NB *) ub[image[inverse[CAP],TO],image[CART,Id]] := image[inverse[IMAGE[id[cart[V,V]]]],TO] (* derived 2006 June 16 in UB-I-CAP.NB *) ub[image[inverse[CAP],TRV],image[CART,Id]] := image[inverse[IMAGE[id[cart[V,V]]]],TRV] (* derived 2006 June 16 in UB-I-CAP.NB *) ub[image[inverse[CAP],WF],image[CART,Id]] := image[inverse[IMAGE[id[cart[V,V]]]],WF] (* derived 2006 June 16 in UB-I-CAP.NB *) ub[image[inverse[CAP],WO],image[CART,Id]] := image[inverse[IMAGE[id[cart[V,V]]]],WO] (* derived 2004 February 19 in REPLACE.NB *) ub[image[V,x_],y_] := union[complement[image[V,y]],image[V,x]] (* Theorem UB-I in UB1 proved 2000 November 5 *) UB[intersection[x_,y_]] := intersection[UB[x],UB[y]] (* derived 2004 February 19 in REPLACE3.NB *) ub[intersection[x_,y_],z_] := intersection[ub[x,z],ub[y,z]] (* derived 2004 February 25 in HULLUBLB.NB *) ub[x_,intersection[y_,image[V,z_]]] := union[complement[image[V,z]],ub[x,y]] (* derived 2008 March 18 in UB-LB-SS.NB *) ub[x_,intersection[y_,set[z_]]] := union[complement[image[V,intersection[y,set[z]]]],image[x,set[z]]] (* derived 2004 January 22 in INVAR.NB *) UB[INVAR] := composite[INVAR,BIGCUP] (* derived 2004 February 19 in REPLACE.NB *) ub[INVAR,x_] := invar[U[x]] (* added 2000 November 7 based on LB-1.NB *) UB[inverse[x_]] := LB[x] (* added 2004 February 17 *) ub[inverse[x_],y_] := lb[x,y] (* derived 2007 April 24 in LB-UB-V.NB *) ub[K,V] := 0 (* added 2000 December 18 based on UB-UB.NB *) UB[LB[x_]] := composite[LB[x],BIGCUP] (* derived 2004 February 22 in UB-UB.NB *) ub[LB[x_],y_] := lb[x,U[y]] (* derived 2004 February 19 in REPLACE.NB *) ub[x_,lb[x_,ub[x_,y_]]] := ub[x,y] (* derived 2007 April 24 in LB-UB-V.NB *) ub[PS,V] := 0 (* derived 2004 February 19 in REPLACE.NB *) ub[Q,range[SINGLETON]] := range[SINGLETON] (* derived 2004 February 20 in REPLACE1.NB *) ub[Q,V] := 0 (* derived 2004 May 2 in REGULAR.NB *) UB[REGULAR] := union[cart[REGULAR,REGULAR],cart[set[0],V]] (* derived 2004 February 20 in REPLACE1.NB *) ub[REGULAR,V] := complement[image[V,complement[REGULAR]]] (* derived 2007 April 26 in UB-RS.NB *) ub[RESTRICT,P[x_]] := set[0] (* derived 2007 April 26 in UB-RS.NB *) ub[RESTRICT,V] := set[0] (* derived 2004 February 20 in REPLACE1.NB *) ub[rotate[x_],V] := 0 (* added 2000 November 10 based on UB-LB-2.LOG *) UB[S] := composite[inverse[POWER],S] (* derived 2004 February 19 in REPLACE.NB *) ub[S,x_] := image[S,set[U[x]]] (* added 2002 October 20 based on UB-2ND.NB *) UB[SECOND] := union[cart[set[0],V], composite[inverse[SINGLETON],IMAGE[SECOND],id[P[cart[V,V]]]]] (* derived 2004 February 19 in REPLACE.NB *) ub[x_,set[y_]] := union[complement[image[V,set[y]]],image[x,set[y]]] (* derived 2005 October 5 in GLB-DIV.NB *) ub[setpart[x_],V] := 0 (* derived 2004 February 20 in REPLACE1.NB *) ub[set[x_],V] := 0 (* added 2002 September 8 based on UB-SG.NB *) UB[SINGLETON] := union[cart[set[0],V],id[range[SINGLETON]]] (* derived 2007 April 26 in LB-SMALL.NB *) ub[SMALLER,V] := 0 (* added 2000 December 18 based on UB-UB.NB *) UB[UB[x_]] := composite[UB[x],BIGCUP] (* derived 2004 February 22 in UB-UB.NB *) ub[UB[x_],y_] := ub[x,U[y]] (* derived 2004 February 19 in REPLACE3.NB *) ub[x_,union[y_,z_]] := intersection[ub[x,y],ub[x,z]] (* derived 2006 October 9 in REIFCLIQ.NB *) UB[union[w_,cart[x_,y_]]] := union[composite[id[y],UB[w],IMAGE[id[complement[x]]]],UB[w]] (* added 2000 November 7 based on IMAGE-3.NB *) UB[union[x_,complement[cart[y_,z_]]]] := union[cart[V,complement[z]], composite[id[z],UB[x],IMAGE[id[y]]]] (* derived 2008 July 5 in UBD-DEFN.NB *) UB[union[x_,complement[image[V,y_]]]] := union[cart[V,complement[image[V,y]]],UB[x]] (* added 2002 April 10 based on INVAR.NB *) UB[union[composite[E,FIRST],composite[complement[E],SECOND]]] := composite[INVAR,INVERSE] (* added 2003 June 23 based on T1.NB *) UB[union[composite[inverse[FIRST],complement[inverse[E]]], composite[inverse[SECOND],inverse[E]]]] := union[cart[set[0],V],composite[id[cart[V,V]],inverse[SINGLETON],LB[INVAR]]] (* added 2002 April 10 based on INVAR.NB *) UB[union[composite[E,SECOND],composite[complement[E],FIRST]]] := composite[INVAR,id[P[cart[V,V]]]] (* derived 2007 August 5 in ALLCLOSE.NB *) ub[union[composite[E,SECOND],composite[complement[S],FIRST]],x_] := intersection[allclosed[x],complement[image[V,intersection[x,complement[cart[V,V]]]]]] (* derived 2008 August 13 in ALL-UB.NB *) ub[union[E,complement[S]],x_] := allclosed[id[x]] (* added 2002 November 22 based on K.NB *) UB[union[Id,complement[inverse[S]]]] := composite[complement[inverse[E]],IMAGE[inverse[PS]]] (* added 2000 November 5 based on UB-2.NB *) UB[V] := cart[V,V] (* derived 2004 February 19 in REPLACE.NB *) ub[V,x_] := V (* derived 2007 June 23 in UCHAINS.NB *) Uchains[0] := set[0] (* derived 2007 October 4 in TOWERS.NB *) Uchains[A[intersection[fix[UCHAINS],invar[x_]]]] := A[intersection[fix[UCHAINS],invar[x]]] (* derived 2007 September 22 in UCH-ACY.NB *) Uchains[ACYCLIC] := ACYCLIC (* derived 2007 June 23 in UCHAINS.NB *) Uchains[ANTISYM] := ANTISYM (* derived 2007 September 10 in UCH-ASS.NB *) Uchains[ASSOCIATIVE] := ASSOCIATIVE (* derived 2007 June 23 in UCHAINS.NB *) Uchains[BIJ] := BIJ (* derived 2007 September 10 in UCH-BO.NB *) Uchains[BINOPS] := BINOPS (* derived 2007 June 23 in UCHAINS.NB *) Uchains[chains[x_]] := chains[x] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[cliques[x_]] := cliques[x] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[commutant[x_]] := commutant[x] (* derived 2007 September 28 in UCH-RS.NB *) Uchains[complement[P[x_]]] := union[complement[P[x]],set[0]] (* derived 2007 November 23 in C-RA-SG.NB *) Uchains[complement[range[SINGLETON]]] := complement[range[SINGLETON]] (* derived 2007 September 28 in UCH-RS.NB *) Uchains[complement[set[0]]] := V (* derived 2007 June 23 in UCHAINS.NB *) Uchains[COMMUTATIVE] := COMMUTATIVE (* derived 2007 June 23 in UCHAINS.NB *) Uchains[CONST] := CONST (* derived 2007 August 9 in UCH-TRV.NB *) Uchains[DESCENDING] := DESCENDING (* derived 2007 August 9 in UCH-TRV.NB *) Uchains[EQV] := EQV (* derived 2008 January 16 in UCHN-FIN.NB *) Uchains[fin[x_]] := union[fin[x],set[0]] (* derived 2007 November 7 in CLQ-C.NB *) Uchains[fix[composite[DISJOINT,IMAGE[x_]]]] := fix[composite[DISJOINT,IMAGE[x]]] (* derived 2008 February 9 in ASYM.NB *) Uchains[fix[composite[DISJOINT,INVERSE]]] := fix[composite[DISJOINT,INVERSE]] (* derived 2007 September 10 in UCH-ASS.NB *) Uchains[fix[composite[inverse[IMAGE[x_]],IMAGE[y_]]]] := fix[composite[inverse[IMAGE[x]],IMAGE[y]]] (* derived 2007 October 7 in FPCO-DUP.NB *) Uchains[fix[composite[inverse[S],COMPOSE,DUP]]] := fix[composite[inverse[S],COMPOSE,DUP]] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[fix[IMAGE[x_]]] := fix[IMAGE[x]] (* derived 2007 September 10 in UCH-ASS.NB *) Uchains[fix[image[inverse[CART],fix[composite[inverse[IMAGE[x_]],IMAGE[y_]]]]]] := fix[image[inverse[CART],fix[composite[inverse[IMAGE[x]],IMAGE[y]]]]] (* derived 2008 February 12 in REFLEXIV.NB *) Uchains[fix[image[inverse[CART],image[inverse[IMAGE[id[x_]]],RFX]]]] := fix[image[inverse[CART],image[inverse[IMAGE[id[x]]],RFX]]] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[FULL] := FULL (* derived 2007 June 23 in UCHAINS.NB *) Uchains[FUNS] := FUNS (* derived 2008 July 15 in H-RUS.NB *) Uchains[H[RUSSELL]] := H[RUSSELL] (* derived 2007 June 25 in UCH-HULL.NB *) Uchains[hull[fix[UCHAINS],x_]] := hull[fix[UCHAINS],x] (* derived 2007 September 20 in UCH-IDEM.NB *) Uchains[IDEM] := IDEM (* derived 2007 September 8 in UCH-SQ.NB *) Uchains[image[CART,Id]] := image[CART,Id] (* derived 2007 September 8 in UCH-SQ.NB *) Uchains[image[CART,id[cliques[x_]]]] := image[CART,id[cliques[x]]] (* derived 2007 September 8 in UCH-SQ.NB *) Uchains[image[CART,id[P[x_]]]] := image[CART,id[P[x]]] (* derived 2007 September 4 in UCL-IDP.NB *) Uchains[image[IMAGE[DUP],x_]] := image[IMAGE[DUP],Uchains[x]] (* derived 2008 August 23 in IMBCFUNS.NB *) Uchains[image[inverse[BIGCUP],FUNS]] := image[inverse[BIGCUP],FUNS] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[image[inverse[DORA],inverse[S]]] := image[inverse[DORA],inverse[S]] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[image[INVERSE,FUNS]] := image[INVERSE,FUNS] (* derived 2007 September 16 in UCH-TO.NB *) Uchains[image[inverse[HULL[invar[SWAP]]],image[CART,Id]]] := image[inverse[HULL[invar[SWAP]]],image[CART,Id]] (* derived 2007 September 10 in UCH-BO.NB *) Uchains[image[inverse[IMAGE[FIRST]],image[CART,Id]]] := image[inverse[IMAGE[FIRST]],image[CART,Id]] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[image[S,set[x_]]] := union[image[S,set[x]],set[0]] (* derived 2007 August 23 in UCH-IMSG.NB *) Uchains[image[SINGLETON,x_]] := union[image[SINGLETON,x],set[0]] (* derived 2008 February 12 in REFLEXIV.NB *) Uchains[intersection[cliques[x_],cliques[y_]]] := intersection[cliques[x],cliques[y]] (* derived 2007 November 16 in UCH-I-PC.NB *) Uchains[intersection[x_,P[y_]]] := intersection[P[y],Uchains[x]] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[intersection[x_,complement[set[0]]]] := Uchains[x] (* derived 2007 August 9 in UCH-TRV.NB *) Uchains[intersection[RFX,SYM]] := intersection[RFX,SYM] (* derived 2007 August 9 in UCH-TRV.NB *) Uchains[intersection[RFX,TRV]] := intersection[RFX,TRV] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[invar[x_]] := invar[x] (* derived 2007 August 9 in UCH-TRV.NB *) Uchains[INVOL] := INVOL (* derived 2007 November 10 in ALL-MAX.NB *) Uchains[map[x_,y_]] := union[map[x,y],set[0]] (* derived 2007 September 26 in UCH-ORD.NB *) Uchains[nat[x_]] := union[nat[x],set[0]] (* derived 2007 September 26 in UCH-ORD.NB *) Uchains[omega] := succ[omega] (* derived 2007 August 9 in UCH-TRV.NB *) Uchains[OMEGA] := OMEGA (* derived 2007 September 26 in UCH-ORD.NB *) Uchains[ord[x_]] := succ[U[ord[x]]] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[P[x_]] := P[x] (* derived 2007 August 9 in UCH-TRV.NB *) Uchains[PO] := PO (* derived 2007 August 9 in UCH-TRV.NB *) Uchains[PROJ] := PROJ (* derived 2007 September 25 in UCH-CART.NB *) Uchains[range[CART]] := range[CART] (* derived 2008 July 8 in CHN-TFM.NB *) Uchains[range[POWER]] := image[IMAGE[inverse[S]],chains[S]] (* derived 2007 August 23 in UCH-IMSG.NB *) Uchains[range[SINGLETON]] := union[range[SINGLETON],set[0]] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[REGULAR] := REGULAR (* derived 2007 June 23 in UCHAINS.NB *) Uchains[RFX] := RFX (* derived 2007 September 28 in UCH-RS.NB *) Uchains[RS[x_]] := RS[x] (* derived 2007 September 13 in UCH-SGPS.NB *) Uchains[SEMIGPS] := SEMIGPS (* derived 2007 August 9 in UCH-TRV.NB *) Uchains[set[x_]] := set[0,x] (* derived 2007 August 9 in UCH-TRV.NB *) Uchains[set[0,x_]] := set[0,x] (* derived 2007 September 26 in UCH-ORD.NB *) Uchains[spine[S,x_]] := Uclosure[spine[S,x]] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[subcommutant[x_]] := subcommutant[x] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[subvar[x_]] := subvar[x] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[SYM] := SYM (* derived 2007 September 16 in UCH-TO.NB *) Uchains[TO] := TO (* derived 2007 September 28 in UCH-RS.NB *) Uchains[top[x_]] := top[x] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[transvar[x_,y_]] := transvar[x,y] (* derived 2007 August 9 in UCH-TRV.NB *) Uchains[TRV] := TRV (* derived 2007 June 23 in UCHAINS.NB *) Uchains[Uclosure[x_]] := Uclosure[x] (* derived 2007 June 25 in UCH-HULL.NB *) Uchains[union[x_,complement[image[V,y_]]]] := union[complement[image[V,y]],Uchains[x]] (* derived 2007 August 11 in UCH-UIMS.NB *) Uchains[union[image[S,set[x_]],P[x_]]] := union[image[S,set[x]],P[x]] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[union[x_,set[0]]] := Uchains[x] (* derived 2007 June 23 in UCHAINS.NB *) Uchains[UNOPS] := UNOPS (* derived 2007 June 23 in UCHAINS.NB *) Uchains[V] := V (* derived 2007 November 10 in ALL-MAX.NB *) Uchains[X[x_]] := union[set[0],X[x]] (* derived 2007 August 23 in UCH-Z.NB *) Uchains[Z] := union[Z,set[0]] (* derived 2008 September 19 in UCL.NB *) Uclosure[x_] := P[U[x]] /; equal[image[inverse[S],x],x] (* added 2001 September 22 based on UCL.NB *) Uclosure[0] := set[0] (* derived 2004 December 23 in UCLA-SBV.NB *) Uclosure[A[image[SUBVAR,x_]]] := A[image[SUBVAR,x]] (* derived 2004 December 21 in UCL-A.NB *) Uclosure[A[image[UCLOSURE,x_]]] := A[image[UCLOSURE,x]] (* derived 2004 December 21 in UCL-A.NB *) Uclosure[A[intersection[x_,fix[UCLOSURE]]]] := A[intersection[x,fix[UCLOSURE]]] (* added 2003 October 15 based on ACYCLIC.NB *) Uclosure[ACYCLIC] := P[Di] (* added 2002 January 17 based on ANTISYM3.NB *) Uclosure[ANTISYM] := P[cart[V,V]] (* added 2001 October 18 based on UCL-IMS.NB *) Uclosure[BIJ] := P[cart[V,V]] (* added 2003 September 13 based on UCL-TOPS.NB *) Uclosure[binclosed[CAP]] := V (* added 2003 September 13 based on UCL-TOPS.NB *) Uclosure[binclosed[CUP]] := V (* added 2003 September 13 based on UCL-TOPS.NB *) Uclosure[binclosed[DIF]] := union[complement[P[complement[set[0]]]],set[0]] (* derived 2007 May 6 in CHN-UCL.NB *) Uclosure[chains[x_]] := P[fix[x]] (* derived 2006 February 5 in CORE-CL.NB *) Uclosure[CL] := RFX (* added 2001 October 18 based on UCL-IMS.NB *) Uclosure[cliques[x_]] := P[fix[x]] (* derived 2004 December 21 in COMUTANT.NB *) Uclosure[commutant[x_]] := commutant[x] (* derived 2006 September 19 in COMMTIVE.NB *) Uclosure[COMMUTATIVE] := COMMUTATIVE (* derived 2006 February 5 in CORE-SEL.NB *) Uclosure[COMPACT] := V (* added 2001 October 18 based on UCL-IMS.NB *) Uclosure[complement[image[S,x_]]] := P[U[complement[image[S,x]]]] (* added 2003 September 13 based on UCL-TOPS.NB *) Uclosure[complement[P[x_]]] := union[complement[P[x]],set[0]] (* added 2003 September 13 based on UCL-TOPS.NB *) Uclosure[complement[range[SINGLETON]]] := complement[range[SINGLETON]] (* derived 2007 June 26 in UCLOSURE.NB *) Uclosure[complement[set[0]]] := V (* derived 2007 June 9 in CONST.NB *) Uclosure[CONST] := P[cart[V,V]] (* added 2003 April 1 based on UCL-DK.NB *) Uclosure[DEDEKIND] := V (* added 2001 October 15 based on UCL.NB *) Uclosure[DESCENDING] := DESCENDING (* derived 2004 October 4 in CORE-EQV.NB *) Uclosure[EQV] := intersection[RFX,SYM] (* added 2001 September 22 based on UCL.NB *) Uclosure[FINITE] := V (* added 2003 September 13 based on UCL-TOPS.NB *) Uclosure[fix[ACLOSURE]] := V (* added 2002 January 18 based on CLIQUES.NB *) Uclosure[fix[composite[DISJOINT,IMAGE[x_]]]] := P[intersection[complement[fix[x]],domain[VERTSECT[x]]]] (* added 2002 January 17 based on CLIQSWAP.NB *) Uclosure[fix[composite[DISJOINT,INVERSE]]] := P[Di] (* derived 2007 November 22 in SU-HERED.NB *) Uclosure[fix[composite[inverse[E],IMAGE[inverse[BIGCUP]]]]] := V (* derived 2007 October 12 in DJ-IM-IM.NB *) Uclosure[fix[composite[inverse[IMAGE[x_]],DISJOINT,IMAGE[y_]]]] := P[intersection[complement[fix[composite[inverse[x],y]]], domain[VERTSECT[x]],domain[VERTSECT[y]]]] (* derived 2007 September 8 in UCL-XVR.NB *) Uclosure[fix[composite[inverse[IMAGE[x_]],IMAGE[y_]]]] := fix[composite[inverse[IMAGE[x]],IMAGE[y]]] (* derived 2007 September 20 in UCH-IDEM.NB *) Uclosure[fix[composite[inverse[S],COMPOSE,DUP]]] := fix[composite[inverse[S],COMPOSE,DUP]] (* added 2002 November 21 based on UCLFPIMG.NB *) Uclosure[fix[IMAGE[x_]]] := fix[IMAGE[x]] (* added 2003 September 13 based on UCL-TOPS.NB *) Uclosure[fix[UCLOSURE]] := union[complement[P[complement[set[0]]]],set[0]] (* added 2001 September 22 based on UCL.NB *) Uclosure[FULL] := FULL (* derived 2007 December 10 in FUND.NB *) Uclosure[FUND] := P[RUSSELL] (* added 2001 October 18 based on UCL-IMS.NB *) Uclosure[FUNS] := P[cart[V,V]] (* derived 2008 July 15 in UCL-H.NB *) Uclosure[H[DEDEKIND]] := P[H[DEDEKIND]] (* added 2001 October 18 based on UCL-IMS.NB *) Uclosure[H[FINITE]] := P[H[FINITE]] (* derived 2008 July 15 in UCL-H.NB *) Uclosure[H[FULL]] := H[FULL] (* derived 2008 July 15 in UCL-H.NB *) Uclosure[H[FUND]] := P[H[FUND]] (* derived 2008 July 15 in H-RUS.NB *) Uclosure[H[RUSSELL]] := H[RUSSELL] (* added 2003 September 13 based on UCL-TOPS.NB *) Uclosure[image[ADJOIN[set[0]],range[SINGLETON]]] := union[complement[P[complement[set[0]]]],set[0]] (* added 2002 May 2 based on RFX-SYM.NB *) Uclosure[image[CART,Id]] := intersection[RFX,SYM] (* added 2002 May 2 based on RFX-SYM.NB *) Uclosure[image[CART,id[P[x_]]]] := intersection[RFX,SYM,P[cart[x,x]]] (* added 2001 October 18 based on UCL-IMS.NB *) Uclosure[image[DISJOINT,x_]] := P[complement[A[x]]] (* derived 2007 September 4 in UCL-IDP.NB *) Uclosure[image[IMAGE[DUP],x_]] := image[IMAGE[DUP],Uclosure[x]] (* derived 2008 August 23 in IMBCFUNS.NB *) Uclosure[image[inverse[BIGCUP],FUNS]] := P[FUNS] (* derived 2007 September 10 in UCH-BO.NB *) Uclosure[image[inverse[DORA],composite[inverse[S],IMAGE[inverse[DUP]]]]] := image[inverse[DORA],composite[inverse[S],IMAGE[inverse[DUP]]]] (* derived 2007 October 8 in UCL-DORA.NB *) Uclosure[image[inverse[DORA],Id]] := image[inverse[DORA],Id] (* added 2001 December 23 based on SUBVAR.NB *) Uclosure[image[inverse[DORA],inverse[S]]] := image[inverse[DORA],inverse[S]] (* added 2001 December 23 based on SUBVAR.NB *) Uclosure[image[inverse[DORA],S]] := image[inverse[DORA],S] (* derived 2007 December 20 in UCL-DO.NB *) Uclosure[image[inverse[IMAGE[FIRST]],OMEGA]] := image[inverse[IMAGE[FIRST]],OMEGA] (* derived 2008 January 26 in TRV-UCL.NB *) Uclosure[image[inverse[IMAGE[id[cart[V,V]]]],TRV]] := V (* derived 2004 December 21 in SBCOMMUT.NB *) Uclosure[image[inverse[IMAGE[SWAP]],subcommutant[x_]]] := image[inverse[IMAGE[SWAP]],subcommutant[x]] (* derived 2006 April 16 in XVR-IMIN.NB *) Uclosure[image[inverse[IMAGE[thinpart[z_]]],transvar[x_,y_]]] := image[inverse[IMAGE[thinpart[z]]],transvar[x,y]] (* derived 2007 December 20 in UCL-DO.NB *) Uclosure[image[inverse[IMAGE[thinpart[x_]]],Uclosure[y_]]] := image[inverse[IMAGE[thinpart[x]]],Uclosure[y]] (* added 2001 October 16 based on UCL-IMSG.NB *) Uclosure[image[inverse[S],x_]] := P[U[x]] (* derived 2005 November 2 in UCL.NB *) Uclosure[image[Q,OMEGA]] := V (* derived 2003 December 27 based on COFINITE.TXT *) Uclosure[image[RC[x_],FINITE]] := union[image[RC[x],FINITE],set[0]] (* derived 2004 October 12 in CMPCT-OM.NB *) Uclosure[image[RC[omega],omega]] := union[image[RC[omega],omega],singleton[0]] (* added 2001 September 30 based on ACL-3.NB *) Uclosure[image[S,set[x_]]] := union[image[S,set[x]],set[0]] (* added 2001 October 16 based on UCL-IMSG.NB *) Uclosure[image[SINGLETON,x_]] := P[x] (* added 2001 October 18 based on UCL-IMS.NB *) Uclosure[image[V,x_]] := union[image[V,x],set[0]] (* derived 2005 September 15 in UCL-RAVS.NB *) Uclosure[image[VERTSECT[x_],domain[x_]]] := Uclosure[range[VERTSECT[x]]] (* derived 2005 September 15 in UCL-RAVS.NB *) Uclosure[image[VERTSECT[x_],domain[thinpart[x_]]]] := Uclosure[range[VERTSECT[x]]] (* derived 2004 October 2 in UCL-0.NB *) Uclosure[intersection[x_,complement[set[0]]]] := Uclosure[x] (* derived 2004 April 25 in IMS-UCL.NB *) Uclosure[intersection[image[S,x_],Uclosure[x_]]] := Uclosure[x] (* added 2001 October 18 based on UCL-I-PC *) Uclosure[intersection[x_,P[y_]]] := intersection[P[y],Uclosure[x]] (* derived 2006 April 16 in UCL-IREG.NB *) Uclosure[intersection[REGULAR,x_]] := intersection[REGULAR,Uclosure[x]] (* added 2001 October 28 based on IVR-RFX.NB *) Uclosure[intersection[RFX,SYM]] := intersection[RFX,SYM] (* derived 2007 October 7 in UCL-RFX.NB *) Uclosure[intersection[RFX,TRV]] := RFX (* derived 2004 December 21 in SBCOMMUT.NB *) Uclosure[intersection[Uclosure[x_],Uclosure[y_]]] := intersection[Uclosure[x],Uclosure[y]] (* added 2001 September 22 based on UCL.NB *) Uclosure[invar[x_]] := invar[x] (* derived 2006 February 4 in INVOL.NB *) Uclosure[INVOL] := SYM (* derived 2004 December 22 in UCL-COMT.NB *) Uclosure[lb[COMMUTE,x_]] := lb[COMMUTE,x] (* derived 2004 December 24 in LB-SBCMT.NB *) Uclosure[lb[SUBCOMMUTE,x_]] := lb[SUBCOMMUTE,x] (* derived 2005 February 16 in BC-OM.NB *) Uclosure[nat[x_]] := union[nat[x],set[0]] (* added 2001 September 22 based on UCL.NB *) Uclosure[omega] := succ[omega] (* added 2001 September 22 based on UCL.NB *) Uclosure[OMEGA] := OMEGA (* derived 2005 December 6 in ORDINAL.NB *) Uclosure[ord[x_]] := succ[U[ord[x]]] (* added 2001 September 22 based on UCL.NB *) Uclosure[P[x_]] := P[x] (* added 2003 September 24 based on PO-FACTS.NB *) Uclosure[PO] := RFX (* derived 2005 August 18 *) Uclosure[PRIMES] := union[PRIMES,set[0,omega]] (* derived 2006 February 7 in UCL-PROJ.NB *) Uclosure[PROJ] := intersection[invar[composite[DUP,SECOND]],P[cart[V,V]]] (* derived 2005 November 2 in UCL.NB *) Uclosure[range[CART]] := P[cart[V,V]] (* derived 2006 October 11 in RA-CLIQ.NB *) Uclosure[range[CLIQUES]] := fix[IMAGE[inverse[S]]] (* added 2002 December 17 based on UCL-Z.NB *) Uclosure[range[IMAGE[x_]]] := Uclosure[range[VERTSECT[x]]] (* derived 2006 October 16 in PAIRSET.NB *) Uclosure[range[PAIRSET]] := V (* added 2001 October 2 based on ACL-UCL.NB *) Uclosure[range[POWER]] := fix[IMAGE[inverse[S]]] (* added 2001 September 22 based on UCL.NB *) Uclosure[range[SINGLETON]] := V (* derived 2007 January 27 in DIV-SBV.NB *) Uclosure[range[VERTSECT[DIV]]] := fix[IMAGE[DIV]] (* derived 2007 January 27 in DIV-SBV.NB *) Uclosure[range[VERTSECT[inverse[DIV]]]] := fix[IMAGE[inverse[DIV]]] (* derived 2005 September 15 in UCL-RAVS.NB *) Uclosure[range[VERTSECT[setpart[x_]]]] := range[IMAGE[setpart[x]]] (* added 2001 September 22 based on UCL.NB *) Uclosure[REGULAR] := REGULAR (* added 2001 October 28 based on IVR-RFX.NB *) Uclosure[RFX] := RFX (* derived 2004 August 7 in RS-1.NB *) Uclosure[RS[x_]] := RS[x] (* derived 2005 November 2 in UCL.NB *) Uclosure[SELECT] := V (* derived 2004 April 27 in UCL-SS.NB *) Uclosure[set[x_]] := set[0,x] (* added 2003 March 18 based on INDSCRET.NB *) Uclosure[set[0,x_]] := set[0,x] (* derived 2004 June 16 in TRANSVAR.NB *) Uclosure[subcommutant[x_]] := subcommutant[x] (* added 2001 September 22 based on UCL.NB *) Uclosure[subvar[x_]] := subvar[x] (* derived 2005 February 23 in X3729.NB *) Uclosure[succ[nat[x_]]] := succ[nat[x]] (* derived 2003 December 25 in TOPSDEFN.NB *) Uclosure[succ[omega]] := succ[omega] (* derived 2006 March 14 in ORDRULES.NB *) Uclosure[succ[ord[x_]]] := succ[ord[x]] (* added 2001 September 30 based on ACL-2.NB *) Uclosure[succ[set[0]]] := succ[set[0]] (* derived 2007 June 27 in TOPS.NB *) Uclosure[succ[set[set[0]]]] := P[succ[set[0]]] (* added 2001 October 14 based on RA-POW.NB *) Uclosure[SYM] := SYM (* derived 2006 February 5 in CORE-TO.NB *) Uclosure[TO] := RFX (* derived 2005 October 25 in TOP-WRAP.NB *) Uclosure[top[x_]] := top[x] (* added 2003 September 13 based on UCL-TOPS.NB *) Uclosure[TOPS] := union[complement[P[complement[set[0]]]],set[0]] (* derived 2004 June 16 in TRANSVAR.NB *) Uclosure[transvar[x_,y_]] := transvar[x,y] (* added 2003 April 1 based on TRV-UCL.NB *) Uclosure[TRV] := P[cart[V,V]] (* derived 2004 December 23 in UCLSBCMT.NB *) Uclosure[ub[SUBCOMMUTE,x_]] := ub[SUBCOMMUTE,x] (* derived 2007 June 23 in UCHAINS.NB *) Uclosure[Uchains[x_]] := Uclosure[x] (* added 2002 January 22 based on UCLUCL.NB *) Uclosure[Uclosure[x_]] := Uclosure[x] (* derived 2008 September 22 in UCL-IMV.NB *) Uclosure[union[x_,complement[image[V,y_]]]] := union[complement[image[V,y]],Uclosure[x]] (* derived 2006 April 20 in UCL-IMS.NB *) Uclosure[union[x_,image[S,set[y_]]]] := union[image[S,set[y]],Uclosure[x]] (* derived 2008 September 22 in UCL-IMV.NB *) Uclosure[union[x_,image[V,y_]]] := union[image[V,y],Uclosure[x]] (* derived 2004 October 2 in UCL-0.NB *) Uclosure[union[x_,intersection[y_,set[0]]]] := Uclosure[x] (* added 2003 September 4 based on IDEMCORE.NB *) Uclosure[union[P[x_],P[y_]]] := P[union[x,y]] (* derived 2004 April 27 in UCL-SS.NB *) Uclosure[union[x_,set[y_]]] := union[image[ADJOIN[y],Uclosure[x]],Uclosure[x]] (* added 2001 September 22 based on UCL.NB *) Uclosure[V] := V (* added 2003 September 29 based on WF.NB *) Uclosure[WF] := P[Di] (* derived 2006 February 5 in CORE-WO.NB *) Uclosure[WO] := RFX (* acronym introduced 2008 February 12 in REFLEXIV.NB *) udora[x_] := union[domain[x],range[x]] (* Theorem U-6 in U *) union[x_,x_] := x (* Theorem U-4 in U *) union[0,x_] := x (* added 2003 January 18 based on A-SS-A.NB *) union[A[x_],complement[image[V,x_]]] := A[x] union[A[x_],image[V,x_]] := V (* added 2003 June 7 based on ACL-U.NB *) union[Aclosure[x_],Aclosure[y_], image[CAP,cart[Aclosure[x_],Aclosure[y_]]]] := Aclosure[union[x,y]] (* derived 2008 August 14 in ALL-ID.NB *) union[allclosed[id[x]],image[S,x]] := V (* added 2003 October 28 based on APPLY.NB *) union[APPLY[x_,y_],complement[image[V,intersection[domain[x_],set[y_]]]]] := APPLY[x,y] (* added 2003 October 28 based on APPLY.NB *) union[APPLY[x_,y_],complement[image[V,set[y_]]]] := APPLY[x,y] (* derived 2005 December 24 *) union[APPLY[image[x_,y_],z_],complement[image[V,y_]]] := APPLY[image[x,y],z] (* derived 2004 August 29 in A-SS-AP.NB *) union[APPLY[x_,PAIR[y_,z_]],complement[image[V,intersection[image[domain[x_],set[y_]],set[z_]]]]] := APPLY[x,PAIR[y,z]] (* added 2003 October 28 based on APPLY.NB *) union[APPLY[x_,PAIR[y_,z_]],complement[image[V,set[y_]]]] := APPLY[x,PAIR[y,z]] (* added 2003 October 28 based on APPLY.NB *) union[APPLY[x_,PAIR[y_,z_]],complement[image[V,set[z_]]]] := APPLY[x,PAIR[y,z]] (* added 2003 October 28 based on APPLY.NB *) union[APPLY[x_,pair[y_,z_]],complement[image[V,set[y_]]], complement[image[V,set[z_]]]] := APPLY[x,PAIR[y,z]] (* derived 2008 January 18 in AP-CARD.NB *) union[card[x_],complement[image[V,intersection[OMEGA,image[Q,set[x_]]]]]] := card[x] (* Theorem CP-6A in CP2 *) union[cart[x_,z_],cart[y_,z_]] := cart[union[x,y],z] (* Theorem CP-6B in CP2 *) union[cart[x_,y_],cart[x_,z_]] := cart[x,union[y,z]] (* derived 2004 November 26 in XSCP-MAP.NB *) union[cart[cart[V,set[0]],set[set[0]]],composite[MAP,id[cart[V,complement[set[0]]]]]] := composite[XS,CART] union[cart[cart[V,V],cart[V,V]],composite[inverse[FIRST],x_,FIRST]] := cart[cart[V,V],cart[V,V]] union[cart[cart[V,V],cart[V,V]],composite[inverse[SECOND],y_,SECOND]] := cart[cart[V,V],cart[V,V]] (* added 2002 January 2 based on INE-CPS.NB *) union[cart[cart[V,V],set[0]],composite[inverse[S],COMPOSE]] := composite[inverse[S],COMPOSE] union[cart[u_,v_],complement[cart[x_,y_]]] := intersection[complement[cart[x,intersection[y,complement[v]]]], complement[cart[intersection[x,complement[u]],y]]] (* added 2002 November 29 based on PLUS.NB *) union[cart[complement[cart[omega,omega]],set[0]], composite[COMPOSE,cross[composite[IMAGE[SWAP],PLUS],PLUS]]] := VERTSECT[EQUIDIFF] (* added 2003 June 23 based on DI-RULES.NB *) union[cart[complement[x_],x_],composite[id[x_],Di,id[x_]]] := composite[id[x],Di] (* added 2003 June 23 based on DI-RULES.NB *) union[cart[x_,complement[x_]],composite[id[x_],Di,id[x_]]] := composite[Di,id[x]] (* derived 2004 July 23 in X23--.NB *) union[cart[complement[domain[VERTSECT[x_]]],V],composite[complement[E],thinpart[x_]]] := composite[complement[E],x] (* derived 2004 November 16 in XS.NB *) union[cart[complement[SELECT],set[0]],composite[inverse[S],XS]] := composite[inverse[S],XS] (* derived 2004 November 16 in XS.NB *) union[cart[complement[SELECT],V],composite[S,XS]] := composite[S,XS] (* added 2002 January 3 based on REPLACE.NB *) union[cart[x_,P[complement[cart[V,V]]]], composite[DISJOINT,IMAGE[SWAP]]] := composite[DISJOINT,IMAGE[SWAP]] (* suggested by ReplaceTest added 1998 September 10 *) union[cart[range[x_],V],composite[y_,inverse[x_]]] := cart[range[x],V] (* added 2002 May 25 based on POW-SUCC.NB *) union[cart[set[0],Id],power[x_]] := power[x] (* added 2003 August 8 based on REPLACE.NB *) union[cart[set[0],intersection[omega,set[x_]]],plus[x_]] := plus[x] (* derived 2005 February 16 in BC-OM.NB *) union[cart[set[0],set[0]],composite[inverse[SUCC],id[omega]]] := composite[BIGCUP,id[omega]] (* derived 2004 September 29 in WF-REC-7.NB *) union[cart[set[0],set[0]],id[intersection[omega,complement[set[0]]]]] := id[omega] (* added 2002 June 26 based on OMEGA.NB *) union[cart[set[0],set[0]],id[omega]] := id[omega] (* derived 2004 June 26 in CART-PBF.NB *) union[cart[set[0],V],composite[id[image[V,set[x_]]],S, IMAGE[composite[id[cart[V,x_]],inverse[FIRST]]]]] := composite[S,IMAGE[composite[id[cart[V,x]],inverse[FIRST]]]] (* derived 2004 June 26 in CART-PBF.NB *) union[cart[set[0],V],composite[id[image[V,set[x_]]],S, IMAGE[composite[id[cart[x_,V]],inverse[SECOND]]]]] := composite[S,IMAGE[composite[id[cart[x,V]],inverse[SECOND]]]] (* derived 2006 January 19 in VS-LUB.NB *) union[cart[set[0],V],composite[id[range[x_]],UB[x_]]] := UB[x] (* derived 2006 January 1 in RAVS-UBX.NB *) union[cart[set[0],V],composite[UB[x_],id[complement[set[0]]]]] := UB[x] (* derived 2004 December 21 in SBCOMMUT.NB *) union[cart[set[0],V],LB[x_]] := LB[x] (* derived 2004 December 21 in SBCOMMUT.NB *) union[cart[set[0],V],UB[x_]] := UB[x] (* derived 2006 July 13 in CLOCK.NB *) union[cart[set[nat[x_]],set[0]],composite[SUCC,id[nat[x_]]]] := clock[succ[nat[x]]] (* derived 2005 February 3 in WF-DIV.NB *) union[cart[set[y_],set[y_]],id[x_]] := id[union[x,set[y]]] (* derived 2005 December 25 in AP-CART.NB *) union[cart[union[x_,complement[image[V,z_]]],y_],complement[image[V,z_]]] := union[cart[x,y],complement[image[V,z]]] (* derived 2005 December 25 in AP-CART.NB *) union[cart[x_,union[y_,complement[image[V,z_]]]],complement[image[V,z_]]] := union[cart[x,y],complement[image[V,z]]] (* derived 2005 December 25 in APCPSCRS.NB *) union[cart[V,complement[image[V,x_]]],complement[image[V,x_]]] := complement[image[V,x]] (* added 2002 September 7 based on REPLACE.NB *) union[cart[V,V],U[subcommutant[x_]]] := V (* added 2003 February 26 based on ACL-Z.NB *) union[cliques[composite[E,inverse[E]]], image[inverse[BIGCAP],set[0]]] := V (* added 2000 December 17 based on EQUIV.NB *) union[cliques[x_],set[0]] := cliques[x] (* Theorem C-3B in C1 *) union[complement[x_],x_] := V (* added 2003 October 15 based on ACYCLIC.NB *) union[complement[ACYCLIC],complement[P[cart[V,V]]]] := complement[ACYCLIC] union[complement[cart[u_,v_]],complement[cart[x_,y_]]] := complement[cart[intersection[u,x],intersection[v,y]]] (* added 2000 November 7 based on UB-1.NB *) union[complement[cart[V,V]],complement[composite[x_,y_]]] := complement[composite[x,y]] union[complement[cart[V,V]],composite[Id,x_]] := union[complement[cart[V,V]],x] union[complement[domain[x_]],complement[fix[x_]]] := complement[fix[x]] union[complement[domain[y_]],complement[fix[composite[x_,y_]]]] := complement[fix[composite[x,y]]] (* added 1999 December 24 based on VERTSECT.NB *) union[complement[domain[x_]],domain[VERTSECT[x_]]] := domain[VERTSECT[x]] (* derived 2007 October 12 in DJ-IM-IM.NB *) union[complement[domain[VERTSECT[x_]]],domain[x_]] := domain[x] union[complement[fix[x_]],complement[range[x_]]] := complement[fix[x]] union[complement[fix[composite[x_,y_]]],complement[range[x_]]] := complement[fix[composite[x,y]]] (* added 2003 October 15 based on ACYCLIC.NB *) union[complement[image[inverse[IMAGE[id[x_]]],y_]],complement[P[x_]]] := union[complement[y],complement[P[x]]] (* Discovered 1998 October 5 *) union[complement[image[S,set[x_]]],complement[P[x_]]] := complement[set[x]] union[complement[image[V,x_]],complement[x_]] := complement[x] (* special case needed when x is replaced by complement[x] added 1998 September 10 *) union[complement[image[V,complement[fix[x_]]]],image[V,complement[x_]]] := V (* derived 2005 September 25 in VARIOUS.NB *) union[complement[image[V,x_]],composite[id[image[V,x_]],y_]] := union[complement[image[V,x]],composite[Id,y]] (* derived 2005 December 25 in APCPSCRS.NB *) union[complement[image[V,z_]],cross[union[x_,complement[image[V,z_]]],y_]] := union[complement[image[V,z]],cross[x,y]] (* derived 2005 December 25 in APCPSCRS.NB *) union[complement[image[V,z_]],cross[x_,union[y_,complement[image[V,z_]]]]] := union[complement[image[V,z]],cross[x,y]] (* suggested by ReplaceTest added 1998 September 10 *) union[complement[image[V,fix[composite[x_,complement[y_]]]]], image[V,intersection[x_,complement[inverse[y_]]]]] := V (* added 1998 September 10 *) union[complement[image[V,fix[composite[x_,complement[inverse[y_]]]]]], image[V,intersection[complement[y_],x_]]] := V (* suggested by ReplaceTest added 1998 September 10 *) union[complement[image[V,fix[composite[x_,y_]]]],image[V,y_]] := V (* added 1998 September 10 *) union[complement[image[V,fix[composite[x_,y_]]]], image[V,intersection[domain[x_],range[y_]]]] := V (* suggested by ReplaceTest added 1998 September 10 *) union[complement[image[V,fix[composite[x_,inverse[y_]]]]], image[V,intersection[domain[x_],domain[y_]]]] := V (* added 1998 September 10 *) union[complement[image[V,fix[x_]]],image[V,x_]] := V union[complement[image[V,x_]],image[V,complement[y_]],image[V,intersection[x_,y_]]] := V (* suggested by ReplaceTest added 1998 September 10 *) union[complement[image[V,x_]],image[V,domain[y_]], image[V,intersection[x_,complement[inverse[y_]]]]] := V union[complement[image[V,x_]],image[V,y_],image[V,intersection[x_,complement[y_]]]] := V (* derived 2007 May 7 in IMV-SET.NB *) union[complement[image[V,x_]],image[V,set[x_]]] := image[V,set[x]] union[complement[image[V,intersection[x_,complement[z_]]]], image[V,intersection[x_,complement[y_]]],image[V,intersection[y_,complement[z_]]]] := V (* derived 2007 March 4 in NTDV-Q1.TXT *) union[complement[image[V,intersection[image[DIV,set[y_]],set[x_]]]],natdiv[x_,y_]] := natdiv[x,y] (* derived 2004 March 29 based on HULL.NB *) union[complement[image[V,intersection[x_,image[S,set[y_]]]]],hull[x_,y_]] := hull[x,y] (* derived 2007 March 4 in NTDV-Q1.TXT *) union[complement[image[V,intersection[omega,set[x_]]]], intersection[image[V,y_],natdiv[natsub[x_,natmod[x_,y_]],y_]]] := natdiv[natsub[x,natmod[x,y]],y] (* derived 2007 March 4 in IMV-NAT.NB *) union[complement[image[V,intersection[omega,set[x_]]]], intersection[image[V,y_],natmul[x_,y_]]] := natmul[x,y] (* derived 2007 March 4 in IMV-NAT.NB *) union[complement[image[V,intersection[omega,set[x_]]]], intersection[image[V,x_],natmul[x_,y_]]] := intersection[image[V,x],natmul[x,y]] (* derived 2007 March 6 in MUL-DIV.NB *) union[complement[image[V,intersection[omega,set[x_]]]], intersection[image[V,y_],natsub[x_,natmod[x_,y_]]]] := natsub[x,natmod[x,y]] (* added 2002 July 28 based on ADD-NAT.NB *) union[complement[image[V,intersection[omega,set[x_]]]],natadd[x_,y_]] := natadd[x,y] (* derived 2007 March 4 in NTDV-Q1.TXT *) union[complement[image[V,intersection[omega,set[x_]]]],natdiv[x_,y_]] := natdiv[x,y] (* derived 2007 March 4 in NTDV-Q1.TXT *) union[complement[image[V,intersection[omega,set[y_]]]],natdiv[x_,y_]] := natdiv[x,y] (* derived 2006 July 2 in IMV-EXP.NB *) union[complement[image[V,intersection[omega,set[x_]]]],natexp[x_,y_]] := natexp[x,y] (* derived 2006 July 2 in IMV-EXP.NB *) union[complement[image[V,intersection[omega,set[y_]]]],natexp[x_,y_]] := natexp[x,y] (* derived 2005 July 18 in MODULO.NB *) union[complement[image[V,intersection[omega,set[x_]]]],natmod[x_,y_]] := natmod[x,y] (* derived 2005 July 18 in MODULO.NB *) union[complement[image[V,intersection[omega,set[y_]]]],natmod[x_,y_]] := natmod[x,y] (* added 2002 August 21 based on NATMUL.NB *) union[complement[image[V,intersection[omega,set[x_]]]],natmul[x_,y_]] := natmul[x,y] (* added 2002 August 21 based on NATMUL.NB *) union[complement[image[V,intersection[omega,set[y_]]]],natmul[x_,y_]] := natmul[x,y] (* added 2002 August 29 based on MULASSOC.NB *) union[complement[image[V,intersection[omega,set[x_]]]],natmul[z_,natmul[x_,y_]]] := natmul[z,natmul[x,y]] (* added 2002 September 17 based on DIFFER.NB *) union[complement[image[V,intersection[omega,set[x_]]]],natsub[x_,y_]] := natsub[x,y] (* added 2002 September 17 based on DIFFER.NB *) union[complement[image[V,intersection[omega,set[y_]]]],natsub[x_,y_]] := natsub[x,y] (* derived 2007 March 6 in MUL-DIV.NB *) union[complement[image[V,intersection[omega,set[y_]]]], natsub[x_,natmod[x_,y_]]] := natsub[x,natmod[x,y]] (* added 2002 July 28 based on ADDRULES.NB *) union[complement[image[V,intersection[omega,set[x_]]]],succ[natadd[x_,y_]]] := succ[natadd[x,y]] (* derived 2008 January 18 in AP-RANK.NB *) union[complement[image[V,intersection[REGULAR,set[x_]]]],rank[x_]] := rank[x] (* derived 2007 March 4 in IMV-NAT.NB *) union[complement[image[V,intersection[x_,set[y_]]]],complement[image[V,set[y_]]]] := complement[image[V,intersection[x,set[y]]]] union[complement[image[V,intersection[y_,set[x_]]]], image[V,intersection[y_,complement[z_]]],image[V,intersection[z_,set[x_]]]] := V (* added 2003 August 9 based on REIFZADD.NB *) union[complement[image[V,intersection[Z,set[x_]]]],intadd[x_,y_]] := intadd[x,y] (* derived 2007 January 9 in INTMUL.NB *) union[complement[image[V,intersection[Z,set[x_]]]],intmul[x_,y_]] := intmul[x,y] (* derived 205 December 25 in AP-MAP.NB *) union[complement[image[V,z_]],map[x_,union[y_,complement[image[V,z_]]]]] := union[complement[image[V,z]],map[x,y]] (* Quaife's Theorem RE7 added 1998 September 6 *) union[complement[image[V,set[x_]]],complement[image[V,set[complement[x_]]]]] := V (* derived 2004 December 10 in AP-IMG.NB *) union[complement[image[V,set[x_]]],complement[image[V,set[domain[x_]]]]] := complement[image[V,set[x]]] (* derived 2004 December 10 in AP-IMG.NB *) union[complement[image[V,set[x_]]],complement[image[V,set[domain[domain[x_]]]]]] := complement[image[V,set[x]]] (* derived 2008 July 5 in UBD-DEFN.NB *) union[complement[image[V,set[x_]]],complement[image[V,set[domain[UB[x_]]]]]] := complement[image[V,set[x]]] (* derived 2004 December 10 in AP-IMG.NB *) union[complement[image[V,set[x_]]],complement[image[V,set[image[x_,y_]]]]] := complement[image[V,set[x]]] (* derived 2006 April 11 in IMINRANK.NB *) union[complement[image[V,set[x_]]],complement[image[V,set[image[inverse[RANK],x_]]]]] := complement[image[V,set[x]]] (* replaced 2002 January 1 based on REPLACE.NB *) union[complement[image[V,set[x_]]],complement[image[V,set[y_]]],pair[x_,y_]] := PAIR[x,y] (* derived 2004 December 10 in AP-IMG.NB *) union[complement[image[V,set[x_]]],complement[image[V,set[range[x_]]]]] := complement[image[V,set[x]]] (* derived 2004 December 10 in AP-IMG.NB *) union[complement[image[V,set[x_]]],complement[image[V,set[range[domain[x_]]]]]] := complement[image[V,set[x]]] (* derived 2004 August 10 in RS-3.NB *) union[complement[image[V,set[x_]]],complement[image[V,set[RS[x_]]]]] := complement[image[V,set[x]]] (* derived 2008 September 8 in AP-PAIR.NB *) union[x_,complement[image[V,set[first[x_]]]]] := PAIR[first[x],second[x]] (* added 2001 November 20 based on SWAP.NB *) union[complement[image[V,set[x_]]],first[x_]] := first[x] (* added 2001 November 29 based on CO-SS.NB *) union[complement[image[V,set[first[x_]]]],first[x_]] := first[x] (* derived 2008 September 10 in PAIRPAIR.NB *) union[x_,complement[image[V,set[first[first[x_]]]]]] := PAIR[PAIR[first[first[x]],second[first[x]]],second[x]] (* derived 2008 September 10 in PAIRPAIR.NB *) union[complement[image[V,set[first[first[x_]]]]],PAIR[first[x],second[x]]] := PAIR[PAIR[first[first[x]],second[first[x]]],second[x]] (* derived 2008 December 23 in IDS-FUNS.NB *) union[complement[image[V,set[first[x_]]]],PAIR[x_,y_]] := PAIR[PAIR[first[x],second[x]],y] (* derived 2008 December 23 in IDS-FUNS.NB *) union[complement[image[V,set[first[y_]]]],PAIR[x_,y_]] := PAIR[x,PAIR[first[y],second[y]]] (* added 2001 November 29 based on CO-SS.NB *) union[complement[image[V,set[first[x_]]]],second[x_]] := second[x] (* added 2001 April 27 based on MAP2.NB *) union[complement[image[V,set[y_]]], image[V,intersection[x_,complement[y_]]],image[V,set[x_]]] := V (* derived 2005 December 24 in AP-INT.NB *) union[complement[image[V,set[x_]]],intadd[x_,y_]] := intadd[x,y] (* derived 2007 January 9 in MIXMUL.NB *) union[complement[image[V,set[intmul[x_,y_]]]],intmul[x_,y_]] := intmul[x,y] (* derived 2007 January 5 based on INTMUL-5.NB *) union[complement[image[V,set[x_]]],intmul[x_,y_]] := intmul[x,y] (* derived 2007 January 5 based on INTMUL-5.NB *) union[complement[image[V,set[y_]]],intmul[x_,y_]] := intmul[x,y] (* derived 2005 December 24 in AP-NAT.NB *) union[complement[image[V,set[x_]]],natadd[x_,y_]] := natadd[x,y] (* derived 2006 June 27 in NATEXP-1.NB *) union[complement[image[V,set[x_]]],natexp[x_,y_]] := natexp[x,y] (* derived 2006 June 27 in NATEXP-1.NB *) union[complement[image[V,set[y_]]],natexp[x_,y_]] := natexp[x,y] (* derived 2005 December 24 in AP-NAT.NB *) union[complement[image[V,set[x_]]],natmod[x_,y_]] := natmod[x,y] (* derived 2005 December 24 in AP-NAT.NB *) union[complement[image[V,set[y_]]],natmod[x_,y_]] := natmod[x,y] (* derived 2005 December 24 in AP-NAT.NB *) union[complement[image[V,set[x_]]],natmul[x_,y_]] := natmul[x,y] (* added 2002 Septemeber 16 based on SUB-DUP.NB *) union[complement[image[V,set[x_]]],natsub[x_,y_]] := natsub[x,y] (* added 2002 Septemeber 16 based on SUB-DUP.NB *) union[complement[image[V,set[y_]]],natsub[x_,y_]] := natsub[x,y] (* added 2002 September 16 based on SUB-SUCC.NB *) union[complement[image[V,set[y_]]],natsub[x_,succ[y_]]] := natsub[x,succ[y]] (* added 2002 January 1 based on PAIR-MEM.NB *) union[complement[image[V,set[x_]]],PAIR[x_,y_]] := PAIR[x,y] (* added 2002 January 1 based on PAIR-MEM.NB *) union[complement[image[V,set[y_]]],PAIR[x_,y_]] := PAIR[x,y] (* added 2003 November 13 based on APPLY-SP.NB *) union[complement[image[V,set[x_]]],pair[x_,x_]] := PAIR[x,x] (* derived 2005 December 24 in AP-ASSOC.NB *) union[complement[image[V,set[x_]]],PAIR[first[x_],y_]] := PAIR[first[x],y] (* derived 2005 December 24 in AP-ASSOC.NB *) union[complement[image[V,set[y_]]],PAIR[x_,first[y_]]] := PAIR[x,first[y]] (* derived 2005 December 24 in AP-ASSOC.NB *) union[complement[image[V,set[x_]]],PAIR[PAIR[x_,y_],z_]] := PAIR[PAIR[x,y],z] (* derived 2005 December 24 in AP-ASSOC.NB *) union[complement[image[V,set[y_]]],PAIR[PAIR[x_,y_],z_]] := PAIR[PAIR[x,y],z] (* derived 2005 December 24 in AP-ASSOC.NB *) union[complement[image[V,set[y_]]],PAIR[x_,PAIR[y_,z_]]] := PAIR[x,PAIR[y,z]] (* derived 2005 December 24 in AP-ASSOC.NB *) union[complement[image[V,set[z_]]],PAIR[x_,PAIR[y_,z_]]] := PAIR[x,PAIR[y,z]] (* derived 2005 December 24 in AP-X.NB *) union[complement[image[V,set[x_]]],PAIR[PAIR[second[x_],y_],z_]] := PAIR[PAIR[second[x],y],z] (* derived 2005 December 24 in AP-X.NB *) union[complement[image[V,set[y_]]],PAIR[x_,PAIR[second[y_],z_]]] := PAIR[x,PAIR[second[y],z]] (* derived 2005 December 24 in AP-ASSOC.NB *) union[complement[image[V,set[x_]]],PAIR[second[x_],y_]] := PAIR[second[x],y] (* derived 2005 December 24 in AP-ASSOC.NB *) union[complement[image[V,set[y_]]],PAIR[x_,second[y_]]] := PAIR[x,second[y]] (* added 2001 November 20 based on SWAP.NB *) union[complement[image[V,set[x_]]],second[x_]] := second[x] (* derived 2005 December 25 in AP-PRST.NB *) union[complement[image[V,x_]],set[y__,union[z_,complement[image[V,x_]]]]] := union[complement[image[V,x]],set[y,z]] union[complement[x_],intersection[x_,y_]] := union[complement[x],y] (* derived 2004 February 20 in REPLACE1.NB *) union[complement[lb[x_,V]],domain[x_]] := V (* derived 2004 February 20 in REPLACE1.NB *) union[complement[lb[x_,V]],lb[x_,y_]] := V (* added 2000 September 19 based on PC-RULE.LOG *) union[complement[P[x_]],complement[P[y_]]] := complement[P[intersection[x,y]]] union[complement[S],complement[inverse[S]]] := complement[Id] (* derived 2007 December 28 in COARSER.NB *) union[complement[succ[set[0]]],set[set[0]]] := complement[set[0]] (* derived 2004 February 20 in REPLACE1.NB *) union[complement[ub[x_,V]],range[x_]] := V (* derived 2004 February 20 in REPLACE1.NB *) union[complement[ub[x_,V]],ub[x_,y_]] := V union[composite[x_,y_],cart[domain[y_],V]] := cart[domain[y],V] union[composite[x_,y_],cart[V,range[x_]]] := cart[V,range[x]] (* added 2001 December 31 based on DORA-DJ.NB *) union[composite[x___,complement[S],y___], composite[x___,complement[inverse[S]],y___]] := composite[x,Di,y] (* added 1999 October 19 based on RULEFAIL.2 *) union[composite[x_,y_],composite[x_,complement[y_]]] := cart[V,range[x]] (* added 1999 October 19 based on RULEFAIL.2 *) union[composite[x_,y_],composite[complement[x_],y_]] := cart[domain[y],V] (* added 2000 August 28 based on UCoLog.1 *) union[composite[x_,y_,z_],composite[x_,complement[y_],z_]] := cart[domain[z],range[x]] (* added 2000 August 28 based on UCoLog.1 *) union[composite[x_,y_],composite[x_,Di,y_]] := cart[domain[y],range[x]] (* added 2002 June 12 based on ABSORB.NB *) union[composite[w___,x_,z___], composite[w___,intersection[x_,y_],z___]] := composite[w,x,z] (* added 2002 April 19 based on SYMDIF.NB *) union[composite[w___,x_,z___], composite[w___,intersection[y_,complement[x_]],z___]] := union[composite[w,x,z],composite[w,y,z]] (* derived 2007 November 27 in TRVIDX-E.NB *) union[composite[x_,y_],composite[x_,trv[y_],trv[y_]]] := composite[x,trv[y]] (* derived 2007 November 27 in TRVIDX-E.NB *) union[composite[x_,y_],composite[trv[composite[x_,y_]],trv[composite[x_,y_]]]] := trv[composite[x,y]] (* added 1998 July 2 *) union[z_,composite[Di,z_]] := union[cart[domain[z],V],intersection[z,complement[cart[V,V]]]] (* added 1998 July 2 *) union[z_,composite[z_,Di]] := union[cart[V,range[z]],intersection[z,complement[cart[V,V]]]] (* added 2001 November 29 based on THIN-RS.NB; corrected 2003 April 15 *) union[composite[x___,DISJOINT,y___],composite[x___,E,inverse[E],y___]] := cart[domain[composite[Id,y]],range[composite[Id,x]]] (* added 2002 November 12 based on VS-RULES.NB *) union[composite[E,complement[x_]],composite[complement[E],x_]] := composite[Id,complement[VERTSECT[x]]] union[composite[Id,x_],x_] := x union[composite[Id,complement[inverse[x_]]],inverse[x_]] := cart[V,V] (* added 1998 August 30 *) union[composite[Id,complement[S]],composite[Id,complement[inverse[S]]]] := Di (* added 1999 November 11 based on 1999/NOV/07/CARTDORA.NB *) union[composite[id[complement[set[0]]],CART], cart[union[cart[V,set[0]],cart[set[0],V]], set[0]]] := CART union[composite[Id,x_],composite[id[y_],x_]] := composite[Id,x] (* added 2002 March 27 based on TRV.NB *) union[composite[Id,x_],composite[trv[x_],trv[x_]]] := trv[x] union[composite[Id,x_], intersection[x_,complement[cart[V,V]]]] := x (* corrected 1999 February 18 *) union[composite[x_,id[y_]],x_] := x (* added 1999 August 13 *) union[composite[x_,id[y_]],composite[x_,id[z_]]] := composite[x,id[union[y,z]]] (* added 1999 August 13 corrected 1999 August 17 *) union[composite[id[x_],z_],composite[id[y_],z_]] := composite[id[union[x,y]],z] union[composite[z_,id[x_]],intersection[z_,complement[cart[x_,V]]]] := z union[composite[id[y_],x_],x_] := x union[composite[id[y_],x_],intersection[x_,complement[cart[V,y_]]]] := x union[composite[x_,id[y_]],composite[Id,x_]] := composite[Id,x] (* added 2000 February 5 based on REVISIT.NB *) union[composite[Id,x_],funpart[x_]] := composite[Id,x] union[composite[id[y_],z_,id[x_]],z_] := z union[composite[id[y_],z_,id[x_]],intersection[z_,complement[cart[x_,y_]]]] := z (* added 2002 September 15 based on OMEGA.NB *) union[composite[id[omega],E],composite[id[omega],inverse[S],id[omega]]] := cart[omega,omega] (* added 2002 June 9 based on OMEGA.NB *) union[composite[id[omega],E],id[omega]] := composite[id[omega],S,id[omega]] (* derived 2006 February 19 in ON-E-S.NB *) union[composite[id[OMEGA],E],id[OMEGA]] := composite[id[OMEGA],S,id[OMEGA]] (* added 2002 June 21 based on NATADD.NB *) union[composite[id[omega],S,id[omega]],composite[id[omega],inverse[S],id[omega]]] := cart[omega,omega] (* derived 2008 August 5 in E-E-ON.NB *) union[composite[id[OMEGA],SUCC],composite[id[OMEGA],inverse[BIGCUP],E]] := composite[id[OMEGA],E] (* derived 2008 August 5 in E-E-ON.NB *) union[composite[id[OMEGA],SUCC],composite[id[OMEGA],inverse[IMAGE[inverse[SUCC]]],E]] := composite[id[OMEGA],E] (* added 2002 March 24 based on TRV-2.NB *) union[composite[inverse[E],BIGCUP,TC],inverse[E]] := composite[inverse[E],TC] (* added 2002 September 15 based on OMEGA.NB *) union[composite[inverse[E],id[omega]],composite[id[omega],S,id[omega]]] := cart[omega,omega] (* added 2002 June 9 based on OMEGA.NB *) union[composite[inverse[E],id[omega]],id[omega]] := composite[id[omega],inverse[S],id[omega]] (* derived 2007 August 2 in HULL-SG.NB *) union[composite[inverse[E],id[OMEGA]],id[OMEGA]] := composite[id[OMEGA],inverse[S],id[OMEGA]] (* added 2002 November 13 based on NORM-ADD.NB *) union[composite[inverse[E],IMAGE[id[complement[cart[V,V]]]]], GREATEST[complement[cross[x_,y_]]]] := GREATEST[complement[cross[x,y]]] (* derived 2007 September 15 in HULIVRSW.NB *) union[composite[inverse[E],IMAGE[SWAP]],inverse[E]] := composite[inverse[E],HULL[invar[SWAP]]] (* derived 2008 February 26 in WF-TRICH.NB *) union[composite[inverse[E],SUCC],composite[inverse[SUCC],E]] := union[E,composite[inverse[E],SUCC]] (* added 2002 April 23 based on TRICHOT.NB *) union[composite[inverse[SUCC],E],inverse[E]] := union[E,composite[inverse[E],SUCC]] (* derived 2006 October 10 in REPLACE.NB *) union[composite[LB[x_],IMAGE[id[y_]]],LB[x_]] := composite[LB[x],IMAGE[id[y]]] (* derived 2008 October 21 in JOIN.NB *) union[composite[list[y_],inverse[plus[domain[list[x_]]]]],list[x_]] := APPLY[JOIN,PAIR[list[x],list[y]]] (* derived 2007 January 10 in INTDIV.NB *) union[composite[MIXDIV,inverse[PLUS]],composite[MIXDIV,inverse[PLUS],INVERSE]] := INTDIV (* derived 2006 December 15 in MIXDIV.NB *) union[composite[PLUS,DIV],composite[INVERSE,PLUS,DIV]] := MIXDIV (* derived 2008 November 10 in TRV-THIN.NB *) union[composite[trv[thinpart[x_]],trv[thinpart[x_]]],thinpart[x_]] := trv[thinpart[x]] (* added 2002 June 8 based on TRV.NB *) union[composite[trv[x_],trv[x_]],trv[x_]] := trv[x] (* derived 2006 October 10 in REPLACE.NB *) union[composite[UB[x_],IMAGE[id[y_]]],UB[x_]] := composite[UB[x],IMAGE[id[y]]] union[cross[x_,y_],composite[inverse[FIRST],x_,FIRST]] := composite[inverse[FIRST],x,FIRST] union[cross[x_,y_],composite[inverse[SECOND],y_,SECOND]] := composite[inverse[SECOND],y,SECOND] (* X-U-1 in X1 *) union[cross[x_,z_],cross[y_,z_]] := cross[union[x,y],z] (* X-U-2 in X1 *) union[cross[x_,y_],cross[x_,z_]] := cross[x,union[y,z]] (* Theorem DI-ID-U in DI added 1998 July 2 union[Di,Id] := cart[V,V] *) (* added 1998 July 2 union[Di,id[x_]] := union[cart[V,x],cart[x,V], composite[id[complement[x]],Di,id[complement[x]]]] *) (* derived 2005 January 5 in REPLACE.NB *) union[DIF,cart[S,set[0]]] := DIF (* added 1999 October 18 based on NORMAL.2 *) union[DISJOINT,composite[E,inverse[E]]] := cart[V,V] (* derived 2006 December 15 in MIXDIV.NB *) union[DIV,cart[omega,set[0]]] := DIV (* added 2000 February 5 based on REVISIT.NB *) union[domain[x_],domain[funpart[x_]]] := domain[x] (* added 1999 December 24 based on VERTSECT.NB *) union[domain[x_],domain[VERTSECT[x_]]] := V (* derived 2008 November 18 in FIX-1-2.NB *) union[domain[fix[composite[inverse[SECOND],x_]]], domain[fix[composite[inverse[SECOND],Di,x_]]]] := domain[domain[x]] (* added 2000 February 5 based on REVISIT.NB *) union[domain[funpart[x_]],fix[composite[inverse[x_],Di,x_]]] := domain[x] (* derived 2004 June 25 in X2500-19.NB *) union[domain[VERTSECT[inverse[x_]]],range[x_]] := V union[E,composite[S,SUCC]] := E (* Theorem SUC-IN2 in SUC-RELATION *) union[E,Id] := composite[inverse[SUCC],E] union[E,intersection[SINGLETON,x_]] := E (* derived 2006 August 15 in EVEN-ODD.NB *) union[even,odd] := omega (* derived 2006 March 12 in DENUM.NB *) union[FINITE,image[Q,set[omega]]] := image[Q,succ[omega]] union[FIRST,inverse[DUP]] := FIRST union[fix[composite[x_,y_]],domain[y_]] := domain[y] (* added 2002 June 12 based on ABSORB.NB *) union[fix[composite[x_,id[z_],y_]],image[x_,z_]] := image[x,z] union[fix[composite[inverse[x_],y_]],domain[x_]] := domain[x] (* suggested by ReplaceTest added 1998 September 10 *) union[fix[composite[x_,inverse[y_]]],range[y_]] := range[y] union[fix[composite[x_,y_]],range[x_]] := range[x] union[fix[x_],domain[x_]] := domain[x] (* added 1998 February 7 *) union[fix[E],RUSSELL] := V (* derived 2008 June 17 in U-FP-DI.NB *) union[fix[x_],fix[composite[Di,x_]]] := domain[x] (* derived 2008 June 17 in U-FP-DI.NB *) union[fix[x_],fix[composite[x_,Di]]] := range[x] (* derived 2007 July 3 in HLC-RASG.NB *) union[x_,fix[HULL[complement[x_]]]] := V union[fix[x_],range[x_]] := range[x] union[fix[SINGLETON],fix[E]] := fix[E] union[FULL,OMEGA] := FULL (* added 2000 February 5 based on REVISIT.NB *) union[funpart[x_],intersection[x_,composite[Di,x_]]] := composite[Id,x] (* added 2000 September 22 based on EXPT *) union[FUNS,set[0]] := FUNS (* derived 2007 May 30 in NEXT-LIM.NB *) union[hull[invar[SUCC],set[ord[x_]]],ord[x_]] := hull[intersection[OMEGA,fix[BIGCUP]],set[ord[x]]] (* based on 1999 December 11 notebook CART-DUP.NB *) union[Id,cart[set[x_],set[x_]]] := Id (* derived 2007 June 10 in HULL-RFX.NB *) union[id[fix[x_]],rfx[x_]] := rfx[x] (* derived 2008 February 17 in CHN-U-ID.NB *) union[Id,intersection[Di,x_]] := union[Id,composite[Id,x]] (* Theorem SUC-IN3 in SUC-RELATION *) union[Id,inverse[E]] := composite[inverse[E],SUCC] union[Id,inverse[S]] := inverse[S] (* added 1998 August 10 *) union[Id,PS] := S union[Id,S] := S union[id[x_],cart[x_,x_]] := cart[x,x] union[x_,id[fix[x_]]] := x (* added 2002 January 19 based on TRV-DI.NB *) union[id[fix[x_]],intersection[Di,x_]] := composite[Id,x] union[id[x_],Id] := Id (* Theorem IDX-U in IDX2 *) union[id[x_],id[y_]] := id[union[x,y]] (* derived 2006 July 9 in DORA-BO.NB *) union[image[CART,id[complement[set[0]]]],set[0]] := image[CART,Id] (* derived 2008 July 6 in IMCARTID.NB *) union[image[CART,Id],image[CART,id[x_]]] := image[CART,Id] (* derived 2008 July 6 in IMCARTID.NB *) union[image[CART,id[x_]],image[CART,id[y_]]] := image[CART,id[union[x,y]]] (* Theorem DI-IM-V in DI added 1998 July 2 *) union[x_,image[Di,x_]] := image[V,x] (* Theorem DI-V-IM in DI added 1998 July 2 *) union[image[Di,x_],image[V,set[x_]]] := V union[IMAGE[id[x_]],inverse[S]] := inverse[S] union[image[z_,x_],image[z_,complement[x_]]] := range[z] (* derived 2003 December 18 in RA-ITER.NB *) union[image[x_,y_],image[x_,image[trv[x_],y_]]] := image[trv[x],y] union[image[z_,x_],image[V,x_]] := image[V,x] (* added 2000 May 22 based on TRYAGAIN.NB *) union[image[z_,x_],image[z_,intersection[y_,complement[x_]]]] := union[image[z,x],image[z,y]] (* added 1998 October 2 *) union[image[z_,intersection[x_,complement[y_]]], image[z_,intersection[x_,y_]]] := image[z,x] union[image[z_,intersection[x_,y_]],image[z_,x_]]:= image[z,x] union[image[inverse[x_],y_],domain[x_]] := domain[x] (* added 2000 September 22 based on EXPT *) union[image[INVERSE,FUNS],set[0]] := image[INVERSE,FUNS] (* derived 2007 November 13 in XS-IN-K.NB *) union[image[inverse[K],intersection[FUNS,P[x_]]],X[x_]] := intersection[FUNS,P[x]] (* derived 2007 November 11 in XS-MAX.NB *) union[image[inverse[PS],intersection[FUNS,P[x_]]],X[x_]] := intersection[FUNS,P[x]] (* added 2002 November 30 based on POS-NEG.NB *) union[image[INVERSE,range[PLUS]],range[PLUS]] := Z (* added 2002 December 1 based on Z-PC-S.NB *) union[image[INVERSE,range[PLUS]],set[id[omega]]] := image[INVERSE,range[PLUS]] union[image[inverse[S],x_],x_] := image[inverse[S],x] (* derived 2007 November 23 in C-RA-SG.NB *) union[x_,image[inverse[S],complement[x_]]] := V (* derived 2007 May 22 in SU-OM.NB *) union[image[inverse[S],nat[x_]],set[0]] := P[U[nat[x]]] (* derived 2007 June 10 in UB-DO.NB *) union[image[inverse[UB[po[x_]]],fix[po[x_]]],set[0]] := domain[UB[po[x]]] (* derived 2007 June 10 in UB-DO.NB *) union[image[inverse[UB[x_]],range[x_]],set[0]] := domain[UB[x]] (* derived 2005 January 8 in RA-PRS.NB *) union[image[PAIRSET,Di],range[SINGLETON]] := range[PAIRSET] union[image[x_,y_],range[x_]] := range[x] union[image[S,x_],x_] := image[S,x] (* added 2003 April 1 based on IM-S-C.NB *) union[x_,image[S,complement[x_]]] := V (* derived 2004 August 1 in THINNESS.NB *) union[y_,image[trv[x_],y_]] := range[iterate[x,y]] union[image[V,x_],x_] := image[V,x] (* rule added 1999 August 31; removed 2006 September 15 based on BIJ-1917.NB union[image[V,x_],y_] := image[V,x] /; unsafe && subclass[y,image[V,x]] *) union[image[V,x_],complement[image[V,intersection[x_,y_]]]] := V (* Theorem SR-IMV-U in SR1 proved 1998 October 5 *) union[image[V,x_],image[S,set[x_]]] := V (* Theorem IMV-SS-U in IM2 proved 1998 October 5 *) union[image[V,x_],image[V,set[x_]]] := V (* derived 2008 November 18 in INTEGER.NB *) union[image[V,intersection[x_,complement[cart[V,V]]]],intadd[x_,y_]] := intadd[x,y] (* derived 2008 November 18 in INTEGER.NB *) union[image[V,intersection[x_,complement[cart[V,V]]]],intmul[x_,y_]] := intmul[x,y] (* added 2002 September 21 based on EZ-SUB.NB *) union[image[V,intersection[x_,complement[y_]]],natsub[y_,x_]] := natsub[y,x] (* derived 2005 June 17 in DF.NB *) union[image[V,intersection[nat[y_],set[nat[x_]]]],nat[natsub[nat[x_],nat[y_]]]] := natsub[nat[x],nat[y]] union[image[V,x_],inverse[x_]] := image[V,x] (* added 2001 November 13 based on REPLACE.NB *) union[image[V,set[x_]],set[first[x_]]] := image[V,set[x]] (* added 2001 November 13 based on REPLACE.NB *) union[image[V,set[x_]],set[second[x_]]] := image[V,set[x]] (* derived 2005 September 16 in HULL-DIV.NB *) union[image[VERTSECT[DIV],omega],set[0]] := range[VERTSECT[DIV]] (* derived 2008 March 20 in IVR-VSTO.NB *) union[image[VERTSECT[to[setpart[x_]]],fix[to[setpart[x_]]]],set[0]] := range[VERTSECT[to[setpart[x]]]] (* Theorem D-4 in D *) union[x_,intersection[x_,y_]] := x (* added 2000 December 9 based on CLIQUES.NB *) union[intersection[cliques[x_],P[y_]],set[0]] := intersection[cliques[x],P[y]] (* Theorem D-5 in D *) union[x_,intersection[complement[x_],y_]] := union[x,y] (* Modified 1998 September 11 *) union[intersection[complement[x_],complement[y_]],intersection[x_,z_],intersection[y_,z_]] := union[intersection[complement[x],complement[y]],z] (* derived 2004 November 26 in XS-CP.NB *) union[intersection[complement[image[V,y_]],set[0]],intersection[image[V,y_],map[x_,y_]]] := X[cart[x,y]] (* Theorem D-7 in D *) union[intersection[complement[x_],y_],intersection[x_,y_]] := y union[intersection[complement[x_],y_,z_],intersection[x_,y_]] := union[intersection[x,y],intersection[y,z]] union[intersection[complement[x_],y_],intersection[x_,y_,z_]] := union[intersection[complement[x],y],intersection[y,z]] (* Modified 1998 September 11 *) union[intersection[complement[x_],z_], intersection[complement[y_],z_],intersection[x_,y_]] := union[intersection[x,y],z] (* Modified 1998 September 11 *) union[intersection[complement[x_],y_], intersection[complement[y_],z_],intersection[x_,z_]] := union[intersection[complement[x],y],z] union[intersection[complement[x_],y_], intersection[x_,z_],intersection[y_,z_]] := union[intersection[complement[x],y],intersection[x,z]] (* derived 2007 June 15 in TRANSVAR.NB *) union[intersection[complement[set[0]],P[x_]],P[y_]] := union[P[x],P[y]] (* derived 2005 October 22 in TO-C.NB *) union[intersection[Di,inverse[to[x_]]],to[x_]] := cart[fix[to[x]],fix[to[x]]] (* derived 2005 February 3 in X4224.NB *) union[intersection[FULL,x_],U[intersection[FULL,x_]]] := tc[intersection[FULL,x]] (* derived 2005 November 5 in TOP-MEMB.NB *) union[intersection[hull[TOPS,x_],image[V,set[x_]]],set[0]] := top[x] (* derived 2004 April 25 in IMS-UCL.NB *) union[intersection[image[S,x_],Uclosure[x_]],set[0]] := Uclosure[x] (* derived 2007 July 4 in IMS-OM.NB *) union[intersection[image[V,nat[x_]],set[0]],nat[x_]] := nat[x] (* derived 2007 February 4 in NATDIV-1.NB *) union[intersection[image[V,x_],natdiv[x_,y_]], intersection[image[V,y_],natdiv[x_,y_]]] := natdiv[x,y] (* derived 2007 December 23 in HULL-IVR.NB *) union[intersection[image[V,set[x_]],P[x_]],set[x_]] := intersection[image[V,set[x]],P[x]] (* derived 2006 November 3 in EVAL-IM.NB *) union[intersection[omega,complement[nat[x_]]],succ[nat[x_]]] := omega (* added 2002 June 8 based on POW-CART.NB *) union[intersection[omega,complement[set[0]]],set[set[0]]] := intersection[omega,complement[set[0]]] (* derived 2006 September 24 in INTLEQ.NB *) union[INTLEQ,composite[INVERSE,INTLEQ,INVERSE]] := cart[Z,Z] union[inverse[IMAGE[id[x_]]],S] := S union[inverse[S],cart[V,set[0]]] := inverse[S] union[inverse[SINGLETON],inverse[E]] := inverse[E] union[inverse[SINGLETON],BIGCUP] := BIGCUP (* derived 2005 October 8 in TO-WRAP.NB *) union[inverse[to[x_]],to[x_]] := cart[fix[to[x]],fix[to[x]]] (* derived 2008 March 6 in WO-TO.NB *) union[inverse[wo[x_]],wo[x_]] := cart[fix[wo[x]],fix[wo[x]]] (* added 2002 June 12 based on ABSORB.NB *) union[iterate[w_,x_],iterate[w_,intersection[x_,y_]]] := iterate[w,x] (* added 2000 November 30 based on INVAR-U.NB *) union[K,composite[PS,PS]] := PS (* derived 2005 July 9 in MM10-12.NB *) union[nat[natsub[nat[x_],nat[y_]]],nat[natsub[nat[y_],nat[x_]]]] := natsub[union[nat[x],nat[y]],intersection[nat[x],nat[y]]] (* derived 2005 February 13 in NAT.NB *) union[nat[x_],U[nat[x_]]] := nat[x] (* derived 2005 July 16 in DBLCOUNT.NB *) union[x_,natadd[x_,y_]] := natadd[x,y] (* derived 2007 May 30 in NEXT-LIM.NB *) union[omega,nat[x_]] := omega (* added 2001 August 16 based on TC-REG.NB *) union[omega,P[omega]] := P[omega] (* added 1998 May 13 *) union[OMEGA,P[FULL]] := P[FULL] union[OMEGA,P[OMEGA]] := P[OMEGA] union[OMEGA,P[RUSSELL]] := P[RUSSELL] (* Theorem OM-0-DEM in OM1 added 1998 February 7 *) union[omega,set[0]] := omega (* derived 2005 December 7 in SUCC-ORD.NB *) union[ord[x_],U[ord[x_]]] := ord[x] union[x_,P[U[x_]]] := P[U[x]] (* derived 2006 October 31 in EVALPLUS.NB *) union[PLUS,cart[set[0],set[id[omega]]]] := PLUS (* derived 2007 February 8 in COMPOS-1.NB *) union[PRIMES,image[NATMUL,cart[complement[succ[set[0]]],complement[succ[set[0]]]]]] := intersection[omega,complement[succ[set[0]]]] (* added 2001 September 30 based on ACL-2.NB *) union[x_,set[x_,succ[x_]]] := succ[succ[x]] (* reformulated 1998 September 12 *) union[POWER,composite[Di,POWER]] := cart[V,V] (* added 2000 May 14 based on PS-1.NB *) union[PS,composite[PS,PS]] := PS (* added 2000 May 14 based on PS-1.NB *) union[PS,S] := S (* derived 2004 April 6 in SMALLER.NB *) union[Q,SMALLER] := composite[Q,S] (* added 2001 December 18 based on DORA.NB *) union[range[CART],set[0]] := range[CART] (* derived 2008 November 18 in FIX-1-2.NB *) union[range[fix[composite[inverse[FIRST],x_]]], range[fix[composite[inverse[FIRST],Di,x_]]]] := range[domain[x]] (* derived 2005 January 18 in RA-KURA.NB *) union[range[PAIRSET],range[SINGLETON]] := range[PAIRSET] (* added 2002 December 1 based on Z-PC-S.NB *) union[range[PLUS],set[id[omega]]] := range[PLUS] union[range[SINGLETON],complement[set[0]]] := complement[set[0]] (* derived 2006 May 21 in RK-SC.NB *) union[rank[x_],U[rank[x_]]] := rank[x] union[REGULAR,cart[REGULAR,REGULAR]] := REGULAR union[REGULAR,id[REGULAR]] := REGULAR (* added 1998 February 7 *) union[RUSSELL,P[RUSSELL]] := RUSSELL union[S,cart[set[0],V]] := S (* suggested 1998 October 27 in SESSION2.LOG *) union[S,composite[Id,complement[S]]] := cart[V,V] (* added 2002 April 23 based on TRICHOT.NB *) union[S,composite[inverse[E],SUCC]] := union[S,inverse[E]] union[S,composite[S,SUCC]] := S union[S,id[x_]] := S union[SECOND,inverse[DUP]] := SECOND (* derived 2005 January 11 in SET-SUCC.NB *) union[x_,set[x_,y___]] := union[set[y],succ[x]] union[set[0],P[x_]] := P[x] (* derived 2005 November 9 in POWCHAIN.NB *) union[set[0,set[set[0]]],succ[set[0]]] := union[set[0],succ[set[set[0]]]] (* derived 2005 January 11 in SET-SUCC.NB *) union[set[0,succ[set[0]]],succ[set[set[0]]]] := P[succ[set[0]]] (* added 2002 January 22 based on UCLUCL.NB *) union[set[0],Uclosure[x_]] := Uclosure[x] union[set[x_],P[x_]] := P[x] (* derived 2005 January 10 in SET.NB *) union[set[x__],set[y__]] := set[x,y] (* derived 2005 January 3 in FULL.NB *) union[set[set[set[0]]],succ[set[0]]] := union[set[0],succ[set[set[0]]]] (* derived 2005 January 11 in SET-SUCC.NB *) union[set[set[set[0]]],succ[succ[set[0]]]] := P[succ[set[0]]] union[SINGLETON,E] := E union[SINGLETON,inverse[BIGCUP]] := inverse[BIGCUP] (* derived 2004 December 21 in SBCOMMUT.NB *) union[SUBCOMMUTE,cart[V,set[0]]] := SUBCOMMUTE (* added 2001 December 2 based on RANK-2.NB *) union[x_,succ[x_]] := succ[x] (* added 2000 January 8 based on TC-SR.NB *) union[TC,id[FULL]] := TC (* derived 2003 December 18 in RA-ITER.NB *) union[x_,tc[x_]] := tc[x] (* added 2002 June 12 based on ABSORB.NB *) union[tc[x_],tc[intersection[x_,y_]]] := tc[x] (* added 2002 May 16 based on TC.NB *) union[tc[x_],U[tc[x_]]] := tc[x] union[U[x_],image[V,x_]] := image[V,x] (* Theorem TC-EQ in TC2 proved 2000 October 16 *) union[x_,U[tc[x_]]] := tc[x] (* derived 2004 March 4 in A-SC-PC.NB *) union[U[x_],U[complement[x_]]] := V union[U[x_],U[intersection[x_,y_]]] := U[x] (* Theorem U-5 in U *) union[V,x_] := V (* added 1999 September 26 based on VS-CP.LOG *) VERTSECT[cart[x_,y_]] := union[cart[x,set[y]],cart[complement[x],set[0]]] (* derived 2004 December 21 in COMUTANT.NB *) VERTSECT[COMMUTE] := 0 (* added 2000 January 4 based on REMOVED.NB *) VERTSECT[complement[cart[x_,y_]]] := cart[x,set[complement[y]]] (* added 2003 May 11 based on APPLHULL.NB *) VERTSECT[complement[composite[complement[inverse[E]], intersection[composite[S,SECOND],composite[inverse[E],FIRST]]]]] := composite[inverse[SINGLETON],IMG,cross[LAMBHULL,SINGLETON]] (* Theorem VS-E-C1 in VS1 proved 1999 July 21 *) VERTSECT[complement[E]] := 0 (* added 2003 June 11 based on VS.NB *) VERTSECT[complement[image[V,x_]]] := cart[V,intersection[image[V,x],set[0]]] (* Theorem VS-E-C2 in VS1 proved 1999 July 21 *) VERTSECT[complement[inverse[E]]] := 0 (* Theorem VS-SR-2 proved 1999 July 21 *) VERTSECT[complement[inverse[S]]] := 0 (* Theorem VS-SR-C2 in VS1 proved 1999 July 21 *) VERTSECT[complement[S]] := cart[set[0],set[0]] (* derived 2006 April 20 in ACL-VS.NB *) VERTSECT[composite[BIGCAP,inverse[LB[x_]]]] := composite[ACLOSURE,VERTSECT[x]] (* derived 2006 April 20 in ACL-VS.NB *) VERTSECT[composite[BIGCAP,inverse[UB[x_]]]] := composite[ACLOSURE,VERTSECT[inverse[x]]] (* added 2003 June 15 based on VSCORULE.NB *) VERTSECT[composite[BIGCUP,x_]] := composite[IMAGE[BIGCUP],VERTSECT[x]] (* derived 2007 August 7 in CLIQUES.NB *) VERTSECT[composite[CLIQUES,DISJOINT]] := 0 (* added 2003 June 15 based on VSCORULE.NB *) VERTSECT[composite[complement[S],x_]] := cart[image[inverse[VERTSECT[x]],succ[set[0]]],set[0]] (* Theorem VS-3 in VS proved 1999 July 11 *) VERTSECT[composite[Id,x_]] := VERTSECT[x] (* added 2001 November 29 *) VERTSECT[composite[x_,id[y_]]] := union[cart[complement[y],set[0]],composite[VERTSECT[x],id[y]]] (* added 2003 March 13 based on THIN-CO.NB *) VERTSECT[composite[x___,id[complement[image[V,y_]]],z___]] := union[cart[V,intersection[image[V,y],set[0]]], composite[VERTSECT[composite[x,z]],id[complement[image[V,y]]]]] (* added 1999 November 17 based on WORK/VS-RC.1 *) VERTSECT[composite[id[x_],complement[inverse[E]]]] := composite[RC[x],IMAGE[id[x]]] (* added 2000 September 21 based on VS.NB *) VERTSECT[composite[id[FIRST],inverse[FIRST],inverse[SECOND]]] := 0 (* added 2003 March 13 based on THIN-CO.NB *) VERTSECT[composite[x___,id[image[V,y_]],z___]] := union[cart[V,intersection[complement[image[V,y]],set[0]]], composite[VERTSECT[composite[x,z]],id[image[V,y]]]] (* added 2000 September 21 based on VS.NB *) VERTSECT[composite[id[inverse[FIRST]],inverse[SECOND],inverse[SECOND]]] := 0 (* added 2000 September 21 based on VS.NB *) VERTSECT[composite[id[inverse[SECOND]],inverse[SECOND],inverse[FIRST]]] := 0 (* derived 2008 March 20 in RC-OM.NB *) VERTSECT[composite[id[omega],E]] := union[cart[complement[omega],set[0]],composite[RC[omega],id[omega],SUCC]] (* added 2000 September 21 based on VS.NB *) VERTSECT[composite[id[SECOND],inverse[FIRST],inverse[FIRST]]] := 0 (* added 2000 September 9 based on FNP-2.NB *) VERTSECT[composite[intersection[composite[inverse[FIRST],inverse[SINGLETON],SECOND], composite[inverse[SECOND],inverse[SINGLETON],IMG]],inverse[FIRST]]] := FUNPART (* added 2000 September 10 based on VS.NB *) VERTSECT[composite[intersection[composite[inverse[SECOND],IMG], composite[inverse[FIRST],inverse[SINGLETON],SECOND]],inverse[FIRST]]] := 0 (* Theorem VS-IMG-1 in VS2 proved 1999 July 13 *) VERTSECT[composite[x_,inverse[E]]] := IMAGE[x] (* added 2003 June 15 based on VSCORULE.NB *) VERTSECT[composite[inverse[E],x_]] := composite[BIGCUP,VERTSECT[x]] (* derived 2004 May 8 in GLB-LUB.NB *) VERTSECT[composite[inverse[POWER],S]] := 0 (* added 2003 June 15 based on VSCORULE.NB *) VERTSECT[composite[inverse[S],x_]] := composite[IMAGE[inverse[S]],VERTSECT[x]] (* added 2003 June 15 based on VSCORULE.NB *) VERTSECT[composite[POWER,x_]] := composite[IMAGE[POWER],VERTSECT[x]] (* derived 2004 January 7 in VSLAMBDA.NB *) VERTSECT[composite[RIGHT[0],complement[inverse[E]]]] := 0 (* added 2003 June 15 based on VSCORULE.NB *) VERTSECT[composite[SINGLETON,x_]] := composite[IMAGE[SINGLETON],VERTSECT[x]] (* added 2000 September 12 based on NEWRULES.TXT *) VERTSECT[composite[SWAP,inverse[rotate[composite[IMG,SWAP]]]]] := 0 (* Theorem VS-DI in VS1 proved 1999 July 21 *) VERTSECT[Di] := 0 (* added 1999 October 23 based on E-CO-DJT.LOG *) VERTSECT[DISJOINT] := 0 (* Theorem VS-E in VS1 proved 1999 July 21 *) VERTSECT[E] := 0 (* Theorem VS-SG in VS2 proved 1999 July 13 *) VERTSECT[Id] := SINGLETON (* added 2002 April 10 based on INVAR.NB *) VERTSECT[INVAR] := 0 (* added 2001 February 24 based on NEW.NB *) VERTSECT[inverse[BIGCAP]] := 0 (* added 2002 February 3 based on CUPCLOSED.NB *) VERTSECT[inverse[CAP]] := 0 (* Theorem VS-ID in VS1 proved 1999 July 13 *) VERTSECT[inverse[E]] := Id (* added 1999 October 16 based on VERTSECT.1 *) VERTSECT[inverse[FIRST]] := 0 (* added 2003 June 23 based on INVAR.NB *) VERTSECT[inverse[INVAR]] := 0 (* added 2002 October 24 based on VS-I-LB.NB *) VERTSECT[inverse[LB[x_]]] := composite[POWER,VERTSECT[x]] (* derived 2006 December 9 in AP-MIX.NB *) VERTSECT[inverse[rotate[composite[MIXMUL,SWAP]]]] := union[cart[complement[Z],set[0]], composite[INVERSE,MIXTIMES]] (* derived 2006 December 30 in ZTIMES-5.NB *) VERTSECT[inverse[rotate[INTMUL]]] := union[cart[complement[Z],set[0]],composite[INVERSE,INTTIMES]] (* added 2002 November 29 based on PLUS.NB *) VERTSECT[inverse[rotate[NATADD]]] := union[cart[complement[omega],set[0]],composite[INVERSE,PLUS]] (* derived 2006 October 26 in MUL-TIM.NB *) VERTSECT[inverse[rotate[NATMUL]]] := union[cart[complement[omega],set[0]],composite[INVERSE,TIMES]] (* Theorem VS-POW-2 in VS1 proved 1999 July 20 *) VERTSECT[inverse[S]] := POWER (* added 1999 October 16 based on VERTSECT.1 *) VERTSECT[inverse[SECOND]] := 0 (* derived 2004 December 21 in SBCOMMUT.NB *) VERTSECT[inverse[SUBCOMMUTE]] := 0 (* added 2002 October 24 based on VS-I-LB.NB *) VERTSECT[inverse[UB[x_]]] := composite[POWER,VERTSECT[inverse[x]]] (* Theorem VS-K in VS1 proved 2000 May 24 *) VERTSECT[K] := 0 (* added 2002 October 24 based on VS-I-LB.NB *) VERTSECT[LB[LB[x_]]] := composite[POWER,VERTSECT[UB[x]]] (* added 2002 October 24 based on VS-I-LB.NB *) VERTSECT[LB[UB[x_]]] := composite[POWER,VERTSECT[LB[x]]] (* added 1999 October 19 based on VERTSECT.1 *) VERTSECT[omega] := cart[V,set[0]] (* added 1999 October 19 based on VERTSECT.1 *) VERTSECT[OMEGA] := cart[V,set[0]] (* added 1999 October 19 based on VERTSECT.1 *) VERTSECT[PS] := 0 (* Theorem Q-VS in Q proved 2000 May 10 *) VERTSECT[Q] := cart[set[0],set[set[0]]] (* added 1999 October 19 based on VERTSECT.1 *) VERTSECT[REGULAR] := cart[complement[REGULAR],set[0]] (* added 1999 November 27 based on VS-ROT-E.LOG *) VERTSECT[rotate[E]] := union[cart[complement[cart[V,V]],set[0]], composite[IMG,cross[Id,SINGLETON]]] (* Theorem VS-SR-1 in VS1 proved 1999 July 21 *) VERTSECT[S] := 0 (* derived 2004 December 21 in SBCOMMUT.NB *) VERTSECT[SUBCOMMUTE] := 0 (* added 2000 January 4 based on VS-U.TXT *) VERTSECT[union[x_,y_]] := composite[CUP, intersection[composite[inverse[FIRST],VERTSECT[x]],composite[inverse[SECOND],VERTSECT[y]]]] (* added 1999 October 19 based on VERTSECT.1 *) VERTSECT[V] := 0 (* derived 2008 September 10 in NOT-WF.NB *) WELLFOUNDED[x_] := False /; not[empty[fix[x]]] (* derived 2003 December 22 in EMPTY.NB *) WELLFOUNDED[0] := True (* derived 2008 September 10 in NOT-WF.NB *) WELLFOUNDED[BIGCAP] := False (* derived 2008 September 10 in NOT-WF.NB *) WELLFOUNDED[BIGCUP] := False (* derived 2008 September 10 in NOT-WF.NB *) WELLFOUNDED[CAP] := False (* added 2003 October 7 based on WF-IND.NB *) WELLFOUNDED[cart[x_,y_]] := equal[0,intersection[x,y]] (* derived 2008 June 12 in PS-FIN.NB *) WELLFOUNDED[composite[id[fin[x_]],inverse[PS]]] := True (* derived 2008 June 12 in PS-FIN.NB *) WELLFOUNDED[composite[id[fin[x_]],PS]] := True (* derived 2008 June 12 in PS-FIN.NB *) WELLFOUNDED[composite[id[FINITE],inverse[PS]]] := False (* added 2003 September 29 based on WF.NB *) WELLFOUNDED[composite[id[FINITE],PS]] := True (* derived 2007 December 20 in FUND-X.NB *) WELLFOUNDED[composite[id[H[x_]],E]] := subclass[H[x],REGULAR] (* derived 2008 February 22 in WF-RS.NB *) WELLFOUNDED[composite[id[x_],y_,id[x_]]] := WELLFOUNDED[composite[id[x],y]] (* derived 2008 February 26 in WF-TRICH.NB *) WELLFOUNDED[composite[id[x_],inverse[IMAGE[id[x_]]],E]] := WELLFOUNDED[composite[id[x],E]] (* derived 2008 August 1 in WF-NAT.NB *) WELLFOUNDED[composite[id[nat[x_]],E]] := True (* derived 2005 February 1 in DIV-WF.NB *) WELLFOUNDED[composite[id[omega],E]] := True (* derived 2004 April 28 in WF.NB *) WELLFOUNDED[composite[id[OMEGA],E]] := True (* derived 2005 February 1 in DIV-WF.NB *) WELLFOUNDED[composite[id[omega],inverse[BIGCUP],E]] := True (* derived 2006 March 2 in WF-IN-PS.NB *) WELLFOUNDED[composite[id[omega],PS]] := True (* derived 2008 February 23 in WF-PS-ON.NB *) WELLFOUNDED[composite[id[OMEGA],PS]] := True (* derived 2004 September 29 in WF-REC-7.NB *) WELLFOUNDED[composite[id[omega],SUCC]] := True (* derived 2005 October 19 in ORD-WRAP.NB *) WELLFOUNDED[composite[id[ord[x_]],E]] := True (* derived 2008 March 1 in WO-RS-S.NB *) WELLFOUNDED[composite[id[ord[x_]],PS]] := True (* derived 2008 August 7 in TARSKI.NB *) WELLFOUNDED[composite[id[P[x_]],inverse[PS]]] := subclass[P[x],FINITE] (* derived 2008 August 7 in TARSKI.NB *) WELLFOUNDED[composite[id[P[x_]],PS]] := subclass[P[x],FINITE] (* derived 2007 August 3 in REGULAR.NB *) WELLFOUNDED[composite[id[reg[x_]],E]] := True (* added 2003 September 29 based on WF.NB *) WELLFOUNDED[composite[id[REGULAR],E]] := True (* derived 2007 December 14 in CANTOR.NB *) WELLFOUNDED[composite[id[tc[x_]],E]] := subclass[x,REGULAR] (* derived 2004 September 18 in WF-WRAP.NB *) WELLFOUNDED[composite[id[x_],wf[y_]]] := True (* derived 2008 August 20 in WF-SPEC.NB *) WELLFOUNDED[composite[id[image[inverse[RANK],x_]],E]] := True (* derived 2008 August 20 in WF-SPEC.NB *) WELLFOUNDED[composite[id[intersection[REGULAR,x_]],E]] := True (* derived 2008 August 20 in WF-SPEC.NB *) WELLFOUNDED[composite[id[P[omega]],E]] := True (* derived 2007 September 19 in UCH-WF.NB *) WELLFOUNDED[composite[inverse[E],id[nat[x_]]]] := True (* derived 2007 September 19 in UCH-WF.NB *) WELLFOUNDED[composite[inverse[E],id[omega]]] := False (* derived 2004 September 23 in WF-FU.NB *) WELLFOUNDED[composite[inverse[FIRST],wf[x_],FIRST]] := True (* derived 2004 September 23 in WF-FU.NB *) WELLFOUNDED[composite[inverse[funpart[x_]],wf[y_],funpart[x_]]] := True (* derived 2007 June 19 in OO-XFM.NB *) WELLFOUNDED[composite[inverse[oopart[x_]],wf[y_],oopart[x_]]] := True (* derived 2006 March 2 in WF-IN-PS.NB *) WELLFOUNDED[composite[inverse[PS],id[omega]]] := False (* derived 2006 March 2 in WF-IN-PS.NB *) WELLFOUNDED[composite[inverse[PS],id[FINITE]]] := False (* derived 2006 March 2 in WFINPSPC.NB *) WELLFOUNDED[composite[inverse[PS],id[P[x_]]]] := subclass[P[x],FINITE] (* derived 2004 September 23 in WF-FU.NB *) WELLFOUNDED[composite[inverse[SECOND],wf[x_],SECOND]] := True (* derived 2007 June 19 in OO-XFM.NB *) WELLFOUNDED[composite[oopart[x_],wf[y_],inverse[oopart[x_]]]] := True (* derived 2004 September 23 in WF-FU.NB *) WELLFOUNDED[composite[SWAP,wf[x_],SWAP]] := True (* derived 2005 February 1 in DIV-WF.NB *) WELLFOUNDED[composite[trv[x_],trv[x_]]] := WELLFOUNDED[trv[x]] (* derived 2008 September 10 in NOT-WF.NB *) WELLFOUNDED[CUP] := False (* derived 2008 September 10 in NOT-WF.NB *) WELLFOUNDED[Di] := False (* derived 2004 December 30 in REPLACE.NB *) WELLFOUNDED[E] := AxReg (* derived 2008 September 10 in NOT-WF.NB *) WELLFOUNDED[FIRST] := False (* derived 2005 December 28 in IMIN-DUP.NB *) WELLFOUNDED[id[x_]] := equal[0,x] (* derived 2005 February 3 in WF-DIV.NB *) WELLFOUNDED[intersection[Di,DIV]] := True (* derived 2006 April 29 in TO-WO.NB *) WELLFOUNDED[intersection[Di,to[x_]]] := WELLORDER[to[x]] (* derived 2005 October 16 in WO-WRAP.NB *) WELLFOUNDED[intersection[Di,wo[x_]]] := True (* derived 2004 September 18 in WF-WRAP.NB *) WELLFOUNDED[intersection[x_,wf[y_]]] := True (* derived 2008 September 10 in NOT-WF.NB *) WELLFOUNDED[inverse[DUP]] := False (* derived 2006 January 3 in E.NB *) WELLFOUNDED[inverse[E]] := False (* derived 2008 September 10 in NOT-WF.NB *) WELLFOUNDED[inverse[IMAGE[DUP]]] := False (* derived 2007 November 6 in WF-IN-K.NB *) WELLFOUNDED[inverse[K]] := False (* derived 2006 January 29 in WF-Z.NB *) WELLFOUNDED[inverse[plus[x_]]] := not[member[x,omega]] (* derived 2008 September 10 in NOT-WF.NB *) WELLFOUNDED[inverse[POWER]] := False (* derived 2006 March 2 in WF-IN-PS.NB *) WELLFOUNDED[inverse[PS]] := False (* derived 2008 September 10 in NOT-WF.NB *) WELLFOUNDED[inverse[SINGLETON]] := False (* derived 2005 December 1 in RANKUNIQ.NB *) WELLFOUNDED[inverse[thinpart[inverse[wf[x_]]]]] := True (* derived 2008 May 4 in WFINTHIN.NB *) WELLFOUNDED[inverse[trv[thinpart[inverse[wf[x_]]]]]] := True (* derived 2006 January 29 in WF-Z.NB *) WELLFOUNDED[plus[x_]] := not[equal[0,x]] (* derived 2006 February 28 in PS.NB *) WELLFOUNDED[PS] := False (* derived 2008 September 10 in NOT-WF.NB *) WELLFOUNDED[SECOND] := False (* added 2003 October 7 based on WF-IND.NB *) WELLFOUNDED[set[x_]] := or[and[member[first[x],V],not[equal[first[x],second[x]]]],not[member[x,V]]] (* derived 2004 September 23 in WF-LEX.NB *) WELLFOUNDED[union[composite[inverse[FIRST],wf[x_],FIRST],cross[Id,wf[y_]]]] := True (* derived 2004 September 23 in WF-LEX.NB *) WELLFOUNDED[union[composite[inverse[FIRST],wf[x_],FIRST],cross[id[z_],wf[y_]]]] := True (* derived 2004 September 18 in WF-WRAP.NB *) WELLFOUNDED[wf[x_]] := True (* derived 2004 January 24 in WO-WRAP.NB *) WELLORDER[0] := True (* derived 2004 January 24 in WO-WRAP.NB *) WELLORDER[cart[set[x_],set[x_]]] := True (* derived 2007 September 18 in UCH-WO.NB *) WELLORDER[composite[id[nat[x_]],inverse[S],id[nat[x_]]]] := True (* derived 2007 May 9 in ON-IN-S.NB *) WELLORDER[composite[id[omega],inverse[S],id[omega]]] := False (* derived 2007 May 9 in ON-IN-S.NB *) WELLORDER[composite[id[OMEGA],inverse[S],id[OMEGA]]] := False (* derived 2005 October 19 in TO-CL-WO.NB *) WELLORDER[composite[id[ord[x_]],inverse[S],id[ord[x_]]]] := member[ord[x],omega] (* derived 2007 May 9 in INTLEQ.NB *) WELLORDER[composite[id[range[PLUS]],INVERSE,INTLEQ,INVERSE]] := False (* derived 2008 September 5 in S-WO.NB *) WELLORDER[composite[id[x_],S]] := and[subclass[image[inverse[S],x],x], subclass[P[x],union[fix[composite[E,BIGCAP]],set[0]]]] (* derived 2008 September 5 in S-WO.NB *) WELLORDER[composite[S,id[x_]]] := and[subclass[image[S,x],x], subclass[P[x],union[fix[composite[E,BIGCAP]],set[0]]]] (* derived 2004 January 24 in WO-WRAP.NB *) WELLORDER[composite[id[x_],S,id[x_]]] := subclass[P[x],union[fix[composite[E,BIGCAP]],set[0]]] (* derived 2006 May 8 in WO-WRAP.NB *) WELLORDER[composite[id[x_],wo[y_],id[x_]]] := True (* derived 2007 May 9 in INTLEQ.NB *) WELLORDER[composite[INTLEQ,id[range[PLUS]]]] := True (* derived 2007 June 19 in TRNSFORM.NB *) WELLORDER[composite[inverse[funpart[x_]],wo[y_],funpart[x_]]] := FUNCTION[composite[inverse[funpart[x]],id[fix[wo[y]]]]] (* derived 2007 June 19 in OO-XFM.NB *) WELLORDER[composite[inverse[oopart[x_]],wo[y_],oopart[x_]]] := True (* derived 2007 May 9 in INTLEQ.NB *) WELLORDER[composite[INVERSE,INTLEQ,INVERSE]] := False (* derived 2006 May 8 in WO-WRAP.NB *) WELLORDER[composite[oopart[x_],wo[y_],inverse[oopart[x_]]]] := True (* derived 2008 March 9 in WO.NB *) WELLORDER[composite[wo[x_],id[image[wo[x_],y_]]]] := True (* derived 2005 January 5 in WO-ID.NB *) WELLORDER[id[x_]] := or[equal[0,x],member[x,range[SINGLETON]]] (* derived 2007 May 9 in INTLEQ.NB *) WELLORDER[INTLEQ] := False (* derived 2005 October 17 in WO-FIN.NB *) WELLORDER[inverse[to[fin[x_]]]] := True (* derived 2005 August 1 in SS-RULES.NB *) WELLORDER[set[x_]] := or[and[equal[first[x],second[x]],member[first[x],V]],not[member[x,V]]] (* derived 2008 March 4 in WO-SETP.NB *) WELLORDER[setpart[wo[x_]]] := True (* derived 2005 October 17 in WO-FIN.NB *) WELLORDER[to[fin[x_]]] := True (* derived 2005 October 6 in U-WO.NB *) WELLORDER[union[cart[set[x_],set[y_]],id[set[x_,y_]]]] := True (* derived 2005 October 16 in WO-WRAP.NB *) WELLORDER[wo[x_]] := True (* derived 2004 September 18 in WF-WRAP.NB *) wf[0] := 0 (* derived 2004 September 18 in WF-WRAP.NB *) wf[composite[Id,x_]] := wf[x] (* derived 2004 September 18 in WF-WRAP.NB *) wf[composite[id[x_],wf[y_]]] := composite[id[x],wf[y]] (* derived 2004 September 18 in WF-WRAP.NB *) wf[Di] := 0 (* derived 2004 September 18 in WF-WRAP.NB *) wf[E] := composite[id[REGULAR],E] (* derived 2004 September 18 in WF-WRAP.NB *) wf[Id] := 0 (* derived 2004 September 18 in WF-WRAP.NB *) wf[id[x_]] := 0 (* derived 2004 September 18 in WF-WRAP.NB *) wf[intersection[x_,wf[y_]]] := intersection[x,wf[y]] (* derived 2004 September 18 in WF-WRAP.NB *) wf[inverse[E]] := 0 (* derived 2004 September 18 in WF-WRAP.NB *) wf[inverse[S]] := 0 (* derived 2004 September 18 in WF-WRAP.NB *) wf[PS] := composite[id[FINITE],PS] (* derived 2004 September 18 in WF-WRAP.NB *) wf[S] := 0 (* derived 2004 September 25 in LAMB-WF.NB *) wf[union[x_,complement[image[V,y_]]]] := composite[id[image[V,y]],wf[x]] (* derived 2004 September 18 in WF-WRAP.NB *) wf[V] := 0 (* derived 2004 September 18 in WF-WRAP.NB *) wf[wf[x_]] := wf[x] (* derived 2005 October 16 in WO-WRAP.NB *) wo[composite[Id,x_]] := wo[x] (* derived 2004 October 28 in X.NB *) X[0] := set[0] (* derived 2004 October 28 in X.NB *) X[cart[x_,V]] := map[x,V] (* derived 2004 October 28 in X.NB *) X[composite[Id,x_]] := X[x] (* derived 2004 October 28 in X.NB *) X[funpart[x_]] := set[funpart[x]] (* derived 2004 November 16 in XS.NB *) X[union[x_,complement[image[V,y_]]]] := intersection[image[V,y],X[x]] (* derived 2004 October 28 in X.NB *) X[V] := 0 (* conditional rules last *) (* derived 2007 October 30 in PROJ-SBV.NB *) equal[y_,image[x_,y_]] := subclass[y,fix[x]] /; and[idempotent[x],FUNCTION[x]] (* derived 2004 December 30 in AXREG.NB *) equal[P[x],x] := equal[V,x] /; AxReg (* derived 2005 December 8 in SET-EQ.NB *) equal[w_,set[x_,y___]] := and[subclass[w,set[x,y]],subclass[set[y],w]] /; member[x,w] (* derived 2005 December 8 in SET-EQ.NB *) equal[w_,set[x_,y___]] := False /; and[member[x,V],not[member[x,w]]] (* derived 2005 December 8 in SET-EQ.NB *) equal[set[x_],set[y_]] := equal[x,y] /; member[x,V] (* derived 2003 January 3 in OO-SUC-OM.NB *) equal[succ[x_],succ[y_]] := equal[x,y] /; member[x,omega] (* derived 2005 December 8 in REG.NB *) equal[succ[x_],succ[y_]] := equal[x,y] /; member[x,REGULAR] (* derived 2006 November 9 in THINSETP.NB *) equal[V,domain[x_]] := False /; member[x,V] (* derived 2006 November 9 in THINSETP.NB *) equal[V,fix[x_]] := False /; member[x,V] (* derived 2006 November 9 in THINSETP.NB *) equal[V,image[x_,y_]] := False /; and[thin[x],member[y,V]] (* derived 2006 November 9 in THINSETP.NB *) equal[V,range[x_]] := False /; member[x,V] (* derived 2004 August 27 in TRV-COND.NB *) EQUIVALENCE[composite[inverse[x_],x_]] := True /; FUNCTION[x] (* derived 2005 August 7 in EQV-RSFU.NB *) EQUIVALENCE[composite[inverse[x_],id[y_],x_]] := True /; FUNCTION[x] fix[composite[x_,complement[y_]]] := 0 /; subclass[inverse[x],y] fix[composite[complement[x_],y_]] := 0 /; subclass[inverse[y],x] fix[composite[complement[x_],f_]] := intersection[domain[f],complement[fix[composite[x,f]]]] /; FUNCTION[f] fix[composite[g_,complement[x_]]] := intersection[range[g],complement[fix[composite[g,x]]]] /; INVFUN[g] (* added 1998 August 21 *) fix[composite[g_,complement[x_],f_]] := intersection[complement[fix[composite[g,x,f]]],domain[f],range[g]] /; And[FUNCTION[f],INVFUN[g]] (* added 2001 January 11 based on TOP2.NB *) fix[composite[complement[composite[S,x_]],inverse[E]]] := complement[fix[composite[inverse[S],IMAGE[inverse[x]],POWER]]] /; thin[inverse[x]] (* new rules added 1998 July 3 *) fix[composite[Di,f_]] := intersection[domain[f],complement[fix[f]]] /; FUNCTION[f] fix[composite[g_,Di]] := intersection[range[g],complement[fix[g]]] /; INVFUN[g] (* derived 2005 February 15 in RUS-A-DJ.NB *) fix[composite[DISJOINT,BIGCAP]] := complement[set[0]] /; AxReg fix[composite[E,CHOICE]] := complement[set[0]] /; AxCh (* added 2001 January 11 based on TOP2.NB *) fix[composite[E,complement[composite[x_,inverse[S]]]]] := complement[fix[composite[inverse[S],IMAGE[x],POWER]]] /; cond && thin[x] (* added 1999 November 13 based on FIX-C-DJ.LOG *) fix[composite[E,inverse[E],f_]] := intersection[complement[fix[composite[DISJOINT,f]]],domain[f]] /; FUNCTION[f] (* added 1999 November 13 based on FIX-C-DJ.LOG *) fix[composite[g_,E,inverse[E]]] := intersection[complement[fix[composite[g,DISJOINT]]],range[g]] /; INVFUN[g] fix[composite[x_,id[y_],z_]] := image[x,y] /; subclass[inverse[x],z] fix[composite[x_,id[y_],z_]] := image[inverse[z],y] /; subclass[z,inverse[x]] (* Theorem CUT-FP-B in CUT1 proved 1999 August 2 *) fix[composite[x_,IMAGE[id[y_]]]] := fix[x] /; subclass[U[range[x]],y] (* improved 2000 September 3 based on DUP.NB *) fix[composite[g_,x_,f_]] := image[g,fix[x]] /; And[FUNCTION[f],inverse[f]==g] (* added 1998 August 9 *) fix[composite[x_,intersection[f_,y_]]] := intersection[fix[composite[x,f]],fix[composite[inverse[y],f]]] /; FUNCTION[f] fix[composite[g_,intersection[x_,y_]]] := intersection[fix[composite[g,x]],fix[composite[g,y]]] /; INVFUN[g] (* added 2000 December 29 based on FIX-CART.NB *) fix[composite[w_,intersection[x_,composite[y_,intersection[f_,z_]]]]] := intersection[fix[composite[w,intersection[x,composite[y,f]]]], fix[composite[inverse[z],f]]] /; FUNCTION[f] (* derived 2006 March 7 in REGULAR.NB *) fix[composite[inverse[E],IMAGE[inverse[BIGCUP]],BIGCUP]] := 0 /; AxReg (* added 2001 June 5 based on SUBCOM.NB *) fix[composite[inverse[IMAGE[cross[Id,x_]]],E, UB[complement[cross[inverse[x_],Id]]]]] := complement[subcommutant[x]] /; cond && thin[x] (* added 2001 June 5 based on SUBCOM.NB *) fix[composite[inverse[IMAGE[cross[Id,inverse[x_]]]],E,UB[complement[cross[x_,Id]]]]] := complement[subcommutant[inverse[x]]] /; cond && thin[inverse[x]] (* added 2001 October 8 based on RFX.NB *) fix[composite[S,IMAGE[x_],IMAGE[y_]]] := invar[composite[x,y]] /; cond && thin[y] (* derived 2004 December 30 in AXREG.NB *) fix[E] := 0 /; AxReg (* derived 2007 June 29 in ACL-FXHL.NB *) fix[HULL[x_]] := Aclosure[x] /; member[x,V] (* derived 2005 October 27 in UCL-I.NB *) fix[HULL[intersection[x_,y_]]] := intersection[x,y] /; fix[HULL[x]] == x && fix[HULL[y]] == y (* derived 2007 October 30 in PROJ-SBV.NB *) fix[IMAGE[x_]] := P[fix[x]] /; and[FUNCTION[x],idempotent[x]] (* Axiom of Choice AX-CH-1 *) FUNCTION[CHOICE] := True /; AxCh (* Theorem FU-3 in FU1 *) FUNCTION[composite[x_,y_]] := True /; And[FUNCTION[x],FUNCTION[y]] (* derived 2005 February 5 in FU-X.NB *) FUNCTION[cross[x_,y_]] := True /; and[FUNCTION[x],FUNCTION[y]] (* derived 2005 September 27 in LUB-FU.NB *) FUNCTION[GLB[x_]] := True /; subclass[intersection[x,inverse[x]],Id] (* Theorem GT-FU-2 in GREATEST proved 2000 November 24 *) FUNCTION[GREATEST[x_]] := True /; subclass[intersection[x,inverse[x]],Id] (* added 2002 June 28 based on POWERFUN.NB *) FUNCTION[image[power[x_],set[y_]]] := True /; FUNCTION[x] (* Theorem FU-2 in FU1 *) FUNCTION[intersection[x_,y_]] := True /; FUNCTION[x] (* added 1999 September 14 based on FUN-I.LOG *) FUNCTION[intersection[composite[inverse[FIRST],x_], composite[inverse[SECOND],y_]]] := True /; And[FUNCTION[x],FUNCTION[y]] (* added 2002 June 28 based on ITER-FUN.NB *) FUNCTION[iterate[f_,set[x_]]] := True /; FUNCTION[f] (* Theorem LT-FU in LEAST proved 2000 November 24 *) FUNCTION[LEAST[x_]] := True /; subclass[intersection[x,inverse[x]],Id] (* derived 2005 September 27 in LUB-FU.NB *) FUNCTION[LUB[x_]] := True /; subclass[intersection[x,inverse[x]],Id] (* added 2002 June 28 based on POWERFUN.NB *) FUNCTION[rotate[inverse[power[x_]]]] := True /; FUNCTION[x] (* derived 2007 June 6 in IDEMWRAP.NB *) idem[x_] := x /; equal[composite[x,x],x] (* Theorem IM-5B in IM2 *) image[z_,x_] := range[z] /; subclass[domain[z],x] (* derived 2005 November 6 in IMG-THIN.NB *) IMAGE[x_] := cart[set[0],set[0]] /; domain[VERTSECT[x]] == 0 (* added 2002 October 8 based on INVAR-I.NB *) image[CAP,cart[x_,x_]] := x /; Aclosure[x]==x (* added 2002 November 21 based on C-THIN.NB *) IMAGE[complement[x_]] := cart[set[0],set[0]] /; cond && thin[x] (* Theorem FU-C-IN in FU3 Anthony P. Morse,theorem 2.90.6 *) image[g_,complement[x_]] := intersection[range[g], complement[image[g,x]]] /; INVFUN[g] (* added 2000 September 4 based on FUNSP2.NB *) image[x_,complement[cart[V,V]]] := 0 /; composite[Id,domain[x]] == domain[x] (* derived 2008 May 29 in COREPROJ.NB *) image[CORE[x_],y_] := y /; subclass[y,Uclosure[x]] (* added 2000 January 5 based on IM-DI.NB *) image[Di,x_] := V /; not[member[x,V]] (* derived 2005 November 20 in ACDORAFU.NB *) image[DORA,FUNS] := union[cart[set[0],set[0]],composite[id[complement[set[0]]],Q,inverse[S]]] /; axch (* derived 2005 November 22 in IMDORARS.NB *) image[DORA,P[x_]] := composite[id[P[range[x]]],inverse[IMAGE[inverse[x]]]] /; FUNCTION[inverse[x]] (* derived 2005 November 22 in IMDORARS.NB *) image[DORA,P[x_]] := composite[IMAGE[x],id[P[domain[x]]]] /; FUNCTION[x] (* added 2001 March 4 based on FIX-FF.NB *) image[f_,fix[f_]] := fix[f] /; FUNCTION[f] (* derived 2006 November 3 in EVAL-IM.NB *) image[FUNPART,x_] := x /; subclass[x,FUNS] (* added 2002 April 18 based on SUCC.NB *) image[f_,image[g_,x_]] := intersection[x,range[f]] /; And[FUNCTION[f],inverse[f]==g] (* derived 2004 October 26 in AXCH-AC1.NB *) image[IMAGE[FIRST],intersection[FUNS,P[inverse[E]]]] := P[complement[set[0]]] /; axch (* derived 2004 August 4 in THIN-DO.NB *) image[IMAGE[FIRST],P[x_]] := P[domain[x]] /; cond && thin[x] (* derived 2005 November 5 in IMIMG-OO.NB *) image[IMAGE[x_],P[y_]] := P[image[x,y]] /; ONEONE[x] (* derived 2004 August 4 in THIN-RA.NB *) image[IMAGE[SECOND],P[x_]] := P[range[x]] /; cond && thin[inverse[x]] (* derived 2005 November 13 in SUFUDORA.NB *) image[x_,intersection[y_,image[inverse[x_],z_]]] := intersection[z,image[x,y]] /; FUNCTION[x] (* added 1998 September 8 *) image[x_,intersection[y_,set[z_]]] := intersection[image[x,set[z]], image[V,intersection[y,set[z]]]] /; Not[x === V] (* derived 2008 January 18 in HER-I.NB *) image[inverse[S],intersection[x_,y_]] := intersection[x,y] /; and[equal[x,image[inverse[S],x]],equal[y,image[inverse[S],y]]] (* derived 2005 November 12 in UCL-INS.NB *) image[inverse[S],Uclosure[x_]] := P[U[x]] /; member[x,V] (* Theorem Q-C-IM in Q proved 2000 June *) image[Q,complement[x_]] := complement[x] /; image[Q,x]==x (* derived 2006 January 17 in IMS-INS.NB *) image[S,x_] := V /; member[0,x] (* controversial rule added 1999 August 18 *) image[V,x_] := 0 /; equal[0,x] (* controversial rule added 1999 August 18 *) image[V,x_] := V /; not[equal[0,x]] (* Theorem IM-10A in IM2 conditional rule for sets *) image[V,set[x_]] := V /; member[x,V] (* Added 1999 February 7 *) image[V,set[x_]] := image[V,set[domain[x]]] /; FUNCTION[x] (* Added 1999 February 7 *) image[V,set[x_]] := image[V,set[range[x]]] /; INVFUN[x] (* Added 1999 February 7 *) image[V,set[x_]] := intersection[image[V,set[domain[x]]], image[V,set[range[x]]]] /; composite[Id,x] == x (* Theorem IMG-CO-2 in IMG3 *) IMAGE[composite[x_,y_]] := composite[IMAGE[x],IMAGE[y]] /; thin[y] (* derived 2004 December 29 in I-FUL-REG.NB *) image[V,x_] := V /; not[member[x,V]] (* derived 2005 January 3 in RANK-TWO.NB *) image[ZN,succ[x_]] := P[image[ZN,x]] /; member[x,V] (* derived 2005 February 15 in RUS-A-DJ.NB *) intersection[x_,A[x_]] := 0 /; AxReg intersection[CHOICE,inverse[E]] := CHOICE /; AxCh intersection[complement[cart[x_,y_]],z_] := union[composite[z,id[complement[x]]], composite[id[complement[y]],z]] /; (composite[Id,z] == z) (* added 2003 June 23 based on DIF-IM-G.NB *) intersection[complement[image[g_,y_]],image[g_,x_]] := image[g,intersection[x,complement[y]]] /; FUNCTION[inverse[g]] (* Theorem AP-FU-I in AP2 proved 1998 November 29 *) intersection[composite[x_,f_],composite[y_,f_]] := composite[intersection[x,y],f] /; FUNCTION[f] intersection[composite[g_,x_],composite[g_,y_]] := composite[g,intersection[x,y]] /; INVFUN[g] intersection[g_,composite[g_,x_]] := composite[g,id[fix[x]]] /; INVFUN[g] intersection[f_,composite[x_,f_]] := composite[id[fix[x]],f] /; FUNCTION[f] (* added 2001 May 19 based on EXAMPLES.NB *) intersection[fix[composite[g_,x_,f_]],fix[composite[g_,y_,f_]]] := fix[composite[g,intersection[x,y],f]] /; FUNCTION[f] && INVFUN[g] (* added 2000 September 28 based on FIX.NB *) intersection[fix[composite[S,f_]],fix[composite[g_,S]]] := fix[f] /; And[FUNCTION[f],Equal[inverse[g],f]] intersection[fix[x_],fix[y_]] := fix[x] /; subclass[x,y] intersection[fix[x_],fix[y_]] := fix[x] /; subclass[inverse[x],y] (* added 2001 January 11 based on TOP2.NB *) intersection[fix[composite[S,x_]],fix[composite[inverse[S],x_]]] := fix[x] /; FUNCTION[x] intersection[image[z_,x_],image[z_,y_]] := image[z,x] /; subclass[x,y] (* revised 2003 June 23 based on CAP-IM-G.NB *) intersection[image[g_,x_],image[g_,y_]] := image[g,intersection[x,y]] /; FUNCTION[inverse[g]] (* added 2000 September 4 based on IMAGEV.NB *) intersection[x_,image[V,y_]] := x /; or[equal[0,x],not[equal[0,y]]] (* derived 2004 October 30 in AC1-RS.NB *) intersection[invar[composite[id[x_],inverse[FIRST],FIRST]],P[x_]] := RS[x] /; thin[x] && composite[Id,x] == x (* derived 2005 February 19 in ITR-OM-E.NB *) intersection[omega,complement[P[union[complement[omega],x_]]]] := intersection[omega,complement[succ[x]]] /; member[x,omega] (* derived 2005 January 27 in DIV.NB *) intersection[omega,P[x_]] := succ[x] /; member[x,omega] (* derived 2005 January 3 in FULL.NB *) intersection[omega,succ[x_]] := succ[x] /; member[x,omega] (* derived 2008 May 15 in H-PC.NB *) intersection[x_,P[y_]] := x /; subclass[U[x],y] (* derived 2004 August 9 in RS-2.NB *) intersection[RS[x_],P[y_]] := RS[x] /; subclass[thinpart[x],y] (* added 2002 July 2 based on SS-I.NB *) intersection[x_,set[y_]] := 0 /; not[member[y,x]] (* added 2002 July 2 based on SS-I.NB *) intersection[x_,set[y_]] := set[y] /; member[y,x] (* derived 2005 December 7 in I-SS-SUC.NB *) intersection[x_,set[y_,z___]] := intersection[x,set[z]] /; not[member[y,x]] (* derived 2005 December 7 in I-SS-SUC.NB *) intersection[x_,set[y_,z___]] := union[intersection[x,set[z]],set[y]] /; member[y,x] (* derived 2005 December 7 in I-SS-SUC.NB *) intersection[x_,succ[y_]] := intersection[x,y] /; not[member[y,x]] (* derived 2005 December 7 in I-SS-SUC.NB *) intersection[x_,succ[y_]] := union[intersection[x,y],set[y]] /; member[y,x] (* added 1999 December 29 based on INVAR.NB *) invar[composite[inverse[IMAGE[f_]],E]] := P[complement[range[f]]] /; FUNCTION[f] (* added 2002 November 23 based on VERSECT.NB *) LB[x_] := composite[inverse[VERTSECT[x]],S] /; cond && thin[x] (* added 2002 November 23 based on VERSECT.NB *) LB[complement[x_]] := composite[inverse[VERTSECT[x]],DISJOINT] /; cond && thin[x] (* added 2001 January 30 based on CLOS-DIF.TXT *) LB[complement[f_]] := union[cart[V,complement[domain[f]]], composite[inverse[f],complement[inverse[E]]]] /; FUNCTION[f] (* added 2000 November 17 based on CO-FF.NB *) LB[composite[x_,f_]] := union[cart[set[0],V], composite[inverse[f],LB[x]]] /; FUNCTION[f] (* added 2000 November 17 based on CO-FF.NB *) LB[composite[g_,x_]] := composite[LB[x],IMAGE[inverse[g]],id[P[range[g]]]] /; INVFUN[g] (* added 2001 January 11 based on TOP2.NB *) LB[composite[x_,inverse[S]]] := composite[inverse[POWER],inverse[IMAGE[x]],S] /; cond && thin[x] (* derived 2004 February 20 in REPLACE1.NB *) lb[x_,V] := 0 /; FUNCTION[x] (* derived 2007 April 24 in LB-UB-V.NB *) lb[x_,V] := 0 /; member[x,V] (* derived 2007 April 24 in LB-UB-V.NB *) lb[x_,V] := 0 /; thin[x] (* added 1999 November 9 based on L-R-RULE.LOG *) LEFT[x_] := 0 /; member[x,V] == False (* added 2001 April 25 based on MAP1.NB *) map[x_,y_] := 0 /; not[member[x,V]] (* derived 2004 December 30 in AXREG.NB *) member[x_,x_] := False /; AxReg (* derived 2007 May 31 in SELF-MEM.NB *) member[x_,x_] := False /; member[x,OMEGA] (* derived 2003 December 22 in EMPTY.NB *) member[0,x_] := False /; subclass[x,cart[V,V]] (* derived 2007 June 29 in ACL-FXHL.NB *) member[x_,Aclosure[y_]] := and[equal[x,hull[y,x]],member[x,V]] /; member[y,V] member[CHOICE,x_] := False /; AxCh (* added 2001 August 23 based on PROPER.NB *) member[complement[x_],y_] := False /; composite[Id,x] == x (* Theorem SP-C in SP3 *) member[complement[x_],y_] := False /; member[x,V] (* derived 2006 July 31 in MEMBER-Z.NB *) member[composite[inverse[SUCC],x_],Z] := True /; member[x,Z] (* derived 2006 July 31 in MEMBER-Z.NB *) member[composite[x_,SUCC],Z] := True /; member[x,Z] (* derived 2006 November 9 in SIMPLIFY.NB *) member[composite[x_,SWAP],V] := True /; member[x,V] (* derived 2004 November 19 in SETHOOD.NB *) member[cross[x_,y_],V] := True /; and[member[x,V],member[y,V]] (* added 1999 November 27 *) member[domain[x_],V] := True /; member[x,V] (* derived 2004 November 19 in SETHOOD.NB *) member[eqv[x_],V] := True /; member[x,V] (* derived 2004 November 19 in SETHOOD.NB *) member[fix[composite[x_,y_]],V] := True /; member[x,V] (* derived 2004 November 19 in SETHOOD.NB *) member[fix[composite[x_,y_]],V] := True /; member[y,V] (* Theorem RP-FP in RP1 proved 2000 January 1 *) member[fix[x_],V] := True /; member[x,V] (* derived 2004 November 19 in SETHOOD.NB *) member[funpart[x_],V] := True /; member[x,V] (* added 2001 April 2 based on HF-X.NB *) member[H[x_],V] := True /; member[x,V] (* added 2001 February 22 based on IBC.NB *) member[image[IMAGE[x_],y_],V] := member[image[x,U[y]],V] /; cond && thin[x] (* derived 2006 July 2 in FIN-Q.NB *) member[x_,image[Q,OMEGA]] := True /; member[x,FINITE] (* added 1999 November 27 *) member[image[x_,y_],V] := True /; member[x,V] (* added 2001 March 8 based on DEMORGAN.NB *) member[image[x_,y_],V] := True /; And[cond,thin[x],member[y,V]] (* added 1999 October 16 based on Corollary VS-12COR in VS1 *) member[image[x_,y_],V] := equal[0,y] /; VERTSECT[x] == 0 (* derived 2008 June 27 in SETHOOD.NB *) member[image[VERTSECT[x_],y_],V] := True /; member[x,V] (* derived 2006 December 13 in FACT.NB *) member[intersection[x_,y_],FINITE] := True /; member[x,FINITE] (* added 1999 November 16 based on CAP-CUP.NB *) member[intersection[x_,y_],V] := True /; member[x,V] (* derived 2005 September 25 in VARIOUS.NB *) member[invar[x_],y_] := False /; member[x,V] (* derived 2007 July 3 in INVAR.NB *) member[invar[x_],y_] := False /; thin[x] (* added 1999 November 27 *) member[inverse[x_],V] := True /; member[x,V] (* derived 2006 August 19 in CARD-MAP.NB *) member[map[x_,y_],FINITE] := True /; and[member[x,FINITE],member[y,FINITE]] (* derived 2007 March 13 in DIV-LT.NB *) member[natdiv[x_,y_],z_] := or[and[member[x,natmul[y,z]],member[pair[y,x],DIV]], and[equal[0,x],equal[0,y],not[equal[0,z]]]] /; member[z,omega] (* derived 2007 March 13 in SUB-LT.NB *) member[natsub[x_,y_],z_] := and[member[x,natadd[y,z]],member[y,omega],not[member[x,y]]] /; member[z,omega] (* derived 2008 May 9 in PRIMESEQ.NB *) member[x_,omega] := True /; member[x,PRIMES] (* derived 2004 November 19 in SETHOOD.NB *) member[oopart[x_],V] := True /; member[x,V] (* derived 2005 July 13 in DIV-CALC.NB *) member[pair[x_,y_],DIV] := False /; not[equal[0,natmod[y,x]]] (* derived 2005 July 13 in DIV-CALC.NB *) member[pair[x_,y_],DIV] := True /; equal[0,natmod[y,x]] (* derived 2006 July 2 in FIN-Q.NB *) member[pair[x_,y_],Q] := equal[card[x],card[y]] /; member[x,FINITE] (* derived 2006 July 2 in FIN-Q.NB *) member[pair[x_,y_],Q] := equal[card[x],card[y]] /; member[y,FINITE] (* derived 2007 September 12 in PAIR-IMV.NB *) member[pair[union[x_,complement[image[V,w_]]],y_],z_] := and[member[pair[x,y],z],not[equal[0,w]]] /; subclass[z,cart[V,V]] (* derived 2007 September 12 in PAIR-IMV.NB *) member[pair[x_,union[y_,complement[image[V,w_]]]],z_] := and[member[pair[x,y],z],not[equal[0,w]]] /; subclass[z,cart[V,V]] (* derived 2007 September 12 in PAIR-IMV.NB *) member[pair[union[x_,image[V,w_]],y_],z_] := and[equal[0,w],member[pair[x,y],z]] /; subclass[z,cart[V,V]] (* derived 2007 September 12 in PAIR-IMV.NB *) member[pair[x_,union[y_,image[V,w_]]],z_] := and[equal[0,w],member[pair[x,y],z]] /; subclass[z,cart[V,V]] (* added 1999 November 27 *) member[range[x_],V] := True /; member[x,V] (* derived 2004 November 19 in SETHOOD.NB *) member[rotate[x_],V] := True /; member[x,V] (* derived 2005 December 8 in REG.NB *) member[set[x_,y__],REGULAR] := member[set[y],REGULAR] /; member[x,REGULAR] (* derived 2005 September 25 in VARIOUS.NB *) member[subvar[x_],V] := True /; member[x,V] (* derived 2004 May 14 in THINPART.NB *) member[thinpart[x_],V] := True /; member[x,V] (* derived 2004 November 19 in SETHOOD.NB *) member[wf[x_],V] := True /; member[x,V] (* derived 2005 February 13 in NAT.NB *) nat[x_] := 0 /; not[member[x,omega]] (* derived 2005 February 13 in NAT.NB *) nat[x_] := x /; member[x,omega] (* derived 2006 November 30 in EXP-INEQ.NB *) nat[U[x_]] := U[x] /; member[x,omega] (* derived 2007 April 7 in LD6.NB *) natadd[y_,nat[natsub[x_,y_]]] := union[x,y] /; and[member[x,omega],member[y,omega]] (* derived 2005 June 24 in MOD-CALC.NB *) natmod[x_,y_] := x /; and[member[x,y],member[y,omega]] (* derived 2005 June 24 in MOD-CALC.NB *) natmod[x_,y_] := natmod[natsub[x,y],y] /; and[member[x,omega],member[y,omega],not[member[x,y]]] (* derived 2007 April 5 in EVEN-ODD.NB *) not[member[x_,even]] := member[x,odd] /; member[x,omega] (* derived 2007 April 5 in EVEN-ODD.NB *) not[member[x_,odd]] := member[x,even] /; member[x,omega] (* derived 2004 May 7 in OOPART.NB *) oopart[x_] := x /; ONEONE[x] (* derived 2007 March 11 in OR-AND.NB *) or[and[p_,r_],and[q_,r_]] := and[q,r] /; implies[p,q] (* derived 2005 January 25 in SUBCLASS.NB *) or[and[p_,subclass[x_,z_]],not[subclass[y_,z_]]] := or[p,not[subclass[y,z]]] /; subclass[x,y] (* derived 2005 January 25 in SUBCLASS.NB *) or[and[p_,subclass[x_,z_]],not[subclass[x_,y_]]] := or[p,not[subclass[x,y]]] /; subclass[x,z] (* derived 2005 February 24 in X3378.NB *) or[equal[0,intersection[x_,z_]],not[equal[0,intersection[y_,z_]]]] := True /; subclass[x,y] (* derived 2004 October 29 in FUN-AP.NB *) or[equal[y_,APPLY[z_,x_]],not[member[pair[x_,y_],z_]]] := True /; FUNCTION[z] (* derived 2006 August 27 in CARDOMSQ.NB *) or[equal[x_,y_],member[x_,y_]] := not[member[y,x]] /; and[member[x,omega],member[y,omega]] (* derived 2004 February 20 in REPLACE1.NB *) or[equal[x_,z_],not[equal[y_,z_]]] := True /; equal[x,y] (* derived 2005 July 10 in O21.NB *) or[equal[y_,succ[x_]],member[succ[x_],y_]] := member[x,y] /; member[y,omega] (* derived 2004 October 28 in AC2.NB *) or[FUNCTION[composite[x_,y_]],not[FUNCTION[x_]]] := True /; FUNCTION[y] (* derived 2004 October 28 in AC2.NB *) or[FUNCTION[composite[x_,y_]],not[FUNCTION[y_]]] := True /; FUNCTION[x] (* derived 2004 October 26 in AXCH-AC1.NB *) or[member[image[CHOICE,x_],V],not[member[x_,y_]]] := True /; AxCh (* derived 2005 February 6 in X3398.NB *) or[member[image[x_,y_],V],not[member[y_,z_]]] := True /; cond && thin[x] (* derived 2004 June 20 in X1505-11.NB *) or[member[intersection[x_,y_],V],p_] := True /; or[member[x,V],p] (* added 2002 October 8 based on SUBCLASS.NB *) or[member[x_,y_],not[member[x_,z_]]] := True /; subclass[z,y] (* derived 2005 February 3 in MEMB-CO.NB *) or[member[pair[u_,w_],composite[x_,inverse[y_]]],not[member[pair[v_,u_],y_]], not[member[pair[v_,w_],x_]]] := True /; and[subclass[x,cart[V,V]],subclass[y,cart[V,V]]] (* derived 2005 February 3 in MEMB-CO.NB *) or[member[pair[u_,w_],composite[x_,y_]],not[member[pair[u_,v_],y_]], not[member[pair[v_,w_],x_]]] := True /; and[subclass[x,cart[V,V]],subclass[y,cart[V,V]]] (* derived 2006 January 5 in TRUEPAIR.NB *) or[member[x_,V],not[member[pair[x_,y_],z_]]] := True /; subclass[z,cart[V,V]] (* derived 2006 January 5 in TRUEPAIR.NB *) or[member[y_,V],not[member[pair[x_,y_],z_]]] := True /; subclass[z,cart[V,V]] (* introduced 2004 June 7 in EQ-SUBST.NB *) or[not[equal[x_,y_]],p_] := True /; (equality && noblanks[{x,y,p}] && (p /. x -> y)) (* derived 2005 February 15 in RUS-A-DJ.NB *) or[not[member[x_,A[y_]]],not[member[x_,y_]]] := True /; AxReg (* derived 2005 February 20 in CARD-TWO.NB *) or[not[member[x_,y_]],not[member[x_,z_]]] := not[member[x,y]] /; subclass[y,z] (* added 2002 October 8 based on SUBCLASS.NB *) or[not[subclass[x_,y_]],subclass[x_,z_]] := True /; subclass[y,z] (* added 2002 October 8 based on SUBCLASS.NB *) or[not[subclass[x_,y_]],subclass[z_,y_]] := True /; subclass[z,x] (* derived 2005 October 19 in ORD-WRAP.NB *) ord[x_] := x /; member[x,OMEGA] (* derived 2005 October 1 in PO-WRAP.NB *) po[x_] := x /; PARTIALORDER[x] (* added 2000 June 4 based on CHOICE.NB *) range[CHOICE] := V /; AxCh (* added 2000 January 1 based on RA-IMG-H.NB *) range[IMAGE[h_]] := P[range[h]] /; FUNCTION[h] && FUNCTION[inverse[h]] (* derived 2004 December 29 in I-FUL-REG.NB *) rank[x_] := V /; not[member[x,REGULAR]] (* added 2001 July 12 based on RANK-1.NB *) rank[x_] := V /; not[member[x,V]] (* added 1999 October 29 based on 1999 October 28 session RC-LOG.1 *) RC[x_] := 0 /; member[x,V] == False (* derived 2005 December 8 in REG.NB *) reg[x_] := x /; member[x,REGULAR] (* derived 2004 December 30 in AXREG.NB *) REGULAR := V /; AxReg (* derived 2004 December 18 in RFX-WRAP.NB *) rfx[x_] := x /; REFLEXIVE[x] (* derived 2004 December 18 in RFX-WRAP.NB *) rfx[x_] := 0 /; equal[0,fix[x]] (* derived 2004 December 18 in RFX-WRAP.NB *) rfx[x_] := id[fix[x]] /; FUNCTION[x] (* added 1999 November 9 based on L-R-RULE.LOG *) RIGHT[x_] := 0 /; member[x,V] == False (* derived 2004 February 20 in REPLACE1.NB *) rotate[composite[complement[x_],f_]] := composite[complement[rotate[composite[x,f]]],id[cart[V,V]]] /; And[FUNCTION[f],subclass[cart[V,V],domain[f]]] (* added 2000 December 29 based on ROTATE.NB *) rotate[composite[E,inverse[E],f_]] := intersection[complement[rotate[composite[DISJOINT,f]]], composite[domain[f],SECOND]] /; FUNCTION[f] (* added 2000 January 3 based on RO-G.NB *) rotate[g_] := composite[SECOND,inverse[g],FIRST, id[composite[FIRST,inverse[g]]]] /; INVFUN[g] (* derived 2004 August 9 in RS-2.NB *) RS[x_] := P[x] /; FUNCTION[x] (* derived 2008 January 18 in THICK.NB *) RS[x_] := set[0] /; equal[0,domain[thinpart[x]]] (* derived 2004 August 11 in RS-4.NB *) RS[cart[x_,y_]] := set[0] /; not[member[y,V]] (* derived 2004 December 30 in AXREG.NB *) RUSSELL := V /; AxReg (* added 2001 November 13 based on 1ST-2ND.NB *) second[x_] := V /; not[member[x,V]] (* derived 2004 November 2 in SELECT.NB *) SELECT := V /; axch (* derived 2004 November 19 in SETHOOD.NB *) setpart[x_] := x /; member[x,V] (* derived 2004 November 19 in SETHOOD.NB *) setpart[x_] := 0 /; not[member[x,V]] set[CHOICE] := 0 /; AxCh (* added 1999 December 12 based on FLIP.NB *) set[pair[x_,y_]] := cart[set[x],set[y]] /; member[x,V] && member[y,V] (* added 1998 February 7 *) set[P[x_]] := 0 /; set[x] == 0 set[U[x_]] := 0 /; set[x] == 0 (* derived 2007 June 10 in SPINE.NB *) spine[x_,y_] := y /; subclass[cart[y,y],union[x,inverse[x]]] (* derived 2004 August 21 in SUBCLASS.NB *) subclass[A[x_],A[y_]] := True /; subclass[y,x] (* derived 2007 February 17 in RELNS.NB *) subclass[ADJOIN[w_],cart[x_,y_]] := and[equal[V,x],subclass[image[S,set[w]],y]] /; member[w,V] (* derived 2007 February 17 in RELNS.NB *) subclass[x_,cart[V,V]] := True /; composite[Id,x] == x (* Axiom of Choice AX-CH-2 *) subclass[CHOICE,inverse[E]] := True /; AxCh (* derived 2004 September 13 in LOOPTEST.NB *) subclass[composite[w__,x_,z___],composite[w__,y_,z___]] := True /; subclass[x,y] (* derived 2004 September 13 in LOOPTEST.NB *) subclass[composite[w___,x_,z__],composite[w___,y_,z__]] := True /; subclass[x,y] (* derived 2004 August 21 in SUBCLASS.NB *) subclass[composite[Id,x_],y_] := True /; subclass[x,y] (* derived 2004 August 21 in SUBCLASS.NB *) subclass[composite[id[x_],y_],z_] := True /; subclass[y,z] (* derived 2004 August 21 in SUBCLASS.NB *) subclass[composite[x_,id[y_]],z_] := True /; subclass[x,z] (* derived 2004 August 21 in SUBCLASS.NB *) subclass[domain[x_],domain[y_]] := True /; subclass[x,y] (* derived 2004 August 21 in SUBCLASS.NB *) subclass[fix[x_],fix[y_]] := True /; subclass[x,y] (* derived 2005 January 5 in SU-HC.NB *) subclass[x_,H[y_]] := subclass[x,y] /; full[x] (* derived 2007 October 30 in PROJ-SBV.NB *) subclass[y_,image[x_,y_]] := subclass[y,fix[x]] /; and[idempotent[x],FUNCTION[x]] (* derived 2007 June 2 in SUBVAR.NB *) subclass[y_,image[x_,y_]] := subclass[y,fix[x]] /; REFLEXIVE[x] (* derived 2005 January 9 in PC-CARD2.NB *) subclass[image[x_,y_],z_] := True /; subclass[range[x],z] (* added 2000 September 14 based on INTERIOR.NB *) subclass[x_,image[g_,y_]] := subclass[image[inverse[g],x],y] /; And[INVFUN[g],range[g]==V] (* derived 2004 February 20 in REPLACE1.NB *) subclass[r_,image[g_,x_]] := subclass[image[inverse[g],r],x] /; And[composite[Id,r] == r,INVFUN[g],subclass[cart[V,V],range[g]]] (* derived 2004 June 20 in SU-IM.NB *) subclass[image[x_,y_],image[x_,z_]] := True /; subclass[y,z] (* derived 2004 June 20 in SU-IM.NB *) subclass[image[x_,z_],image[y_,z_]] := True /; subclass[x,y] (* added 2003 May 24 based on CAPCL-OO.NB *) subclass[image[IMAGE[IMAGE[h_]],binclosed[CAP]],binclosed[CAP]] := True /; ONEONE[h] (* derived 2004 May 7 in IIOO-ACL.NB *) subclass[image[IMAGE[IMAGE[h_]],fix[ACLOSURE]],fix[ACLOSURE]] := True /; ONEONE[h] (* derived 2004 May 7 in OO-TOPS.NB *) subclass[image[IMAGE[IMAGE[h_]],TOPS],TOPS] := True /; ONEONE[h] (* derived 2004 June 10 based on X409.NB *) subclass[intersection[x_,y_],z_] := True /; subclass[y,z] (* derived 2004 October 26 in AXCH.NB *) subclass[inverse[CHOICE],E] := True /; AxCh (* derived 2004 December 30 in AXREG.NB *) subclass[P[x_],x_] := equal[V,x] /; AxReg (* derived 2007 July 8 in IMS-ENS.NB *) subclass[P[x_],y_] := False /; not[member[0,y]] (* derived 2007 July 10 in PC-SU.NB *) subclass[P[x_],y_] := False /; not[subclass[x,U[y]]] (* derived 2007 July 10 in PC-SU.NB *) subclass[P[x_],y_] := False /; and[member[x,V],not[member[x,y]]] (* derived 2007 July 10 in PC-SU.NB *) subclass[P[x_],y_] := False /; and[member[x,V],subclass[y,x]] (* derived 2006 March 20 in PCSU-FIN.NB *) subclass[P[x_],FINITE] := member[x,FINITE] /; subclass[x,REGULAR] (* derived 2008 September 7 in SU-PAIR.NB *) subclass[x_,PAIR[first[x_],second[x_]]] := True (* derived 2008 September 7 in SU-PAIR.NB *) subclass[PAIR[first[x_],second[x_]],x_] := or[equal[V,x],member[first[x],V]] (* derived 2004 August 21 in SUBCLASS.NB *) subclass[range[x_],range[y_]] := True /; subclass[x,y] (* derived 2005 January 18 in SET-SU.NB *) subclass[set[x_,y___],z_] := and[member[x,z],subclass[set[y],z]] /; member[x,V] (* derived 2005 January 11 in REPLACE.NB *) subclass[set[x_,y__],z_] := False /; and[member[x,V],not[member[x,z]]] (* derived 2005 January 11 in REPLACE.NB *) subclass[x_,set[y__]] := False /; not[member[x,V]] (* derived 2005 January 3 in SUCC-UP.NB *) subclass[succ[x_],y_] := and[member[x,y],subclass[x,y]] /; member[x,V] (* added 2003 January 12 based on RA-ITER.NB *) subclass[x_,union[y_,z_]] := True /; subclass[x,y] (* derived 2007 October 30 in PROJ-SBV.NB *) subvar[x_] := P[fix[x]] /; and[FUNCTION[x],idempotent[x]] (* derived 2007 June 2 in SUBVAR.NB *) subvar[x_] := P[fix[x]] /; REFLEXIVE[x] (* derived 2003 December 24 in UCL-ON.NB *) subvar[x_] := V /; fix[x] == V (* related to Theorem SBV-FU2 in SUBVAR proved 1999 February 15 *) subvar[g_] := intersection[invar[inverse[g]],P[range[g]]] /; INVFUN[g] (* added 2001 December 23 based on SUBVAR.NB *) subvar[composite[g_,x___,f_]] := intersection[image[inverse[IMAGE[f]],subvar[composite[x]]], P[domain[f]]] /; And[FUNCTION[f],g == inverse[f]] (* added 2002 October 20 based on SUBVAR.NB *) subvar[union[x_,id[y_]]] := P[y] /; subclass[range[x],y] (* added 2001 August 23 based on PROPER.NB *) succ[x_] := x /; not[member[x,V]] (* Theorem TC-FUL-3 in TC2 proved 2000 October 22 *) tc[x_] := x /; subclass[U[x],x] (* derived 2004 May 14 in THINPART.NB *) thinpart[x_] := x /; FUNCTION[x] (* derived 2004 May 14 in THINPART.NB *) thinpart[x_] := composite[Id,x] /; cond && thin[x] (* derived 2004 May 14 in THINPART.NB *) thinpart[x_] := composite[Id,x] /; member[x,V] (* derived 2005 January 25 in THINPART.NB *) thinpart[x_] := 0 /; cond && equal[0,domain[VERTSECT[x]]] (* derived 2005 October 8 in TO-WRAP.NB *) to[x_] := x /; TOTALORDER[x] (* derived 2005 October 25 in TOP-WRAP.NB *) top[x_] := x /; member[x,TOPS] (* derived 2006 January 3 in CONDRULE.NB *) TOTALORDER[x_] := False /; not[PARTIALORDER[x]] (* derived 2004 August 27 in TRV-COND.NB *) TRANSITIVE[composite[inverse[x_],x_]] := True /; FUNCTION[x] (* derived 2004 June 16 in TRANSVAR.NB *) transvar[x_,y_] := V /; subclass[x,y] (* derived 2004 August 27 in TRV-COND.NB *) trv[x_] := x /; TRANSITIVE[x] (* derived 2004 August 27 in TRV-COND.NB *) trv[composite[id[x_],y_]] := composite[id[x],y] /; TRANSITIVE[y] (* derived 2004 August 27 in TRV-COND.NB *) trv[composite[x_,id[y_]]] := composite[x,id[y]] /; TRANSITIVE[x] (* derived 2004 August 27 in TRV-COND.NB *) trv[composite[id[x_],y_,id[z_]]] := composite[id[x],y,id[z]] /; TRANSITIVE[y] (* added 2000 November 14 based on MAX.NB *) UB[complement[x_]] := composite[complement[inverse[E]],IMAGE[x]] /; cond && thin[x] (* added 2001 January 30 based on CLOS-DIF.TXT *) UB[complement[g_]] := union[cart[V,complement[range[g]]], composite[g,complement[inverse[E]]]] /; INVFUN[g] (* added 2001 July 12 based on UB-LB-2.NB *) UB[complement[composite[x_,y_]]] := composite[UB[complement[x]],IMAGE[y]] /; cond && thin[y] (* added 2000 November 17 based on CO-FF.NB *) UB[composite[x_,f_]] := composite[UB[x],IMAGE[f],id[P[domain[f]]]] /; FUNCTION[f] (* added 2000 November 17 based on CO-FF.NB *) UB[composite[g_,x_]] := union[cart[set[0],V], composite[g,UB[x]]] /; INVFUN[g] (* added 2001 January 11 based on TOP2.NB *) UB[composite[S,x_]] := composite[inverse[POWER],inverse[IMAGE[inverse[x]]],S] /; cond && thin[inverse[x]] (* derived 2007 April 24 in LB-UB-V.NB *) ub[x_,V] := 0 /; member[x,V] (* derived 2007 April 24 in LB-UB-V.NB *) ub[x_,V] := 0 /; and[FUNCTION[x],not[equal[V,domain[x]]]] (* derived 2007 April 24 in LB-UB-V.NB *) ub[x_,V] := 0 /; and[FUNCTION[x],not[member[range[x],range[SINGLETON]]]] (* derived 2005 October 27 in UCL-I.NB *) Uclosure[intersection[x_,y_]] := intersection[x,y] /; Uclosure[x] == x && Uclosure[y] == y (* derived 2007 June 24 in UCL-UO.NB *) Uclosure[UNOPS] := intersection[image[inverse[DORA],inverse[S]],P[cart[V,V]]] /; axch union[x_,cart[V,V]] := cart[V,V] /; composite[Id,x] == x union[CHOICE,inverse[E]] := inverse[E] /; AxCh (* added 1998 October 27 *) union[x_,composite[Id,complement[x_]]] := cart[V,V] /; composite[Id,x] == x (* added 1999 July 19 *) union[Di,x_] := union[cart[V,fix[x]],cart[fix[x],V], composite[id[complement[fix[x]]],Di,id[complement[fix[x]]]]] /; x == composite[Id,x] (* added 1999 August 18 based on session 1PM *) union[image[V,complement[x_]],y_] := V /; subclass[x,y] (* added 2002 May 20 based on ITERCART.NB *) union[omega,succ[x_]] := omega /; and[member[x,omega],subclass[x,omega]] (* added 2002 March 4 based on ZN-1.NB *) union[x_,P[y_]] := P[y] /; subclass[U[x],y] (* derived 2004 March 23 in TRV-K.NB *) union[x_,set[y_]] := x /; member[y,x] (* added 2002 November 21 based on C-THIN.NB *) VERTSECT[complement[x_]] := 0 /; cond && thin[x] (* corollary of Theorem IMG-CO-2 in IMG3 added 1999 July 18 *) VERTSECT[composite[x_,y_]] := composite[IMAGE[x],VERTSECT[y]] /; cond && thin[y] (* derived 2006 November 25 *) VERTSECT[composite[x_,y_]] := composite[IMAGE[x],VERTSECT[y]] /; member[y,V] (* added 1999 October 17 based on VERTSECT.1 *) VERTSECT[composite[x_,y_]] := cart[complement[domain[y]],set[0]] /; cond && VERTSECT[x] == 0 (* corollary of Theorem VS-FU-3 in VS1 proved 1999 July 14 *) VERTSECT[f_] := union[composite[SINGLETON,f], cart[complement[domain[f]],set[0]]] /; FUNCTION[f] (* added 1999 October 22 *) VERTSECT[cross[x_,y_]] := union[ cart[complement[cart[V,V]],set[0]], composite[CART,cross[VERTSECT[x],VERTSECT[y]]]] /; And[cond,thin[x],thin[y]] (* added 1999 October 21 based on VERTSECT.NB *) VERTSECT[intersection[x_,y_]] := composite[CAP, intersection[composite[inverse[FIRST],VERTSECT[x]], composite[inverse[SECOND],VERTSECT[y]]]] /; And[cond,thin[x],thin[y]] (* added 1999 December 16 based on VERTSECT.NB *) VERTSECT[intersection[x_,complement[y_]]] := composite[DIF, intersection[composite[inverse[FIRST],VERTSECT[x]], composite[inverse[SECOND],VERTSECT[y]]]] /; And[cond,thin[x],thin[y]] (* added 1999 December 27 based on CHAL.NB *) VERTSECT[rotate[composite[g_,E]]] := union[cart[complement[cart[range[g],V]],set[0]], composite[IMG,cross[inverse[g],SINGLETON]]] /; INVFUN[g] (* derived 2006 January 3 in CONDRULE.NB *) WELLFOUNDED[x_] := False /; not[equal[0,fix[x]]] (* derived 2007 June 19 in OO-XFM.NB *) WELLFOUNDED[intersection[x_,y_]] := True /; WELLFOUNDED[x] (* derived 2006 January 3 in CONDRULE.NB *) WELLORDER[x_] := False /; not[TOTALORDER[x]] (* derived 2005 October 16 in WO-WRAP.NB *) wo[x_] := x /; WELLORDER[x] (* derived 2004 October 28 in X.NB *) X[x_] := set[x] /; FUNCTION[x] (* some conditional rules moved to end *) (* added 2001 January 27 based on EXPLORE.NB *) fix[composite[inverse[SECOND],u_,intersection[composite[v_,FIRST], composite[w_,intersection[composite[x_,FIRST],composite[y_,SECOND]]]]]] := composite[intersection[composite[u,FIRST], composite[inverse[y],SECOND]],id[inverse[w]], intersection[composite[inverse[FIRST],v], composite[inverse[SECOND],x]]] (* derived 2004 February 20 in REPLACE1.NB *) ub[g_,V] := 0 /; INVFUN[g] (* rules affected by simplify flag *) (* Improved 2000 September 3 based on DUP-1.NB *) composite[f_,id[x_],g_] := id[image[f,x]] /; And[simplify,FUNCTION[f],inverse[f]==g] (* added 2002 November 2 based on SIMPLIFY.NB *) composite[id[complement[x_]],y_] := 0 /; simplify && subclass[range[y],x] (* added 2001 November 30 based on FLIP-SS.NB *) composite[x_,id[complement[y_]]] := 0 /; simplify && subclass[domain[x],y] (* Theorem IDX-CO4B in IDX3 removed 2002 October 21 *) composite[x_,id[y_]] := composite[Id,x] /; simplify && domain[x] == y (* Theorem IDX-CO3B in IDX3 removed 2002 October 21 *) composite[id[x_],y_] := composite[Id,y] /; simplify && x == range[y] (* added 2001 March 8 based on FUN-RULE.NB *) composite[intersection[x_,composite[y_,f_]],g_] := intersection[y,composite[x,g]] /; And[simplify,FUNCTION[f],inverse[f]==g] (* added 2001 March 8 based on FUN-RULE.NB *) composite[intersection[x_,composite[y_,f_]],id[z_],g_] := intersection[y,composite[x,id[z],g]] /; And[simplify,FUNCTION[f],g==inverse[f]] (* added 2001 December 19 based on SETHOOD3.NB *) equal[x_,set[y_]] := False /; simplify && not[member[x,V]] (* derived 2005 December 10 in NOT-EQ-U.NB *) equal[x_,union[y_,z_]] := False /; not[subclass[y,x]] (* added 1999 October 28 based on TEST-LOG.3 *) equal[V,x_] := False /; simplify && subclass[x,cart[V,V]] (* added 2002 October 25 based on FIXRULES.NB *) fix[composite[x_,y_]] := domain[y] /; simplify && subclass[y,inverse[x]] (* derived 2004 January 6 in I-CO-SU.NB *) intersection[composite[w___,x_,z___],composite[w___,y_,z___]] := composite[w,x,z] /; simplify && subclass[x,y] (* see: 1998/SEP/14/SESSION2.LOG *) union[complement[x_],y_] := V /; simplify && subclass[x,y] (* derived 2005 February 3 in WF-DIV.NB *) wf[x_] := x /; WELLFOUNDED[x] (* derived 2007 May 2 in WOB.NB *) wob[x_] := x /; member[x,image[Q,OMEGA]] (* rules with an expand flag *) (* added 1999 September 28 based on SU-CP.LOG removed 2006 November 25 due to interference with reasoning restored 2007 February 17 with expand flag *) subclass[z_,cart[x_,y_]] := and[subclass[domain[z],x], subclass[range[z],y]] /; expand && composite[Id,z]==z (* other unsafe rules *) (* added 2002 November 22 based on LB-UB-VS.NB complement[composite[x_,y_]] := union[complement[cart[V,V]], composite[UB[complement[x]],VERTSECT[y]]] /; unsafe && thin[y] *) (* added 2002 November 22 based on LB-UB-VS.NB complement[composite[x_,y_]] := union[complement[cart[V,V]], composite[inverse[VERTSECT[inverse[x]]], inverse[LB[complement[y]]]]] /; unsafe && thin[inverse[x]] *) (* added 2001 August 1 based on RK-IN.NB removed 2001 August 5 composite[x_,id[y_]] := 0 /; unsafe && intersection[y,domain[x]] == 0 *) (* added 2001 August 1 based on RK-IN.NB removed 2001 August 5 composite[id[x_],y_] := 0 /; unsafe && intersection[x,range[y]] == 0 *) (* added 2000 January 5 based on A-SC-0.NB removed 2004 October 31 because it causes looping in the sethood rule for X[x] equal[0,x_] := False /; unsafe && not[member[x,V]] *) (* added 2000 December 14 based on CLIQUES.NB; later removed fix[composite[DISJOINT,IMAGE[x_]]] := intersection[cliques[complement[x]], P[domain[VERTSECT[x]]]] /; unsafe *) (* simplify flag changed to unsafe flag 2006 September 15 based on LOOP1713.NB intersection[complement[y_],x_] := 0 /; unsafe && subclass[x,y] *) (* added 2002 November 13 based on NORM-ADD.NB intersection[composite[complement[inverse[E]],IMAGE[x_]],inverse[E]] := composite[GREATEST[complement[x]],id[P[domain[VERTSECT[x]]]]] *) (* proposed 2003 June 4 based on SETHOOD.NB member[VERTSECT[x_],V] := member[domain[VERTSECT[x]],V] /; unsafe *) End[ ] (* end the private context *) (* temporarily remove protections Protect[ A,Aclosure,ACLOSURE,ACYCLIC,ADJOIN,and,ANTISYM,ANTISYMMETRIC,apply,APPLY, assert,ASSOC,associative,ASSOCIATIVE,BIGCAP,BIGCUP,bij,BIJ,binclosed,binhom,binop,BINOPS, cantor,CAP,CAPclosed,card,CARD,cart,CART,cartsq,cat,category,CATOFUNS,CATORELN, chains,CHAINS,CHOICE,choicefunction,CL,class,cliques,CLIQUES,clock, COARSER,commutant,commute,COMMUTE,COMPACT,complement,COMPOSE,composite, CONST,CORE,core,COUNTABLE,cross,CROSS,CUP,CUPclosed,CURRY, DEDEKIND,DENUMERABLE,DESCENDING,Di,diag,dif,DIF,DIFclosed,direct, disjoint,DISJOINT,DIV,domain,DORA,DUP, E,empty,equal,EQUIDIFF,equiv,EQUIV,EQUIVALENCE,EQV,eqv, eval,even,example,exists,existsunique, FACTORIAL,fin,finchar,FINCHAR,FINITE,first,FIRST,fix,FIX,flip,forall,full,FULL, FUNCTION,funpart,FUNPART,FUNS,GLB,GREATEST,greatest,GROUPS, H,hartogs,HARTOGS,HC,history,HISTORY,hull,HULL, Id,id,idem,IDEM,idempotent,IDP,image,IMAGE,IMG,implies,INDUCTIVE,intadd,INTADD,INTDIV, intersection,intmul,INTMUL,inttimes,INTTIMES, invar,INVAR,invariant,inverse,INVERSE,INVFUN,INVOL,iterate, K,KURA,lambda,LAMBHULL,lb,LB,ld,LEAST,least,LEFT,LeftPairV,list,LISTS,LUB, map,MAP,MAXIMAL,maximal,member,MINIMAL,minimal,MIXMUL,MIXTIMES,monus,modulo, nat,natadd,NATADD,natdiv,natexp,NATEXP,natmod,NATMOD,natmul,NATMUL,natquot,natsub,not, odd,omega,OMEGA,ONEONE,oopart,OOPART,or,ord, P,pair,PAIR,pairset,PAIRSET,PARTIALORDER,partrec,PERMS,plus,PLUS,po,PO,PointClosed, POWER,power,PRIMES,PRIMESEQ,PROJ,propersubclass,PS,PSM,Q,quasigp,QUASIGPS,QUASIORDER, range,rank,RANK,RC,RCF,rec,RECTANGLE,REFLEXIVE,REGULAR,reify,restrict,RESTRICT, RFX,rfx,RIF,RIGHT,RightPairV,ROT,rotate,RS,RUSSELL, S,second,SECOND,SELECT,semigp,SEMIGPS,set,setpart,singleton,SINGLETON,singlevalued,SINGVAL, SMALLER,spine,subclass,subcommutant,subcommute,SUBCOMMUTE, subvar,SUBVAR,subvariant,succ,SUCC,SWAP,SYM,SYMDIF,symdif,SYMMETRIC, T1,T2,tc,TC,thin,thinpart,times,to,TO,top,TOPS,TOTALORDER, TRANSITIVE,transvar,transvariant,trv,TRV,twist,TWIST, U,ub,UB,UBD,Uchains,UCHAINS,Uclosure,UCLOSURE,udora,union,UNOPS,V,VERTSECT,VS, WELLORDER,WELLFOUNDED,WF,wf,WFPART,wo,WO,wob,Z,ZN ] protect exported symbols except flags *) EndPackage[ ] (* end the package context *)