public class DomainTheory extends DT_Abstract2
Because so many methods are defined at the Domain Theory level, the code
files are broken into 4 classes: DT_Abstract1, DT_Abstract2, DomainTheory
and Learned_DT
.
Modifier and Type | Class and Description |
---|---|
class |
DomainTheory.BaseCB_Cover |
class |
DomainTheory.DyadToken |
DT_Abstract1.ScoreObj
Modifier and Type | Field and Description |
---|---|
java.util.TreeMap<java.lang.String,java.lang.String> |
kinTermSymbols |
static boolean |
LGG_ONLY |
int |
priorDTMSize |
static boolean |
SIMILARITY_ON |
bothSexPreds, femalePreds, kinTypePreds, kinTypeSymbols, malePreds, neuterPreds, pluralKTPreds, pluralKTSymbols
addrTerms, current, issuesForUser, primitiveCodes, primPredNames, standardMacroTree
Modifier and Type | Method and Description |
---|---|
boolean |
addEgoAlterSeniority(ClauseBody cb,
java.util.ArrayList<java.lang.Object> posDyads,
java.util.ArrayList<java.lang.Object> negDyads) |
boolean |
addEgoGenderPred(ClauseBody cb,
java.util.ArrayList<java.lang.Object> posDyads,
java.util.ArrayList<java.lang.Object> negDyads) |
void |
addIfNotDupl(Dyad dy,
java.util.ArrayList<java.lang.Object> litList,
java.util.TreeMap listTMap) |
void |
addIfNotDuplicative(ClauseBody cb,
java.util.ArrayList<java.lang.Object> members) |
void |
addNewCoverage(DomainTheory.BaseCB_Cover cand,
java.util.ArrayList<java.lang.Object> pos2Cover,
java.util.ArrayList<java.lang.Object> negTokensCovered,
java.util.ArrayList<java.lang.Object> confNegsCvrd) |
java.lang.String |
addNoise(java.lang.String kinTerm,
Oracle orca,
float classNoiseProbabililty,
float spellNoiseProbabiliity) |
java.util.ArrayList<java.lang.Object> |
allLGGLits(Dyad dy,
ClauseBody cb,
java.util.TreeMap lvl2Var,
java.util.TreeMap namedVars) |
java.util.ArrayList<java.lang.Object> |
analyzeKTD_EQC_HitsAndMisses(java.util.ArrayList<java.lang.Object> solidKTD_EQCmatches,
java.util.ArrayList<java.lang.Object> perfectFits,
java.util.TreeMap neg,
java.util.TreeMap pcStrNonHits) |
void |
askUserForData(java.lang.String kinTerm,
java.util.TreeMap rankedEQCs,
java.util.TreeMap pos,
java.util.TreeMap neg) |
int |
bodyLengthScore(java.util.ArrayList<java.lang.Object> body) |
java.util.ArrayList<java.lang.Object> |
confirmedScan(java.util.ArrayList<java.lang.Object> posMisses,
java.util.ArrayList<java.lang.Object> negHits) |
void |
createStaticInfo(ClauseBody cb,
java.util.TreeMap lvl2Var,
java.util.TreeMap var2Lvl,
java.util.TreeMap namedVars) |
void |
dataSelection(java.lang.String kinTerm,
java.util.ArrayList<java.lang.Object> ktMatches,
java.util.TreeMap pos,
java.util.TreeMap neg,
java.util.TreeMap dataReqCounter)
During a learning session, if more than one solid candidate definition is
found, we do dataSelection to narrow it to one if possible; otherwise
make a Data Request.
|
void |
detectSynonymsAndUmbrellas(java.lang.String kinTerm,
java.util.TreeMap prePos,
java.util.TreeMap preNeg,
int maxNoise)
Search for kin types that seem to have 2+ legitimate kin terms applied.
|
java.util.ArrayList<java.lang.Object> |
doLGG(java.util.ArrayList<java.lang.Object> posDyads,
java.util.ArrayList<java.lang.Object> negDyads,
java.util.ArrayList<java.lang.Object> pos2Cover,
java.util.ArrayList<java.lang.Object> negsCovered,
java.util.ArrayList<java.lang.Object> barriers,
Counter limit,
KinTermDef composedKTD) |
boolean |
egoGenderImplied(ClauseBody cb) |
void |
eraseTracks(java.util.TreeMap pos,
java.util.ArrayList<java.lang.Object> negTokensCovered) |
void |
evalCandidates(java.util.TreeMap candidates,
java.util.ArrayList<java.lang.Object> solidCBMatches,
java.util.ArrayList<java.lang.Object> potFalseNeg,
java.util.ArrayList<java.lang.Object> potFalsePos,
java.util.TreeMap pos,
java.util.TreeMap neg,
int maxNoise)
Any candidate that fits one or more dyads in POS, and no dyads in NEG, is a clause-level match.
|
java.util.ArrayList<java.lang.Object> |
extractTerms(java.util.ArrayList<java.lang.Object> triples) |
java.util.ArrayList<java.lang.Object> |
filterNonContradictions(java.lang.String kinTerm,
java.util.ArrayList<java.lang.Object> oddBalls,
java.util.TreeMap pos,
java.util.TreeMap neg) |
java.util.ArrayList<java.lang.Object> |
findBaseCBMatches(java.lang.String kinTerm,
java.util.ArrayList<java.lang.Object> solidCBMatches,
java.util.ArrayList<java.lang.Object> potFalseNeg,
java.util.TreeMap pos,
java.util.TreeMap neg,
java.util.ArrayList<java.lang.Object> anomalies,
int tolerance,
int maxConf,
Counter maxDist,
DomainTheory sourceDT,
boolean doInduction,
Learned_DT learner)
Find all the BaseCBs that matches.
|
java.util.TreeMap |
findCandidates(Library.ClauseIndex cbEQCs,
java.util.TreeMap pos,
Library.ClauseCounts cbCounts,
DomainTheory sourceDT,
Counter maxDist)
For all the exact signatures of positive examples, extract the
corresponding lists of all known CB_EQCs = potential matches.
|
java.util.ArrayList<java.lang.Object> |
findImposters(java.lang.String kinTerm,
java.util.ArrayList<java.lang.Object> componentCBs) |
void |
findKTMatches(java.lang.String kinTerm,
java.util.ArrayList<java.lang.Object> solidCBMatches,
java.util.ArrayList<java.lang.Object> potFalseNeg,
java.util.ArrayList<java.lang.Object> potFalsePos,
java.util.TreeMap pos,
java.util.TreeMap neg,
int maxNoise,
int ignorable,
java.util.ArrayList<java.lang.Object> solidKTMatches,
java.util.ArrayList<java.lang.Object> noisyKTMatches,
java.util.ArrayList<java.lang.Object> anomalies,
java.util.TreeMap rejectedDefs)
For any particular KTD, if the set of POS dyads matched by its CBs in solidCBMatches equals the set in POS,
and none of its CBs match any dyads in NEG, then that KTD contains kinTerm.
|
boolean |
fit(ClauseBody cb,
Dyad dad)
Strategy: Start fillInNames_bool from Ego (with Alter as goalPerson)
and see if it can reach Alter using the definition contained in cb.
|
ClauseBody |
generalize(ClauseBody cb1,
ClauseBody cb2) |
java.util.TreeMap<java.lang.String,java.lang.String> |
getKTSymbols() |
java.util.ArrayList<java.lang.Object> |
greedySetCover(KinTermDef composedKTD,
int scor,
java.util.ArrayList<java.lang.Object> pos2Cover,
java.util.ArrayList<java.lang.Object> negTokensCovered,
java.util.TreeMap pos,
java.util.TreeMap neg,
java.util.ArrayList<java.lang.Object> anomalies,
java.util.ArrayList<java.util.ArrayList<java.lang.Object>> currentCBM,
int maxMisses,
int tolerance,
int maxConf,
boolean doInduction) |
java.util.TreeMap |
groupIntoCB_EQCs(java.util.ArrayList<java.lang.Object> allMisFits,
java.util.TreeMap ktdToKTD_EQC,
double wtSum) |
void |
identifySynsEtc(java.util.TreeMap otherSet,
java.lang.String kinTerm,
java.util.ArrayList<java.lang.Object> kinTermPCStrings,
java.util.ArrayList<java.lang.Object> ktermDys,
int threshhold,
int typ) |
boolean |
induceSolution(java.util.ArrayList<java.lang.Object> solution,
java.util.TreeMap pos,
java.util.TreeMap neg,
java.util.ArrayList<java.lang.Object> pos2Cover,
java.util.ArrayList<java.lang.Object> negsCovered,
java.util.ArrayList<java.lang.Object> barriers,
int maxMisses,
KinTermDef composedKTD) |
java.util.ArrayList<java.lang.Object> |
kinTypesWithinDist(Counter maxDistSeen,
java.util.ArrayList<java.lang.Object> kinTypesCovered) |
java.util.TreeMap |
lowToHi(java.util.TreeMap unMatchedCB_EQCs) |
Anomaly |
makeAnomaly(java.lang.String kinTerm,
java.util.ArrayList<java.lang.Object> octuple,
int tolerance,
java.util.TreeMap pos,
java.util.TreeMap neg)
Gather all the data needed to call the Anomaly constructor.
|
ClauseBody |
makeCBfromKinType(java.lang.String kinType) |
DomainTheory.BaseCB_Cover |
makeCover(Library.CB_EQC baseEQC,
java.util.TreeMap pos,
java.util.TreeMap neg,
Counter coverCount,
int maxMisses,
int maxConfNegs,
DomainTheory sourceDT) |
void |
makeDeepCopies(java.util.ArrayList<java.lang.Object> solution) |
boolean |
makeDyadVarBindings(Dyad dy,
java.util.ArrayList<java.lang.Object> lits,
java.util.TreeMap bindings) |
java.util.ArrayList<java.lang.Object> |
makeKTD_EQCs(java.util.ArrayList<java.lang.Object> matches,
java.util.TreeMap ktdToKTD_EQC) |
java.lang.String[] |
makeLetters(int size) |
Anomaly |
makeLGGAnomaly(KinTermDef composedKTD,
java.util.ArrayList<java.lang.Object> barriers,
int tolerance,
java.util.TreeMap pos) |
Predicate |
makeMacro(Literal lit0,
Literal lit1,
boolean recurse) |
java.util.TreeMap |
makeNEG(java.lang.String kinTerm,
java.util.TreeMap pos) |
java.util.TreeMap |
makeTreeSets(java.util.ArrayList<java.lang.Object> matches,
boolean secondSet,
java.util.TreeMap cbLists) |
java.util.TreeMap |
mergeSubTrees(java.util.TreeMap neg) |
boolean |
noFits(KinTermDef ktd,
Library.KTD_Ptr ktdPtr,
java.util.TreeMap pos,
java.util.TreeMap neg,
java.util.TreeMap cbLists,
java.util.ArrayList<java.lang.Object> listSetSolid,
int posSize,
java.util.ArrayList<java.lang.Object> nNegHits,
int maxHits,
java.util.ArrayList<java.lang.Object> tracer) |
boolean |
overlapProposed(java.lang.String kinTerm,
java.lang.String term) |
boolean |
perfectFit(ClauseBody cb0,
java.util.ArrayList<java.lang.Object> posDyads,
java.util.ArrayList<java.lang.Object> negDyads) |
DomainTheory.BaseCB_Cover |
pickBestCover(java.util.ArrayList<java.lang.Object> candidates,
int limit,
int confLimit) |
void |
postAnomaliesForUser(java.lang.String kinTerm,
java.util.ArrayList<java.lang.Object> anomalies)
After looping through all the anomalies to consolidate duplicates,
post them to issuesForUser.
|
void |
postPotUmbrellas(java.lang.String umb,
java.util.ArrayList<java.lang.Object> umbStrings,
java.lang.String sub,
java.util.ArrayList<java.lang.Object> subStrings,
java.util.ArrayList<java.lang.Object> dyads,
int typ) |
void |
proposeDefinition(java.lang.String kinTerm,
java.util.ArrayList<java.lang.Object> octuple)
This method will create a
ComposedDef to be added to Suggestions. |
void |
proposeDefinition(java.lang.String kinTerm,
Library.KTD_EQC eqc)
This method is called only by the dataSelection method.
|
void |
proposeOverlapToUser(java.lang.String kinTerm,
java.lang.String term,
java.util.ArrayList<java.lang.Object> overlappingPCStrings,
java.util.ArrayList<java.lang.Object> ktermDys,
java.util.ArrayList<java.lang.Object> otherTermDys,
int typ) |
void |
proposeSynonymToUser(java.lang.String kinTerm,
java.lang.String term,
java.util.ArrayList<java.lang.Object> kinTermPCStrings,
java.util.ArrayList<java.lang.Object> ktermDys,
java.util.ArrayList<java.lang.Object> otherTermDys,
int typ) |
void |
proposeUmbrellas()
For each potential umbrella term posted to this DT, if it has not been
already proposed, and is not already known, post it as an issueForUser.
|
java.util.TreeMap |
rankStrNonHits(java.util.TreeMap pcStrNonHits,
double wtSum) |
void |
removeChallengedDyads(java.util.ArrayList<java.lang.Object> dyads) |
void |
replaceAuxPred(KinTermDef auxDef,
Predicate newPred,
java.util.ArrayList<java.lang.Object> auxiliaries,
KinTermDef composedKTD) |
java.util.ArrayList<java.util.ArrayList<java.lang.Object>> |
rescoreCBM(java.util.ArrayList<java.util.ArrayList<java.lang.Object>> currentCBM,
int size,
int maxMisses,
DomainTheory.BaseCB_Cover cand) |
boolean |
scanForConfirmed(java.util.ArrayList<java.lang.Object> listSet) |
void |
simplifyAuxs(KinTermDef composedKTD,
java.util.ArrayList<java.lang.Object> auxiliaries) |
void |
simplifyCBs(java.util.ArrayList<java.lang.Object> solution,
KinTermDef composedKTD) |
java.util.ArrayList<java.lang.Object> |
subDyads(java.util.ArrayList<java.lang.Object> dyTokens) |
double |
sumSimScores(java.util.ArrayList<java.lang.Object> solidKTD_EQCmatches) |
double |
sumSimScoresALT(java.util.ArrayList<java.lang.Object> solidKTD_EQCmatches) |
boolean |
synAlreadyPosted(java.lang.String kinTerm,
java.lang.String term) |
boolean |
synonymAlreadyProposed(java.lang.String keyWord,
java.lang.String word_pair) |
boolean |
synRejected(java.lang.String kinTerm,
java.lang.String term) |
void |
test4Useless(ClauseBody cb,
java.util.TreeMap posLitLists,
java.util.ArrayList<java.lang.Object> pos2BeUncovered,
java.util.ArrayList<java.lang.Object> negDyads,
java.util.ArrayList<java.lang.Object> negs2BeCovered) |
java.util.ArrayList<java.lang.Object> |
tidyUpSolution(java.lang.String kinTerm,
java.util.ArrayList<java.lang.Object> solution,
KinTermDef composedKTD,
java.util.ArrayList<java.lang.Object> pos2Cover,
java.util.ArrayList<java.lang.Object> negTokensCovered,
Learned_DT learner) |
boolean |
umbAlreadyPosted(java.lang.String umb,
java.lang.String sub) |
boolean |
umbrellaAlreadyKnown(java.lang.String umbTerm,
java.util.ArrayList<java.lang.Object> triples) |
boolean |
umbrellaAlreadyProposed(java.lang.String umbTerm) |
void |
uniquelyNameAuxes(java.util.ArrayList<java.lang.Object> auxes,
ClauseBody newCB) |
java.util.ArrayList<java.lang.Object> |
validateNewDyads(java.lang.String kinTerm,
int maxNoise)
Confirm that all the dyads gathered for already-accepted definitions fit
those definitions.
|
allTermsDefined, analyzeSynonymsAndUmbrellas, compare2, computeFeatureVector, determineCategory, distinctDefsProposed, egoGenderSpecified, expandStruct, findHiddenNeuterEgos, findOverlappingTerms, generateIndexes, listSetIntersectionOfStrings, loadBothSex, loadFemales, loadKTPreds, loadKTSymbols, loadMales, loadNeuters, loadPluralKTPreds, loadPluralKTSymbols, matchDyads, mergeUDPs, predToSymbol, resolveSynonymsInDyads, searchFor, setIntersection, symbolToPred, validateSynonymsAndUmbrellas
addTerm, addTerm, countLeaves, equivalentLists, fillInNames, found, foundInSigStr, harvestLeaves, isEmpty, isPrimOrMacro, isSupersetOf, loadPrimitiveCodes, makeExampleDyad, makeExampleGEDCOMFile, maleAndFemaleCreatedHeThem, mergeNestedTrees, mergeTrees, nonTerm, notFound, printableBaseTerm, printableTerm, toSILKString, toString, toThyFile
public static boolean SIMILARITY_ON
public static boolean LGG_ONLY
public java.util.TreeMap<java.lang.String,java.lang.String> kinTermSymbols
public int priorDTMSize
public java.util.TreeMap<java.lang.String,java.lang.String> getKTSymbols()
public java.lang.String[] makeLetters(int size)
public java.lang.String addNoise(java.lang.String kinTerm, Oracle orca, float classNoiseProbabililty, float spellNoiseProbabiliity)
public java.util.TreeMap makeNEG(java.lang.String kinTerm, java.util.TreeMap pos)
public java.util.ArrayList<java.lang.Object> validateNewDyads(java.lang.String kinTerm, int maxNoise) throws KSBadHornClauseException, KSNoChainOfRelations2Alter, KSInternalErrorException, KSConstraintInconsistency, java.lang.ClassNotFoundException
kinTerm
- the term whose definition will be checkedmaxNoise
- a parameter allowing a little noise in the dataKSBadHornClauseException
KSNoChainOfRelations2Alter
KSInternalErrorException
KSConstraintInconsistency
java.lang.ClassNotFoundException
public java.util.ArrayList<java.lang.Object> findImposters(java.lang.String kinTerm, java.util.ArrayList<java.lang.Object> componentCBs) throws KSBadHornClauseException, KSNoChainOfRelations2Alter, KSInternalErrorException, KSConstraintInconsistency, java.lang.ClassNotFoundException
KSBadHornClauseException
KSNoChainOfRelations2Alter
KSInternalErrorException
KSConstraintInconsistency
java.lang.ClassNotFoundException
public void removeChallengedDyads(java.util.ArrayList<java.lang.Object> dyads)
public void postAnomaliesForUser(java.lang.String kinTerm, java.util.ArrayList<java.lang.Object> anomalies)
kinTerm
- the term whose definition has encountered data that doesn't fitanomalies
- a list of all anomalies that we found.public void detectSynonymsAndUmbrellas(java.lang.String kinTerm, java.util.TreeMap prePos, java.util.TreeMap preNeg, int maxNoise) throws KSInternalErrorException
kinTerm
- the term we are analyzingprePos
- list of all positive dyadspreNeg
- list of all negative dyadsmaxNoise
- the percent of misfits we can accept as 'normal noise'KSInternalErrorException
public void identifySynsEtc(java.util.TreeMap otherSet, java.lang.String kinTerm, java.util.ArrayList<java.lang.Object> kinTermPCStrings, java.util.ArrayList<java.lang.Object> ktermDys, int threshhold, int typ) throws KSInternalErrorException
KSInternalErrorException
public boolean umbAlreadyPosted(java.lang.String umb, java.lang.String sub)
public void postPotUmbrellas(java.lang.String umb, java.util.ArrayList<java.lang.Object> umbStrings, java.lang.String sub, java.util.ArrayList<java.lang.Object> subStrings, java.util.ArrayList<java.lang.Object> dyads, int typ)
public void proposeUmbrellas()
public java.util.ArrayList<java.lang.Object> extractTerms(java.util.ArrayList<java.lang.Object> triples)
public boolean umbrellaAlreadyKnown(java.lang.String umbTerm, java.util.ArrayList<java.lang.Object> triples)
public boolean umbrellaAlreadyProposed(java.lang.String umbTerm)
public boolean overlapProposed(java.lang.String kinTerm, java.lang.String term)
public void dataSelection(java.lang.String kinTerm, java.util.ArrayList<java.lang.Object> ktMatches, java.util.TreeMap pos, java.util.TreeMap neg, java.util.TreeMap dataReqCounter) throws KSInternalErrorException, java.io.FileNotFoundException, JavaSystemException, java.io.IOException, KSNoChainOfRelations2Alter, KSBadHornClauseException, KSConstraintInconsistency, java.lang.ClassNotFoundException, KSParsingErrorException
kinTerm
- the term we're trying to learnktMatches
- the candidate matchespos
- all the positive matchesneg
- all the negative matchesdataReqCounter
- a record of all the Data Requests for each kin term.
if we exceed a threshold, we'll stop asking User for
data and take a guess. (Very rare!)KSInternalErrorException
java.io.FileNotFoundException
JavaSystemException
java.io.IOException
KSNoChainOfRelations2Alter
KSBadHornClauseException
KSConstraintInconsistency
java.lang.ClassNotFoundException
KSParsingErrorException
public java.util.ArrayList<java.lang.Object> makeKTD_EQCs(java.util.ArrayList<java.lang.Object> matches, java.util.TreeMap ktdToKTD_EQC) throws java.io.FileNotFoundException, JavaSystemException, java.io.IOException
java.io.FileNotFoundException
JavaSystemException
java.io.IOException
public java.util.ArrayList<java.lang.Object> analyzeKTD_EQC_HitsAndMisses(java.util.ArrayList<java.lang.Object> solidKTD_EQCmatches, java.util.ArrayList<java.lang.Object> perfectFits, java.util.TreeMap neg, java.util.TreeMap pcStrNonHits) throws KSParsingErrorException, JavaSystemException, KSInternalErrorException, java.lang.ClassNotFoundException, KSConstraintInconsistency, KSBadHornClauseException, KSNoChainOfRelations2Alter
KSParsingErrorException
JavaSystemException
KSInternalErrorException
java.lang.ClassNotFoundException
KSConstraintInconsistency
KSBadHornClauseException
KSNoChainOfRelations2Alter
public void proposeOverlapToUser(java.lang.String kinTerm, java.lang.String term, java.util.ArrayList<java.lang.Object> overlappingPCStrings, java.util.ArrayList<java.lang.Object> ktermDys, java.util.ArrayList<java.lang.Object> otherTermDys, int typ) throws KSInternalErrorException
KSInternalErrorException
public void proposeSynonymToUser(java.lang.String kinTerm, java.lang.String term, java.util.ArrayList<java.lang.Object> kinTermPCStrings, java.util.ArrayList<java.lang.Object> ktermDys, java.util.ArrayList<java.lang.Object> otherTermDys, int typ) throws KSInternalErrorException
KSInternalErrorException
public boolean synonymAlreadyProposed(java.lang.String keyWord, java.lang.String word_pair)
public boolean synAlreadyPosted(java.lang.String kinTerm, java.lang.String term)
public boolean synRejected(java.lang.String kinTerm, java.lang.String term)
public void proposeDefinition(java.lang.String kinTerm, java.util.ArrayList<java.lang.Object> octuple) throws KSParsingErrorException, JavaSystemException, KSInternalErrorException, KSConstraintInconsistency
ComposedDef
to be added to Suggestions.kinTerm
- the term we are trying to learnoctuple
- a list of 8 things needed to make the composed definition.KSParsingErrorException
JavaSystemException
KSInternalErrorException
KSConstraintInconsistency
public void proposeDefinition(java.lang.String kinTerm, Library.KTD_EQC eqc) throws KSParsingErrorException, JavaSystemException, KSInternalErrorException, KSConstraintInconsistency
kinTerm
- the term we're trying to learneqc
- an equivalence class of definitionsKSParsingErrorException
JavaSystemException
KSInternalErrorException
KSConstraintInconsistency
public double sumSimScoresALT(java.util.ArrayList<java.lang.Object> solidKTD_EQCmatches)
public double sumSimScores(java.util.ArrayList<java.lang.Object> solidKTD_EQCmatches) throws KSInternalErrorException, KSConstraintInconsistency, JavaSystemException, java.io.FileNotFoundException, KSBadHornClauseException, java.io.IOException, java.lang.ClassNotFoundException
KSInternalErrorException
KSConstraintInconsistency
JavaSystemException
java.io.FileNotFoundException
KSBadHornClauseException
java.io.IOException
java.lang.ClassNotFoundException
public java.util.TreeMap rankStrNonHits(java.util.TreeMap pcStrNonHits, double wtSum) throws KSInternalErrorException
KSInternalErrorException
public java.util.TreeMap groupIntoCB_EQCs(java.util.ArrayList<java.lang.Object> allMisFits, java.util.TreeMap ktdToKTD_EQC, double wtSum) throws KSInternalErrorException, JavaSystemException, java.io.FileNotFoundException
KSInternalErrorException
JavaSystemException
java.io.FileNotFoundException
public java.util.TreeMap lowToHi(java.util.TreeMap unMatchedCB_EQCs) throws JavaSystemException
JavaSystemException
public void askUserForData(java.lang.String kinTerm, java.util.TreeMap rankedEQCs, java.util.TreeMap pos, java.util.TreeMap neg) throws KSBadHornClauseException, KSInternalErrorException, KSConstraintInconsistency, java.lang.ClassNotFoundException, JavaSystemException
KSBadHornClauseException
KSInternalErrorException
KSConstraintInconsistency
java.lang.ClassNotFoundException
JavaSystemException
public void findKTMatches(java.lang.String kinTerm, java.util.ArrayList<java.lang.Object> solidCBMatches, java.util.ArrayList<java.lang.Object> potFalseNeg, java.util.ArrayList<java.lang.Object> potFalsePos, java.util.TreeMap pos, java.util.TreeMap neg, int maxNoise, int ignorable, java.util.ArrayList<java.lang.Object> solidKTMatches, java.util.ArrayList<java.lang.Object> noisyKTMatches, java.util.ArrayList<java.lang.Object> anomalies, java.util.TreeMap rejectedDefs) throws KSParsingErrorException, KSConstraintInconsistency, KSInternalErrorException, JavaSystemException, KSBadHornClauseException, java.lang.ClassNotFoundException, java.io.FileNotFoundException
KSParsingErrorException
KSConstraintInconsistency
KSInternalErrorException
JavaSystemException
KSBadHornClauseException
java.lang.ClassNotFoundException
java.io.FileNotFoundException
public java.util.ArrayList<java.lang.Object> confirmedScan(java.util.ArrayList<java.lang.Object> posMisses, java.util.ArrayList<java.lang.Object> negHits)
public java.util.TreeMap makeTreeSets(java.util.ArrayList<java.lang.Object> matches, boolean secondSet, java.util.TreeMap cbLists) throws KSParsingErrorException, KSConstraintInconsistency, KSInternalErrorException
public boolean scanForConfirmed(java.util.ArrayList<java.lang.Object> listSet)
public java.util.ArrayList<java.lang.Object> findBaseCBMatches(java.lang.String kinTerm, java.util.ArrayList<java.lang.Object> solidCBMatches, java.util.ArrayList<java.lang.Object> potFalseNeg, java.util.TreeMap pos, java.util.TreeMap neg, java.util.ArrayList<java.lang.Object> anomalies, int tolerance, int maxConf, Counter maxDist, DomainTheory sourceDT, boolean doInduction, Learned_DT learner) throws KSInternalErrorException, JavaSystemException, KSParsingErrorException, KSConstraintInconsistency, KSBadHornClauseException, KSNoChainOfRelations2Alter, java.lang.ClassNotFoundException, KSBadHornClauseException
kinTerm
- solidCBMatches
- potFalseNeg
- pos
- neg
- anomalies
- tolerance
- maxConf
- maxDist
- sourceDT
- doInduction
- learner
- KSInternalErrorException
JavaSystemException
KSParsingErrorException
KSConstraintInconsistency
KSBadHornClauseException
KSNoChainOfRelations2Alter
java.lang.ClassNotFoundException
KSBadHornClauseException
public java.util.ArrayList<java.lang.Object> kinTypesWithinDist(Counter maxDistSeen, java.util.ArrayList<java.lang.Object> kinTypesCovered)
public DomainTheory.BaseCB_Cover makeCover(Library.CB_EQC baseEQC, java.util.TreeMap pos, java.util.TreeMap neg, Counter coverCount, int maxMisses, int maxConfNegs, DomainTheory sourceDT) throws KSParsingErrorException, JavaSystemException, KSInternalErrorException, KSConstraintInconsistency, KSBadHornClauseException, KSNoChainOfRelations2Alter, java.lang.ClassNotFoundException
KSParsingErrorException
JavaSystemException
KSInternalErrorException
KSConstraintInconsistency
KSBadHornClauseException
KSNoChainOfRelations2Alter
java.lang.ClassNotFoundException
public DomainTheory.BaseCB_Cover pickBestCover(java.util.ArrayList<java.lang.Object> candidates, int limit, int confLimit) throws KSParsingErrorException, JavaSystemException, KSInternalErrorException, KSConstraintInconsistency, KSBadHornClauseException
public int bodyLengthScore(java.util.ArrayList<java.lang.Object> body)
public void addNewCoverage(DomainTheory.BaseCB_Cover cand, java.util.ArrayList<java.lang.Object> pos2Cover, java.util.ArrayList<java.lang.Object> negTokensCovered, java.util.ArrayList<java.lang.Object> confNegsCvrd)
public java.util.ArrayList<java.lang.Object> tidyUpSolution(java.lang.String kinTerm, java.util.ArrayList<java.lang.Object> solution, KinTermDef composedKTD, java.util.ArrayList<java.lang.Object> pos2Cover, java.util.ArrayList<java.lang.Object> negTokensCovered, Learned_DT learner) throws KSParsingErrorException, JavaSystemException, KSBadHornClauseException, KSParsingErrorException, KSConstraintInconsistency, KSInternalErrorException, java.lang.ClassNotFoundException
KSParsingErrorException
JavaSystemException
KSBadHornClauseException
KSConstraintInconsistency
KSInternalErrorException
java.lang.ClassNotFoundException
public void uniquelyNameAuxes(java.util.ArrayList<java.lang.Object> auxes, ClauseBody newCB)
public void eraseTracks(java.util.TreeMap pos, java.util.ArrayList<java.lang.Object> negTokensCovered)
public java.util.ArrayList<java.util.ArrayList<java.lang.Object>> rescoreCBM(java.util.ArrayList<java.util.ArrayList<java.lang.Object>> currentCBM, int size, int maxMisses, DomainTheory.BaseCB_Cover cand)
public java.util.ArrayList<java.lang.Object> greedySetCover(KinTermDef composedKTD, int scor, java.util.ArrayList<java.lang.Object> pos2Cover, java.util.ArrayList<java.lang.Object> negTokensCovered, java.util.TreeMap pos, java.util.TreeMap neg, java.util.ArrayList<java.lang.Object> anomalies, java.util.ArrayList<java.util.ArrayList<java.lang.Object>> currentCBM, int maxMisses, int tolerance, int maxConf, boolean doInduction) throws KSParsingErrorException, JavaSystemException, KSInternalErrorException, KSConstraintInconsistency, KSParsingErrorException, KSBadHornClauseException, KSNoChainOfRelations2Alter, java.lang.ClassNotFoundException
KSParsingErrorException
JavaSystemException
KSInternalErrorException
KSConstraintInconsistency
KSBadHornClauseException
KSNoChainOfRelations2Alter
java.lang.ClassNotFoundException
public boolean induceSolution(java.util.ArrayList<java.lang.Object> solution, java.util.TreeMap pos, java.util.TreeMap neg, java.util.ArrayList<java.lang.Object> pos2Cover, java.util.ArrayList<java.lang.Object> negsCovered, java.util.ArrayList<java.lang.Object> barriers, int maxMisses, KinTermDef composedKTD) throws KSBadHornClauseException, KSNoChainOfRelations2Alter, KSInternalErrorException, KSParsingErrorException, JavaSystemException, KSConstraintInconsistency, java.lang.ClassNotFoundException
KSBadHornClauseException
KSNoChainOfRelations2Alter
KSInternalErrorException
KSParsingErrorException
JavaSystemException
KSConstraintInconsistency
java.lang.ClassNotFoundException
public java.util.ArrayList<java.lang.Object> filterNonContradictions(java.lang.String kinTerm, java.util.ArrayList<java.lang.Object> oddBalls, java.util.TreeMap pos, java.util.TreeMap neg) throws KSBadHornClauseException, KSNoChainOfRelations2Alter, KSBadHornClauseException, KSInternalErrorException, KSConstraintInconsistency, java.lang.ClassNotFoundException
KSBadHornClauseException
KSNoChainOfRelations2Alter
KSInternalErrorException
KSConstraintInconsistency
java.lang.ClassNotFoundException
public java.util.ArrayList<java.lang.Object> doLGG(java.util.ArrayList<java.lang.Object> posDyads, java.util.ArrayList<java.lang.Object> negDyads, java.util.ArrayList<java.lang.Object> pos2Cover, java.util.ArrayList<java.lang.Object> negsCovered, java.util.ArrayList<java.lang.Object> barriers, Counter limit, KinTermDef composedKTD) throws KSBadHornClauseException, KSNoChainOfRelations2Alter, KSBadHornClauseException, KSInternalErrorException, KSConstraintInconsistency, java.lang.ClassNotFoundException
KSBadHornClauseException
KSNoChainOfRelations2Alter
KSInternalErrorException
KSConstraintInconsistency
java.lang.ClassNotFoundException
public ClauseBody makeCBfromKinType(java.lang.String kinType) throws KSInternalErrorException, KSConstraintInconsistency
public boolean perfectFit(ClauseBody cb0, java.util.ArrayList<java.lang.Object> posDyads, java.util.ArrayList<java.lang.Object> negDyads) throws KSBadHornClauseException, KSNoChainOfRelations2Alter, KSInternalErrorException, KSConstraintInconsistency, java.lang.ClassNotFoundException
KSBadHornClauseException
KSNoChainOfRelations2Alter
KSInternalErrorException
KSConstraintInconsistency
java.lang.ClassNotFoundException
public void createStaticInfo(ClauseBody cb, java.util.TreeMap lvl2Var, java.util.TreeMap var2Lvl, java.util.TreeMap namedVars)
public java.util.ArrayList<java.lang.Object> allLGGLits(Dyad dy, ClauseBody cb, java.util.TreeMap lvl2Var, java.util.TreeMap namedVars) throws KSInternalErrorException
KSInternalErrorException
public boolean makeDyadVarBindings(Dyad dy, java.util.ArrayList<java.lang.Object> lits, java.util.TreeMap bindings) throws KSInternalErrorException
KSInternalErrorException
public void addIfNotDupl(Dyad dy, java.util.ArrayList<java.lang.Object> litList, java.util.TreeMap listTMap)
public boolean addEgoGenderPred(ClauseBody cb, java.util.ArrayList<java.lang.Object> posDyads, java.util.ArrayList<java.lang.Object> negDyads)
public boolean egoGenderImplied(ClauseBody cb)
public boolean addEgoAlterSeniority(ClauseBody cb, java.util.ArrayList<java.lang.Object> posDyads, java.util.ArrayList<java.lang.Object> negDyads) throws KSInternalErrorException
KSInternalErrorException
public void test4Useless(ClauseBody cb, java.util.TreeMap posLitLists, java.util.ArrayList<java.lang.Object> pos2BeUncovered, java.util.ArrayList<java.lang.Object> negDyads, java.util.ArrayList<java.lang.Object> negs2BeCovered) throws KSBadHornClauseException, KSNoChainOfRelations2Alter, KSInternalErrorException, KSConstraintInconsistency, java.lang.ClassNotFoundException
KSBadHornClauseException
KSNoChainOfRelations2Alter
KSInternalErrorException
KSConstraintInconsistency
java.lang.ClassNotFoundException
public void makeDeepCopies(java.util.ArrayList<java.lang.Object> solution) throws KSParsingErrorException, JavaSystemException, KSBadHornClauseException, KSConstraintInconsistency, KSInternalErrorException
public void simplifyCBs(java.util.ArrayList<java.lang.Object> solution, KinTermDef composedKTD) throws KSConstraintInconsistency, KSParsingErrorException, JavaSystemException, KSInternalErrorException, KSBadHornClauseException, java.lang.ClassNotFoundException
KSConstraintInconsistency
KSParsingErrorException
JavaSystemException
KSInternalErrorException
KSBadHornClauseException
java.lang.ClassNotFoundException
public void addIfNotDuplicative(ClauseBody cb, java.util.ArrayList<java.lang.Object> members)
public ClauseBody generalize(ClauseBody cb1, ClauseBody cb2)
public java.util.ArrayList<java.lang.Object> subDyads(java.util.ArrayList<java.lang.Object> dyTokens)
public void simplifyAuxs(KinTermDef composedKTD, java.util.ArrayList<java.lang.Object> auxiliaries) throws KSConstraintInconsistency
KSConstraintInconsistency
public void replaceAuxPred(KinTermDef auxDef, Predicate newPred, java.util.ArrayList<java.lang.Object> auxiliaries, KinTermDef composedKTD)
public Anomaly makeAnomaly(java.lang.String kinTerm, java.util.ArrayList<java.lang.Object> octuple, int tolerance, java.util.TreeMap pos, java.util.TreeMap neg) throws KSInternalErrorException
kinTerm
- the term we're trying to learnoctuple
- a list of 8 items needed to describe the anomaly, generated by
LearnedDT.learnKinTermtolerance
- a learning parameterpos
- the set of positive matchesneg
- the set of negative matchesKSInternalErrorException
public Anomaly makeLGGAnomaly(KinTermDef composedKTD, java.util.ArrayList<java.lang.Object> barriers, int tolerance, java.util.TreeMap pos) throws KSInternalErrorException
KSInternalErrorException
public boolean fit(ClauseBody cb, Dyad dad) throws KSBadHornClauseException, KSNoChainOfRelations2Alter, KSInternalErrorException, KSConstraintInconsistency, java.lang.ClassNotFoundException
fit
in class DT_Abstract1
cb
- the ClauseBody we are testingdad
- a dyad that we want to know if it fits this definitionKSBadHornClauseException
KSNoChainOfRelations2Alter
KSInternalErrorException
KSConstraintInconsistency
java.lang.ClassNotFoundException
public boolean noFits(KinTermDef ktd, Library.KTD_Ptr ktdPtr, java.util.TreeMap pos, java.util.TreeMap neg, java.util.TreeMap cbLists, java.util.ArrayList<java.lang.Object> listSetSolid, int posSize, java.util.ArrayList<java.lang.Object> nNegHits, int maxHits, java.util.ArrayList<java.lang.Object> tracer) throws KSParsingErrorException, KSBadHornClauseException, KSConstraintInconsistency, KSInternalErrorException, java.lang.ClassNotFoundException
KSParsingErrorException
KSBadHornClauseException
KSConstraintInconsistency
KSInternalErrorException
java.lang.ClassNotFoundException
public void evalCandidates(java.util.TreeMap candidates, java.util.ArrayList<java.lang.Object> solidCBMatches, java.util.ArrayList<java.lang.Object> potFalseNeg, java.util.ArrayList<java.lang.Object> potFalsePos, java.util.TreeMap pos, java.util.TreeMap neg, int maxNoise) throws KSParsingErrorException, KSBadHornClauseException, KSNoChainOfRelations2Alter, KSInternalErrorException, KSConstraintInconsistency, java.lang.ClassNotFoundException, JavaSystemException
KSParsingErrorException
KSBadHornClauseException
KSNoChainOfRelations2Alter
KSInternalErrorException
KSConstraintInconsistency
java.lang.ClassNotFoundException
JavaSystemException
public java.util.TreeMap findCandidates(Library.ClauseIndex cbEQCs, java.util.TreeMap pos, Library.ClauseCounts cbCounts, DomainTheory sourceDT, Counter maxDist) throws KSInternalErrorException, java.io.FileNotFoundException, JavaSystemException
cbEQCs
- the Library's ClauseIndex -- equivalence classes of ClauseBodiespos
- all the positive matchescbCounts
- the Library's ClauseCountssourceDT
- the DomainTheory for which we are seeking definitionsmaxDist
- a learning parameterKSInternalErrorException
java.io.FileNotFoundException
JavaSystemException
public java.util.TreeMap mergeSubTrees(java.util.TreeMap neg)