2024-03-06  Steven Eker  <eker@pup>

	* metaUp.cc (MetaLevel::upQid): got rid of const_cast<>

2024-03-05  Steven Eker  <eker@pup>

	* metaUp.cc (MetaLevel::upTerm): remove const_cast<>

===================================Maude158===========================================

2024-01-09  Steven Eker  <eker@pup>

	* metaLevel.hh (MetaLevel::downSearchType): support '#
	(MetaLevel::downSearchType): reimplemented to avoid encode()

	* metaSearch.cc (MetaLevelOpSymbol::downSearchType): deleted

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): deleted
	decl for downSearchType()

	* metaNarrow.cc (MetaLevelOpSymbol::makeNarrowingSequenceSearch):
	use MetaLevel::downSearchType()
	(MetaLevelOpSymbol::makeNarrowingSequenceSearchAlt): use
	MetaLevel::downSearchType()

	* metaNewNarrow2.cc
	(MetaLevelOpSymbol::makeNarrowingSequenceSearch3): use
	MetaLevel::downSearchType()

	* metaSearch.cc (MetaLevelOpSymbol::makeRewriteSequenceSearch):
	use MetaLevel::downSearchType()
	(MetaLevelOpSymbol::makeSMT_RewriteSequenceSearch): use
	MetaLevel::downSearchType()

===================================Maude156===========================================

2023-12-12  Steven Eker  <eker@pup>

	* metaDownRenamings.cc (MetaLevel::downRenamingAttribute):
	handle latexSymbol

	* metaDownOps.cc (MetaLevel::downAttr): added support for latex;
	use Token::ropeToCode() for metadata
	(MetaLevel::downOpDecl): pass ai.latex to addPolymorph() and
	m->addOpDeclaration()

	* metaLevel.hh (class MetaLevel): added latex field to
	struct AttributeInfo; added explicit intializers to struct
	AttributeInfo and StatementAttributeInfo deleted ctor decls
	(MetaLevel::AttributeInfo::AttributeInfo): deleted
	(MetaLevel::StatementAttributeInfo::StatementAttributeInfo):
	deleted

	* metaUpModule.cc (MetaLevel::upRenamingAttributeSet):
	handle latex attribute

2023-12-11  Steven Eker  <eker@pup>

	* metaUpModule.cc (MetaLevel::upOpDecl): support latex
	attribute
	(MetaLevel::upPolymorphDecl): handle latex attribute

2023-12-05  Steven Eker  <eker@pup>

	* metaDownOps.cc (MetaLevel::downOpDecl): pass latexMacro
	= NONE to addPolymorph() and addOpDeclaration()

2023-11-30  Steven Eker  <eker@pup>

	* metaLevelSignature.cc: added latexSymbol

===================================Maude155===========================================

2023-11-29  Steven Eker  <eker@pup>

	* descentFunctions.cc (MetaLevelOpSymbol::metaPrintToString):
	set PrintSettings::PRINT_WITH_ALIASES if we have a non-empty
	aliasMap

2023-11-22  Steven Eker  <eker@pup>

	* interpreterSignature.cc: printTermMsg now takes 7
	arguments

	* miSyntax.cc (InterpreterManagerSymbol::printTerm): handle
	conceal symbols

	* interpreterManagerSymbol.hh
	(class InterpreterManagerSymbol): added decl for
	printTermToString()

	* remoteInterpreter2.cc
	(InterpreterManagerSymbol::handleMessage): added
	printTermToStringMsg

	* miSyntax.cc (InterpreterManagerSymbol::printTermToString):
	added

	* interpreterSignature.cc: added printTermToStringMsg,
	printedTermToStringMsg

	* descentSignature.cc: metaPrettyPrint operator now takes
	5 arguments

	* descentFunctions.cc (MetaLevelOpSymbol::metaPrettyPrint):
	support conceal symbols

	* metaLevel.hh (class MetaLevel): added decl for
	downConcealedSet()

	* metaDown.cc (MetaLevel::downConcealedSet): added

	* descentFunctions.cc (MetaLevelOpSymbol::metaPrintToString):
	handle concealSymbols

2023-11-21  Steven Eker  <eker@pup>

	* metaLevel.hh (MetaLevel::upString): use new Rope ctor

	* descentSignature.cc: added metaPrintToString

	* descentFunctions.cc (MetaLevelOpSymbol::metaPrintToString):
	added

	* metaLevel.hh (MetaLevel::upString): added

	* metaLevelSignature.cc: added withSortsSymbol

	* metaDown.cc (MetaLevel::downPrintOption): handle
	withSortsSymbol

2023-11-20  Steven Eker  <eker@pup>

	* metaLevel.hh (class MetaLevel): update decl for
	downPrintOption()

	* metaDown.cc (MetaLevel::downPrintOptionSet): take and pass
	PrintSettings

	* miSyntax.cc (InterpreterManagerSymbol::printTerm): use
	PrintSettings

	* descentFunctions.cc (MetaLevelOpSymbol::metaPrettyPrintStrategy):
	use PrintSettings
	(MetaLevelOpSymbol::metaPrettyPrint): use PrintSettings

	* metaLevel.hh (class MetaLevel): updated decl for
	downPrintOptionSet()

	* metaDown.cc (MetaLevel::downPrintOption): use PrintSettings

2023-11-16  Steven Eker  <eker@pup>

	* metaDown.cc (MetaLevel::downPrintOption): Interpreter:: ->
	PrintSettings::

===================================Maude154===========================================

2023-11-02  Steven Eker  <eker@pup>

	* metaDownOps.cc (MetaLevel::downAttr): down portal attributes

	* metaUpModule.cc (MetaLevel::upAttributeSet): up portal attributes

	* metaLevelSignature.cc: added portalSymbol

2023-06-05  Steven Eker  <eker@pup>

	* descentFunctions.cc (MetaLevelOpSymbol::metaRewrite): deleted commented
	out code, in particular the code for saving and restoring hidden state
	because the functional metalevel only ever rewrites in modules that it
	owns and has exclusive access to
	(MetaLevelOpSymbol::metaFrewrite): ditto

2023-05-16  Steven Eker  <eker@pup>

	* metaLevel.hh (MetaLevel::purge): added

	* metaModuleCache.hh (MetaModuleCache::purge): added

	* metaOpCache.hh (MetaOpCache::Item::clear): moved here

	* metaSrewrite.cc (MetaLevelOpSymbol::metaSrewrite): call purge() before
	inserting a new state

	* metaOpCache.hh (class MetaOpCache): fix comment
	(MetaOpCache::purge): added

===================================Maude150===========================================

2023-05-05  Steven Eker  <eker@pup>

	* remoteInterpreter2.cc: use static constexpr rather than define for
	EOT

	* miRewrite.cc (InterpreterManagerSymbol::srewriteTerm):  fix bug where
	rewrite count was only being transfered in failure case

2023-05-04  Steven Eker  <eker@pup>

	* metaSrewrite.cc (MetaLevelOpSymbol::metaSrewrite): fix bug where we
	we not transferring rewrite count to context

2023-05-02  Steven Eker  <eker@pup>

	* metaModuleCache.hh (class MetaModuleCache): deleted decl for equal()

2023-05-01  Steven Eker  <eker@pup>

	* metaModuleCache.cc (MetaModuleCache::find): revert
	(MetaModuleCache::equal): deleted

	* metaModuleCache.hh (class MetaModuleCache): added decl for equal()

	* metaModuleCache.cc (MetaModuleCache::equal): added

2023-04-26  Steven Eker  <eker@pup>

	* metaMatch.cc (MetaLevelOpSymbol::metaMatch): reverted; passing solutionNr
	= 0 to recover the previously generated 0th solution is very common; added
	comment to that effect

	* metaModuleCache.cc (MetaModuleCache::find): reverted hash check because
	it doesn't pay for itself, and added comment to this effect

	* metaMatch.cc (MetaLevelOpSymbol::metaMatch): check that solutionNr > 0
	before consulting getCachedStateObject()

2023-04-25  Steven Eker  <eker@pup>

	* metaModuleCache.cc (MetaModuleCache::find): check hash values before
	equality

===================================Maude146===========================================

2023-04-12  Steven Eker  <eker@pup>

	* miSort.cc (InterpreterManagerSymbol::getMinimalSorts): use empty()

	* descentFunctions.cc (MetaLevelOpSymbol::metaMinimalSorts): use empty()

===================================Maude145===========================================

2023-03-28  Steven Eker  <eker@pup>

	* metaModuleCache.cc (MetaModuleCache::flush): contractTo(0) -> clear()

2023-03-27  Steven Eker  <eker@pup>

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::createInterpreter):  don't use preallocate ctor

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::createRemoteInterpreter): don't use
	preallocate ctor
	(InterpreterManagerSymbol::doChildExit): don't use preallocate ctor

	* metaUp.cc (MetaLevel::upDagNode): use reserve() rather than
	preallocate ctor
	(MetaLevel::upTerm): use reserve() rather than preallocate ctor
	(MetaLevel::upContext): use reserve() rather than preallocate ctor
	(MetaLevel::upDisjointSubstitutions): use reserve() rather than
	preallocate ctor (2 places) (both versions)

	* metaDown.cc (MetaLevel::downTerm): use reserve() rather than
	preallocate ctor

===================================Maude144===========================================

2023-03-13  Steven Eker  <eker@pup>

	* metaUp.cc (MetaLevel::upTypeList): changed test from nrTypes == 0 to
	nrTypes <= 0 to avoid compiler warning though nrTypes can never be -1

===================================Maude143===========================================

2023-02-28  Steven Eker  <eker@pup>

	* miModule.cc (InterpreterManagerSymbol::insertModule): call cleanCaches()
	if we displaced an existing module from the interpreter's module database
	(InterpreterManagerSymbol::insertView): call cleanCaches() if we displaced
	an existing view from the interpreter's view data base

	* metaDown.cc (MetaLevel::downModule): updated comments on cleanCaches() calls

	* metaDownSignature.cc (MetaLevel::downSignature): call cleanCaches() rather
	than destructUnusedModules()

	* metaDown.cc (MetaLevel::downModule): call cleanCaches() rather than
	destructUnusedModules() (2 places)

===================================Maude142===========================================

2023-02-17  Steven Eker  <eker@pup>

	* metaUpView.cc (MetaLevel::upOpMappings): don't call isAttrMapping()
	now that attr mappings have been moved to a separate data structure

===================================Maude141===========================================

2023-02-14  Steven Eker  <eker@pup>

	* metaUpView.cc (MetaLevel::upOpMappings): skip over attr mappings

2023-02-09  Steven Eker  <eker@pup>

	* metaLevelSignature.cc: added pconstSymbol

	* metaUpModule.cc (MetaLevel::upAttributeSet): handle PCONST

	* metaDownOps.cc (MetaLevel::downAttr): handle PCONST

	* metaUpModule.cc (MetaLevel::upImports): handle GENERATED_BY

	* metaLevelSignature.cc: added generatedBySymbol

	* metaDownSignature.cc (MetaLevel::downImport2): handle GENERATED_BY

	* metaDown.cc (MetaLevel::downImport): handle GENERATED_BY

===================================Maude140===========================================

2023-01-31  Steven Eker  <eker@pup>

	* metaDown.cc (MetaLevel::downRule): call checkRule()
	(MetaLevel::downEquation): call checkEquation()
	(MetaLevel::downMembAx): call checkSortConstraint()

2023-01-10  Steven Eker  <eker@pup>

	* metaUpModule.cc (MetaLevel::upImports): added comment to explain why we
	are dealing with the PreModule rather than the flat module

===================================Maude139===========================================

2021-08-26  Steven Eker  <eker@pup>

	* metaLevelOpSymbol.cc (MetaLevelOpSymbol::eqRewrite): code cleaning
	(MetaLevelOpSymbol::complexStrategy): code cleaning

===================================Maude137===========================================

2021-03-23  Steven Eker  <eker2@eker10>

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	delete enum Sizes now that we get READ_BUFFER_SIZE from
	PseudoThread

2021-03-16  Steven Eker  <eker2@eker10>

	* metaUpView.cc (MetaLevel::upOpMappings): use range-based for
	loop

	* metaUpModule.cc (MetaLevel::upImports): use range-based for loop
	(MetaLevel::upModuleExpression): use range-based for loop
	(MetaLevel::upTypeSorts): use range-based for loop
	(MetaLevel::upStrat): use range-based for loop
	(MetaLevel::upFrozen): use range-based for loop

	* metaUp.cc (MetaLevel::upTypeListSet): use range-based for loop

	* metaNewNarrow.cc (MetaLevelOpSymbol::makeNarrowingSearchState2):
	use range-based for loop

	* metaDownView.cc (MetaLevel::downInstantiationArguments): use
	range-based for loop

	* metaDownRenamings.cc (MetaLevel::convertToTokens): use
	range-based for loop

	* metaDown.cc (MetaLevel::downCondition): use range-based for loop
	(MetaLevel::downTermList): use range-based for loop
	(MetaLevel::duplicate): use range-based for loop

	* legacyMetaVariantUnify.cc
	(MetaLevelOpSymbol::legacyMetaVariantUnify2): use range-based for
	loop (3 places)

===================================Maude135===========================================

2021-02-19  Steven Eker  <eker2@eker10>

	* metaUnify.cc (MetaLevelOpSymbol::metaUnify2): unmade previous
	change

	* legacyMetaUnify.cc (MetaLevelOpSymbol::legacyMetaUnify2): unmade
	previous change

	* miUnify.cc (InterpreterManagerSymbol::getUnifier): unmade
	previous change

	* legacyMetaUnify.cc (MetaLevelOpSymbol::legacyMetaUnify2): pass
	destructiveUpdates = true to UnificationProblem()

	* metaUnify.cc (MetaLevelOpSymbol::metaUnify2): pass
	destructiveUpdates = true to UnificationProblem()

	* miUnify.cc (InterpreterManagerSymbol::getUnifier): pass
	destructiveUpdates = true to UnificationProblem()

2021-02-11  Steven Eker  <eker2@eker10>

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	updated decl for getInterpreter()

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::getInterpreter): return Interpreter*
	rather than bool
	(InterpreterManagerSymbol::handleMessage): use new
	getInterpreter() semantics

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	deleted decls for bool versions of getOneStepNarrowing(),
	getNarrowingSearchResult()

	* interpreterNewNarrowSearch.cc: deleted

	* miNarrowSearch.cc
	(InterpreterManagerSymbol::makeNarrowingSequenceSearch3): moved
	here
	(InterpreterManagerSymbol::makeNarrowingSearchPath): moved here

	* interpreterNewNarrow.cc: deleted

	* miNarrow.cc
	(InterpreterManagerSymbol::makeNarrowingSearchState2): moved here

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	deleted decls for bool versions of getSearchResult(), getMatch(),
	getXmatch()

	* interpreterSearch.cc: deleted

	* miSearch.cc
	(InterpreterManagerSymbol::makeRewriteSequenceSearch): moved here

	* interpreterMatch.cc: deleted

	* miMatch.cc (InterpreterManagerSymbol::makeMatchSearchState):
	moved here
	(InterpreterManagerSymbol::makeMatchSearchState2): moved here

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	deleted decls for bool versions of applyRule(), reduceTerm(),
	rewriteTerm(), frewriteTerm(), erewriteTerm(), srewriteTerm()

	* miRewrite.cc (InterpreterManagerSymbol::makeStrategicSearch):
	moved here

	* interpreterApply.cc: deleted

	* miApply.cc (InterpreterManagerSymbol::makeRewriteSearchState):
	moved here

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	deleted decls for bool versions of insertModule(), showModule(),
	insertView(), showView(), printTerm(), parseTerm(),
	getLesserSorts(), getMaximalSorts(), getMinimalSorts(),
	compareTypes(), getKind(), getKinds(), getGlbTypes(),
	getMaximalAritySet(), normalizeTerm(), getUnifier(), getVariant(),
	getVariantUnifier(), getVariantMatcher()

	* interpreterVariantMatch.cc: deleted

	* interpreterVariantUnify.cc: deleted

	* interpreterVariant.cc: deleted

	* interpreterUnify.cc: deleted

	* interpreterPrint.cc: deleted

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::handleMessage): don't rely on message
	being a FreeDagNode*

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	deleted decl for getInterpreterAndModule()

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::handleMessage): rewritten to use remote
	interpreter code for in-process interpreters
	(InterpreterManagerSymbol::insertModule)
	(InterpreterManagerSymbol::showModule)
	(InterpreterManagerSymbol::insertView)
	(InterpreterManagerSymbol::showView): deleted
	(InterpreterManagerSymbol::getInterpreterAndModule): deleted

2021-02-10  Steven Eker  <eker2@eker10>

	* remoteInterpreter2.cc
	(InterpreterManagerSymbol::becomeRemoteInterpreter): protect
	deserialized message with DagRoot()
	(InterpreterManagerSymbol::handleMessage): don't protect message
	here

===================================Maude133===========================================

2020-12-14  Steven Eker  <eker2@eker10>

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::upRewriteCount): use Ruben's hack to
	fix the lack of a conversion from long long int to mpz_class on
	32-bit machines

===================================Maude132-32===========================================

2020-12-11  Steven Eker  <eker2@eker10>

	* remoteInterpreter.cc (makeNonblockingSocketPair): don't
	shutdown(pair[1], SHUT_RD) because this causes a "socket not
	connected" error on Mac, even though pair[1] is open for writing
	and is never going to be read

2020-12-08  Steven Eker  <eker2@eker10>

	* remoteInterpreter.cc (InterpreterManagerSymbol::doChildExit):
	added SOCKET_CLOSED case
	(InterpreterManagerSymbol::createRemoteInterpreter):
	setTraceStatus(false) to disable tracing, break points, profiling
	and the print attribute

	* remoteInterpreter2.cc
	(InterpreterManagerSymbol::receiveMessage): detect EOF on socket
	and exit with SOCKET_CLOSED code

2020-12-07  Steven Eker  <eker2@eker10>

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	added support for getNarrowingSearchResult(),
	getNarrowingSearchResultAndPath()

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for getNarrowingSearchResult()

	* miNarrowSearch.cc: created

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decls for Interpreter* versions of getLesserSorts(),
	getMaximalSorts(), getMinimalSorts(), compareTypes(), getKind(),
	getKinds(), getGlbTypes(), getMaximalAritySet(), normalizeTerm()

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	support getLesserSortsMsg, getMaximalSortsMsg, getMinimalSortsMsg,
	compareTypesMsg, getKindMsg, getKindsMsg, getGlbTypesMsg,
	getMaximalAritySetMsg, normalizeTermMsg

	* miSort.cc: created

2020-12-04  Steven Eker  <eker2@eker10>

	* remoteInterpreter.cc (InterpreterManagerSymbol::doChildExit):
	delete interpeter as an external object in configuration

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for Interpreter* version of getOneStepNarrowing()

	* miNarrow.cc: created

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	added support for narrowing with variant unification

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::remoteHandleMessage): call
	requestChildExitCallback()
	(InterpreterManagerSymbol::remoteHandleReply): call
	cancelChildExitCallback()
	(InterpreterManagerSymbol::createRemoteInterpreter): don't call
	requestChildExitCallback(pid)

	* remoteInterpreterNonblocking.cc
	(InterpreterManagerSymbol::outputWholeErrorLines): code cleaning

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decls for Interpreter* versions of printTerm(), parseTerm()

	* miSyntax.cc: created

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	added support for printTermMsg and parseTermMsg

2020-12-02  Steven Eker  <eker2@eker10>

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::handleMessage): handle quit locally
	even for remote interpreter

	* remoteInterpreter.cc (InterpreterManagerSymbol::doChildExit):
	use interpreterExitMsg
	(InterpreterManagerSymbol::createRemoteInterpreter): call
	UserLevelRewritingContext::ignoreCtrlC() if we're the child

	* interpreterSignature.cc: added interpreterExitMsg

	* remoteInterpreterNonblocking.cc
	(InterpreterManagerSymbol::outputWholeErrorLines): look for EOF
	condition rather than reading at least one character
	(InterpreterManagerSymbol::doRead): only request callbacks on
	sockets where we haven't detected an EOF condition; clear flags
	on sockets where we have seen EOF

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	updated decl for outputWholeErrorLines()

	* remoteInterpreterNonblocking.cc
	(InterpreterManagerSymbol::outputWholeErrorLines): return flag as
	to whether we read at least one character

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::deleteInterpreter): delete charArray

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for doChildExit()

	* remoteInterpreter.cc (InterpreterManagerSymbol::doChildExit):
	added

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::deleteInterpreter):
	cancelChildExitCallback() before terminating child; close error
	socket

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::createRemoteInterpreter): close child
	end of error socket; request child exit callback

2020-12-01  Steven Eker  <eker2@eker10>

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::deleteInterpreter): call waitpid() for
	the process we just terminated

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for Interpreter* version of applyRule()

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	added support for applyRuleMsg, applyRule2Msg

	* miApply.cc: created

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decls for getMatch(), getXmatch()

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	handle getMatchMsg, getXmatchMsg

	* miMatch.cc: created

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	handle getVariantMatcherMsg; no need to cast to FreeDagNode* for
	unsupported message

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for Interpreter* version of getVariantMatcher()

	* miVariantMatch.cc: created

	* miVariantUnify.cc (InterpreterManagerSymbol::getVariantUnifier):
	down variable family name before variant flags

	* miVariant.cc (InterpreterManagerSymbol::getVariant): get test
	for good Bool the right way around

2020-11-30  Steven Eker  <eker2@eker10>

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	added support for getVariantMsg

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for Interpreter* version of getVariant()

	* miVariant.cc: created

	* miVariantUnify.cc (InterpreterManagerSymbol::getVariantUnifier):
	restructured if statements
	(InterpreterManagerSymbol::getVariantUnifier): replace
	FOR_EACH_CONST with range based for loop

	* interpreterVariantUnify.cc
	(InterpreterManagerSymbol::getVariantUnifier): delete stray cerr
	debugging message

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	handle getVariantUnifierMsg and getDisjointVariantUnifierMsg

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for Interpreter* version of getVariantUnifier()

	* miVariantUnify.cc: created

	* miUnify.cc (InterpreterManagerSymbol::getUnifier): rewritten
	using getMetaModule()

	* miSearch.cc (InterpreterManagerSymbol::getSearchResult):
	rewritten using getMetaModule()

	* miRewrite.cc (InterpreterManagerSymbol::reduceTerm): rewritten
	to use getMetaModule()
	(InterpreterManagerSymbol::rewriteTerm): rewritten using
	getMetaModule()
	(InterpreterManagerSymbol::frewriteTerm): rewritten using
	getMetaModule()
	(InterpreterManagerSymbol::erewriteTerm): rewritten using
	getMetaModule()
	(InterpreterManagerSymbol::srewriteTerm): rewritten using
	getMetaModule()

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	updated decl for getMetaModule()

	* miModule.cc (InterpreterManagerSymbol::getMetaModule): return
	MetaModule* rather than error message

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	added support for getUnifierMsg, getDisjointUnifierMsg,
	getIrredundantUnifierMsg, getIrredundantDisjointUnifierMsg

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decls for getMetaModule(), Interpreter* version of
	getUnifier()

	* miUnify.cc: created

	* miModule.cc (InterpreterManagerSymbol::getMetaModule): added

2020-11-25  Steven Eker  <eker2@eker10>

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	add support for getSearchResult()/getSearchResultPath() messages

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for Interpreter* version of getSearchResult()

	* miSearch.cc: created

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	added support for insertView() and showView() messages

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decls for Interpreter* versions of insertView(), showView()

	* miModule.cc (InterpreterManagerSymbol::insertView)
	(InterpreterManagerSymbol::showView): added Interpreter* versions

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for Interpreter* version of showModule()

	* miModule.cc (InterpreterManagerSymbol::insertModule): moved here
	(InterpreterManagerSymbol::showModule): added Interpreter* version

	* remoteInterpreter2.cc
	(InterpreterManagerSymbol::becomeRemoteInterpreter): new
	handleMessage() calling convention

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	updated decl for remote version of handleMessage()

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	support srewrite
	(InterpreterManagerSymbol::handleMessage): take message as
	FreeDagNode*; support showModule

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for Interpreter* version of srewriteTerm()

	* miRewrite.cc (InterpreterManagerSymbol::srewriteTerm): added
	Interpreter* version

2020-11-24  Steven Eker  <eker2@eker10>

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decls for Interpreter* versions of frewriteTerm(),
	erewriteTerm()

	* miRewrite.cc (InterpreterManagerSymbol::frewriteTerm): added
	Interpreter* version
	(InterpreterManagerSymbol::erewriteTerm): added Interpreter*
	version

	* remoteRewrite.cc: renamed to miRewrite.cc

	* remoteInterpreterNonblocking.cc
	(InterpreterManagerSymbol::doRead): rewritten to do multiple reads
	per call in case there is a huge DAG coming through

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::remoteHandleMessage): removed commented
	out code

2020-11-23  Steven Eker  <eker2@eker10>

	* remoteInterpreterNonblocking.cc
	(InterpreterManagerSymbol::doRead): don't check against errSocket
	if we already saw ioSocket
	(InterpreterManagerSymbol::doRead): break loop as soon as we see
	ioSocket

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::createRemoteInterpreter): call
	unsetAutoWrap()

	* remoteInterpreter2.cc (InterpreterManagerSymbol::handleMessage):
	added DebugInfo()

	* remoteInterpreterNonblocking.cc
	(InterpreterManagerSymbol::doRead): check for fd being an
	errSocket
	(InterpreterManagerSymbol::doRead): clearFlags() on error socket
	if we have no more pending replies

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::remoteHandleMessage): request a
	callback on errSocket

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for outputWholeErrorLines()

	* remoteInterpreterNonblocking.cc
	(InterpreterManagerSymbol::outputWholeErrorLines): added
	(InterpreterManagerSymbol::doRead): call outputWholeErrorLines()

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::createRemoteInterpreter): create error
	sockets; save socket in parent and connect socket to stderr in
	child

2020-11-20  Steven Eker  <eker2@eker10>

	* remoteInterpreter2.cc
	(InterpreterManagerSymbol::receiveMessage): account for multiple
	messages being left over from last read
	(InterpreterManagerSymbol::receiveMessage): select correct piece
	of buffer in multiple messages case

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::deleteInterpreter): clear and
	PseudoThread flags on socket so we don't get a future conflict

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::remoteHandleReply): must decrement
	nrPendingReplies

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for remoteHandleReply()

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::createRemoteInterpreter): init module
	field for new RemoteInterpreter
	(InterpreterManagerSymbol::createRemoteInterpreter): init owner;
	don't init lastRequest
	(InterpreterManagerSymbol::remoteHandleMessage): use module field
	of RemoteInterpreter
	(InterpreterManagerSymbol::remoteHandleReply): added

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added module field to struct RemoteInterpreter

	* remoteInterpreterNonblocking.cc
	(InterpreterManagerSymbol::doRead): added

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added incomingMessage field to struct RemoteInterpreter
	(class InterpreterManagerSymbol): added decl for doRead();

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::createRemoteInterpreter): init
	nrPendingReplies for new RemoteInterpreter

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added nrPendingReplies field to struct RemoteInterpreter

2020-11-19  Steven Eker  <eker2@eker10>

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::remoteHandleMessage): use
	nonBlockingSend()

	* remoteInterpreterNonblocking.cc: created

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added charArray, unsent and nrUnsent fields to struct
	RemoteInterpreter
	(class InterpreterManagerSymbol): added decls for doWrite() and
	nonblockingSendMessage()

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::createRemoteInterpreter): init
	charArray, unsent, nrUnsent fields in new RemoteInterpreter

2020-11-16  Steven Eker  <eker2@eker10>

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for remote version of handleMessage()

	* remoteInterpreter2.cc (InterpreterManagerSymbol::insertModule):
	return error message if module bad
	(InterpreterManagerSymbol::handleMessage): added remote version
	(InterpreterManagerSymbol::becomeRemoteInterpreter): use
	handleMessage()

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for remote version of rewriteTerm()

	* remoteRewrite.cc (InterpreterManagerSymbol::reduceTerm): moved
	here; return error message for each failure mode
	(InterpreterManagerSymbol::rewriteTerm): added

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for makeErrorReply()
	(InterpreterManagerSymbol::errorReply): moved here and
	reimplemented using makeErrorReply()

	* remoteInterpreter.cc (InterpreterManagerSymbol::makeErrorReply):
	added

2020-11-13  Steven Eker  <eker2@eker10>

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	updated decl for becomeRemoteInterpreter()

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::createRemoteInterpreter): pass context
	arg to becomeRemoteInterpreter()

	* remoteInterpreter2.cc
	(InterpreterManagerSymbol::becomeRemoteInterpreter): take context
	arg

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::handleMessage): new
	remoteHandleMessage() convention

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::remoteHandleMessage): rewritten

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decls for receiveMessage(), sendMessage(), and remote
	versions of insertModule(), reduceTerm(); delete decl for
	getNextCommand()
	(class InterpreterManagerSymbol): updated decl for
	remoteHandleMessage()

	* remoteInterpreter2.cc: created

	* remoteInterpreter.cc (InterpreterManagerSymbol::getNextCommand):
	fixed off-by-1 error

2020-11-12  Steven Eker  <eker2@eker10>

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for remoteHandleMessage()

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::remoteHandleMessage): added

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::handleMessage): hack using
	getRemoteInterpreter() to divert messages for remote interpreters

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for getRemoteInterpreter()

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::deleteInterpreter): handle deletion of
	remote interpreter
	(InterpreterManagerSymbol::getRemoteInterpreter): added

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for becomeRemoteInterpreter()

	* remoteInterpreter.cc (InterpreterManagerSymbol::getNextCommand):
	added

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for becomeRemoteInterpreter()
	(class InterpreterManagerSymbol): added enum Sizes

	* remoteInterpreter.cc
	(InterpreterManagerSymbol::createRemoteInterpreter): fork new
	process
	(InterpreterManagerSymbol::becomeRemoteInterpreter): added stub

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for errorReply()

	* remoteInterpreter.cc (ProcessManagerSymbol::errorReply): added

	* interpreterSignature.cc: added interpreterErrorMsg, stringSymbol

2020-11-11  Steven Eker  <eker2@eker10>

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::createInterpreter): call
	createRemoteInterpreter()

	* remoteInterpreter.cc: created

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for createRemoteInterpreter()

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::createInterpreter): check for
	newProcess argument and slot being used by a remoteInterpreter

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	derive from PseudoThread
	(class InterpreterManagerSymbol): added struct RemoteInterpreter,
	typedef RemoteInterpreterMap, data member remoteInterpreters

	* interpreterSignature.cc: added newProcessSymbol

===================================Maude132===========================================

2020-09-16  Steven Eker  <eker2@eker10>

	* interpreterSignature.cc: getNarrowingSearchResultMsg and
	getNarrowingSearchResultAndPathMsg now take 10 arguments

	* interpreterNewNarrowSearch.cc
	(InterpreterManagerSymbol::getNarrowingSearchResult): handle
	VariantOptionSet argument and OR KEEP_HISTORY into variantFlags if
	needed

	* metaNewNarrow2.cc (MetaLevelOpSymbol::metaNarrowingSearch):
	handle VariantOptionSet argument; pass variantFlags to
	makeNarrowingSequenceSearch3()
	(MetaLevelOpSymbol::metaNarrowingSearchPath): handle
	VariantOptionSet argument; OR variantFlags into the value passed
	to makeNarrowingSequenceSearch3()
	(MetaLevelOpSymbol::metaNarrowingSearchPath): pull down solutionNr
	before module
	(MetaLevelOpSymbol::metaNarrowingSearch): pull down solutionNr
	before module

	* descentSignature.cc: metaNarrowingSearch and
	metaNarrowingSearchPath now take 8 arguments

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): updated decl for
	makeNarrowingSearchState2()

	* metaNewNarrow.cc (MetaLevelOpSymbol::metaNarrowingApply): handle
	VariantOptionSet argument and pass variantFlags to
	makeNarrowingSearchState2()
	(MetaLevelOpSymbol::makeNarrowingSearchState2): take variantFlags
	argument and pass it to NarrowingSearchState2()

	* descentSignature.cc: metaNarrowingApply now takes 6 arguments

2020-09-15  Steven Eker  <eker2@eker10>

	* interpreterVariantUnify.cc
	(InterpreterManagerSymbol::getVariantUnifier): make use of DELAY =
	VariantSearch::IRREDUNDANT_MODE to directly OR in variantFlags

	* metaVariantUnify.cc (MetaLevelOpSymbol::metaVariantUnify2): make
	use of DELAY = VariantSearch::IRREDUNDANT_MODE to directly OR in
	variantFlags

	* metaLevel.hh (class MetaLevel): make DELAY =
	VariantSearch::IRREDUNDANT_MODE and FILTER =
	VariantUnificationProblem::FILTER_VARIANT_UNIFIERS

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	updated decl for makeNarrowingSearchState2()

	* interpreterNewNarrow.cc
	(InterpreterManagerSymbol::getOneStepNarrowing): handle
	VariantOptionSet argument and pass variantFlags to
	makeNarrowingSearchState2()
	(InterpreterManagerSymbol::makeNarrowingSearchState2): take
	variantFlags and pass it through to NarrowingSearchState2()

	* interpreterSignature.cc: getOneStepNarrowingMsg now takes 8
	arguments

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	updated decl for makeNarrowingSequenceSearch3()

	* interpreterNewNarrowSearch.cc
	(InterpreterManagerSymbol::makeNarrowingSequenceSearch3): take
	variantFlags rather than keepHistory;  pass variantFlags rather
	than fold and keepHistory to NarrowingSequenceSearch3()
	(InterpreterManagerSymbol::getNarrowingSearchResult): pass
	variantFlags rather than returnPath to
	makeNarrowingSequenceSearch3()

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): updated decl for
	makeNarrowingSequenceSearch3()

	* metaNewNarrow2.cc
	(MetaLevelOpSymbol::makeNarrowingSequenceSearch3): take
	variantFlags rather than keepHistory;  pass variantFlags rather
	than fold and keepHistory to NarrowingSequenceSearch3()
	(MetaLevelOpSymbol::metaNarrowingSearch): pass variantFlags = 0
	to makeNarrowingSequenceSearch3()
	(MetaLevelOpSymbol::metaNarrowingSearchPath): pass variantFlags =
	NarrowingSequenceSearch3::KEEP_HISTORY to
	makeNarrowingSequenceSearch3()

2020-09-11  Steven Eker  <eker2@eker10>

	* interpreterVariant.cc (InterpreterManagerSymbol::getVariant):
	rewritten use to findNextVariant(), getCurrentVariant()

	* legacyMetaVariant.cc (MetaLevelOpSymbol::legacyMetaGetVariant2):
	rewritten use to findNextVariant(), getCurrentVariant()

	* metaVariant.cc (MetaLevelOpSymbol::metaGetVariant2): use
	range-based for loop; rewritten use to findNextVariant(),
	getCurrentVariant()

	* legacyMetaVariant.cc (MetaLevelOpSymbol::legacyMetaGetVariant2):
	use range-based for loop

	* interpreterVariant.cc (InterpreterManagerSymbol::getVariant):
	use range-based for loop

	* interpreterNewNarrow.cc
	(InterpreterManagerSymbol::makeNarrowingSearchState2): use
	range-based for loop

2020-09-08  Steven Eker  <eker2@eker10>

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::handleMessage): handle
	getVariantMatcherMsg

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for getVariantMatcher()

	* interpreterVariantMatch.cc: created

	* metaVariantMatch.cc (MetaLevelOpSymbol::metaVariantMatch):
	reorganized tests to we don't pull down stuff until we're sure we
	need it
	(MetaLevelOpSymbol::metaVariantMatch): add in rewrites from
	subjectContext

	* interpreterSignature.cc: added getVariantMatcherMsg,
	gotVariantMatcherMsg

2020-09-04  Steven Eker  <eker2@eker10>

	* metaVariantMatch.cc (MetaLevelOpSymbol::metaVariantMatch): pass
	subjectContext to makeVariantMatchingProblem()

2020-09-03  Steven Eker  <eker2@eker10>

	* metaLevel.hh (class MetaLevel): updated decl for
	upNoMatchSubst()

	* metaUp.cc (MetaLevel::upNoMatchSubst): take incomplete flag

	* metaVariantMatch.cc: created

	* metaLevel.hh (class MetaLevel): added decls for
	downMatchingProblem(), downPatternSubjectPair()

	* metaDown.cc (MetaLevel::downPatternSubjectPair): added
	(MetaLevel::downUnificationProblem): fix memory leak where we were
	using delete rather that deepSelfDestuct() to dispose of Terms
	after error; use range-based for loops
	(MetaLevel::downMatchingProblem): added

	* descentSignature.cc: added metaVariantMatch

	* metaLevelSignature.cc: added patternSubjectPairSymbol,
	matchingConjunctionSymbol, noMatchIncompleteSubstSymbol

2020-09-02  Steven Eker  <eker2@eker10>

	* interpreterVariantUnify.cc
	(InterpreterManagerSymbol::getVariantUnifier): call
	downVariantOptionSet()
	(InterpreterManagerSymbol::getVariantUnifier): support delay and
	filter options

	* interpreterSignature.cc: getVariantUnifierMsg,
	getDisjointVariantUnifierMsg now take 8 arguments each

2020-09-01  Steven Eker  <eker2@eker10>

	* metaVariantUnify.cc (MetaLevelOpSymbol::metaVariantUnify2): pass
	IRREDUNDANT_MODE flag based on DELAY flag to
	FilteredVariantUnifierSearch() and VariantSearch()

	* metaDown.cc (MetaLevel::downVariantOptionSet): fixed bug where
	we were calling downPrintOption()
	(MetaLevel::downVariantOption): fixed bug where we were checking
	the wrong symbol

	* metaVariantUnify.cc (MetaLevelOpSymbol::metaVariantUnify2): use
	FilteredVariantUnifierSearch()

2020-08-31  Steven Eker  <eker2@eker10>

	* metaDown.cc (MetaLevel::downVariantOptionSet): added
	(MetaLevel::downVariantOption): added

	* metaLevel.hh (class MetaLevel): added enum VariantFlags; added
	decls for downVariantOption(), downVariantOptionSet()

	* metaVariantUnify.cc (MetaLevelOpSymbol::metaVariantUnify2):
	handle VariantOptionSet argument
	(MetaLevelOpSymbol::metaVariantUnify2): use range-base for loops
	(3 places)

	* metaLevelSignature.cc: added delaySymbol, filterSymbol,
	emptyVariantOptionSetSymbol, variantOptionSetSymbol

	* descentSignature.cc: metaVariantUnify() and
	metaVariantDisjointUnify() now take 6 arguments each

2020-08-04  Steven Eker  <eker2@eker10>

	* interpreterVariantUnify.cc
	(InterpreterManagerSymbol::getVariantUnifier): rewritten to use
	findNextUnifier()/getCurrentUnifier() rather than
	getNextUnifier()/getLastReturnedUnifier()

	* legacyMetaVariantUnify.cc
	(MetaLevelOpSymbol::legacyMetaVariantUnify2): rewritten to use
	findNextUnifier()/getCurrentUnifier() rather than
	getNextUnifier()/getLastReturnedUnifier()

	* metaVariantUnify.cc (MetaLevelOpSymbol::metaVariantUnify2):
	rewritten to use findNextUnifier()/getCurrentUnifier() rather than
	getNextUnifier()/getLastReturnedUnifier()

	* metaUnify.cc (MetaLevelOpSymbol::metaUnify2): formatting

2020-07-22  Steven Eker  <eker2@eker10>

	* legacyMetaVariantUnify.cc
	(MetaLevelOpSymbol::legacyMetaVariantUnify2): use new
	VariantSearch conventions

	* legacyMetaVariant.cc (MetaLevelOpSymbol::legacyMetaGetVariant2):
	use new VariantSearch conventions

	* metaVariant.cc (MetaLevelOpSymbol::metaGetVariant2): use new
	VariantSearch conventions

	* metaVariantUnify.cc (MetaLevelOpSymbol::metaVariantUnify2): use
	new VariantSearch conventions

	* interpreterVariantUnify.cc
	(InterpreterManagerSymbol::getVariantUnifier): use new
	VariantSearch conventions

	* interpreterVariant.cc (InterpreterManagerSymbol::getVariant):
	use new VariantSearch conventions

2020-07-15  Steven Eker  <eker2@eker10>

	* interpreterUnify.cc (InterpreterManagerSymbol::getUnifier): fix
	bug where we were using the wrong message cto in the irredundant,
	disjoint case

2020-07-14  Steven Eker  <eker2@eker10>

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	updated decl for  getUnifier()

	* interpreterSignature.cc: added getIrredundantUnifierMsg,
	gotIrredundantUnifierMsg, getIrredundantDisjointUnifierMsg,
	gotIrredundantDisjointUnifierMsg

	* interpreterManagerSymbol.cc
	(InterpreterManagerSymbol::handleMessage): handle
	getIrredundantUnifierMsg, getIrredundantDisjointUnifierMsg; pass
	irredundant argument to getUnifier()

	* interpreterUnify.cc (InterpreterManagerSymbol::getUnifier): take
	irredundant argument

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): updated decl for
	metaUnify2()

	* descentSignature.cc: added metaIrredundantUnify,
	metaIrredundantDisjointUnify

	* metaUnify.cc (MetaLevelOpSymbol::metaUnify2): handle irredundant
	argument
	(MetaLevelOpSymbol::metaUnify)
	(MetaLevelOpSymbol::metaDisjointUnify): pass irredundant argument
	(MetaLevelOpSymbol::metaIrredundantUnify)
	(MetaLevelOpSymbol::metaIrredundantDisjointUnify): added

===================================Maude129===========================================

2020-04-08  Steven Eker  <eker2@eker9>

	* descentFunctions.cc (MetaLevelOpSymbol::metaParse): updated
	DebugInfo to make it clear what the cach hit is for

2020-03-10  Rubén Rubio  <rubenrub@ucm.es>

       * metaDownStrats.cc (downStratDef): handle nonexec attribute
       * metaUp.cc (upStratExpr): fix bug that ignored top(all)

===================================Maude128a===========================================

2020-02-13  Steven Eker  <eker@mu>

	* metaDown.cc (downModule): do resetImports() before closeTheory();
	call checkFreshVariableNames()

	* metaPreModule.cc (getFlatModule): replaced isBad() check
	with an Assert() - we don't expect the importation of statements
	to set the global bad flag for the module

2020-02-06  Steven Eker  <eker@mu>

	* ascentFunctions.cc (metaUpStratDecls, metaUpSds): symmetric
	fixes

2020-02-05  Steven Eker  <eker@mu>

	* ascentFunctions.cc (metaUpSorts): check that flat module is
	good before trying to use it
	(metaUpOpDecls, metaUpMbs, metaUpEqs, metaUpRls): ditto
	(metaUpModule): check flat module even though we pass PreModule

===================================Maude128===========================================

2019-12-04  Steven Eker  <eker@mu>

	* metaVariant.cc (metaGetVariant2): initialize variant to avoid
	spurious compiler warning

	* legacyMetaVariantUnify.cc (legacyMetaVariantUnify2): initialize
	unifier to avoid spurious compiler warning

	* legacyMetaVariant.cc (legacyMetaGetVariant2): initialize variant to
	avoid spurious compiler warning

	* interpreterVariant.cc (getVariant): initialize variant to avoid
	spurious compiler warning

	* interpreterVariantUnify.cc (getVariantUnifier): initialize unifier to
	avoid spurious compiler warning

	* metaVariantUnify.cc (metaVariantUnify2): initialize unifier to avoid
	spurious compiler warning

2019-12-03  Steven Eker  <eker@mu>

	* metaOpCache.hh (getCachedStateObject): use safeCastNonNull<>() (3 places)

===================================Maude127===========================================

2019-12-02  Rubén Rubio  <rubenrub@ucm.es>

	* interpreterManagerSymbol.cc: included (fair/depthFirst)StrategicSearch.hh

	* interpreterManagerSymbol.hh (makeStrategicSearch): added new Boolean
	parameter depthFirst

	* interpreterRewrite.cc (makeStrategicSearch): added new Boolean parameter
	depthFirst
	(srewriteTerm): depthFirst passed on to makeStrategicSearch and not used
	when calling the findNextSolution method

	* metaLevelOpSymbol.cc: included (fair/depthFirst)StrategicSearch.hh

	* metaSrewrite.cc (metaSrewrite): depthFirst passed on to makeStrategicSearch
	and not used when calling the findNextSolution method
	(makeStrategicSearch): added new Boolean parameter depthFirst

2019-11-14  Rubén Rubio  <rubenrub@ucm.es>

	* descentFunctions.cc (metaSrewrite, makeStrategicSearch): moved to
	metaSrewrite.cc
	(metaParseStrategy): uses parser caching like metaParse
	(metaPrettyPrintStrategy): now takes a variable set like
	metaPrettyPrint

	* descentSignature.cc: metaDsrewrite() removed. metaSrewrite() now
	takes 5 arguments, and metaPrettyPrintStrategy() now takes 4.

	* metaLevelOpSymbol.cc: metaSrewrite.cc included. Fixed bug (delete on
	incomplete type) by including mixfixParser.hh

	* metaSrewrite.cc: added

2019-11-12  Rubén Rubio  <rubenrub@ucm.es>

	* ascentFunctions.cc (metaUpStratDecls, metaUpSds): added

	* descentFunctions.cc (metaSrewrite): renamed from metaSRewrite
	(metaDsrewrite): renamed from metaDSRewrite
	(metaParseStrategy): renamed from metaStratParse
	(metaPrettyPrintStrategy): renamed from metaStratPrettyPrint

	* descentSignature.cc: renaming for metaSrewrite, metaDsrewrite,
	metaParseStrategy, and metaPrettyPrintStrategy. Added metaUpSds
	and metaUpStratDecls.

2019-11-11  Steven Eker  <eker@mu>

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol):
	parseQidList() -> parseTerm()

	* interpreterPrint.cc (parseQidList): becomes parseTerm()
	(parseTerm): use parsedTermMsg

	* interpreterSignature.cc: parseQidListMsg/parseQidListMsg ->
	parseTermMsg/parsedTermMsg

2019-11-08  Steven Eker  <eker@mu>

	* interpreterPrint.cc (printTerm): handle variable aliases
	(parseQidList): handle variable aliases and parser caching.

	* interpreterSignature.cc: updated arg count for
	printTermMsg & parseQidListMsg

2019-11-07  Steven Eker  <eker@mu>

	* metaDownSignature.cc (downSignature): fix type in comment

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for makeStrategicSearch()

	* interpreterRewrite.cc (srewriteTerm): implemented
	(makeStrategicSearch): added

2019-11-06  Steven Eker  <eker@mu>

	* metaLevel.hh (M): added decl for downSrewriteOption()

	* metaDown.cc (downSrewriteOption): added

	* metaLevelSignature.cc: added breadthFirstSymbol,
	depthFirstSymbol

2019-11-05  Steven Eker  <eker@mu>

	* interpreterRewrite.cc (srewriteTerm): added stub

	* interpreterManagerSymbol.cc (handleMessage): added srewriteTermMsg

	* interpreterSignature.cc: added srewriteTermMsg/srewroteTermMsg

2019-11-04  Steven Eker  <eker@mu>

	* descentSignature.cc: metaPrettyPrint() now takes 4 arguments

	* descentFunctions.cc (metaPrettyPrint): support variable
	aliases

2019-11-01  Steven Eker  <eker@mu>

	* descentSignature.cc: metaParse() now takes 4 arguments

	* metaLevelOpSymbol.cc (~AliasMapParserPair): added

	* descentFunctions.cc (metaParse): rewritten to take
	variable declaration set and cache AliasMap and Parser

	* metaLevelOpSymbol.hh (AliasMapParserPair): added

	* metaLevel.hh (M): updated decls for downToken() and downOpName()

	* metaDown.cc (downToken, downOpName): make const

	* metaLevel.hh (M): updated decls for downType2(), downQid()

	* metaDown.cc (downType2, downQid): made const

	* metaLevel.hh (M): added decls for downVariableDeclSet(),
	downVariableDecl()

	* metaDown.cc (downVariableDeclSet, downVariableDecl): added

2019-10-29  Steven Eker  <eker@mu>

	* metaLevelOpSymbol.hh (FreeSymbol): added struct AliasMapParserPair

2019-10-28  Steven Eker  <eker@mu>

	* metaOpCache.hh (M): updated decls for remove(), sameProblem()

	* metaOpCache.cc (sameProblem): take nrArgumentsToIgnore argument
	(remove): take nrArgumentsToIgnore argument

	* metaOpCache.hh (M): added comments to explain why there
	are two getCachedStateObject() templates

2019-10-22  Steven Eker  <eker@mu>

	* interpreterStratPrint.cc: created

	* interpreterPrint.cc: added missing copyright comment

	* metaVariantUnify.cc (metaVariantUnify2): delete dummy
	variable

	* metaVariant.cc (metaGetVariant2, metaGetVariant)
	(metaGetIrredundantVariant): use variableFamily rather than
	variableIndex

2019-10-21  Steven Eker  <eker@mu>

	* metaVariantUnify.cc: created with variableFamily based
	versions

	* legacyMetaVariantUnify.cc (legacyMetaVariantUnify2)
	(legacyMetaVariantUnify, legacyMetaVariantDisjointUnify): moved
	here

2019-10-18  Steven Eker  <eker@mu>

	* metaUp.cc (upUnificationPair): (both versions) swapped args
	back

	* metaUnify.cc (metaUnify2): rewritten to use variableFamilies
	rather than variableIndexes
	(metaUnify, metaDisjointUnify): updated signature in comment

	* metaLevelOpSymbol.hh (FreeSymbol): added decls for
	legacyMetaGetVariant2(), legacyMetaVariantUnify2()

	* metaUp.cc (upUnificationPair): (both versions) use
	matchPairSymbol instead of unificationPairSymbol now that
	the operators coincide at the kind level

	* metaLevelSignature.cc: delete unificationPairSymbol
	since it is now subsort overloaded with matchPairSymbol

2019-10-17  Steven Eker  <eker@mu>

	* descentSignature.cc: added legacyMetaGetVariant,
	legacyMetaGetIrredundantVariant, legacyMetaVariantUnify,
	legacyMetaVariantDisjointUnify

	* metaLevelOpSymbol.hh (FreeSymbol): added decls for
	legacyMetaUnify2(), legacyMetaGetVariant2(),
	legacyMetaVariantUnify2()

	* legacyMetaVariant.cc: created

	* descentSignature.cc: added metaLegacyUnify,
	metaLegacyDisjointUnify

	* legacyMetaUp.cc: renamed from metaLegacy.cc

	* legacyMetaUnify.cc: created

2019-10-16  Steven Eker  <eker@mu>

	* metaUp.cc (upVariant): convert to variableFamilyName

	* metaLegacy.cc (upVariant): added

	* metaLevel.hh (M): added decls for new versions of
	upUnificationPair() and upUnificationTriple()
	(M): added decl for new version of upVariant()

	* metaLegacy.cc (upUnificationTriple): added legacy versions
	for regular and variant cases

	* metaUp.cc (upUnificationTriple): (regular unification version):
	converted to variableFamily
	(upUnificationTriple): (variant unification version): converted to
	variableFamily

	* metaLegacy.cc (upUnificationPair): (both legacy versions) moved
	here

	* metaUp.cc (upUnificationPair): (regular unification version): use
	legacyUnificationPairSymbol
	(upUnificationPair): added variableFamily version for regular
	unification
	(upUnificationPair): (variant unification version): use
	legacyUnificationPairSymbol
	(upUnificationPair): added variableFamily version for variant
	unification

2019-10-15  Steven Eker  <eker@mu>

	* metaLevelSignature.cc: added legacyUnificationPairSymbol,
	legacyUnificationTripleSymbol, legacyVariantSymbol

===================================Maude125===========================================

2019-10-10  Rubén Rubio  <rubenrub@ucm.es>

	* descentFunctions.cc (makeGetKinds): pass number of user kinds
	(metaStratParse): added a new parameter with variable declarations

	* descentSignature.cc: metaStratParse now takes 4 parameters

	* interpreterSort.cc (getKinds): pass on number of user kinds

	* metaDown.cc (downQidSet): added
	(downModule): importLabels renamed to importRuleLabels

	* metaDownSignature.cc (downSignature): importLabels renamed to
	importRuleLabels

	* metaModule.cc (registerRuleLabels): call to insertPotentialRuleLabels
	and use of range-based loops

	* metaLevel.hh (upKindSet): now receives the number of user kinds
	(downType2): made public
	(downQidSet): added

	* metaLevelSignature.cc: added QidSet constructors

	* metaUp.cc (upKindSet): now receives the number of user kinds

	* metaUpModule.cc (upStratDecl): called RewriteStrategy::arity directly

	* metaView.cc (getTargetExprModule): removed (not used)

	* metaView.hh (getTargetExprModule): removed (not used)

2019-09-19  Rubén Rubio  <rubenrub@ucm.es>

	* descentFunctions.cc (makeStrategicSearch): call term2RewritingContext
	and reduce the initial term

	* metaDownStrats.cc (downStratExpr): error recovery when nested terms
	or strategy expression are not valid metarepresentations
	(downStratDef): insert metadata and print attributes and initialize
	downStratCall output arguments to null
	(downStratList): solved a bug by using the correct list constructor
	symbols
	(downStratCall): solved memory leak by destructing the input
	arguments in case of failure

2019-06-03  Rubén Rubio  <rubenrub@ucm.es>

	* metaDown.cc (downModule): importLabels is called before

	* metaDownSignature.cc (downSignature): call to importLabels

	* metaUpModule.cc (upStratDecl): solved a bug that puts the types
	of the auxiliary symbol (at the kind level) instead of the types
	of the declaration

	* metaUpView.cc (upStratMappings): call to the renamed getToModule
	instead of getTargetExprModule

	* metaView.cc (handleTermAndExpressionMapping): adapted
	insertStratToExprMapping to the changes of alpha121

2019-05-28  Steven Eker  <eker@mu.csl.sri.com>

	* metaUpModule.cc (upArgument): fix bug in case that argument
	is an instantation of a view

2019-05-24  Steven Eker  <eker@mu.csl.sri.com>

	* metaOpCache.hh: added #include "cacheableState.hh" because of
	clang warning

2019-05-17  Steven Eker  <eker@mu.csl.sri.com>

	* metaLevel.hh (M): deleted decl for old downInstantiationArguments()

	* metaDownRenamings.cc (downModuleExpression): reimplemented by
	constructing a ModuleExpression first and using Interpreter code
	to evaluated it rather than directly handing the metaModuleExpression
	(downInstantiationArguments): deleted

2019-05-25  Rubén Rubio  <rubenrub@ucm.es>

	* metaDownStrats.cc (downStratDecl): handle metadata

	* metaUpModule.cc (upStratDecl): handle metadata
	(upSd): handle attributes

2019-04-17  Steven Eker  <eker@mu.csl.sri.com>

	* metaView.cc (handleOpTermMappings): don't pass toModule to
	insertOpToTermMapping()
	(handleOpTermMappings): don't pass line numbers to insertOpToTermMapping()
	(handleOpTermMappings): take responsibility for deepSelfDestruct()ing
	fromTerm and toTerm if insertOpToTermMapping() fails

2019-04-12  Steven Eker  <eker@mu.csl.sri.com>

	* metaDownRenamings.cc (downModuleExpression): use Argument*

2019-03-29  Steven Eker  <eker@mu.csl.sri.com>

	* metaDown.cc (downImport): use hasBoundParameters() in place
	of parametersBound()
	(downImport): use hasFreeParameters()

2019-02-27  Steven Eker  <eker@mu.csl.sri.com>

	* metaLevel.hh (M): added decls for MetaView* versions of
	downParameterDeclList(), downParameterDecl()

	* interpreterManagerSymbol.cc (insertView): added FIXME comment
	(insertModule): added comment about creating flattened version
	first before PreModule version

	* metaDownView.cc (downParameterDeclList, downParameterDecl): added
	MetaView* versions
	(downView): handle parameters

2019-02-26  Steven Eker  <eker@mu.csl.sri.com>

	* metaLevel.hh (M): added decls for View* versions of
	upHeader(), upParameterDecls(), upParameterDecl()

	* metaUpView.cc (upHeader, upParameterDecls, upParameterDecl): added
	View* versions
	(upView): use upHeader()

2019-02-21  Steven Eker  <eker@mu.csl.sri.com>

	* metaUpModule.cc (upArgument): handle the case where the
	argument is a view that itself takes arguments

2019-02-15  Steven Eker  <eker@mu.csl.sri.com>

	* deleted viewInstantiationSymbol

	* metaDownView.cc (downModuleExpression): switched order of
	downing module instantiation so we're not left with undeleted
	view expressions in error case
	(downViewExpression): use instantiationSymbol instead of
	viewInstantiationSymbol

	* metaLevel.hh (M): downInstantiationArgument() becomes
	downViewExpression()

	* metaDownView.cc (downInstantiationArgument): renamed to
	downViewExpression()
	(downViewExpression): handle instantiated views
	(downInstantiationArguments): use new downViewExpression() semantics

2019-02-14  Steven Eker  <eker@mu.csl.sri.com>

	* metaLevelSignature.cc: fix bug where instantiationSymbol was given
	arity 1
	added viewInstantiationSymbol

2019-02-13  Steven Eker  <eker@mu.csl.sri.com>

	* metaLevel.hh (M): added decl for upArgument(); updated
	decl for upArguments()

	* metaUpModule.cc (upArgument): added
	(upArguments): use upArgument()

2019-02-13  Steven Eker  <eker@install.csl.sri.com>

	* metaLevel.hh (M): added decl for downInstantiationArgument(); updated
	decl for downInstantiationArguments()

	* metaDownView.cc (downInstantiationArgument): added
	(downInstantiationArguments): use downInstantiationArgument()

===================================Maude121===========================================

2018-12-20  Rubén Rubio  <rubenrub@ucm.es>

	* descentFunctions.cc (metaStratParse, metaStratPrettyPrint): added
	(metaDSRewrite, metaStratRewrite): added from the code of metaSRewrite.
	Changes to cache the state object.
	(makeStrategicSearch): added

	* descentSignature.cc: added metaDSRewrite, metaStratParse,
	and metaStratPrettyPrint

	* metaDown.cc (downModule): call to registerRuleLabels and importLabels

	* metaDownSignature.cc (downSignature): call to registerRuleLabels

	* metaDownStrats.cc (downStratExpr): handle all strategy

	* metaLevel.hh: additional argument to upNoParse for the strategy case
	(upStratExpr, upAmbiguity): added for strategy expressions
	(upResultSet): removed

	* metaLevelOpSymbol.hh (makeStrategicSearch, metaStratRewrite): added

	* metaLevelSignature.cc: added allStratSymbol, noStratParseSymbol and
	stratAmbiguitySymbol. Removed noResultSetSymbol and resultSetSymbol

	* metaModule.cc (registerRuleLabels): added

	* metaModule.hh (registerRuleLabels): added

	* metaUp.cc (upNoParse): handle the strategy case
	(upStratExpr): handle the 'all' strategy and an erratum was corrected
	in NEW_STRATEGY. Added an overload that creates a QidMap
	(upAmbiguity): added
	(upResultSet): removed
	(upCallStrat): used ArgumentIterator instead of RawArgumentIterator

	* metaUpModule.cc (upCondition): solved a bug where empty conditions
	were not treated properly

	* bufferPrint.cc (bufferPrint): added for strategy expressions
	(prettyPrint): added for strategy expressions, condition fragments,
	and vectors of these.

2018-12-07  Steven Eker  <eker@install.csl.sri.com>

	* interpreterApply.cc (makeRewriteSearchState): deepSelfDestruct()
	values in successful case

	* interpreterSort.cc (normalizeTerm): need to deepSelfDestruct()
	term rather than delete it

	* interpreterManagerSymbol.cc (handleMessage): dispatch
	getNarrowingSearchResultMsg, getNarrowingSearchResultAndPathMsg

	* interpreterNewNarrowSearch.cc (getNarrowingSearchResult): rewritten
	because the two return messages have quite different semantics despite
	similar arugments; added comments to explain this

2018-12-06  Steven Eker  <eker@install.csl.sri.com>

	* metaLevel.hh (M): made NarrowingVariableInfo version of
	upSubstitution() public

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for makeNarrowingSearchPath()

	* interpreterNewNarrowSearch.cc (makeNarrowingSearchPath): added

	* metaLevel.hh (M): added decl for upNarrowingSearchPath()

	* metaUp.cc (upNarrowingSearchPath): added
	(upNarrowingSearchPathResult): use upNarrowingSearchPath()

2018-12-05  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decls for makeNarrowingSequenceSearch3(), getNarrowingSearchResult()

	* interpreterNewNarrowSearch.cc: created

	* metaLevelOpSymbol.hh (FreeSymbol): delted decl for
	downFoldType()

	* metaLevel.hh (downFoldType): added

	* metaNewNarrow2.cc (makeNarrowingSequenceSearch3): use
	MetaLevel::downFoldType()
	(downFoldType): deleted

	* metaLevel.hh (M): added decl for downFoldType()

	* interpreterSignature.cc: added
	getNarrowingSearchResultMsg/gotNarrowingSearchResultMsg,
	getNarrowingSearchResultAndPathMsg/gotNarrowingSearchResultAndPathMsg

2018-11-30  Steven Eker  <eker@install.csl.sri.com>

	* interpreterNewNarrow.cc (makeNarrowingSearchState2): leave rewrite
	counts in subjectContext
	(getOneStepNarrowing): don't transfer rewrite counts from state context
	inside loop
	(getOneStepNarrowing): tranfer rewrite counts from state context
	and the end of a success
	(getOneStepNarrowing): do incrementNarrowingCount() on stateContext
	rather than external context
	(getOneStepNarrowing): return completeness flag in no such result
	reply

2018-11-29  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.cc (handleMessage):
	getOneStepNarrow() -> getOneStepNarrowing()

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol):
	getOneStepNarrow() -> getOneStepNarrowing()

	* interpreterNewNarrow.cc (getOneStepNarrow): becomes
	getOneStepNarrowing()

	* interpreterSignature.cc: getOneStepNarrowMsg/gotOneStepNarrowMsg ->
	getOneStepNarrowingMsg/gotOneStepNarrowingMsg

2018-11-28  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.cc (handleMessage): dispatch
	getOneStepNarrowMsg

	* metaLevel.hh (M): made upPartialSubstitution() public

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decls for makeNarrowingSearchState2() and getOneStepNarrow()

	* interpreterNewNarrow.cc: created

	* interpreterMatch.cc (makeMatchSearchState): subject -> message

	* interpreterSignature.cc: narrowWithRuleMsg/narrowedWithRuleMsg
	-> getOneStepNarrowMsg/gotOneStepNarrowMsg

2018-11-27  Steven Eker  <eker@install.csl.sri.com>

	* interpreterSignature.cc: added narrowWithRuleMsg,
	narrowedWithRuleMsg

2018-11-09  Steven Eker  <eker@install.csl.sri.com>

	* metaApply.cc (metaApply): only call transferCountTo() when
	we exit the loop; don't addInCount() initial rewrites since
	these would get double counted
	(metaXapply): symmetric changes

	* interpreterApply.cc (makeRewriteSearchState): don't do
	context.addInCount() here since it leads to double counting of
	initial equational rewriting.
	(applyRule): don't do transferCountTo() in solution loop
	(applyRule): add reduction count to stateContext rather than
	context
	(applyRule): increment stateContext rather than context

2018-11-08  Steven Eker  <eker@install.csl.sri.com>

	* interpreterRewrite.cc (reduceTerm, rewriteTerm, frewriteTerm)
	(erewriteTerm): use term2RewritingContext()

2018-11-06  Steven Eker  <eker@install.csl.sri.com>

	* metaLevelOpSymbol.hh (FreeSymbol): deleted decl for
	term2Dag()

	* metaLevelOpSymbol.cc (term2Dag): deleted

	* descentFunctions.cc (term2RewritingContext, metaLeastSort)
	(metaReduce, metaRewrite, metaFrewrite, metaDownTerm): use
	term2DagEagerLazyAware()

	* interpreterManagerSymbol.hh (term2RewritingContext): use
	term2DagEagerLazyAware()

	* interpreterRewrite.cc (reduceTerm, rewriteTerm, frewriteTerm)
	(erewriteTerm): use term2DagEagerLazyAware()

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): deleted
	decl for term2Dag()

	* interpreterManagerSymbol.cc (term2Dag): deleted

	* metaDown.cc (dagifySubstitution): use term2DagEagerLazyAware()

	* interpreterApply.cc (makeRewriteSearchState): use
	MetaLevel::dagifySubstitution()

	* metaLevelOpSymbol.hh (FreeSymbol): deleted decl for dagifySubstitution()

	* metaLevel.hh (M): added decl for dagifySubstitution()

	* metaApply.cc (metaXapply): use MetaLevel::dagifySubstitution()
	(metaApply): use MetaLevel::dagifySubstitution()

	* descentFunctions.cc (metaWellFormedSubstitution): use
	MetaLevel::dagifySubstitution()

	* metaDown.cc (dagifySubstitution): moved here from descentFunctions.cc

	* interpreterApply.cc (makeRewriteSearchState): don't call
	noDuplicates()

	* metaLevelOpSymbol.hh (FreeSymbol): deleted decl for
	noDuplicates()

	* metaApply.cc (metaXapply): don't call noDuplicates()
	(metaApply): don't call noDuplicates()

	* descentFunctions.cc (noDuplicates): deleted
	(metaWellFormedSubstitution): don't call noDuplicates()

	* metaLevel.hh (M): added decl for duplicate()

	* metaDown.cc (duplicate): added
	(downAssignment): check for duplicate lhs variables

	* interpreterManagerSymbol.cc (handleMessage): dispatch applyRuleMsg,
	applyRule2Msg

2018-11-05  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decls for makeRewriteSearchState(), applyRule()

	* interpreterApply.cc: created

2018-11-02  Steven Eker  <eker@install.csl.sri.com>

	* interpreterSignature.cc: added applyRuleMsg, appliedRuleMsg,
	applyRule2Msg, appliedRule2Msg

2018-11-01  Steven Eker  <eker@install.csl.sri.com>

	* interpreterSort.cc (normalizeTerm): fix memory leak by
	deleting term when we're done with it

===================================Maude120===========================================

2018-10-22  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.cc (handleMessage): dispatch
	parseQidListMsg

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for parseQidList()

	* interpreterPrint.cc (parseQidList): added

	* interpreterSignature.cc: added parseQidListMsg/parsedQidListMsg

	* interpreterPrint.cc (printTerm): correct print options
	argument number

2018-10-19  Steven Eker  <eker@install.csl.sri.com>

	* metaVariant.cc (metaGetVariant2): fix memory leak were start
	term is successfully down'd but blocker terms are not

2018-10-16  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.cc (handleMessage): dispatch
	printTermMsg

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for printTerm()

	* interpreterPrint.cc: created

	* interpreterSignature.cc: added printTermMsg/printedTermMsg

2018-10-12  Steven Eker  <eker@install.csl.sri.com>

	* interpreterVariantUnify.cc (getVariantUnifier): use
	gotDisjointVariantUnifierMsg, gotVariantUnifierMsg

	* interpreterSignature.cc: added gotVariantUnifierMsg,
	gotDisjointVariantUnifierMsg

	* metaLevel.hh (M): made narrowing version of
	upDisjointSubstitutions() public

	* interpreterManagerSymbol.cc (handleMessage): dispatch
	getVariantUnifierMsg, getDisjointVariantUnifierMsg

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for getVariantUnifier()

	* interpreterVariantUnify.cc: created

2018-10-11  Steven Eker  <eker@install.csl.sri.com>

	* interpreterSignature.cc: added getUnifierVariantMsg,
	getDisjointVariantUnifierMsg

	* metaMatch.cc (makeMatchSearchState): don't
	add in count from subjectContext since that will
	be accounted for when the solutions are extracted
	(makeMatchSearchState2): fixed symmteric bug

	* interpreterMatch.cc (makeMatchSearchState): don't
	add in count from subjectContext since that will
	be accounted for when the solutions are extracted
	(makeMatchSearchState2): fixed symmteric bug

2018-10-04  Steven Eker  <eker@install.csl.sri.com>

	* interpreterVariant.cc (getVariant): use addInCount()
	in the fail case
	(getVariant): only do transferCountFrom() once we've generated
	the reply

	* interpreterMatch.cc (getMatch, getXmatch): do addInCount()
	rather than transferCountTo() in the fail case

	* interpreterSearch.cc (getSearchResult): do addInCount() rather
	than transferCountTo() in the fail case

2018-10-03  Steven Eker  <eker@install.csl.sri.com>

	* interpreterRewrite.cc (erewriteTerm, frewriteTerm)
	(rewriteTerm, reduceTerm): use upRewriteCount()

	* interpreterVariant.cc (getVariant): fill out RewriteCount
	for gotVariant()

	* interpreterSignature.cc: gotVariantMsg now has
	8 arguments

2018-10-01  Steven Eker  <eker@install.csl.sri.com>

	* interpreterVariant.cc (getVariant): fix memory leak
	when blocker terms bad

2018-09-28  Steven Eker  <eker@install.csl.sri.com>

	* metaLevel.hh (upNoParent): added

	* interpreterSignature.cc: added noSuchResult3Msg

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for getVariant()

	* interpreterVariant.cc: created

	* interpreterManagerSymbol.cc (handleMessage): dispatch
	getVariantMsg

	* interpreterSignature.cc: added getVariantMsg/gotVariantMsg

	* metaVariant.cc (metaGetVariant2): pass dummy variableFamily
	argument to getNextVariant()
	(metaGetVariant2): pass dummy variableFamily argument to
	getLastReturnedVariant()
	(metaVariantUnify2): pass dummy variableFamily argument to
	getLastReturnedUnifier()

	* interpreterSearch.cc (getSearchResult): transferCount() ->
	transferCountTo() (2 places)

	* interpreterMatch.cc (getMatch): transferCount() ->
	transferCountTo() (2 places)
	(getXmatch): transferCount() -> transferCountTo() (2 places)

	* metaVariant.cc (metaGetVariant2): transferCount() ->
	transferCountFrom()
	(metaVariantUnify2): transferCount() -> transferCountFrom()

	* metaSearch.cc (metaSearchPath): transferCount() ->
	transferCountTo()
	(metaSearch): transferCount() -> transferCountTo()

	* metaNewNarrow2.cc (metaNarrowingSearch): transferCount() ->
	transferCountFrom()
	(metaNarrowingSearchPath): transferCount() -> transferCountFrom()

	* metaNewNarrow.cc (metaNarrowingApply): transferCount() ->
	transferCountFrom()

	* metaNarrow.cc (metaNarrow): transferCount() ->
	transferCountFrom()
	(metaNarrow2): transferCount() -> transferCountFrom()

	* metaMatch.cc (metaMatch): transferCount() ->
	transferCountTo()
	(metaXmatch): transferCount() -> transferCountTo()

	* metaApply.cc (metaApply): transferCount() ->
	transferCountTo()
	(metaXapply): transferCount() -> transferCountTo()

2018-09-27  Steven Eker  <eker@install.csl.sri.com>

	* interpreterUnify.cc (getUnifier): use simpler
	FreshVariableSource()

2018-09-25  Steven Eker  <eker@install.csl.sri.com>

	* metaLevel.hh (M): made upQid() public
	(M): made upDisjointSubstitutions(), upSubstitution() public

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for getUnifier()

	* interpreterManagerSymbol.cc (handleMessage): dispatch
	getUnifierMsg, getDisjointUnifierMsg

	* interpreterSignature.cc: added getUnifierMsg/gotUnifierMsg,
	getDisjointUnifierMsg/gotDisjointUnifierMsg, noSuchResult2Msg

	* interpreterUnify.cc: created

2018-09-24  Steven Eker  <eker@install.csl.sri.com>

	* metaLevelOpSymbol.hh (FreeSymbol): deleted decl for
	getCachedUnificationProblem()

	* metaUnify.cc (metaUnify2): use getCachedStateObject()
	(getCachedUnificationProblem): deleted

	* metaOpCache.hh (getCachedStateObject): added non-context
	version

2018-09-21  Steven Eker  <eker@install.csl.sri.com>

	* metaUp.cc (upDagNode): pass 0 as variable family to
	getFreshVariableName()

2018-09-17  Steven Eker  <eker@install.csl.sri.com>

	* metaLevel.hh (M): made upTerm() public

	* interpreterSignature.cc: added normalizeTermMsg/normalizedTermMsg

	* interpreterManagerSymbol.cc (handleMessage): dispatch
	normalizeTermMsg

	* interpreterSort.cc (normalizeTerm): added

2018-09-14  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for getMaximalAritySet()

	* interpreterSignature.cc: added
	getMaximalAritySetMsg/gotMaximalAritySetMsg

	* interpreterManagerSymbol.cc (handleMessage): dispatch
	getMaximalAritySetMsg

	* interpreterSort.cc (getMaximalAritySet): added

===================================Maude119===========================================

2018-08-17  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.cc (handleMessage): dispatch
	getGlbTypesMsg

	* interpreterSignature.cc: added getGlbTypesMsg/gotGlbTypesMsg

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for getGlbTypes()

	* interpreterSort.cc (getGlbTypes): added

	* metaLevel.hh (M): added decl for downTypeSet()

	* metaDown.cc (downTypeSet): added

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decls for getKind()/getKinds()

	* interpreterSort.cc (getKind, getKinds): added

	* interpreterManagerSymbol.cc (handleMessage): dispatch
	getKindMsg, gotKindMsg

	* interpreterSignature.cc: added getKindMsg/gotKindMsg,
	getKindsMsg/gotKindsMsg

2018-08-16  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for compareTypes()

	* interpreterSort.cc (compareTypes): added

	* interpreterManagerSymbol.cc (handleMessage): dispatch
	compareTypesMsg

	* interpreterSignature.cc: deleted succSymbol

	* interpreterManagerSymbol.cc (getInterpreter): use
	MetaLevel::downSignedInt() rather than SuccSymbol::getSignedInt()
	(deleteInterpreter): use MetaLevel::downSignedInt() rather than
	SuccSymbol::getSignedInt()

	* metaLevel.hh (downSignedInt): added

	* interpreterManagerSymbol.cc (createInterpreter): use
	MetaLevel::upNat() rather than SuccSymbol::makeNatDag()
	(quit): socketName -> interpreterName

	* interpreterSignature.cc: added compareTypesMsg/comparedTypesMsg

2018-08-15  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decls for getLesserSorts(), getMaximalSorts(), getMinimalSorts()

	* interpreterSort.cc: created

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for getInterpreterAndModule()

	* interpreterManagerSymbol.cc (handleMessage): added dispatch
	for getLesserSortsMsg, getMaximalSortsMsg, getMinimalSortsMsg
	(getInterpreterAndModule): added

2018-08-14  Steven Eker  <eker@install.csl.sri.com>

	* interpreterSignature.cc: added getLesserSortsMsg/gotLesserSortsMsg,
	getMaximalSortsMsg/gotMaximalSortsMsg,
	getMinimalSortsMsg/gotMinimalSortsMsg

2018-08-10  Steven Eker  <eker@install.csl.sri.com>

	* metaLevelOpSymbol.hh (getCachedStateObject): deleted

	* metaVariant.cc (metaGetVariant2, metaVariantUnify2): use
	MetaOpCache::getCachedStateObject() rather than
	MetaLevelOpSymbol::getCachedStateObject()

	* metaNewNarrow2.cc (metaNarrowingSearch)
	(metaNarrowingSearchPath): use
	MetaOpCache::getCachedStateObject() rather than
	MetaLevelOpSymbol::getCachedStateObject()

	* metaNewNarrow.cc (metaNarrowingApply): use
	MetaOpCache::getCachedStateObject() rather than
	MetaLevelOpSymbol::getCachedStateObject()

	* metaNarrow.cc (metaNarrow, metaNarrow2): use
	MetaOpCache::getCachedStateObject() rather than
	MetaLevelOpSymbol::getCachedStateObject()

	* metaApply.cc (metaApply, metaXapply): use
	MetaOpCache::getCachedStateObject() rather than
	MetaLevelOpSymbol::getCachedStateObject()

	* metaMatch.cc (metaMatch, metaXmatch): use
	MetaOpCache::getCachedStateObject() rather than
	MetaLevelOpSymbol::getCachedStateObject()

	* metaSearch.cc (metaSmtSearch, metaSearch, metaSearchPath): use
	MetaOpCache::getCachedStateObject() rather than
	MetaLevelOpSymbol::getCachedStateObject()

2018-08-09  Steven Eker  <eker@install.csl.sri.com>

	* metaMatch.cc (makeMatchSearchState2): deepSelfDestruct()
	pattern and subject in error cases

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): updated
	decl for createInterpreter()

	* interpreterManagerSymbol.cc (createInterpreter): check option
	arg and return bool
	(handleManagerMessage): pass createInterpreter() return value

	* interpreterSignature.cc: added emptyInterpereterOptionSetSymbol;
	changed createInterpreterMsg arity to 3

2018-08-08  Steven Eker  <eker@install.csl.sri.com>

	* interpreterSearch.cc (getSearchResult): updated comments

	* interpreterMatch.cc (makeMatchSearchState2): correct assumption
	that pattern and subject are in the same kind

2018-08-07  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decls for makeMatchSearchState2(), getXmatch()

	* interpreterMatch.cc (getXmatch): added
	(makeMatchSearchState2): adde

	* metaMatch.cc (metaXmatch): RewriteSearchState::DagPair ->
	PositionState::DagPair

	* interpreterManagerSymbol.cc (handleMessage): dispatch getXmatch()

	* interpreterSignature.cc: added getXmatchMsg/gotXmatchMsg

2018-08-06  Steven Eker  <eker@install.csl.sri.com>

	* interpreterSignature.cc: added getMatchMsg/gotMatchMsg

	* interpreterManagerSymbol.cc (handleMessage): dispatch getMatch()

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decls for makeMatchSearchState(), getMatch()

	* interpreterMatch.cc: created

2018-08-03  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.cc (MACRO): use BIND_SYMBOL2 to check
	nrArgs

	* interpreterSignature.cc: noSuchResultMsg() now takes
	3 arguments

	* interpreterSearch.cc (getSearchResult): use upRewriteCount()
	(getSearchResult): noSuchResult now returns a RewriteCount()

	* interpreterManagerSymbol.cc (upRewriteCount): added

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for upRewriteCount()

2018-08-02  Steven Eker  <eker@install.csl.sri.com>

	* interpreterSignature.cc: added getSearchResultAndPathMsg,
	gotSearchResultAndPathMsg

	* interpreterManagerSymbol.cc (handleMessage): dispatch
	getSearchResultAndPathMsg

	* interpreterSearch.cc (makeRewriteSequenceSearch)
	(getSearchResult): moved here
	(getSearchResult): handle getSearchResultAndPath as well

	* interpreterRewrite.cc (reduceTerm, rewriteTerm, frewriteTerm)
	(erewriteTerm): moved here

2018-08-01  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.cc (getSearchResult): support
	state caching

	* metaOpCache.hh (getCachedStateObject): added template

2018-07-31  Steven Eker  <eker@install.csl.sri.com>

	* interpreterSignature.cc: updated decl for gotSearchResultMsg

	* interpreterManagerSymbol.cc (getSearchResult): pass
	rewrite count through gotSearchResultMsg

2018-07-20  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.hh (term2RewritingContext): added

	* metaLevel.hh (downSearchType): added

	* interpreterSignature.cc: deleted continueMsg; added noSuchResultMsg

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for makeRewriteSequenceSearch()

	* interpreterManagerSymbol.cc (getSearchResult): implemented
	(makeRewriteSequenceSearch): added

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for getSearchResult()

	* interpreterManagerSymbol.cc (handleMessage): handle
	getSearchResultMsg
	(getSearchResult): added stub

	* interpreterSignature.cc: added getSearchResultMsg,
	gotSearchResultMsg

===================================Maude118===========================================

2018-07-17  Rubén Rubio  <rubenrub@ucm.es>

	* downView.cc (downView): call downStratMappingSet
	(downStratMappingSet, downStratMapping): added
	(downStratExprMappings, downStratExprMapping): added

	* metaDownSignature.cc (downSignature): added strategy modules
	and theories

	* metaDownStrats (downStratExpr): return null when strategy call
	refers to an unknown strategy

	* metaView.cc (MetaView): added stratMappings as argument
	(handleTermAndExprMappings): code to handle expression mappings

	* metaView.hh: new data member stratMappings
	(handleTermAndExprMappings): renamed from handleOpTermMappings

2018-06-29  Steven Eker  <eker@install.csl.sri.com>

	* metaPreModule.hh (PreModule): updated decl for getAutoImports()

	* metaUpModule.cc (upImports): use new getAutoImports convention

	* metaPreModule.cc (getAutoImports): moved here; return
	null pointer

2018-06-25  Steven Eker  <eker@install.csl.sri.com>

	* metaPreModule.cc (MetaPreModule): set module type; this was
	a UMR bug

2018-06-20  Steven Eker  <eker@install.csl.sri.com>

	* metaLevel.hh (M): added decls for downParameterDeclList2(),
	downParameterDecl2()
	(M): made downHeader() public

	* interpreterManagerSymbol.cc (insertModule): use
	downParameterDeclList2()

	* metaDownSignature.cc (downParameterDeclList2)
	(downParameterDecl2): added

	* interpreterManagerSymbol.cc (insertModule): call downImports2()

	* metaUpModule.cc (upImports): deal with new getImportMode()
	convention

	* metaLevel.hh (M): added decls for downImports2(),
	downImport2()

	* metaDownSignature.cc (downImports2, downImport2): added

	* metaPreModule.hh (PreModule): delete getNrParameters(),
	getParameterName(), getParameter(), getNrImports(),
	getImportMode(), getImport() stubs

2018-06-19  Steven Eker  <eker@install.csl.sri.com>

	* ascentFunctions.cc (getPreModule): added DebugAdvisory()s

2018-06-18  Steven Eker  <eker@install.csl.sri.com>

	* metaLevelOpSymbol.cc: remove access to global variables

	* metaLevelOpSymbol.hh (FreeSymbol): added decl for
	getPreModule()

	* ascentFunctions.cc (getPreModule): added
	(metaUpView): determine owner rather than use global
	interpreter variable
	(metaUpModule, metaUpImports, metaUpSorts, metaUpSubsortDecls)
	(metaUpOpDecls, metaUpEqs, metaUpMbs, metaUpRls): use
	getPreModule()

2018-06-15  Steven Eker  <eker@install.csl.sri.com>

	* metaLevel.cc: remove access to global variables

	* metaDown.cc (downModule): call
	owner->destructUnusedModules() rather than
	interpreter.destructUnusedModules() (2 places)

	* metaDownSignature.cc (downSignature): call
	owner->destructUnusedModules() rather than
	interpreter.destructUnusedModules()

	* metaLevel.hh (M): updated decls for downModuleExpression(),
	downParameterDeclList(), downParameterDecl()

	* metaDown.cc (downParameterDecl, downParameterDeclList): take
	MetaModule* rather than ImportModule*

	* metaDownRenamings.cc (downModuleExpression): take MetaModule*
	rather than ImportModule*

	* metaLevel.hh (M): updated decl for downModule()

	* metaDown.cc (downModule): don't take cacheMetaModule and
	owner arguments
	(downModule): rewritten to extract owner Interpreter via
	the top symbol of meta-module

2018-06-14  Steven Eker  <eker@install.csl.sri.com>

	* metaPreModule.cc (getFlatSignature): don't pass parent to
	downSignature()

	* metaDown.cc (downModule): don't pass parent to MetaModule()

	* interpreterManagerSymbol.cc (insertModule): don't pass parent to
	downSignature()

	* metaLevel.hh (M): updated decl for downSignature()

	* metaDownSignature.cc (downSignature): don't pass parent to
	MetaModule()
	(downSignature): don't take parent argument

	* metaModule.cc (MetaModule): don't take or pass parent; pass owner;
	don't initialize owner

	* metaModule.hh (MetaOpCache): deleted data member owner
	(getOwner): deleted
	(MetaOpCache): ctor no longer takes parent

2018-06-12  Steven Eker  <eker@install.csl.sri.com>

	* metaDown.cc (downModule): call addUser() here; pass null parent
	to MetaModule()

	* interpreterManagerSymbol.cc (insertModule): don't call addUser()
	here

	* metaPreModule.cc (regretToInform): more detailed DebugAdvisory()
	(MetaPreModule): call addUser() here

	* interpreterManagerSymbol.cc (insertModule): use downSignature()

	* metaPreModule.hh (PreModule): deleted inline definition
	for getFlatSignature()

	* metaPreModule.cc (getFlatSignature): added
	(getFlatModule): rewritten to use getFlatSignature()

	* metaLevel.hh (M): added decl for downSignature()

	* metaDownSignature.cc: created

2018-06-05  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.cc (erewriteTerm): fix nasty bug where
	safeCast() macro was duplicating makeSubcontext() call

2018-05-31  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.cc (erewriteTerm): set mode to
	ObjectSystemRewritingContext::EXTERNAL
	(rewriteTerm, frewriteTerm, erewriteTerm): call resetRules()
	before using module

2018-05-30  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.hh (ExternalObjectManagerSymbol): added
	decl for erewriteTerm()

	* interpreterSignature.cc: added erewriteTermMsg, erewroteTermMsg

	* interpreterManagerSymbol.cc (erewriteTerm): added
	(handleMessage): support erewriteMsg

2018-05-22  Steven Eker  <eker@install.csl.sri.com>

	* metaUpModule.cc (upModule): handle MetaPreModules correctly
	in the unflattened case

	* metaPreModule.hh (getMetaRepresentation): added

2018-05-17  Steven Eker  <eker@install.csl.sri.com>

	* metaView.cc (handleOpTermMappings): implemented

	* metaLevel.hh (M): added decls for downOpTermMappings(),
	downOpTermMapping()

	* metaDownView.cc (downOpTermMappings): added
	(downOpTermMapping): added

2018-05-16  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.cc (insertView): implemented

	* metaDownView.cc (downView): make sure we have an actual
	viewSymbol dag node before we downcast it

	* metaLevel.hh (M): added decls for downSortMapping(),
	downOpMapping()

	* metaDownView.cc (downModuleExpression): use downToken()
	(downInstantiationArguments): use downToken() (2 places)
	(downSortMapping): added
	(downSortMappingSet): implemented
	(downOpMapping): added
	(downOpMappingSet): implemented

	* metaLevel.hh (M): added decl for downToken()

	* metaDown.cc (downToken): added

2018-05-15  Steven Eker  <eker@install.csl.sri.com>

	* meta.hh: added class MetaView

	* metaLevel.hh (M): added decls for downSortMappingSet(),
	downOpMappingSet()

	* metaDownView.cc (downSortMappingSet, downOpMappingSet): added stubs

	* metaLevel.hh (M): added decls for view version of downModuleExpression()
	and downInstantiationArguments(); added decl for downView()

	* metaDownView.cc: created

2018-05-04  Steven Eker  <eker@install.csl.sri.com>

	* metaView.hh: created

	* metaView.cc: created

2018-04-30  Steven Eker  <eker@install.csl.sri.com>

	* metaUpView.cc (upView): call View::evaluate()

2018-04-29  Rubén Rubio  <rubenrub@ucm.es>

	* metaDown.cc (downModule): using Module::isStrategic to be more succinct

	* metaDownRenamings.cc (downRenaming): added strategy renamings

	* metaDownStrats.cc (downStratExpr): fixed a bug where some cases are missing
	(downStratDef): fixed an erratum
	(downStratDecl): put META_LEVEL_CREATED as line number for strategy name token
	(downStratCall): warning if no strategy declaration can be found

	* metaLevel.hh (upStratMappings): added

	* metaLevelSignature.cc: strategy renaming and mapping symbols

	* metaUpModule.cc (upStratDeclarations): fixed an erratum
	(upRenaming): added strategy renamings

	* metaUpView.cc (upView): call upStratMappings
	(upStratMappings): added

2018-04-18  Steven Eker  <eker@install.csl.sri.com>

	* interpreterManagerSymbol.cc (showView): implemented

===================================Maude117===========================================

2018-04-10  Rubén Rubio  <rubenrub@ucm.es>

	* metaDownStrats.cc (downStratExpr): added 'one' strategy case

	* metaLevelSignature.cc: added oneStratSymbol

	* metaLevel.cc: added include for 'one' strategy

	* metaUp.cc (upStratExpr): added 'one' strategy case

2018-03-23  Rubén Rubio  <rubenrub@ucm.es>

	* descentFunctions.cc (metaSRewrite): added

	* descentSignature.cc: added metaSRewrite

	* metaDown.cc (downModule): support for strategy modules

	* metaDownStrats.cc: added

	* metaLevel.hh: added strategy language includes and metaDownStrats.cc
	(upResultSet, upStratDecls, upSds, downStratExpr, upStratDecl, upSd)
	(upStratExpr, upCallExpr, downStratDecls, downStratDecl, downStratDefs)
	(downStratDef, downStratCall, downStrategyList): added

	* metaLevelOpSymbol.cc: added strategy language includes

	* metaLevelSignature.cc: added metastrategy constructs

	* metaUp.cc (upResultSet, upStratExpr, upCallStrat): added

	* metaUpModule.cc (upModule): added support for strategy modules
	(upPolymorphDecl): fixed an erratum.
	(upStratDecls, upStratDecl, upSds, upSd): added

2017-07-11  Steven Eker  <eker@install.csl.sri.com>

	* metaSearch.cc (makeSMT_RewriteSequenceSearch): check for
	nonlinear variables in the target
	(makeSMT_RewriteSequenceSearch): check for SMT operators
	in the target

2017-06-29  Steven Eker  <eker@install.csl.sri.com>

	* metaDown.cc (downTerm): canonicalize rational number

2017-06-05  Steven Eker  <eker@install.csl.sri.com>

	* metaDownOps.cc (downAttr): set STRAT flag when strat
	attribute seen
	(downAttr): check for duplicated attributes

2017-05-31  Steven Eker  <eker@install.csl.sri.com>

	* metaDownOps.cc (downAttr): check for duplicate argument
	numbers in poly attribute
	(downAttr): check for duplicate argument numbers in frozen
	attribute
	(downOpDecl): check that frozen and poly argument numbers
	are in range
	(downOpDecl): check gather lengths in both cases

2017-05-30  Steven Eker  <eker@install.csl.sri.com>

	* metaUp.cc (upQidList): call upQid() in the singleton
	case

===================================Maude114===========================================

2017-05-25  Steven Eker  <eker@install.csl.sri.com>

	* metaNewNarrow.cc (metaNarrowingApply): use
	upNarrowingApplyResult() and upNarrowingApplyFailure()

	* metaLevel.hh (M): upNarrowingFailure() ->
	upNarrowingApplyFailure(); upNarrowingResult() ->
	upNarrowingApplyResult()

	* metaLevelSignature.cc: narrowingResultSymbol ->
	narrowingApplyResultSymbol; narrowingFailureSymbol ->
	narrowingApplyFailureSymbol; narrowingFailureIncompleteSymbol ->
	narrowingApplyFailureIncompleteSymbol

	* metaUp.cc (upNarrowingResult): becomes
	upNarrowingApplyResult()
	(upNarrowingFailure): becomes upNarrowingFailure()
	(upNarrowingApplyResult): new scheme for returning values

2017-05-24  Steven Eker  <eker@install.csl.sri.com>

	* metaNewNarrow2.cc (makeNarrowingSearchPathResult): get
	unifierVariableInfo for each step from getHistory() and
	passing it to upNarrowingStep()

	* metaUp.cc (upNarrowingStep): use upCompoundSubstitution()

	* metaLevel.hh (M): added decl for upCompoundSubstitution()

	* metaUp.cc (upCompoundSubstitution): added

	* metaNewNarrow2.cc (makeNarrowingSearchPathResult): pass rule
	rather than label for upNarrowingStep()

	* metaLevel.hh (M): updated decl for upNarrowingStep()

	* metaUp.cc (upNarrowingStep): take rule rather than label;
	generate rule part of substitution

2017-05-23  Steven Eker  <eker@install.csl.sri.com>

	* metaUp.cc (upNarrowingSearchPathResult): handle singleton trace

	* metaLevelOpSymbol.hh (FreeSymbol): added deld for
	makeNarrowingSearchPathResult()

	* metaNewNarrow2.cc (makeNarrowingSearchPathResult): added
	(metaNarrowingSearchPath): use makeNarrowingSearchPathResult()

	* metaUp.cc (upNarrowingStep): handle label == NONE

2017-05-22  Steven Eker  <eker@install.csl.sri.com>

	* metaLevel.hh (M): added decl for upNarrowingStep()

	* metaUp.cc (upNarrowingStep): added

	* metaLevel.hh (M): added decl for upNarrowingSearchPathResult()

	* metaUp.cc (upNarrowingSearchPathResult): added

	* metaLevel.hh (M): added delc for upNarrowingSearchFailure()

	* metaUp.cc (upNarrowingSearchPathFailure): added

	* descentSignature.cc: added metaNarrowingSearchPath

	* metaNewNarrow2.cc (metaNarrowingSearchPath): added stub

	* metaLevelSignature.cc: added narrowingSearchPathFailureSymbol,
	narrowingSearchPathFailureIncompleteSymbol, narrowingStepSymbol,
	nilNarrowingTraceSymbol, narrowingTraceSymbol,
	narrowingSearchPathResultSymbol

2017-05-19  Steven Eker  <eker@install.csl.sri.com>

	* metaLevelOpSymbol.hh (FreeSymbol): delete decl for
	makeNarrowingSequenceSearch2()

	* metaNewNarrow.cc (makeNarrowingSequenceSearch2): deleted
	(metaNarrowingSearch): deleted old version

	* metaLevel.hh (M): added decl for upPartialSubstitution()

	* metaUp.cc (upPartialSubstitution): renamed from upSubstitution()
	(upNarrowingResult): use upPartialSubstitution()
	(upSubstitution): added new version

	* metaLevelSignature.cc: narrowingSearchResultSymbol now
	has 6 arguments

	* metaLevel.hh (M): updated decl for upNarrowingSearchResult()

	* metaUp.cc (upNarrowingSearchResult): reimplemented

	* descentSignature.cc: metaNarrowingSearch() now has 7 arguments

	* metaLevelOpSymbol.hh (FreeSymbol): added decls for downFoldType()
	and makeNarrowingSequenceSearch3()

	* metaNewNarrow2.cc (metaNarrowingSearch): reimplemented here
	(makeNarrowingSequenceSearch3): added
	(downFoldType): added

2017-05-02  Steven Eker  <eker@install.csl.sri.com>

	* metaNewNarrow.cc (makeNarrowingSearchState2)
	(metaNarrowingApply): 1st Qid argument deleted

	* descentSignature.cc: metaNarrowingApply now takes 5 arguments

	* metaNewNarrow.cc (makeNarrowingSearchState2): don't pass label arg
	to NarrowingSearchState2

2017-04-26  Steven Eker  <eker@install.csl.sri.com>

	* metaUpModule.cc (upStatementAttributes): support narrowing

	* metaLevel.hh (M): added NARROWING to enum Flags

	* metaDown.cc (downRule): support narrowing
	(downStatementAttr): support narrowing

	* metaLevelSignature.cc: added narrowingSymbol

===================================Maude113===========================================

2017-03-16  Steven Eker  <eker@install.csl.sri.com>

	* metaLevelOpSymbol.hh (FreeSymbol): delete decl for
	getCachedVariantSearch()

	* metaVariant.cc (getCachedVariantSearch): deleted
	(metaGetVariant2, metaVariantUnify2): use getCachedStateObject()

	* metaLevelOpSymbol.hh (FreeSymbol): deleted decl for
	getCachedNarrowingSequenceSearch()

	* metaNarrow.cc (getCachedNarrowingSequenceSearch): deleted
	(metaNarrow, metaNarrow2): use getCachedStateObject()

	* metaSearch.cc (metaSmtSearch): deleted commented out code

	* metaLevelOpSymbol.hh (FreeSymbol): deleted decl for
	getCachedSMT_RewriteSequenceSearch()

	* metaSearch.cc (getCachedSMT_RewriteSequenceSearch): deleted
	(metaSmtSearch): use getCachedMatchSearchState()

	* metaLevelOpSymbol.hh (FreeSymbol): deleted decl for
	getCachedMatchSearchState()

	* metaMatch.cc (getCachedMatchSearchState): deleted
	(metaMatch): use getCachedStateObject()
	(metaXmatch): use getCachedStateObject()

	* metaLevelOpSymbol.hh (FreeSymbol): deleted decl for
	getCachedRewriteSearchState()

	* metaApply.cc (getCachedRewriteSearchState): deleted
	(metaApply): use getCachedStateObject()
	(metaXapply): use getCachedStateObject()

	* metaLevelOpSymbol.hh (FreeSymbol): deleted decl for
	getCachedRewriteSequenceSearch()

	* metaSearch.cc (getCachedRewriteSequenceSearch): deleted
	(metaSearch): use getCachedStateObject()
	(metaSearchPath): use getCachedStateObject()

	* metaLevelOpSymbol.hh (getCachedStateObject): added DebugAdvisory()

===================================Maude112===========================================

2017-03-14  Steven Eker  <eker@install.csl.sri.com>

	* metaNewNarrow.cc (metaNarrowingSearch): reverted use of
	upNarrowingSearchResult()

	* metaLevel.hh (M): reverted decl for upNarrowingSearchResult()

	* metaUp.cc (upNarrowingSearchResult): reverted

	* metaNewNarrow.cc (metaNarrowingSearch): use new upNarrowingSearchResult()
	convention

	* metaLevel.hh (M): updated decl for upNarrowingSearchResult()

	* metaUp.cc (upNarrowingSearchResult): changed order of arguments

	* metaDown.cc (downParameterDecl): check that parameter type is legal
	and issue advisory otherwise

2017-03-10  Steven Eker  <eker@install.csl.sri.com>

	* metaNarrow.cc (metaNarrow, metaNarrow2): transfer count

2017-03-09  Steven Eker  <eker@install.csl.sri.com>

	* metaLevelOpSymbol.hh (FreeSymbol): deleted decls for
	getCachedNarrowingSearchState2() and getCachedNarrowingSequenceSearch2()

	* metaNewNarrow.cc (metaNarrowingSearch): use getCachedStateObject()
	function template
	(metaNarrowingApply): use use getCachedStateObject() function template
	(getCachedNarrowingSearchState2): deleted
	(getCachedNarrowingSequenceSearch2): deleted

2017-03-08  Steven Eker  <eker@install.csl.sri.com>

	* metaLevelOpSymbol.hh (getCachedStateObject): added function
	template

	* metaLevelOpSymbol.hh (FreeSymbol): old makeNarrowingSequenceSearch2()
	becomes makeNarrowingSequenceSearchAlt()

	* metaNarrow.cc (makeNarrowingSequenceSearch2): changed to
	makeNarrowingSequenceSearchAlt()
	(metaNarrow2): use makeNarrowingSequenceSearchAlt()

	* metaNewNarrow.cc (metaNarrowingSearch): implemented

	* metaLevelOpSymbol.hh (FreeSymbol): added decl for makeNarrowingSearchState2()

	* metaNewNarrow.cc (makeNarrowingSearchState2): added

	* metaNarrow.cc (makeNarrowingSequenceSearch): fix out of date comments

	* metaLevelOpSymbol.hh (FreeSymbol): added decl for
	getCachedNarrowingSequenceSearch2()

	* metaNewNarrow.cc (getCachedNarrowingSequenceSearch2): added

2017-03-07  Steven Eker  <eker@install.csl.sri.com>

	* metaLevel.hh (M): updated decl for upNarrowingSearchResult()

	* metaUp.cc (upNarrowingSearchResult): changed unifier argument
	from Substitution& to Vector<DagNode*>&

2017-02-06  Steven Eker  <eker@install.csl.sri.com>

	* metaLevel.hh (M): added decl for upNarrowingSearchResult()

	* metaUp.cc (upNarrowingSearchResult): added

	* metaLevel.hh (M): added decl for upNarrowingSearchFailure()

	* metaUp.cc (upNarrowingSearchFailure): added

	* metaLevelSignature.cc: delete failureIncomplete4Symbol; add
	back narrowingSearchResultSymbol, narrowingSearchFailureSymbol,
	narrowingSearchFailureIncompleteSymbol

2017-02-03  Steven Eker  <eker@install.csl.sri.com>

	* metaLevelSignature.cc: added failureIncomplete4Symbol; deleted
	narrowingSearchResultSymbol, narrowingSearchFailureSymbol,
	narrowingSearchFailureIncompleteSymbol

	* metaNewNarrow.cc (metaNarrowingSearch): added stub

	* metaLevelSignature.cc: added narrowingSearchResultSymbol,
	narrowingSearchFailureSymbol, narrowingSearchFailureIncompleteSymbol

	* descentSignature.cc: added metaNarrowingSearch

	* metaNewNarrow.cc (getCachedNarrowingSearchState2)
	(makeNarrowingSearchState2, metaNarrowingApply): moved here

===================================Maude111b===========================================

2017-01-03  Steven Eker  <eker@install.csl.sri.com>

	* metaNarrow.cc (metaNarrowingApply): use new getNarrowedDag()
	semantics

===================================Maude111a===========================================

2016-12-19  Steven Eker  <eker@install.csl.sri.com>

	* metaNarrow.cc (metaNarrowingApply): transfer counts from
	state context to context
	(metaNarrowingApply): call incrementNarrowingCount() if we
	make an actual narrowing step

2016-12-16  Steven Eker  <eker@install.csl.sri.com>

	* metaNarrow.cc (metaNarrowingApply): added trace and
	abort support
	(metaNarrowingApply): use getActiveContext()
	(metaNarrowingApply): use getActiveVariableInfo()
	(metaNarrowingApply): don't trace if we didn't actually
	make a narrowing step (i.e. we got the result from cache)

2016-12-15  Steven Eker  <eker@install.csl.sri.com>

	* metaNarrow.cc (makeNarrowingSearchState2): fail if the variable
	family isn't recognized

2016-12-13  Steven Eker  <eker@install.csl.sri.com>

	* metaNarrow.cc (metaNarrowingApply): fix bug where we weren't
	deleting resutlContext

2016-12-12  Steven Eker  <eker@install.csl.sri.com>

	* metaLevel.hh (M): updated decl fo upFailureTriple()

	* metaUp.cc (upFailureTriple): handle incomplete argument

	* metaNarrow.cc (metaNarrow): call isIncomplete(),
	pass to upFailureTriple()

	* metaLevelSignature.cc: added failureIncomplete3Symbol

	* metaNarrow.cc (metaNarrowingApply): call isIncomplete()

2016-12-09  Steven Eker  <eker@install.csl.sri.com>

	* metaNarrow.cc (metaNarrowingApply): updated comment to
	reflect switched args

	* metaUp.cc (upNarrowingResult): switched args

	* metaLevel.hh (M): updated decl for upNarrowingResult()

	* metaUp.cc (upNarrowingResult): new calling convention

	* metaNarrow.cc (metaNarrowingApply): make metaContext first and
	then reduce narrowedDag

	* metaApply.cc (metaXapply): added comment about dagNodeMap

	* metaNarrow.cc (makeNarrowingSearchState2): reduce subject
	before passing it to NarrowingSearchState2()

2016-12-08  Steven Eker  <eker@install.csl.sri.com>

	* metaNarrow.cc (makeNarrowingSearchState2): implemented

2016-12-07  Steven Eker  <eker@install.csl.sri.com>

	* metaLevelOpSymbol.hh (FreeSymbol): added decl for
	makeNarrowingSearchState2()

	* metaNarrow.cc (makeNarrowingSearchState2): added stub

	* metaUp.cc (upSubstitution): reverted old NarrowingVariableInfo
	version
	(upNarrowingResult): don't pass firstTargetSlot, nrTargetVariables
	to upSubstitution()

	* metaLevel.hh (M): added decl for new upSubstitution();
	reverted decl for old upSubstitution()

	* metaUp.cc (upSubstitution): added new version

	* metaLevelOpSymbol.hh (FreeSymbol): added decl for
	getCachedNarrowingSearchState2()

	* metaNarrow.cc (getCachedNarrowingSearchState2): added

2016-12-06  Steven Eker  <eker@install.csl.sri.com>

	* metaLevel.hh (M): added decls for upNarrowingResult() and
	upNarrowingFailure()

	* metaUp.cc (upNarrowingResult): added
	(upNarrowingFailure): added

	* metaLevel.hh (M): updated decl for upSubstitution()

	* metaUp.cc (upSubstitution): added offset argument

2016-11-23  Steven Eker  <eker@install.csl.sri.com>

	* metaNarrow.cc (metaNarrowingApply): added stub

	* metaLevelSignature.cc: added narrowingResultSymbol, narrowingFailureSymbol,
	narrowingFailureIncompleteSymbol

2016-11-01  Steven Eker  <eker@install.csl.sri.com>

	* metaVariant.cc (metaVariantUnify2): pass dummy variableFamily to
	getNextUnifier()

===================================Maude111===========================================

2016-05-17  Steven Eker  <eker@install.csl.sri.com>

	* descentFunctions.cc (metaCheck): call normalize() and markEager()
	before dagifying term
	(metaCheck): don't bother with markEager()

===================================Maude110===========================================

2016-02-04  Steven Eker  <eker@install.csl.sri.com>

	* metaUp.cc (upVariant): fix arg vector size

	* metaVariant.cc (metaGetVariant2): use new getNextVariant() interface

2016-02-03  Steven Eker  <eker@install.csl.sri.com>

	* metaVariant.cc (metaGetVariant2): pass 2 dummy args to upVariant() for
	the moment

	* metaLevel.hh (M): updated decl for upVariant()

	* metaUp.cc (upVariant): handle parentIndex and moreInLayer flag

2016-01-29  Steven Eker  <eker@install.csl.sri.com>

	* metaLevelSignature.cc: added noParentSymbol; updated
	variantSymbol

===================================Maude109===========================================

2015-08-21  Steven Eker  <eker@ape.csl.sri.com>

	* metaVariant.cc (metaGetVariant2): fix a bug where we were
	passing the irredundant flag as the unificationMode argument with
	resulting chaos in the metaGetIrredundantVariant() case
	(metaVariantUnify2): don't rely on default value for last argument
	of VariantSearch()

2015-08-14  Steven Eker  <eker@ape.csl.sri.com>

	* metaLevel.hh (M): updated decl for upNoVariant()

	* metaUp.cc (upNoVariant): handle incomplete flag

	* metaVariant.cc (metaVariantUnify2): pass incomplete flag to
	upNoUnifierTriple() and upNoUnifierPair()
	(metaGetVariant2): pass incomplete flag to upNoVariant()

	* metaLevelSignature.cc: added noVariantIncompleteSymbol

2015-07-23  Steven Eker  <eker@ape.csl.sri.com>

	* metaUnify.cc (metaUnify2): pass incomplete flag to
	upNoUnifierTriple() and upNoUnifierPair()

	* metaUp.cc (upNoUnifierPair, upNoUnifierTriple): handle
	incomplete flag

	* metaLevel.hh (M): updated decls for upNoUnifierPair() and
	upNoUnifierTriple()

	* metaLevelSignature.cc: added noUnifierIncompletePairSymbol and
	noUnifierIncompleteTripleSymbol

===================================Maude108===========================================

2015-02-23  Steven Eker  <eker@ape.csl.sri.com>

	* metaVariant.cc (getCachedVariantSearch): revert, now that we
	have a way of getting last returned variant/unifier
	(metaGetVariant2): use getLastReturnedVariant()
	(metaVariantUnify2): use getLastReturnedUnifier()

2015-01-05  Steven Eker  <eker@ape.csl.sri.com>

	* metaVariant.cc (getCachedVariantSearch): fix bug where we were
	returning a cached state where lastSolutionNr < solutionNr even
	though the code that uses the state doens't seem to be able to
	handle this case

===================================Maude106===========================================

2014-11-18  Steven Eker  <eker@ape.csl.sri.com>

	* metaUnify.cc (metaUnify2): use DebugAdvisory()

	* metaVariant.cc (metaVariantUnify2, metaGetVariant2): use
	DebugAdvisory()

===================================Maude106===========================================

2014-10-29  Steven Eker  <eker@ape.csl.sri.com>

	* metaSearch.cc (makeSMT_RewriteSequenceSearch): check that search
	type isn't =>!
	(getCachedSMT_RewriteSequenceSearch): use getRootContext() to
	patch potentially state parent pointer

2014-10-28  Steven Eker  <eker@ape.csl.sri.com>

	* metaLevelOpSymbol.hh (FreeSymbol):
	getCachedSMT_RewriteSearchState() ->
	getCachedSMT_RewriteSequenceSearch()
	(FreeSymbol): makeSMT_RewriteSearchState() ->
	makeSMT_RewriteSequenceSearch()

	* metaSearch.cc (getCachedSMT_RewriteSearchState): becomes
	getCachedSMT_RewriteSequenceSearch()
	(metaSmtSearch): rewritten
	(makeSMT_RewriteSearchState): becomes 

2014-10-27  Steven Eker  <eker@ape.csl.sri.com>

	* metaLevel.hh (M): added decl for upSmtSubstitution(); updated
	decl for upSmtResult()

	* metaUp.cc (upSmtResult): new 4 arg value
	(upSmtSubstitution): created

	* metaLevelSignature.cc: updated nr args for smtResultSymbol

	* descentSignature.cc: updated metaSmtSearch nr args

2014-09-29  Steven Eker  <eker@ape.csl.sri.com>

	* metaSearch.cc (makeSMT_RewriteSearchState): pass
	VariableGenerator object to SMT_RewriteSearchState by pointer
	rather than reference

===================================Maude105===========================================

2014-09-26  Steven Eker  <eker@ape.csl.sri.com>

	* metaSearch.cc (makeSMT_RewriteSearchState): new
	SMT_RewriteSearchState ctor convention
	(metaSmtSearch): use getMaxVariableNumber() instead of
	getNextVariableNumber()
	(metaSmtSearch): call validForSMT_Rewriting()

2014-09-25  Steven Eker  <eker@ape.csl.sri.com>

	* metaVariant.cc (metaVariantUnify2): check solutionNr >= 0
	(getCachedVariantSearch): don't check solutionNr > 0

	* metaNarrow.cc (getCachedNarrowingSequenceSearch): don't check
	solutionNr > 0

	* metaApply.cc (metaXapply, metaApply): check solutionNr >= 0
	(getCachedRewriteSearchState): don't check solutionNr > 0; fix
	comment about context adoption

	* metaMatch.cc (metaMatch): check solutionNr >= 0
	(getCachedMatchSearchState): don't check solutionNr > 0; fix
	comment about context adoption

	* metaUnify.cc (metaUnify2): check solutionNr >= 0
	(getCachedUnificationProblem): don't check solutionNr > 0

	* metaSearch.cc (getCachedRewriteSequenceSearch): allow retrieval
	of solution number 0 and allow retrieval of solution number equal
	to the wanted solution number
	(getCachedRewriteSequenceSearch): don't test for solutionNr >= 0
	since caller checks this
	(getCachedSMT_RewriteSearchState): don't test for solutionNr >= 0;
	use <= for lastSolutionNr check
	(getCachedSMT_RewriteSearchState): adopt context from cachedState
	to avoid stale parent pointer

2014-09-24  Steven Eker  <eker@ape.csl.sri.com>

	* metaSearch.cc (makeSMT_RewriteSearchState): pass extra args to
	SMT_RewriteSearchState()
	(makeSMT_RewriteSearchState, getCachedSMT_RewriteSearchState):
	added DebugAdvisory()s

2014-09-23  Steven Eker  <eker@ape.csl.sri.com>

	* metaLevel.hh (M): added declarations for upSmtResult() and
	upSmtFailure()

	* metaUp.cc (upSmtFailure): added
	(upSmtResult): added

	* metaLevelOpSymbol.hh (FreeSymbol): added decls for
	getCachedSMT_RewriteSearchStat() and
	makeSMT_RewriteSearchState()

	* metaSearch.cc (getCachedSMT_RewriteSearchState): added
	(makeSMT_RewriteSearchState): added

2014-09-22  Steven Eker  <eker@ape.csl.sri.com>

	* metaSearch.cc (metaSmtSearch): added stub

	* descentSignature.cc: added metaSmtSearch

	* metaLevelSignature.cc: added smtResultSymbol and
	smtFailureSymbol

2014-09-10  Steven Eker  <eker@ape.csl.sri.com>

	* descentFunctions.cc (metaDownTerm): rewritten using new
	VariableGenerator semantics

2014-08-11  Steven Eker  <eker@ape.csl.sri.com>

	* metaDown.cc (downTerm): use SMT_Info rather SMT_Base

	* descentFunctions.cc (metaCheck): use smtInfo rather than sortMap

2014-07-30  Steven Eker  <eker@ape.csl.sri.com>

	* descentFunctions.cc (metaCheck): rewritten using VariableGenerator

2014-07-01  Steven Eker  <eker@ape.csl.sri.com>

	* metaDown.cc (downPrintListItem): commented out IssueAdvisory()
	since downType2() already does this
	(downTerm): (2 places) commented out IssueAdvisory() since
	downType2() already does this

===================================Maude104===========================================

2014-06-04  Steven Eker  <eker@ape.csl.sri.com>

	* descentFunctions.cc (metaCheck): deleted commented out code
	(metaCheck): use QUOTE() in advisories

2014-06-03  Steven Eker  <eker@ape.csl.sri.com>

	* metaUp.cc (upSMT_Number): use getRangeSort()

	* descentFunctions.cc (metaCheck): use getRangeSort()

2014-05-21  Steven Eker  <eker@ape.csl.sri.com>

	* descentFunctions.cc (metaCheck): fix memory leak if we return
	early

2014-05-20  Steven Eker  <eker@ape.csl.sri.com>

	* descentFunctions.cc (metaCheck): implemented
	(metaCheck): added check for null Expr and advisories
	(metaCheck): deepSelfDestruct() term

	* descentSignature.cc: added metaCheck

	* descentFunctions.cc (metaCheck): added stub

2014-05-19  Steven Eker  <eker@ape.csl.sri.com>

	* metaLevel.hh (M): added decl for upSMT_Number()

	* metaUp.cc (upDagNode): added SMT_NUMBER_SYMBOL case
	(upTerm): added SMT_NUMBER_SYMBOL case
	(upSMT_Number): added

2014-05-16  Steven Eker  <eker@ape.csl.sri.com>

	* descentFunctions.cc (metaDownTerm): output advisory when term is
	in the wrong kind

2014-05-15  Steven Eker  <eker@ape.csl.sri.com>

	* metaDown.cc (downTerm): added cases for SMT integers and reals
	(downTerm): need to capture ZERO case as well

===================================Maude103===========================================

2014-03-03  Steven Eker  <eker@ape.csl.sri.com>

	* metaLevelOpSymbol.hh (FreeSymbol): added decl for metaGetVariant2()

	* metaVariant.cc (metaGetVariant2): renamed from metaGetVariant();
	handle irredundant argument
	(metaGetIrredundantVariant): added
	(metaGetVariant): use metaGetVariant2()

	* descentSignature.cc: added metaGetIrredundantVariant

===================================Maude101===========================================

2014-02-06  Steven Eker  <eker@ape.csl.sri.com>

	* metaVariant.cc (metaGetVariant, metaVariantUnify2): added
	Asserts() on solutionNr
	(metaVariantUnify, metaVariantDisjointUnify): removed stub code
	(metaVariantUnify2): removed commented out code

	* metaMatch.cc (makeMatchSearchState2): return 0 rather than false
	in fail case

	* metaUpModule.cc (upGather): initialize s to avoid warning

===================================Maude100a===========================================

2012-07-31  Steven Eker  <eker@ape.csl.sri.com>

	* metaVariant.cc (metaVariantUnify2): use upUnificationTriple(),
	upUnificationPair()

	* metaLevel.hh (M): added decls for 4 new narrow up functions

	* metaUp.cc (upSubstitution): added narrowing version
	(upUnificationPair): added narrowing version
	(upVariant): use upSubstitution()
	(upUnificationTriple): added narrowing version
	(upDisjointSubstitutions): added narrowing version

2012-07-30  Steven Eker  <eker@ape.csl.sri.com>

	* metaLevelOpSymbol.hh (FreeSymbol): added decl for
	metaVariantUnify2()

	* metaVariant.cc (metaVariantUnify2): added

	* descentSignature.cc: updated metaVariantUnify() and
	metaVariantDisjointUnify()

2012-07-23  Steven Eker  <eker@ape.csl.sri.com>

	* metaVariant.cc (metaGetVariant): call normalize() on blocker
	terms to set hash values

2012-07-20  Steven Eker  <eker@ape.csl.sri.com>

	* metaVariant.cc (metaGetVariant): convert blocker terms to
	blocket dags

	* metaUp.cc (upUnificationTriple): fix bug where we weren't
	handling the singleton substitution case

	* metaLevel.hh (M): make downTermList() public

	* metaUp.cc (upUnificationTriple): switch term and substituion args

	* metaDown.cc (downTerm): don't allow meta term syntax with empty
	argument list
	(downTermList): allow empty term lists

	* metaLevelSignature.cc: added emptyTermListSymbol

	* metaVariant.cc (metaGenerateVariant): becomes metaGetVariant()

	* descentSignature.cc: replaced metaGenerateVariant() by
	metaGetVariant()

2012-07-18  Steven Eker  <eker@ape.csl.sri.com>

	* metaVariant.cc (metaGenerateVariant): pass blocker dags to VariantSearch

===================================Maude96a===========================================

2012-05-22  Steven Eker  <eker@ape.csl.sri.com>

	* metaVariant.cc (metaGenerateVariant): rewritten

	* metaLevel.hh (M): updated decl for upVariant()
	(M): added decl for DagNode* version of upAssignment()

	* metaUp.cc (upAssignment): added DagNode* version
	(upUnificationTriple): rewritten

2012-05-21  Steven Eker  <eker@ape.csl.sri.com>

	* metaVariant.cc (getCachedVariantSearch): added

2012-05-03  Steven Eker  <eker@ape.csl.sri.com>

	* metaUpModule.cc (upStatementAttributes): handle variant attribute

	* metaDown.cc (downStatementAttr): handle variantAttrSymbol
	(downEquation): handle variant flag

	* metaLevel.hh (M): added VARIANT to enum Flags

	* metaLevelSignature.cc: added variantSymbol

2012-03-28  Steven Eker  <eker@ape.csl.sri.com>

	* descentSignature.cc: metaGenerateVariant() only takes 4 arguments

2012-03-09  Steven Eker  <eker@ape.csl.sri.com>

	* metaVariant.cc: created with stub functions

	* descentSignature.cc: added metaGenerateVariant,
	metaVariantUnify, metaVariantDisjointUnify

	* metaLevel.hh (M): added decls for upVariant() and upNoVariant()

	* metaUp.cc (upVariant): added
	(upNoVariant): added

	* metaLevelSignature.cc: added variantSymbol and noVariantSymbol

	* metaLevel.hh (M): deleted declarations for
	upNoUnifierContextTriple() and upNoUnifierContext4Tuple()

	* metaUp.cc (upNoUnifierContextTriple): deleted
	(upNoUnifierContext4Tuple): deleted

	* metaLevelSignature.cc: deleted noUnifierContextTripleSymbol,
	noUnifierContext4TupleSymbol, unificationContextTripleSymbol, unificationContext4TupleSymbol

	* metaLevel.hh (M): deleted declarations for
	upUnificationContextTriple() and upUnificationContext4Tuple()

	* metaUp.cc (upUnificationContextTriple): deleted - unification
	with extension isn't going to fly
	(upUnificationContext4Tuple): deleted

===================================Maude96===========================================

2010-10-20  Steven Eker  <eker@rho>

	* metaModuleCache.hh (Entity::User): added enum Sizes

	* metaModuleCache.cc (MetaModuleCache::MetaModuleCache): no longer
	take arg
	(MetaModuleCache::MetaModuleCache): don't take argument; use
	getenv() to see if user set a custom maxSize

	* metaModuleCache.hh (Entity::User): made maxSize static rather
	than const
	(Entity::User): ctor no longer takes arg

===================================Maude95a===========================================

2010-10-06  Steven Eker  <eker@rho>

	* metaDownRenamings.cc (MetaLevel::downModuleExpression): new
	makeSummation() convention for bad modules
	(MetaLevel::downModuleExpression): new makeRenamedCopy()
	convention for bad modules

2010-10-05  Steven Eker  <eker@rho>

	* metaDownRenamings.cc (MetaLevel::downModuleExpression): new
	makeInstatiation() convention for bad modules

2010-08-12  Steven Eker  <eker@rho>

	* metaDownFixUps.cc (MetaLevel::downOpHook): use downOpName()
	instead of downQid() for operator name

	* metaDown.cc (MetaLevel::downTerm): use downOpName() instead of
	downQid() for operator name

	* descentFunctions.cc (MetaLevelOpSymbol::metaMaximalAritySet):
	use downOpName() instead of downQid()

	* metaLevel.hh (class MetaLevel): added decl for downOpName()

	* metaDown.cc (MetaLevel::downQid): use
	Token::unBackQuoteSpecials() after all since metaParser want '`,
	to be downed to ,
	(MetaLevel::downOpName): added

2010-08-10  Steven Eker  <eker@rho>

	* metaDown.cc (MetaLevel::downQid): don't use
	Token::unBackQuoteSpecials()

2010-07-13  Steven Eker  <eker@rho>

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decls for insertView() and showView()

	* interpreterSignature.cc: added insertViewMsg/insertedViewMsg and
	showViewMsg/showingViewMsg

2010-07-06  Steven Eker  <eker@rho>

	* descentFunctions.cc (MetaLevelOpSymbol::metaDownTerm): fix bug
	where we were not checking the component of the down'd term

===================================Maude94a===========================================

2010-06-11  Steven Eker  <eker@rho>

	* metaUpView.cc (MetaLevel::upOpMappings): fix bug where we were
	using the wrong modules to up the lhs and rhs of an op->term
	mapping

===================================Maude94===========================================

2010-05-07  Steven Eker  <eker@rho>

	* metaLevel.hh (class MetaLevel): updated decl for upHeader()

	* metaUpModule.cc (MetaLevel::upHeader): handle flat argument
	(MetaLevel::upModule): pass flag arg to upHeader

===================================Maude93d===========================================

2010-05-05  Steven Eker  <eker@rho>

	* metaUpView.cc (MetaLevel::upOpMappings): fixed bug where we
	using sort mapping set constructors rather than the op mapping
	ones

2010-04-30  Steven Eker  <eker@rho>

	* metaDown.cc (MetaLevel::downParameterDecl): fix bug by passing m
	rather than 0 as enclosingModule to downModuleExpression()

===================================Maude93b===========================================

2009-11-06  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): updated ctor

	* metaLevelOpSymbol.cc (complexStrategy): added
	(eqRewrite): use complexStrategy()
	(MetaLevelOpSymbol): take and pass strategy

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): added decl for
	complexStrategy()

2009-11-02  Steven Eker  <eker@goo.csl.sri.com>

	* metaMatch.cc (makeMatchSearchState): added DebugAdvisory() to
	investigate performance problem

===================================Maude92a===========================================

2009-08-24  Steven Eker  <eker@goo.csl.sri.com>

	* meta.hh: added class InterpreterManagerSymbol

2009-08-20  Steven Eker  <eker@goo.csl.sri.com>

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for frewriteTerm()

	* interpreterManagerSymbol.cc (frewriteTerm): added
	(handleMessage): handle frewriteTermMsg

	* interpreterSignature.cc: added frewriteTermMsg, frewroteTermMsg

2009-08-11  Steven Eker  <eker@goo.csl.sri.com>

	* metaUpView.cc (upView): call upOpMappings()

	* metaLevel.hh (class MetaLevel): added decl for upOpMappings()

	* metaUpView.cc (upOpMappings): added

	* metaLevelSignature.cc (MACRO): op mappings don't take
	attributes!

2009-08-07  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): added decl for upSortMappings()

	* metaUpView.cc (upSortMappings): added

	* ascentFunctions.cc (metaUpView): added

	* descentSignature.cc (MACRO): added metaUpView

	* metaUpView.cc: created

	* metaLevel.hh (class MetaLevel): added decl for upView()

2009-08-06  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevelSignature.cc (MACRO): added sort/op mapping ctors, view
	ctor

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for showModule()

	* interpreterManagerSymbol.cc (showModule): added
	(handleMessage): hande showModuleMsg

2009-08-05  Steven Eker  <eker@goo.csl.sri.com>

	* interpreterSignature.cc (MACRO): added showModuleMsg,
	showingModuleMsg

2009-03-06  Steven Eker  <eker@goo.csl.sri.com>

	* interpreterManagerSymbol.cc (rewriteTerm): added
	(handleMessage): support rewriteTermMsg

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for rewriteTerm()

2009-02-26  Steven Eker  <eker@goo.csl.sri.com>

	* interpreterSignature.cc (MACRO): added quitMsg, byeMsg

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decls for quit() and deleteInterpreter()

	* interpreterManagerSymbol.cc (quit): added
	(cleanUp): implemented
	(deleteInterpreter): added

2009-02-20  Steven Eker  <eker@goo.csl.sri.com>

	* metaPreModule.hh (class MetaPreModule): added decl for dtor

	* metaPreModule.cc (getFlatModule): use new downModule()
	convention; call addUser()
	(~MetaPreModule): added

	* metaLevel.hh (class MetaLevel): updated decl for downModule()

	* metaDown.cc (downModule): take cacheMetaModule argument

2009-02-19  Steven Eker  <eker@goo.csl.sri.com>

	* interpreterManagerSymbol.cc (reduceTerm): use upNat()

	* metaLevel.hh (upNat): added

	* interpreterManagerSymbol.cc (reduceTerm): added

	* interpreterManagerSymbol.hh (class InterpreterManagerSymbol):
	added decl for reduceTerm()

	* metaPreModule.cc: created

	* metaPreModule.hh (class MetaPreModule): created

	* interpreterManagerSymbol.cc (insertModule): make a MetaPreModule

	* metaModule.cc (MetaModule): init VisibleModule

	* metaModule.hh (class MetaModule): derive from VisibleModule
	instead of ImportModule

	* meta.hh: added class MetaPreModule

2009-02-12  Steven Eker  <eker@goo.csl.sri.com>

	* metaUpModule.cc: revert to PreModule

	* metaDownRenamings.cc: revert to PreModule

	* metaLevel.hh: revert to PreModule

	* ascentFunctions.cc: revert to PreModule

	* metaUpModule.cc: PreModule -> SyntacticPreModule

	* metaDownRenamings.cc: PreModule -> SyntacticPreModule

	* metaDownOps.cc: PreModule -> SyntacticPreModule

	* ascentFunctions.cc: PreModule -> SyntacticPreModule

	* metaLevel.hh: PreModule -> SyntacticPreModule

2009-02-05  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownRenamings.cc (downModuleExpression): don't access global
	interpreter variable (5 places)

	* metaLevel.hh (class MetaLevel): update decl for downModule()

	* metaDown.cc (downParameterDecl): use a modules owner rather than
	interpreter global variable

	* metaModule.cc (MetaModule): init owner data member

	* metaModule.hh (class MetaModule): added owner data member;
	updated decl for ctor
	(getOwner): added

2009-01-29  Steven Eker  <eker@goo.csl.sri.com>

	* interpreterManagerSymbol.hh: created

	* interpreterManagerSymbol.cc: created

	* metaLevelOpSymbol.hh (getMetaLevel): added

	* metaLevelOpSymbol.cc (eqRewrite): Assert() that metaLevel is not
	0 rather than testing it since this should be set in
	postInterSymbolPass()

===================================Maude92===========================================

2008-09-12  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (downOpDecl): added a check to see of we are
	subsort overloading an operator from one of our parameters

2008-09-11  Steven Eker  <eker@goo.csl.sri.com>

	* ascentFunctions.cc (metaUpImports): deleted decl for unused
	variable flat

	* metaDownRenamings.cc (downModuleExpression): avoid sign/unsigned
	comparison warning

2008-08-27  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): updated decls for
	downStatementAttrSet(), downStatementAttr(), downPrintList(),
	downPrintListItem()

	* metaDown.cc (downMembAx): use StatementAttributeInfo
	(downEquation): use StatementAttributeInfo
	(downRule): use StatementAttributeInfo
	(downStatementAttrSet, downStatementAttr, downStatementAttr)
	(downPrintList): use StatementAttributeInfo
	(downStatementAttr): disallow multiple print attributes

	* metaLevel.hh (StatementAttributeInfo): added
	(class MetaLevel): added class StatementAttributeInfo

2008-08-26  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): updated decls for
	downStatementAttrSet(), downStatementAttr(); added decls for
	downPrintList(), downPrintListItem()
	(class MetaLevel): added PRINT to enum Flags

	* metaDown.cc (downStatementAttrSet, downStatementAttr): take
	printNames, printSorts
	(downPrintList, downPrintListItem): added
	(downStatementAttrSet, downStatementAttr): take MixfixModule*
	(downMembAx): support print attribute
	(downEquation): support print attribute
	(downRule): support print attribute

	* metaUpModule.cc (upStatementAttributes): support print attribute

	* metaLevelSignature.cc (MACRO): added printSymbol

===================================Maude91a===========================================

2008-03-23  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): deleted decl for
	metaXunify2()

	* metaUnify.cc (metaXunify2): deleted
	(metaXunify): deleted
	(metaDisjointXunify): deleted

	* descentSignature.cc (MACRO): removed metaXunify and metaDisjointXunify

===================================Maude90a===========================================

2008-01-22  Steven Eker  <eker@goo.csl.sri.com>

	* metaUnify.cc (metaUnify2): added debug advisories to try and
	discover unification problem that is causing infinite looping

	* descentSignature.cc (MACRO): metaNarrow2 now has 6 arguments

	* metaNarrow.cc (metaNarrow2): solution # is now arg 5
	(makeNarrowingSequenceSearch2): handle bool arg

2008-01-21  Steven Eker  <eker@goo.csl.sri.com>

	* metaNarrow.cc (makeNarrowingSequenceSearch)
	(makeNarrowingSequenceSearch2): pass flags arg to
	NarrowingSequenceSearch()

===================================Maude90===========================================

2007-12-07  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.cc (MetaLevel): need to clear variableGenerator in
	renaming version of constructor

2007-12-05  Steven Eker  <eker@goo.csl.sri.com>

	* metaUp.cc (upVariable): deleted variable mapping code

	* metaNarrow.cc (metaNarrow2): correct variableBase by
	m->getMinimumSubstitutionSize()

	* metaLevel.hh (class MetaLevel): data member variableCounter
	replaced by variableBase
	(startVariableMapping): variableCounter replaced by variableBase

	* metaUp.cc (upDagNode): do variable name mapping here based on
	the index in the VariableDagNode

2007-12-04  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (startVariableMapping, stopVariableMapping): added

	* metaUp.cc (upVariable): handle variable mapping

	* metaLevel.cc (MetaLevel): clear variableGenerator

	* metaLevel.hh (class MetaLevel): added data members
	variableCounter and variableGenerator

	* metaNarrow.cc (makeNarrowingSequenceSearch2): don't bother with
	Bool argument or setVariableCounter()

	* metaLevelSignature.cc (MACRO): added failure2Symbol

	* metaLevel.hh (class MetaLevel): added decl for upFailurePair()

	* metaUp.cc (upFailurePair): added

	* descentSignature.cc (MACRO): added metaNarrow2

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): added decl for
	makeNarrowingSequenceSearch2()

	* metaNarrow.cc (makeNarrowingSequenceSearch): comment out dead
	code
	(makeNarrowingSequenceSearch2): added
	(metaNarrow2): added

2007-11-30  Steven Eker  <eker@goo.csl.sri.com>

	* metaApply.cc (getCachedRewriteSearchState): use new
	remove() semantics; changed test from < to <=

	* metaMatch.cc (getCachedMatchSearchState): use new
	remove() semantics; changed test from < to <=

2007-11-29  Steven Eker  <eker@goo.csl.sri.com>

	* metaNarrow.cc (getCachedNarrowingSequenceSearch): use new
	remove() semantics; changed test from < to <=

	* metaUnify.cc (getCachedUnificationProblem): use new remove()
	semantics 

	* metaOpCache.cc (remove): collapse 4 versions to a single
	simplified version
	(clear): make local_inline

	* metaOpCache.hh (class MetaOpCache): replaced decls for insert()
	and remove()

	* metaOpCache.cc (clear): simplified
	(insert): collapse 4 versions to a single simplified version

	* metaOpCache.hh (class MetaOpCache): use CachableState* rather
	than the various specialized classes in struct Item

2007-11-27  Steven Eker  <eker@goo.csl.sri.com>

	* metaUnify.cc (getCachedUnificationProblem): changed test from <
	to <=

	* metaOpCache.cc (insert): fix failure to clear unused entries bug
	in all four versions

	* metaOpCache.hh (class MetaOpCache): bumped default cache size to 40

	* metaUnify.cc (metaUnify2): added DebugAdvisoryCheck() to report
	unexpected jumps in solution number

2007-11-19  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): added decls for
	getCachedNarrowingSequenceSearch() and
	makeNarrowingSequenceSearch()

	* metaNarrow.cc: created

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): updated decl for
	downSearchType()

	* metaSearch.cc (downSearchType): use SequenceSearch in place of
	RewriteSequenceSearch

	* metaOpCache.hh (class MetaOpCache): added narrowingSearch to
	struct Item

	* metaOpCache.cc (insert, remove): added NarrowingSequenceSearch*
	versions
	(clear): delete narrowingSearch

	* metaOpCache.hh (class MetaOpCache): added declarations for
	NarrowingSequenceSearch* versions of insert() and remove()

	* descentSignature.cc (MACRO): added metaNarrow

2007-10-11  Steven Eker  <eker@goo.csl.sri.com>

	* metaUnify.cc (metaUnify2): use getVariableInfo()
	(metaXunify2): use getVariableInfo()

===================================Maude89h===========================================

2007-08-24  Steven Eker  <eker@goo.csl.sri.com>

	* metaUnify.cc (metaXunify2): variablesOK() -> problemOK()
	(metaUnify2): variablesOK() -> problemOK()

	* metaUp.cc (upResultTriple, upResult4Tuple, upUnificationPair) 
	(upUnificationContextTriple, upMatchPair): upSubstition() ->
	upSubstitution()
	(upSubstition): becomes upSubstitution()

	* metaMatch.cc (metaMatch): upSubstition() -> upSubstitution()

	* metaLevel.hh (class MetaLevel): upSubstition() ->
	upSubstitution()

===================================Maude89g===========================================

2007-07-09  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.cc (MetaLevel): fix nasty bug where we weren't
	initializing flagVariables in the copy via SymbolMap ctor

2007-06-27  Steven Eker  <eker@goo.csl.sri.com>

	* metaUnify.cc (metaXunify2): pass disjoint arg to downTermPair()
	(metaUnify2): new downUnificationProblem() convention

	* metaDown.cc (downUnificationProblem): moved makeDisjoint arg

	* metaLevel.hh (class MetaLevel): deleted decl for
	downDisjointTermPair(); added makeDisjoint arg to downTermPair();
	moved makeDisjoint arg in downUnificandPair() and
	downUnificationProblem()

	* metaDown.cc (downUnificandPair): moved makeDisjoint arg to last
	place
	(downTermPair): added makeDisjoint arg
	(downDisjointTermPair): deleted

	* metaUnify.cc (metaXunify2): don't assume that left hand sides
	have had their sort information filled out

	* metaLevelSignature.cc (MACRO): added
	unificationContextTripleSymbol, unificationContext4TupleSymbol,
	noUnifierContextTripleSymbol, noUnifierContext4TupleSymbol

	* metaUnify.cc (metaXunify2): use upNoUnifierContext4Tuple(),
	upNoUnifierContextTriple(), upUnificationContext4Tuple(),
	upUnificationContextTriple()

	* metaLevel.hh (class MetaLevel): added decls for
	upNoUnifierContextTriple() and upNoUnifierContext4Tuple()

	* metaUp.cc (upNoUnifierContextTriple, upNoUnifierContext4Tuple):
	added

	* metaLevel.hh (class MetaLevel): added decls for
	upUnificationContextTriple() and upUnificationContext4Tuple()

	* metaUp.cc (upUnificationContextTriple) 
	(upUnificationContext4Tuple): added

	* descentSignature.cc (MACRO): added entries for metaUnify(),
	metaDisjointUnify()

	* metaUnify.cc (metaUnify, metaDisjointUnify, metaXunify2): added

2007-06-21  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): added decl for
	metaUnify2()

	* metaUnify.cc (metaUnify2): added
	(metaUnify, metaDisjointUnify): use metaUnify2()

2007-06-19  Steven Eker  <eker@goo.csl.sri.com>

	* descentSignature.cc (MACRO): updated nr args for metaUnify and
	metaDisjointUnify

	* metaUnify.cc (metaDisjointUnify, metaUnify): use
	downUnificationProblem()

	* metaLevel.hh (class MetaLevel): added decls for
	downUnificationProblem(), downUnificandPair()

	* metaDown.cc (downUnificationProblem, downUnificandPair): added

	* metaLevelSignature.cc (MACRO): added unificandPairSymbol and
	unificationConjunctionSymbol

	* metaUnify.cc (metaUnify, metaDisjointUnify): use new
	UnificationProblem() interface

2007-06-14  Steven Eker  <eker@goo.csl.sri.com>

	* metaUnify.cc (metaDisjointUnify, metaUnify): check variables and
	don't do a reduction if a variable is unsafe

	* descentSignature.cc (MACRO): updated entry for metaUnify()

	* metaUnify.cc (metaUnify): rewritten for new semantics

	* metaLevel.hh (class MetaLevel): added decls for
	upUnificationPair() and upNoUnifierPair()

	* metaUp.cc (upUnificationPair): added
	(upNoUnifierPair): added

	* metaLevelSignature.cc (MACRO): added unificationPairSymbol and
	noUnifierPairSymbol

2007-06-13  Steven Eker  <eker@goo.csl.sri.com>

	* metaUnify.cc (metaDisjointUnify): rewritten to respect bignum
	values for varIndex

	* metaLevel.hh (isNat, getNat): added

2007-06-11  Steven Eker  <eker@goo.csl.sri.com>

	* metaUnify.cc (metaDisjointUnify): new UnificationProblem() and
	FreshVariableSource() conventions

2007-06-08  Steven Eker  <eker@goo.csl.sri.com>

	* metaUnify.cc (metaDisjointUnify): pass variableIndex to
	upUnificationTriple()

	* metaLevel.hh (class MetaLevel): updated decl for
	upUnificationTriple()

	* metaUp.cc (upUnificationTriple): handle variableIndex arg

	* metaUnify.cc (metaDisjointUnify): pass variableIndex to
	UnificationProblem()

	* metaUp.cc (upVariable): use unflaggedCode()

2007-06-07  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): added decls for
	upUnificationTriple() and upDisjointSubstitutions()

	* metaUp.cc (upDisjointSubstitutions): added
	(upUnificationTriple): added

	* metaLevel.hh (class MetaLevel): added decl for
	upNoUnifierTriple()

	* metaUp.cc (upNoUnifierTriple): added

	* metaLevelSignature.cc (MACRO): added unificationTripleSymbol and
	noUnifierTripleSymbol

	* metaLevel.hh (class MetaLevel): added decl for
	downDisjointTermPair()

	* metaDown.cc (downTerm): support flagVariables flag
	(downDisjointTermPair): added

	* metaLevel.cc (MetaLevel): init flagVariables

	* metaLevel.hh (class MetaLevel): added flagVariables data member

	* metaUnify.cc (metaDisjointUnify): added

	* descentSignature.cc (MACRO): added metaDisjointUnify

===================================Maude89c===========================================

2007-02-13  Steven Eker  <eker@goo.csl.sri.com>

	* metaUnify.cc (metaUnify): use getSolution()

2007-01-17  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): added decl for new version of
	upConstant()

	* metaUp.cc (upDagNode): avoid calling getSort() in variable case
	(upConstant): added DagNode* version that handles the not
	calculated sort case possible with unification
	(upDagNode): use new version of upConstant()

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): added decl for
	getCachedUnificationProblem()

	* metaUnify.cc: created

	* metaOpCache.cc (insert, remove): added UnificationProblem
	versions
	(insert): (non-UnificationProblem versions) clear unification
	field
	(clear): handle unification field

	* metaOpCache.hh (class MetaOpCache): added function and data
	decls for UnificationProblem support

	* descentSignature.cc (MACRO): added entry for metaUnify()

2006-12-07  Steven Eker  <eker@goo.csl.sri.com>

	* metaMatch.cc (metaXmatch): pass UNDEFINED index to VariableDagNode()

===================================Maude88d===========================================

2006-11-15  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownRenamings.cc: IssueAdvisory()s in the case of an
	unusable or nonexistent module

===================================Maude88c===========================================

2006-10-26  Steven Eker  <eker@goo.csl.sri.com>

	* metaMatch.cc (metaXmatch): use new rebuildDag() semantics

	* metaApply.cc (metaXapply): use new rebuildDag() semantics to fix
	trace bug
	(metaApply): use new rebuildDag() semantics

===================================Maude88b===========================================

2006-10-05  Steven Eker  <eker@goo.csl.sri.com>

	* metaMatch.cc (makeMatchSearchState2): revert fix from 2005-02-16
	since requiring pattern and subject to be in the same component is
	too strong for metaXmatch()

2006-09-26  Steven Eker  <eker@goo.csl.sri.com>

	* metaUpModule.cc (upRenaming): fix bug where we weren't handling
	the single argument case

===================================Maude88a===========================================

2006-07-20  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (metaNormalize): added
	(metaNormalize): need to fill out sort info

	* descentSignature.cc (MACRO): added metaNormalize

===================================Maude88===========================================

2006-05-09  Steven Eker  <eker@goo.csl.sri.com>

	* metaSearch.cc (metaSearchPath): fix comment

===================================Maude87a===========================================

2006-01-23  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (metaRewrite): added DebugAdvisory()s

===================================Maude87===========================================

2005-11-28  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (downAttr): fix long standing bug where we were
	not setting PREC flag

===================================Maude86e===========================================

2005-11-16  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (metaLesserSorts): use downType() rather
	than downSimpleSort() to fix a bug
	(metaSortLeq): use downType() rather than downSimpleSort() (2
	places)

2005-11-14  Steven Eker  <eker@goo.csl.sri.com>

	* metaModuleCache.cc (regretToInform): fix longstanding bug where
	we moving cached pairs the wrong way after a deletion

===================================Maude86d===========================================

2005-09-20  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownRenamings.cc (downModuleExpression): allow bound
	parameters in modules that are to be renamed

2005-09-16  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownRenamings.cc (downModuleExpression): check for
	instantiation having both a PEM and a theory-view

2005-09-15  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownRenamings.cc: use parametersBound() rather than
	getNrBoundParameters()
	(downModuleExpression): use getNrParameters() rather than
	getNrFreeParameters()
	(downModuleExpression): use getParameterTheory() rather than
	getFreeParameterTheory() (2 places)

	* metaDown.cc (downImport): use parametersBound() and
	getNrParameters() rather than getNrFreeParameters()

2005-07-27  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownRenamings.cc (downModuleExpression): check bad flag in
	modules returned by interpreter member functions

2005-07-21  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): added decls for
	upParameterDecl(), upParameterDecls(), upHeader()

	* metaUpModule.cc (upParameterDecl, upParameterDecls, upHeader):
	added
	(upModule): use upHeader()

	* metaLevel.hh (class MetaLevel): added decl for upArguments()

	* metaUpModule.cc (upArguments): added
	(upModuleExpression): support instantiation

2005-07-20  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): added decls for downHeader(),
	downParameterDeclList(), downParameterDecl()

	* metaDown.cc (downModule): use safeCase()
	(downHeader): added
	(downParameterDeclList): added
	(downParameterDecl): added
	(downModule): handle parameter lists

	* metaLevelSignature.cc (MACRO): added headerSymbol,
	parameterDeclSymbol, parameterDeclListSymbol

	* metaDown.cc (downImport): check that we don't have free parameters

	* metaLevel.hh (class MetaLevel): added decl for
	downInstantiationArguments()

	* metaDownRenamings.cc (downModuleExpression): implemented
	instantiationSymbol case
	(downInstantiationArguments): added

	* metaDown.cc (downImport): pass enclosingModule argument to
	downModuleExpression()

	* metaLevel.hh (class MetaLevel): updated decl for
	downModuleExpression()

	* metaDownRenamings.cc (downModuleExpression): don't allow modules
	with parameters to be summed
	(downModuleExpression): don't allow modules with bound parameters
	to be renamed
	(downModuleExpression): take and pass enclosingModule argument

2005-07-19  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownRenamings.cc (downModuleExpression): added code stub for
	instantiationSymbol case
	(downModuleExpression): fixed nasty bug where we were returning
	the result of makeSummation() rather than assigning it to m

	* metaLevelSignature.cc (MACRO): added instantiationSymbol

2005-06-07  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownRenamings.cc (downRenamingType): new addType() calling
	convention

===================================Maude86b===========================================

2005-04-27  Steven Eker  <eker@goo.csl.sri.com>

	* metaModule.cc (MetaModule): pass origin argument to
	ImportModule()

2005-04-19  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownRenamings.cc (downRenamingType): AUX_PARAMETERIZED_SORT
	-> AUX_STRUCTURED_SORT

	* metaDown.cc (downType2): AUX_PARAMETERIZED_SORT ->
	AUX_STRUCTURED_SORT

===================================Maude86a===========================================

2005-03-17  Steven Eker  <eker@goo.csl.sri.com>

	* metaModuleCache.cc (regretToInform): removed removeUser() hack

2005-03-16  Steven Eker  <eker@goo.csl.sri.com>

	* metaModuleCache.cc (regretToInform): call removeUser()

	* metaModule.cc (MetaModule): Parent* -> User*
	(MetaModule): User* -> Entity::User*

	* metaModule.hh (class MetaModule): Parent* -> User*

	* metaModuleCache.cc (regretToInform): need to cast doomedEntity

	* metaModuleCache.hh (User): derive from Entity::User rather than
	ImportModule::Parent; update decl for regretToInform()

2005-03-07  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownRenamings.cc (downRenamingType): handle
	AUX_PARAMETERIZED_SORT

	* metaDown.cc (downType2): handle AUX_PARAMETERIZED_SORT

2005-02-16  Steven Eker  <eker@goo.csl.sri.com>

	* metaMatch.cc (makeMatchSearchState2): use downTermPair() to
	simplify and fix bug where pattern and subject are in different
	kinds

2005-01-07  Steven Eker  <eker@goo.csl.sri.com>

	* metaDown.cc (downPrintOption): support ratSymbol

	* metaLevelSignature.cc (MACRO): added ratSymbol

2005-01-06  Steven Eker  <eker@goo.csl.sri.com>

	* descentSignature.cc (MACRO): metaPrettyPrint now takes 3 arguments

	* metaLevel.hh (class MetaLevel): added decls for
	downPrintOptionSet() and downPrintOption()

	* metaDown.cc (downPrintOptionSet): added
	(downPrintOption): added

	* descentFunctions.cc (metaPrettyPrint): handle print options argument

	* metaLevelSignature.cc (MACRO): added print option constructors

===================================Maude86===========================================

2004-12-08  Steven Eker  <eker@goo.csl.sri.com>

	* metaUpModule.cc (upPolymorphDecl): handle metadata

	* metaDownOps.cc (downOpDecl): pass metadata to addPolymorph()

	* metaUpModule.cc (upOpDecl): handle metadata

	* metaDownOps.cc (downAttr): handle metadata

	* metaLevel.hh (AttributeInfo): set metadata to NONE

	* metaDownOps.cc (downOpDecl): pass metadata to addOpDeclaration()

	* metaLevel.hh (class MetaLevel): added metadata field to struct AttributeInfo

2004-12-07  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (downOpDecl): pass dummy metadata arg to
	addOpDeclaration()

===================================Maude85a===========================================

2004-12-03  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (metaMaximalAritySet): use upTypeListSet()
	and getMaximalOpDeclSet()

	* metaLevel.hh (class MetaLevel): added decls for upTypeListSet()
	and upTypeList()

	* metaUp.cc (upTypeListSet): added
	(upTypeList): added

2004-12-02  Steven Eker  <eker@goo.csl.sri.com>

	* metaUp.cc (upKindSet): use SortSet ctors rather than KindSet
	ctors

	* metaLevelSignature.cc (MACRO): deleted KindSet ctors (we have
	combined these with SortSet,TypeSet ctors)

2004-12-01  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): made downTypeList() public

	* descentFunctions.cc (metaMaximalAritySet): added

	* descentSignature.cc (MACRO): added metaMaximalAritySet

2004-11-17  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): added decls for upTrace() and
	upTraceStep()

	* metaUp.cc (upTraceStep): added
	(upTrace): added

	* metaSearch.cc (metaSearchPath): added

	* metaLevel.hh (class MetaLevel): added decl for upFailureTrace()

	* metaUp.cc (upFailureTrace): added

	* descentSignature.cc (MACRO): added metaSearchPath

	* metaLevelSignature.cc (MACRO): added traceStepSymbol,
	nilTraceSymbol, traceSymbol. failureTraceSymbol

	* metaSearch.cc (makeRewriteSequenceSearch): removed local inline

2004-09-10  Steven Eker  <eker@goo.csl.sri.com>

	* metaUp.cc (upJoin): use KIND
	(upTerm): fix bug by using the exact sort for VARIABLE case rather
	than relying on MixfixModule::disambiguatorSort()
	(upType): use KIND
	(upSortSet): use upType() in place of upQid() so we can handle
	kinds

	* descentFunctions.cc (metaGlbSorts): use downType() rather than
	downSimpleSort()
	(metaGlbSorts): simplified using new findMaximalSorts() interface
	(metaMinimalSorts): use KIND
	(metaMaximalSorts): use KIND

===================================Maude85===========================================

2004-06-21  Steven Eker  <eker@goo.csl.sri.com>

	* metaDown.cc: print the metaterm in the "could not find an
	operator" advisory

===================================Maude84d===========================================

2004-06-14  Steven Eker  <eker@goo.csl.sri.com>

	* metaApply.cc (metaApply): support tracing of meta applications
	(metaXapply): support tracing of meta applications
	(metaXapply): unprotect metamodule on abort
	(metaApply): unprotect metamodule on abort

2004-06-07  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (metaRewrite): use saveHiddenState() and
	restoreHiddenState()
	(metaFrewrite): use saveHiddenState() and restoreHiddenState()

===================================Maude84c===========================================

2004-05-24  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownFixUps.cc (fixUpBubble): use new fixUpBubbleSpec()
	convention

2004-05-18  Steven Eker  <eker@goo.csl.sri.com>

	* metaUpModule.cc (upModule): handle theories

	* metaDown.cc (downImport): create line number as a temporary

2004-05-17  Steven Eker  <eker@goo.csl.sri.com>

	* metaUpModule.cc (upImports): PROTECTING and EXTENDING now belong
	to ImportModule

	* metaDown.cc (downModule): handle theories
	(downImport): handle import modes and new addImport() conventions

	* metaLevelSignature.cc (MACRO): added fthSymbol and thSymbol

===================================Maude84b===========================================

2004-04-27  Steven Eker  <eker@goo.csl.sri.com>

	* metaUpModule.cc (upImports): use getAutoImports() and handle
	protecting/extending

===================================Maude84a===========================================

2004-02-27  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownRenamings.cc (downModuleExpression): use interpreter
	inplace of moduleCache (2 places)

	* metaDown.cc (downModule): use interpreter inplace of moduleCache
	(2 places)

	* metaLevel.cc: removed moduleCache hack

	* metaDown.cc (downImport): removed old commented out code

===================================Maude84===========================================

2004-02-23  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownFixUps.cc (handleIdentity): (polymorph version) handle
	the case that the idnetity has already been set

	* metaDown.cc (downModule): added call to destructUnusedModules()
	in the success case as well to handle garbage from displaced meta
	modules and meta-meta processing

	* metaLevel.cc: added hack to be able to acces module cache

	* metaModuleCache.cc (regretToInform): added DebugAvisory() to
	check for the case that the doomed module is not in the cache

	* metaDown.cc (downModule): call destructUnusedModules() if we
	fail to complete the metamodule

2004-02-20  Steven Eker  <eker@goo.csl.sri.com>

	* metaDown.cc (downModule): deepSelfDestruct() rather than delete
	partially built module on failure to ensure dependent pointer in
	modules we depend on don't become stale; this fixes a nasty long
	standing bug

	* metaDownRenamings.cc (downRenaming): fixed bad arg #

	* metaDown.cc (downImport): use downModuleExpression()

	* metaLevel.hh (class MetaLevel): added decl for
	downModuleExpression()

	* metaDownRenamings.cc (downModuleExpression): added

2004-02-19  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): added decls for
	convertToTokens(), downRenamings(), downRenaming(),
	downRenamingTypes(), downRenamingType(), downRenamingAttributes(),
	downRenamingAttribute()

	* metaDownRenamings.cc: created

2004-02-18  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevelSignature.cc (MACRO): changed owiseSymbol and
	nonexecSymbol from FreeSymbol to Symbol

	* metaLevel.hh (class MetaLevel): deleted decl for
	upAttributeSet2()

	* metaUpModule.cc (upImports): simplified using upGroup()
	(upSubsortDecls): simplified using upGroup()
	(upOpDecls): simplified using upGroup()
	(upAttributeSet): use upGroup() in place of upAttributeSet2()
	(upMbs): simplified using upGroup()
	(upEqs): simplified using upGroup()
	(upRls): simplified using upGroup()
	(upStatementAttributes): simplified using upGroup()
	(upStatementAttributes): don't use dummy Vector in owise and
	nonexec cases
	(upRenamingAttributeSet): use upGroup() in place of
	upAttributeSet2()
	(upAttributeSet2): deleted

	* metaLevel.hh (upGroup): added
	(class MetaLevel): added decls for upModuleExpression(),
	upRenaming(), upTypeSorts(), upRenamingAttributeSet(),
	upAttributeSet2()

	* metaUpModule.cc (upModuleExpression): added
	(upRenaming): added
	(upTypeSorts): added
	(upAttributeSet2): added
	(upAttributeSet): use upAttributeSet2()
	(upRenamingAttributeSet): added
	(upImports): use upModuleExpression()

2004-02-17  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevelSignature.cc (MACRO): added renaming and module
	expression constructors

	* metaUpModule.cc (upImports): use new getModuleName() semantics

===================================Maude83a===========================================

2003-11-10  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownFixUps.cc (downFixUps): don't try attaching hooks to
	symbols and polymorphs that don't take attachments

	* metaLevel.hh (class MetaLevel): added decl for upSpecial()

	* metaUpModule.cc (upSpecial): added
	(upOpDecl): use upSpecial()

	* metaUp.cc (upTerm): use disambiguatorSort() (5 places)

	* metaLevel.hh (class MetaLevel): added decls for
	upPolymorphSpecial(), upIdHook(), upOpHook(), upTermHook()

	* metaUpModule.cc (upPolymorphDecl): pass qidMap to upQidList()
	(upOpDecl): pass qidMap to upQidList()
	(upPolymorphSpecial): added
	(upIdHook): added
	(upOpHook): added
	(upTermHook): added
	(upPolymorphDecl): use upPolymorphSpecial()

	* metaLevel.hh (class MetaLevel): added decl for qidMap version of
	upQidList()

	* metaUp.cc (upQidList): take qidMap arg
	(upQidList): added no qidMap version

2003-11-05  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.cc (getSymbolAttachments): added
	(getTermAttachments): added

	* metaLevel.hh (class MetaLevel): added decls for
	getSymbolAttachments(), getTermAttachments()

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): added decls for
	getDataAttachments(), getSymbolAttachments(), getTermAttachments()

	* metaLevelOpSymbol.cc (attachSymbol): call FreeSymbol::attachSymbol()
	(attachTerm): call FreeSymbol::attachTerm()
	(copyAttachments): call FreeSymbol::copyAttachments()
	(getDataAttachments): added
	(getSymbolAttachments): added
	(getTermAttachments): added
	(attachData): call FreeSymbol::attachData()

2003-11-03  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): added decl for iterToken()

	* metaUp.cc (iterToken): added
	(upContext): use iterToken() to handle iter case, fixing a bug
	(upDagNode): use iterToken()

2003-10-30  Steven Eker  <eker@goo.csl.sri.com>

	* descentSignature.cc (MACRO): added metaUpModule

	* ascentFunctions.cc (metaUpModule): added

	* metaLevel.hh (class MetaLevel): added decl for upModule()

	* metaUpModule.cc (upModule): added

	* metaLevel.hh (class MetaLevel): added declarations for
	upGather() and upIdentity()

	* metaUpModule.cc (upPolymorphDecl): added support for prec,
	gather and id: attributes
	(upOpDecl): added support for prec, gather and id: attributes
	(upIdentity): added
	(upGather): added

2003-10-29  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): added decls for upStrat() and
	upFrozen()

	* metaUpModule.cc (upStrat): added
	(upFrozen): added
	(upPolymorphDecl): handle strat, frozen, format
	(upOpDecl): handle strat, frozen, format

	* metaLevel.hh (class MetaLevel): added decl for upAttributeSet()

	* metaUpModule.cc (upAttributeSet): added

	* metaLevel.hh (class MetaLevel): added decls for upOpDecl(),
	upPolymorphDecl() and upOpDecls()

	* metaUpModule.cc (upPolymorphDecl): added
	(upOpDecl): added

	* descentSignature.cc (MACRO): added metaUpOpDecls

	* metaUpModule.cc (upOpDecls): added

	* ascentFunctions.cc (metaUpOpDecls): added

	* metaLevel.hh (class MetaLevel): added decl for upImports()

	* descentSignature.cc (MACRO): added metaUpImports

	* metaUpModule.cc (upImports): added

	* ascentFunctions.cc (metaUpImports): added

2003-10-28  Steven Eker  <eker@goo.csl.sri.com>

	* descentSignature.cc (MACRO): added metaUpSubsortDecls

	* ascentFunctions.cc (metaUpSubsortDecls): added

	* metaLevel.hh (class MetaLevel): added decl for upSubsortDecls()

	* metaUpModule.cc (upSubsortDecls): added

	* metaLevel.hh (class MetaLevel): added decl for upSorts()

	* metaUpModule.cc (upSorts): added
	(upSorts): added

	* metaLevel.hh (class MetaLevel): added del for 4 arg version of
	upSortSet()

	* metaUp.cc (upSortSet): added 4 arg version
	(upSortSet): reimplemented in terms of 4 arg version

	* descentSignature.cc (MACRO): added metaUpSorts

	* ascentFunctions.cc (metaUpSorts): added

2003-10-24  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): updated many decls

	* metaDownFixUps.cc (fixUpIdentitySymbol): renamed to handleIdentity()
	(fixUpSpecialSymbol): renamed to handleSpecial()
	(fixUpPolymorph): renamed to handleSpecial()
	(handleIdentity): added polymorph version

	* metaDownOps.cc (downOpDecl): use new addComplexSymbol() conventions

	* metaLevel.hh (class MetaLevel): replaced IDENTITY_SYMBOL and
	SPECIAL_SYMBOL with REGULAR_SYMBOL in enum ComplexSymbolType

	* metaModule.cc (addComplexSymbol): handle identity separately
	(both versions)
	(removeComplexSymbol): handle identity separately

	* metaModule.hh (class MetaModule): updated decls for all member
	functions; added identity field to struct ComplexSymbol

2003-10-21  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownFixUps.cc (downHook): use safeCast() and temp var
	(downOpHook): use safeCast()
	(fixUpBubble): use safeCast()

	* metaDownOps.cc (downPolymorphTypeList): use polyArgs rather than
	wanted set
	(downAttr): don't subtract 1 from poly attribute numbers
	(downOpDecl): fixed test for range being poly
	(downAttr): use safeCast() (3 places)
	(checkHook): use safeCast()

	* metaLevel.hh (class MetaLevel): added decl for polymorph version
	of downHook()

	* metaDownFixUps.cc (downHook): added polymorph version
	(fixUpPolymorph): rewritten in generic way

	* metaLevel.hh (class MetaLevel): updated decl for
	downPolymorphTypeList()

	* metaDownOps.cc (downPolymorphTypeList): rewritten to handle
	wanted set
	(downOpDecl): polymorph code rewritten in generic way

2003-10-20  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (downAttr): handle poly meta-attribute

	* metaLevel.hh (class MetaLevel): added polyArgs to struct AttributeInfo

	* metaLevelSignature.cc (MACRO): added instatiation for polySymbol

	* metaDownOps.cc (downOpDecl): commented out UP_SYMBOL,
	DOWN_SYMBOL cases

2003-10-13  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (downOpDecl): don't use isPolymorph(); use new
	addPolymorph() convention

===================================Maude83===========================================

2003-09-30  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownFixUps.cc (fixUpPolymorph): handle shareWith hook

	* metaLevel.hh (class MetaLevel): added decl for
	downPolymorphTypeList()

	* metaDownOps.cc (downPolymorphTypeList): added
	(downOpDecl): rewritten using downPolymorphTypeList() and handling
	UP_SYMBOL and DOWN_SYMBOL

2003-09-29  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (metaUpTerm): added
	(metaDownTerm): added

	* metaLevel.hh: made upDagNode() public

	* metaApply.cc (getCachedRewriteSearchState): moved here
	(metaApply): moved here
	(metaXapply): moved here

	* descentSignature.cc: added entries for metaUpTerm() and
	metaDownTerm()

	* metaLevelOpSymbol.cc (eqRewrite): use safeCast()
	(copyAttachments): use safeCast()

===================================Maude82===========================================

2003-05-27  Steven Eker  <eker@goo.csl.sri.com>

	* metaDown.cc (downImport): handle extendingSymbol

	* metaLevelSignature.cc (MACRO): added extendingSymbol

2003-05-23  Steven Eker  <eker@goo.csl.sri.com>

	* metaUpModule.cc (upMbs): only up non-bad mbs
	(upEqs): only up non-bad eqs
	(upRls): only up non-bad rls
	(upStatementAttributes): handle nonexec

	* metaDown.cc (downEquation): handle nonexec
	(downRule): handle nonexec
	(downStatementAttr): handle nonexec
	(downMembAx): handle nonexec

	* metaDownOps.cc (downAttr): handle configSymbol, objectSymbol,
	msgSymbol

	* metaLevelSignature.cc (MACRO): added configSymbol, objectSymbol,
	msgSymbol, nonexecSymbol

	* descentFunctions.cc (metaApply): pass ALLOW_NONEXEC to
	RewriteSearchState()
	(metaXapply): pass ALLOW_NONEXEC to RewriteSearchState()

2003-05-22  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (metaFrewrite): fixed nasty bug where
	safeCast() macro was causing the creation of 3 subcontexts rather
	than one

2003-05-21  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (metaFrewrite): call setObjectMode()

2003-04-18  Steven Eker  <eker@goo.csl.sri.com>

	* metaDown.cc (downSimpleSortList): fixed != nilQidListSymbol bug
	that we introduced today

	* metaDownOps.cc (checkHookList): rewritten to use
	DagArgumentIterator; fixed fall thru bug

	* metaLevelSignature.cc (MACRO): got rid of AU_DagNode and
	ACU_DagNode

	* metaDownOps.cc (downOpDecl): rewritten to use
	DagArgumentIterator
	(downBubbleSpec): rewritten to use DagArgumentIterator

	* metaDownFixUps.cc (fixUpSpecialSymbol): rewritten to use
	DagArgumentIterator
	(fixUpBubble): rewritten to use DagArgumentIterator
	(fixUpPolymorph): rewritten to use DagArgumentIterator

	* metaDown.cc (downSimpleSortList): rewritten to use
	DagArgumentIterator
	(downTypeList): rewritten to use DagArgumentIterator
	(downCondition): rewritten to use DagArgumentIterator and
	FOR_EACH_CONST()
	(downTermList): rewritten to use DagArgumentIterator and
	FOR_EACH_CONST()
	(downSubstitution): use clear()

2003-04-17  Steven Eker  <eker@goo.csl.sri.com>

	* metaDown.cc (downImports): use DagArgumentIterator instead of
	casting to AU_DagNode
	(downNatList): ditto
	(downQidList): ditto

===================================Maude80===========================================

2003-02-26  Steven Eker  <eker@goo.csl.sri.com>

	* metaUpModule.cc (upConditionFragment): Assert() -> CantHappen()

	* metaUp.cc (upJoin): updated Assert()
	(upDagNode): updated Assert()
	(upTerm): updated Assert()
	(upContext): updated Assert()
	(upResultPair): updated Assert() (both versions)
	(upResultTriple): updated Assert()
	(upResult4Tuple): updated Assert()
	(upAmbiguity): updated Assert()

	* metaOpCache.cc: removed #pragma

	* metaOpCache.hh: removed #pragma

	* metaModuleCache.cc: removed #pragma
	(moveToFront): DebugAdvisoryCheck() -> DebugAdvisory()
	(insert): DebugAdvisoryCheck() -> DebugAdvisory()

	* metaModuleCache.hh: removed #pragma

	* metaModule.cc: removed #pragma

	* metaModule.hh: removed #pragma

	* metaLevelOpSymbol.cc: removed #pragma
	(eqRewrite): updated Assert()

	* metaLevelOpSymbol.hh: removed #pragma

	* metaLevel.cc: removed #pragma
	(bind): updated Assert() (both versions)

	* metaLevel.hh: removed #pragma

===================================Maude79===========================================

2003-01-08  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (downOpDecls): use DagArgumentIterator rather
	than messing with ACU_DagNode

	* metaDown.cc (downSorts): use DagArgumentIterator rather than
	messing with ACU_DagNode
	(downSubsorts): ditto
	(downStatementAttrSet): ditto
	(downMembAxs): ditto
	(downEquations): ditto; removed MOS hack
	(downRules): ditto
	(downSubstitution): ditto

===================================Maude78==================================================

2002-11-19  Steven Eker  <eker@goo.csl.sri.com>

	* metaMatch.cc (makeMatchSearchState2): reverted to previous
	version since pattern and subject need not be in the same kind for
	metaXmatch()

2002-11-15  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownFixUps.cc (downOpHook): replaced AdvisoryCheck() with
	new style IssueAdvisory()
	(fixUpBubble): use new style IssueAdvisory()

	* metaDownOps.cc (downOpDecl): use new style IssueAdvisory()
	(downAttr): use new style IssueAdvisory()s

	* metaDown.cc (downSort): use new style IssueAdvisory()
	(downType2): use new style IssueAdvisory()s
	(downSimpleSort): use new style IssueAdvisory()
	(downTermAndSort): use new style IssueAdvisory()
	(downTermPair): use new style IssueAdvisory()
	(downTerm): use new style IssueAdvisory()s

	* metaLevel.cc (bind): (both versions) use new style
	IssueWarning()

2002-11-14  Steven Eker  <eker@goo.csl.sri.com>

	* metaSearch.cc (makeRewriteSequenceSearch): rewritten using
	downTermPair()

	* metaMatch.cc (makeMatchSearchState): rewritten using
	downTermPair()
	(makeMatchSearchState2): rewritten using downTermPair()

	* descentFunctions.cc (dagifySubstitution): don't check for
	component clash here since we always get our substitution from
	downSubstitution() which no longer return substitutions with
	component clashes

	* metaDown.cc (downAssignment): rewritten using downTermPair()

	* metaLevel.hh (class MetaLevel): added decl for downTermAndSort()

	* metaDown.cc (downEquation): rewritten to be symmetric with
	downRule()
	(downConditionFragment): use downTermPair() for
	equality/match/rewrite cases
	(downTermAndSort): added
	(downConditionFragment): use downTermAndSort() in sort test case
	(downMembAx): rewritten using downTermAndSort()

2002-11-13  Steven Eker  <eker@goo.csl.sri.com>

	* metaDown.cc (downRule): rewritten using downTermPair() to fix
	kind clash bug and term memory leak
	(downRule): use safeCast
	(downRule): removed static Vector

	* metaLevel.hh (class MetaLevel): added decl for downTermPair()

	* metaDown.cc (downTermPair): added

2002-11-11  Steven Eker  <eker@goo.csl.sri.com>

	* metaUpModule.cc (upStatementAttributes): handle owise

	* metaLevel.hh (class MetaLevel): updated decls for
	downStatementAttrSet() and downStatementAttr(); added enum Flags

	* metaDown.cc (downStatementAttr): handle owiseSymbol
	(downStatementAttrSet): handle flags
	(downRule): pass flags arg to downStatementAttrSet()
	(downMembAx): pass flags arg to downStatementAttrSet()

	* metaLevelSignature.cc (MACRO): added owiseSymbol

	* metaDown.cc (downEquation): pass owise arg to Equation()

2002-10-11  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): updated decls for downAttrSet()
	and downAttr()

	* metaDownOps.cc (downAttr): rewritten using AttributeInfo
	(downOpDecl): rewritten using AttributeInfo
	(downAttrSet): rewritten using AttributeInfo

	* metaLevel.hh (class MetaLevel): added struct AttributeInfo
	(AttributeInfo): added

	* metaLevelSignature.cc (MACRO): deleted oldFrozenSymbol

2002-10-10  Steven Eker  <eker@goo.csl.sri.com>

	* metaDown.cc (downQidList): use clear() instead of contractTo(0)

	* metaDownOps.cc (downAttr): take frozen arg
	(downAttrSet): take and pass frozen arg
	(downOpDecl): handle NatSet of frozen args; fixed bug where we were
	not clear format Vector - actually it not a visible bug since if
	we set the format flag, downQidList will clear the Vector for us

	* metaLevelSignature.cc (MACRO): frozenSymbol now take 1 arg;
	added oldFrozenSymbol

2002-10-08  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (downOpDecl): updated frozen hack

2002-10-02  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (downOpDecl): pass dummy frozen arg to
	addOpDeclaration() - must fix later

===================================Maude76==================================================

2002-09-08  Steven Eker  <eker@goo.csl.sri.com>

	* metaUp.cc (upJoin): fixed bug where we were starting kind with
	'[ rather than `[

2002-08-27  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (downAttr): handle ctor attribute

===================================Maude75==================================================

2002-07-25  Steven Eker  <eker@goo.csl.sri.com>

	* metaUp.cc (upDagNode): deleted MACHINE_INTEGER case
	(upTerm): deleted MACHINE_INTEGER case

	* metaDown.cc (downTerm): deleted SMALL_NAT, SMALL_NEG and ZERO
	cases since we no longer have machine ints

===================================Maude74==================================================

2002-06-19  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (metaFrewrite): fixd bug where we were
	comparing gas to 9 rather than 0 to decide if it is legal

	* metaMatch.cc (makeMatchSearchState2): fixed symmetric bug

	* descentFunctions.cc (metaXapply): fixed bug where we were
	passing NONE to RewriteSearchState() in maxDepth = unbounded case,
	but here NONE is interpreted as depth = 0, no extension

2002-06-17  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): added decl for
	upStatementAttributes()

	* metaUpModule.cc (upStatementAttributes): added
	(upRl): rewritten to use upStatementAttributes()
	(upMb): rewritten to use upStatementAttributes()
	(upEq): rewritten to use upStatementAttributes()

	* metaLevelSignature.cc (MACRO): added stringSymbol

	* metaLevel.hh (class MetaLevel): updated decls for
	downStatementAttrSet() and downStatementAttr()

	* metaDown.cc (downEquation): handle metadata
	(downRule): handle metadata
	(downMembAx): handle metadata
	(downStatementAttrSet): handle metadata
	(downStatementAttr): handle metadata

2002-06-14  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): added decls for
	downStatementAttrSet() and downStatementAttr()

	* metaDown.cc (downStatementAttr): added
	(downStatementAttrSet): added
	(downMembAx): handle new mb/cmb ctors
	(downEquation): handle new eq/ceq ctors
	(downRule): handle new rl/cel ctors

	* metaLevelSignature.cc (MACRO): added labelSymbol and
	metadataSymbol
	(MACRO): changed arities for mbSymbol, cmbSymbol, eqSymbol and
	ceqSymbol

2002-06-12  Steven Eker  <eker@goo.csl.sri.com>

	* metaDown.cc (downEquation): pass NONE as first arg of Equation()
	(downMembAx): pass NONE as first arg of SortConstraint()

	* descentFunctions.cc (metaRewrite): don't allow a limit of 0
	(metaFrewrite): don't allow limit or gas of 0; use
	downSaturate64() for gas since fairRewrite() doesn't handle gas of
	-1

2002-06-10  Steven Eker  <eker@goo.csl.sri.com>

	* metaUp.cc (upTerm): MachineFloat -> Float
	(upDagNode): MachineFloat -> Float

	* metaDown.cc (downTerm): MachineFloat -> Float

2002-06-07  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): deleted decl for
	downMachineInt()

	* metaDown.cc (downMachineInt): deleted

	* metaLevel.hh (class MetaLevel): deleted decl for upMachineInt()

	* metaUp.cc (upNoParse): use makeNatDag()
	(upMachineInt): deleted

	* metaSearch.cc (metaSearch): use downSaturate64()
	(makeRewriteSequenceSearch): use downBound()

	* descentFunctions.cc (metaXapply): no need to convert a maxDepth
	of -1 into INT_MAX since RewriteSearchState() groks -1 as unbounded

	* metaMatch.cc (metaMatch): use downSaturate64()
	(metaXmatch): use downSaturate64()
	(makeMatchSearchState2): use downSaturate() and downBound()

	* metaLevel.hh (downNat): deleted
	(downNat64): deleted

	* metaDown.cc (downBound): added
	(downSaturate): added

	* descentFunctions.cc (metaApply): use downSaturate64()
	(metaXapply): use downSaturate64(), downBound(), downSaturate()

	* metaLevel.hh (class MetaLevel): added decl for downSaturate64()

	* metaDown.cc (downSaturate64): added

	* descentFunctions.cc (metaRewrite): use downBound64()
	(metaFrewrite): use downBound64() (2 places)

	* metaLevel.hh (class MetaLevel): added decl for downBound64()

	* metaDown.cc (downBound64): added

	* metaLevelSignature.cc (MACRO): added unboundedSymbol

	* descentFunctions.cc (metaRewrite): use downNat64()

	* metaLevel.hh (downNat): added
	(downNat64): added

	* metaDownOps.cc (downAttr): use downNatList()
	(downAttr): use getSignedInt() and safeCast()

	* metaLevel.hh (class MetaLevel): decl for downNatList() replaces
	decl for downMachineIntList()

	* metaDown.cc (downMachineIntList): becomes downNatList()

	* metaLevelSignature.cc (MACRO): replace machine int stuff with
	succSymbol and natListSymbol

===================================Maude73==================================================

2002-05-31  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (downAttr): support iterSymbol

	* metaLevelSignature.cc (MACRO): added iterSymbol

	* metaUp.cc (upDagNode): handle iter theory by creating metaterms
	like 'f^42[...]
	(upTerm):  handle iter theory likewise

2002-05-24  Steven Eker  <eker@goo.csl.sri.com>

	* metaDown.cc (downTerm): support downing terms of the form
	f^42(...)

2002-05-22  Steven Eker  <eker@goo.csl.sri.com>

	* metaDown.cc (downTerm): added Token::ZERO case

2002-04-15  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (checkHook): use
	SymbolType::specialNameToBasicType()

	* descentFunctions.cc (metaSortLeq): check that sorts are in the
	same component - this fixes a bug.

2002-04-09  Steven Eker  <eker@goo.csl.sri.com>

	* metaDown.cc (downImport): use interpreter.getModule() in place
	of PreModule::findModule()

===================================Maude72==================================================

2002-04-05  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (downAttr): fix bugs where we weren't calling
	symbolType.setFlags(SymbolType::GATHER) and
	symbolType.setFlags(SymbolType::FORMAT)

2002-04-04  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): updated decls for downAttrSet()
	and downAttr()

	* metaDownOps.cc (downOpDecl): pass format arg to downAttrSet()
	(downAttrSet): take format arg and pass it to downAttr()
	(downAttr): support format attribute

	* metaLevelSignature.cc (MACRO): added formatSymbol

2002-04-03  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (dagifySubstitution): simplified using
	normalize() default 2nd arg
	(term2RewritingContext): simplified using normalize() default 2nd
	arg
	(metaLeastSort): simplified using normalize() default 2nd arg
	(metaReduce): simplified using normalize() default 2nd arg
	(metaRewrite): simplified using normalize() default 2nd arg
	(metaFrewrite): simplified using normalize() default 2nd arg

	* metaUp.cc (upContext): simplified now that makeDagNode() has a
	default argument
	(upResultTriple): deleted unused static dummy Vector
	(upResult4Tuple): deleted unused static dummy Vector
	(upSubstition): simplified now that makeDagNode() has a default
	argument
	(upFailureTriple): simplified now that makeDagNode() has a default
	argument
	(upNoMatchSubst): simplified now that makeDagNode() has a default
	argument
	(upNoMatchPair): simplified now that makeDagNode() has a default
	argument
	(upFailure4Tuple): simplified now that makeDagNode() has a default
	argument

	* descentSignature.cc: added metaUpMbs, metaUpEqs

	* ascentFunctions.cc (metaUpMbs): added
	(metaUpEqs): added

	* metaLevel.hh (class MetaLevel): added decls for upMb(), upEq(),
	upMbs(), upEqs()

	* metaUpModule.cc (upEqs): added
	(upEq): added
	(upMbs): added
	(upMb): added

	* ascentFunctions.cc (metaUpRls): handle flat flag

	* metaLevel.hh (class MetaLevel): added decl for downBool()

	* metaDown.cc (downBool): added

	* ascentFuctions.cc: created

	* descentSignature.cc (MACRO): added metaUpRls

	* metaLevel.hh (class MetaLevel): added decls for upRl(),
	upLabel(), upCondition(), upConditionFragment(),  upRls()

	* metaUpModule.cc (upRls): created

===================================Maude71a==================================================

2002-03-22  Steven Eker  <eker@goo.csl.sri.com>

	* meta.hh: created

===================================Maude71==================================================

2002-03-10  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (checkHook): fixed bug where we were setting
	basic type even when MixfixModule::specialNameToBasicType()
	returned 0; this caused addition id-hooks such as exclude to
	overwrite the original basic type

2002-02-12  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevelOpSymbol.cc (attachData): check arity and well as op
	name

	* descentSignature.cc (MACRO): metaXmatch now has 7 args

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): added decl for
	makeMatchSearchState2()

	* metaMatch.cc (makeMatchSearchState2): added
	(metaXmatch): simplified and support side condition using
	makeMatchSearchState2()

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): updared decls
	for makeRewriteSequenceSearch() and downSearchType()

	* metaSearch.cc (makeRewriteSequenceSearch): made const
	(downSearchType): made const

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): delete static
	data member eagerStrategy

	* metaLevelOpSymbol.cc (MetaLevelOpSymbol): don't pass
	eagerStrategy to FreeSymbol()

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): ma
	(class MetaLevelOpSymbol): made term2Dag() and
	term2RewritingContext() static

	* descentSignature.cc (MACRO): metaMatch now has 5 args

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): added decl for
	makeMatchSearchState()

	* metaMatch.cc (getCachedMatchSearchState): moved here
	(metaMatch): moved here
	(metaXmatch): moved here
	(makeMatchSearchState): added
	(metaMatch): simplified and support side condition using
	makeMatchSearchState()

	* metaSearch.cc (downSearchType): moved here
	(getCachedRewriteSequenceSearch): moved here
	(makeRewriteSequenceSearch): moved here
	(metaSearch): moved here

2002-02-11  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.hh (class MetaLevel): made downCondition() public

	* descentSignature.cc (MACRO): metaSearch() now has 7 args

	* descentFunctions.cc (makeRewriteSequenceSearch): added; handle condition
	(metaSearch): simplified using makeRewriteSequenceSearch()

	* metaDown.cc (downCondition): handle noConditionSymbol; fix
	memory leak by deleting already downed fragments in the case of
	and error

	* metaLevelSignature.cc (MACRO): added noConditionSymbol

	* descentFunctions.cc (metaApply): use transferCount() instead of
	addInCount() for RewriteSearchState
	(metaXapply): use transferCount() instead of addInCount() for
	RewriteSearchState
	(metaMatch): use transferCount() instead of addInCount() for
	MatchSearchState
	(metaXmatch): use transferCount() instead of addInCount() for
	MatchSearchState
	(metaSearch): use transferCount() instead of addInCount() and
	clearCount()

2002-02-07  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevel.cc: added #includes for new classes

	* metaDown.cc (downConditionFragment): use classes
	EqualityConditionFragment, SortTestConditionFragment,
	AssignmentConditionFragment and RewriteConditionFragment in place
	of old ConditionFragment class

2002-02-04  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (downOpDecl): pass dummy format to
	addOpDeclaration() and addPolymorph()

2002-01-31  Steven Eker  <eker@goo.csl.sri.com>

	* metaUp.cc (upDagNode): rewritten using class SymbolType

	* metaLevelSignature.cc: rewritten using class SymbolType

	* metaUp.cc (upTerm): rewritten using class SymbolType

	* metaDownFixUps.cc (fixUpIdentitySymbol): rewritten using class
	SymbolType

	* metaDownOps.cc: rewritten using class SymbolType

	* metaDownFixUps.cc (downOpHook): use new findSymbol()

	* metaDown.cc (downTerm): use new findSymbol() (2 places)

===================================Maude70==================================================

2002-01-24  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (metaSearch): added Verbose() call
	(metaSearch): removed const_casts

	* metaLevel.hh (class MetaLevel): updated decls

	* metaUp.cc (upResultTriple): made substitution & variableInfo
	args const
	(upResult4Tuple): made substitution & variableInfo args const
	(upSubstition): made substitution & variableInfo args const
	(upMatchPair): made substitution & variableInfo args const

2002-01-23  Steven Eker  <eker@goo.csl.sri.com>

	* metaOpCache.cc (clear): Triple -> Item

	* metaOpCache.hh (class MetaOpCache): added search field to struct
	Triple and renamed it to struct Item

	* metaOpCache.cc (insert): added RewriteSequenceSearch version
	(remove): added RewriteSequenceSearch version
	(insert): clear search field in SearchState version
	(clear): delete search

	* descentFunctions.cc (downSearchType): added
	(getCachedRewriteSequenceSearch): added
	(metaSearch): added

	* descentSignature.cc (MACRO): added metaSearch

2001-12-21  Steven Eker  <eker@goo.csl.sri.com>

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): updated decls
	for getCachedRewriteSearchState() and getCachedMatchSearchState()

	* descentFunctions.cc (getCachedRewriteSearchState): take context
	and pass it to remove()
	(getCachedMatchSearchState): take context and pass it to remove()
	(metaApply): pass context to getCachedRewriteSearchState()
	(metaXapply): pass context to getCachedRewriteSearchState()
	(metaMatch): pass context to getCachedMatchSearchState()
	(metaXmatch): pass context to getCachedMatchSearchState()

	* metaOpCache.cc (remove): take parent context ptr, and if we
	extra a cached state, have the states context be adopted by the
	parent context; this fixes a nasty bug where there original parent
	may no longer exist and the cached states context has a stale
	parent pointer

	* metaOpCache.hh (class MetaOpCache): updated decl for remove()

2001-04-25  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (metaMatch): pass GC flags to
	MatchSearchState()
	(metaXmatch): pass GC flags to MatchSearchState()
	(metaApply): pass GC flags to RewriteSearchState()
	(metaXapply): pass GC flags to RewriteSearchState()

2001-03-29  Steven Eker  <eker@goo.csl.sri.com>

	* metaDownOps.cc (downAttr): handle frozen attribute

	* metaLevelOpSymbol.hh (class MetaLevelOpSymbol): generate decls
	for desent functions by macro expansion

	* metaLevelSignature.cc (MACRO): added decl for frozenSymbol

	* descentSignature.cc: added MACRO for metaFrewrite; corrected
	MACRO for metaRewrite

	* descentFunctions.cc (metaRewrite): use limit = NONE convention
	(metaFrewrite): added

2001-03-28  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (metaRewrite): call resetRules()

2001-03-16  Steven Eker  <eker@goo.csl.sri.com>

	* descentFunctions.cc (metaLeastSort): use addInCount() instead of
	incrementCount() and count()
	(metaReduce): use addInCount() instead of incrementCount() and
	count()
	(metaRewrite): use addInCount() instead of incrementCount() and
	count()
	(metaApply): use addInCount() instead of incrementCount() and
	count(); use incrementRlCount()
	(metaXapply): use addInCount() instead of incrementCount() and
	count(); use incrementRlCount()
	(metaXmatch): use addInCount() instead of incrementCount() and
	count()
	(metaApply): use addInCount() instead of incrementCount() and
	count()
